.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  display: block;
  max-width: 100%;
  height: auto;
  cursor: url(/assets/images/template/plus.png), pointer;
}

.homepageCarouselCaptionMain {
    
    
}

.homepageCarouselCaptionSub {

}

.carousel {
  position: relative;
  height:100%;
}
.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
  height:100%;
}
.carousel-inner > .item {
  position: relative;
  display: none;
  -webkit-transition: .7s ease-in-out left;
       -o-transition: .7s ease-in-out left;
          transition: .7s ease-in-out left;
  width:100%;
  height:100%;
  background-size:100%;
  background-position:center center;
}
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  line-height: 1;
}
@media all and (transform-3d), (-webkit-transform-3d) {
  .carousel-inner > .item {
    -webkit-transition: -webkit-transform .7s ease-in-out;
         -o-transition:      -o-transform .7s ease-in-out;
            transition:         transform .7s ease-in-out;

    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    -webkit-perspective: 1000px;
            perspective: 1000px;
  }
  
  .carousel-inner > .item.active.left {
    -webkit-transform: translate3d(-60%, 0, 0);
            transform: translate3d(-60%, 0, 0);
            left:0;
  }
  
  .carousel-inner > .item.active.right {
      left:0;
    -webkit-transform: translate3d(60%, 0, 0);
            transform: translate3d(60%, 0, 0);
  }
  
  .linearAnimation .carousel-inner > .item.active.left {
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
            left:0;
  }
  
  .linearAnimation .carousel-inner > .item.active.right {
      left:0;
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
  }
  
  .spacedAnimation .carousel-inner > .item.active.left {
    -webkit-transform: translate3d(-150%, 0, 0);
            transform: translate3d(-150%, 0, 0);
            left:0;
  }
  
  .spacedAnimation .carousel-inner > .item.active.right {
      left:0;
    -webkit-transform: translate3d(150%, 0, 0);
            transform: translate3d(150%, 0, 0);
  }
  
  .carousel-inner > .item.prev, .carousel-inner > .item.next {
      z-index:1;
  }
  
  .carousel-inner > .item.next {
    left: 0;
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
  }
  .carousel-inner > .item.prev {
    left: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
  }
  
  .spacedAnimation .carousel-inner > .item.next {
    left: 0;
    -webkit-transform: translate3d(150%, 0, 0);
            transform: translate3d(150%, 0, 0);
  }
  .spacedAnimation .carousel-inner > .item.prev {
    left: 0;
    -webkit-transform: translate3d(-150%, 0, 0);
            transform: translate3d(-150%, 0, 0);
  }
  .carousel-inner > .item.next.left,
  .carousel-inner > .item.prev.right,
  .carousel-inner > .item.active {
    left: 0;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}
.carousel-inner > .active,
.carousel-inner > .next,
.carousel-inner > .prev {
  display: block;
}
.carousel-inner > .active {
  left: 0;
}
.carousel-inner > .next,
.carousel-inner > .prev {
  position: absolute;
  top: 0;
  width: 100%;
}
.carousel-inner > .next {
  left: 100%;
}
.carousel-inner > .prev {
  left: -100%;
}
.carousel-inner > .next.left,
.carousel-inner > .prev.right {
  left: 0;
}
.carousel-inner > .active.left {
  left: -100%;
}
.carousel-inner > .active.right {
  left: 150%;
}
.spacedAnimation .carousel-inner > .next {
  left: 150%;
}
.spacedAnimation .carousel-inner > .prev {
  left: -150%;
}
.spacedAnimation .carousel-inner > .active.left {
  left: -150%;
}
.spacedAnimation .carousel-inner > .active.right {
  left: 150%;
}
.carousel-indicators {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 15;
  width: 100%;
  padding-left: 0;
  text-align: center;
  list-style: none;
  padding-bottom:0;
  margin-left:0;
}
.carousel-indicators li {
  display: inline-block;
  padding:1em 0.5em;
  margin: 0;
  text-indent: -999px;
  cursor: pointer;
}
.carousel-indicators .active .carousel-control-line {
    background:#666666;
}
.carousel-control-line {
    height:0.7em;
    width:0.7em;
    background:#d8d8d8;
    position:relative;
    border-radius:50%;
}
.carousel-control-line-progress {
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    height:0.15em;
    width:100%;
    opacity:1;
    transform-origin:left;
}/*  

font-family:'Avenir LT W01_35 Light1475496', sans-serif;
font-family:'Avenir LT W01_45 Book1475508', sans-serif;
font-family:'Avenir LT W01_55 Roman1475520', sans-serif;
font-family:'Avenir LT W01_65 Medium1475532', sans-serif;
font-family:'Avenir LT W01_85 Heavy1475544', sans-serif;
font-family:'Avenir LT W01_95 Black1475556', sans-serif;

*/

/* ------------------------------------------- RESETS -------------------------------------------------- */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ul, ol, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* ------------------------------------ SITE WIDE RULES -------------------------------------------------- */

* {
    box-sizing: border-box;
}

body {
	font-family:'Avenir LT W01_45 Book1475508', sans-serif;
	line-height:1em;
	margin:0;
	min-width:320px;
	letter-spacing:-0.03em;
	background:#f5f5f5;
	-webkit-text-size-adjust: 100%;
	font-size:16px;
}

strong {
	font-family:'Avenir LT W01_85 Heavy1475544', sans-serif;
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4 {
	font-family:'Avenir LT W01_65 Medium1475532', sans-serif;
	letter-spacing:-0.03em;
	margin-bottom:18px;
}

h1, .h1 {
	font-size:64px;
	line-height:1.1em;
}

h2, .h2 {
	font-size:48px;
	line-height:1.1em;
}

h3, .h3 {
	font-size:32px;
	line-height:1.1em;
}

h4, .h4 {
	font-size:24px;
	line-height:1.1em;
}

p {
	margin-bottom:18px;
}

p, li, label, a {
    line-height:1.1em;
    font-size:20px;
}

.smallText {
    font-size:16px;
    line-height:1.1em;
}

.leadText {
    font-family:'Avenir LT W01_65 Medium1475532', sans-serif;
    line-height:1.1em;
    font-size:20px;
}

.uppercaseText {
    font-family:'Avenir LT W01_85 Heavy1475544', sans-serif;
    text-transform:uppercase;
    line-height:1.1em;
    letter-spacing:0.05em;
    font-size:20px;
}

.airFont {
    font-family:'Orbitsound Airfont', 'Avenir LT W01_85 Heavy1475544', sans-serif;
    text-transform:uppercase;
    color:#ffb400;
    background: -webkit-linear-gradient(-80deg, #fff200, #ff6600);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.highlightTextOuter {
    background: -webkit-linear-gradient(-80deg, #fff200, #ff6600);
    -webkit-background-clip: text;
}

.highlightText {
    color:#ffb400;
    -webkit-text-fill-color: transparent;
    font-family:'Avenir LT W01_85 Heavy1475544', sans-serif;
}

.last {
	margin-bottom:0!important;
	padding-bottom:0!important;
}

a {
    cursor:pointer;
	color:#0034ea;
	text-decoration:none;
}

a:hover {
	text-decoration:underline;
}

ol {
	padding-bottom:16px;
	list-style:decimal outside;
	margin-left:32px;
}

ol[type=a] {
	list-style:lower-alpha outside;
}

ul {
	padding-bottom:16px;
	list-style:disc outside;
	margin-left:32px;
}

li {
	padding:0 0 8px 8px;
}

table {
	width:100%;
}

label {
    font-family:'Avenir LT W01_65 Medium1475532', sans-serif;
	display:block;
}

input {
	margin:8px 0;
	width:100%;
	background:#f5f5f5;
    outline:none;
	padding:0.6em 1.5em;
	font-family:'Avenir LT W01_65 Medium1475532', sans-serif;
	font-size:14px;
	line-height:1.1em;
	border:2px solid transparent;
	border-width:2px 0 2px 0;
}

input[type=text], input[type=number], textarea, select {
    border-radius:4px;
    font-size:14px;
}

input::placeholder {
    color:#999;
}

textarea {
	margin:8px 0;
	width:100% !important; /* Marked as important to stop being able to resize the width in Chrome */
	border:0;
	background:#f5f5f5;
    outline:none;
	padding:12px 16px;
	font-family:'Avenir LT W01_65 Medium1475532', sans-serif;
	min-height:160px;
	font-size:14px;
	line-height:1.1em;
}

input[type=radio], input[type=checkbox] {
	width:48px;
}

input[type=range] {
    -webkit-appearance:none;
    width:100%;
    background:#fff;
    padding:0 16px;
    cursor:pointer;
}

input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    height: 64px;
    width: 64px;
    background:url(/assets/images/template/explosion-slider.svg);
    background-size:20px;
    background-position:center center;
    background-repeat:no-repeat;
    border:transparent;
}

input[type=range]::-moz-range-thumb {
    -webkit-appearance: none;
    height: 64px;
    width: 64px;
    background:url(/assets/images/template/explosion-slider.svg);
    background-size:20px;
    background-position:center center;
    background-repeat:no-repeat;
    border:transparent;
}

input[type=range]::-ms-thumb {
    -webkit-appearance: none;
    height: 64px;
    width: 64px;
    background:url(/assets/images/template/explosion-slider.svg);
    background-size:20px;
    background-position:center center;
    background-repeat:no-repeat;
    border:transparent;
}

input[type=range]::-webkit-slider-runnable-track {
    height: 64px;
    background: url(/assets/images/template/slider-bg.png);
    background-size:auto 2px;
    background-repeat:repeat-x;
    background-position:center center;
}

input[type=range]::-moz-range-track {
    height: 64px;
    background: url(/assets/images/template/slider-bg.png);
    background-size:auto 2px;
    background-repeat:repeat-x;
    background-position:center center;
}

input[type=range]::-ms-track {
    height: 64px;
    background: url(/assets/images/template/slider-bg.png);
    background-size:auto 2px;
    background-repeat:repeat-x;
    background-position:center center;
    border-color: transparent;
    background-color:transparent;
    color:transparent;
}

input[type=range]::-ms-fill-lower {
    height: 64px;
    background: url(/assets/images/template/slider-bg.png);
    background-size:auto 2px;
    background-repeat:repeat-x;
    background-position:center center;
}

input[type=range]::-ms-tooltip {
    display: none;
}

.selectContainer {
    position:relative;
	margin:8px 0;
}

select {
    font-size:14px;
	font-family:'Avenir LT W01_65 Medium1475532', sans-serif;
	padding:12px 16px;
	border:0;
	background-color:#f5f5f5;
	color:#000;
	outline:none;
	width:100%;
	-webkit-appearance:initial;
	appearance:initial;
	-moz-appearance: none;
	line-height:1.1em;
}

.selectContainer:after {
    content:'';
    position:absolute;
    width:16px;
    height:100%;
    pointer-events:none;
    right:16px;
    top:0;
    background:url(/assets/images/template2019/downArrowDark.svg) no-repeat center;
    background-size:auto 10px;
}

option {
    color:#000;
    font-size:16px;
    font-family:'Avenir LT W01_65 Medium1475532', sans-serif;
}

.youtube {
	position:relative;
	padding-bottom:56.25%;
	height:0;
	overflow:hidden;
}

.youtube iframe {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}

.darkButton, .lightButton {
    display:inline-block;
	background:rgba(0,0,0,0);
	color:#000;
	font-size:14px;
	font-family:'Avenir LT W01_85 Heavy1475544', sans-serif;
	border:2px solid #000;
	line-height:1.1em;
	cursor:pointer;
	transition:background 0.2s, border 0.2s, color 0.1s;
	padding:0.6em 1.5em;
	text-align:center;
	user-select: none;
	border-radius:100px;
	text-transform:uppercase;
	letter-spacing:0.05em;
	width:auto;
	text-decoration:none !important;
}

.lightButton {
	background:rgba(255,255,255,0);
	color:#fff;
	border-color:#fff;
}

.darkButton:hover {
	background:rgba(0,0,0,1);
	color:#fff;
}

.lightButton:hover {
	background:rgba(255,255,255,1);
	color:#000;
}

/* ------------------------------------ SITE WIDE CLASSES --------------------------------------------- */

.left {float:left !important}
.right {float:right !important}
.justify {text-align:justify;}
.center {text-align:center;}
.centerMobile {text-align:center;}
.centerTablet {text-align:center;}
.leftAlign {text-align:left;}
.rightAlign {text-align:right;}
.centerAlign {text-align:center;}
.mobileOnly {display:block !important;}
.mobileOnlyMiddleAlign {display:table-cell !important;}
.desktopOnly {display:none !important;}
.desktopOnlyMiddleAlign {display:none !important;}
.clear {clear:both;}
.noPaddingMobile {padding-right:0 !important; padding-left:0 !important;}
.noMarginMobile {margin-right:0; margin-left:0;}
.white {color:#fff;}
.white a {color:#fff;}

/* A row of columns */
.row {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    clear: both;
    padding: 0;
}

/* Give the floated column a proper size */
.row:after {
	content: "";
	clear:both;
	display:block;
}

/* Apply to all columns */
[class*="col-"] {
	float: left;
	padding: 24px 16px;
	width:100%;
	overflow-x: auto;
	display: block;
}

img {
	width:100%;
}

svg {
	width:100%;
	height:100%;
}

.fixedPositionScroll {
    min-height: 100%;
    overflow-x:hidden;
    overflow-y: auto;
}

.verticalMiddleOuter {
    display:table;
}

.verticalMiddleInner {
    display:table-cell;
    vertical-align:middle;
}

.expandableOuter {
    user-select:none;
    width:100%;
}

.openExpandable {
    cursor:pointer;
    -webkit-tap-highlight-color: transparent;
}

.expandableHideable {
    height:0;
    opacity:0;
    transition:height 0.3s 0.1s, opacity 0.3s 0s;
    overflow:hidden;
}

.expandableOpen .expandableHideable {
    opacity:1;
    transition:height 0.3s 0s, opacity 0.3s 0.2s;
}

.expandableIcon {
    opacity:0.3;
    transition:opacity 0.2s, transform 0.3s;
}

.expandableOpen .expandableIcon {
    transform:rotate(45deg);
    opacity:1;
}

.pageHeader2019 {
    min-height:500px;
    position:relative;
    background:#000;
}

.pageHeaderBackground2019 {
    background-position:center;
    background-size:cover;
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    z-index:1;
    opacity:0.5;
}

.pageHeader2019 .row {
    position:relative;
    z-index:2;
}

.pageHeader2019 div[class*="col-"] {
    margin-top:92px;
}

.pageHeaderLine2019 {
    border-top:4px solid #fff;
    width:200px;
    margin:29px 0 32px 0;
}

.sliderContainer .sliderOuter {
    position:relative;
    overflow:hidden;
    width:100%;
}

.sliderContainer .sliderOuter .sliderItem {
    position:absolute;
    height:100%;
    width:100%;
    top:0;
    left:0;
    transform:translateX(0%);
    z-index:1;
}

.sliderContainer .sliderOuter .sliderItem.sliderActive {
    z-index:2;
}

.sliderContainer .sliderOuter.sliderOuterSlide .sliderItem {
    transition:transform 0.5s;
}

.sliderContainer .sliderOuter.sliderOuterSlide .sliderItem:nth-of-type(1) {
    left:0;
}

.sliderContainer .sliderOuter.sliderOuterSlide .sliderItem:nth-of-type(2) {
    left:100%;
}

.sliderContainer .sliderOuter.sliderOuterSlide .sliderItem:nth-of-type(3) {
    left:200%;
}

.sliderContainer .sliderOuter.sliderOuterSlide .sliderItem:nth-of-type(4) {
    left:300%;
}

.sliderContainer .sliderOuter.sliderOuterSlide .sliderItem:nth-of-type(5) {
    left:400%;
}

.sliderContainer .sliderOuter.sliderOuterSlide .sliderItem:nth-of-type(6) {
    left:500%;
}

.sliderContainer .sliderOuter.sliderOuterSlide .sliderItem:nth-of-type(7) {
    left:600%;
}

.sliderContainer .sliderOuter.sliderOuterSlide .sliderItem:nth-of-type(8) {
    left:700%;
}

.sliderContainer .sliderOuter.sliderOuterSlide .sliderItem:nth-of-type(9) {
    left:800%;
}

.sliderContainer .sliderOuter.sliderOuterSlide .sliderItem:nth-of-type(10) {
    left:900%;
}

.sliderContainer .sliderOuter.sliderOuterSlide .sliderItem:nth-of-type(11) {
    left:1000%;
}

.sliderContainer .sliderOuter.sliderOuterSlide .sliderItem:nth-of-type(12) {
    left:1100%;
}

.sliderContainer .sliderOuter.sliderOuterSlide .sliderItem:nth-of-type(13) {
    left:1200%;
}

.sliderContainer .sliderOuter.sliderOuterSlide .sliderItem:nth-of-type(14) {
    left:1300%;
}

.sliderContainer .sliderOuter.sliderOuterSlide .sliderItem:nth-of-type(15) {
    left:1400%;
}

.sliderContainer .sliderOuter.sliderOuterFade .sliderItem  * {
    opacity:0;
    transform:translateY(50px);
    transition:transform 0.3s 0.3s, opacity 0.3s;
}

.sliderContainer .sliderOuter.sliderOuterFade .sliderItem.sliderActive  * {
    opacity:1;
    transform:translateY(0);
    transition:transform 0.3s, opacity 0.3s;
}

.sliderContainer .sliderOuter.sliderOuterFade .sliderItem.sliderActive :nth-child(1) {
    transition:transform 0.3s, opacity 0.3s;
}

.sliderContainer .sliderOuter.sliderOuterFade .sliderItem.sliderActive :nth-child(2) {
    transition:transform 0.3s 0.1s, opacity 0.3s 0.1s;
}

.sliderContainer .sliderOuter.sliderOuterFade .sliderItem.sliderActive :nth-child(3) {
    transition:transform 0.3s 0.2s, opacity 0.3s 0.2s;
}

.sliderContainer .sliderOuter.sliderOuterFade .sliderItem.sliderActive :nth-child(4) {
    transition:transform 0.3s 0.3s, opacity 0.3s 0.3s;
}

.sliderContainer .sliderOuter.sliderOuterFade .sliderItem.sliderActive :nth-child(5) {
    transition:transform 0.3s 0.4s, opacity 0.3s 0.4s;
}

.sliderContainer .sliderOuter.sliderOuterFade .sliderItem.sliderActive :nth-child(6) {
    transition:transform 0.3s 0.5s, opacity 0.3s 0.5s;
}

.sliderContainer .sliderOuter.sliderOuterFade .sliderItem.sliderActive :nth-child(7) {
    transition:transform 0.3s 0.6s, opacity 0.3s 0.6s;
}

.sliderContainer .sliderOuter.sliderOuterFade .sliderItem.sliderActive :nth-child(8) {
    transition:transform 0.3s 0.7s, opacity 0.3s 0.7s;
}

.sliderContainer .sliderOuter.sliderOuterFade .sliderItem.sliderActive :nth-child(9) {
    transition:transform 0.3s 0.8s, opacity 0.3s 0.8s;
}

.sliderContainer .sliderOuter.sliderOuterFade .sliderItem.sliderActive :nth-child(10) {
    transition:transform 0.3s 0.9s, opacity 0.3s 0.9s;
}

.sliderContainer .sliderOuter.sliderOuterFade .sliderItem.sliderActive :nth-child(11) {
    transition:transform 0.3s 1s, opacity 0.3s 1s;
}

.sliderContainer .sliderOuter.sliderOuterFade .sliderItem.sliderActive :nth-child(12) {
    transition:transform 0.3s 1.1s, opacity 0.3s 1.1s;
}

.sliderContainer .sliderOuter.sliderOuterFade .sliderItem.sliderActive :nth-child(13) {
    transition:transform 0.3s 1.2s, opacity 0.3s 1.2s;
}

.sliderContainer .sliderOuter.sliderOuterFade .sliderItem.sliderActive :nth-child(14) {
    transition:transform 0.3s 1.3s, opacity 0.3s 1.3s;
}

.sliderContainer .sliderOuter.sliderOuterFade .sliderItem.sliderActive :nth-child(15) {
    transition:transform 0.3s 1.4s, opacity 0.3s 1.4s;
}

.sliderOuterImage {
    background:#000;
}

.sliderOuterImage.sliderOuterImageLight {
    background:#fff;
}

.sliderOuterImage .sliderItem {
    background-size:cover;
    background-position:center;
    opacity:0.4;
}

.sliderOuterImage img {
    visibility:hidden;
}

.sliderButtonContainer {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index:3;
}

.sliderPreviousButton, .sliderNextButton {
    border-radius:100%;
    width:32px;
    height:32px;
    float:left;
    padding:8px;
    cursor:pointer;
    user-select:none;
    margin-left:10px;
    background-size:100%;
    background-position:center;
    opacity:0.3;
    transition:opacity 0.2s;
}

.sliderPreviousButton.sliderPreviousButtonDark, .sliderNextButton.sliderNextButtonDark {
    opacity:0.7;
}

.sliderPreviousButton:hover, .sliderNextButton:hover {
    opacity:1;
}

.sliderPreviousButtonLight {
    background-image:url(/assets/images/template2019/arrowLeftLight.svg);
}

.sliderNextButtonLight {
    background-image:url(/assets/images/template2019/arrowRightLight.svg);
}

.sliderPreviousButtonDark {
    background-image:url(/assets/images/template2019/arrowLeftDark.svg);
}

.sliderNextButtonDark {
    background-image:url(/assets/images/template2019/arrowRightDark.svg);
}

/* -------------------------------------- TEMPLATE STYLING --------------------------------------------- */

.headerOuter {
    position:fixed;
    width:100%;
    z-index:999;
    border-bottom:1px solid rgba(238, 238, 238,0);
    transition:border 0.3s, background 0.3s 0.2s, top 0.3s;
    overflow:hidden;
    top:0;
}

.headerOuter svg .logoSVG, .headerOuter svg .menuIconSVG, .headerOuter svg .cartIconSVG {
    transition:fill 0.2s 0.2s, x 0.1s, width 0.1s, transform 0.1s;
}

.headerOuter.headerSolid svg .logoSVG, .headerOuter.headerSolid svg .menuIconSVG, .headerOuter.headerSolid svg .cartIconSVG {
    transition:fill 0.2s, x 0.1s, width 0.1s, transform 0.1s;
}

.headerOuter.headerTransparentWhite {
    background:rgba(255,255,255,0);
}

.headerOuter.headerTransparentBlack {
    background:rgba(0,0,0,0);
}

.headerOuter.headerSolid.headerWhite {
    background:rgba(255,255,255,0.9);
    border-bottom:1px solid rgba(238,238,238,0.9);
    transition:border 0.3s, background 0.3s, top 0.3s;
}

.headerOuter.headerSolid.headerBlack {
    background:rgba(0,0,0,0.8);
    border-bottom:1px solid rgba(0,0,0,0.8);
    transition:border 0.3s, background 0.3s, top 0.3s;
}

.headerOuter.headerSolid.headerWhite svg .logoSVG, .headerOuter.headerSolid.headerWhite svg .menuIconSVG, .headerOuter.headerSolid.headerWhite svg .cartIconSVG, .headerOuter.headerTransparentBlack svg .logoSVG, .headerOuter.headerTransparentBlack svg .menuIconSVG, .headerOuter.headerTransparentBlack svg .cartIconSVG {
    fill:#000;
}

.headerOuter.headerSolid.headerBlack svg .logoSVG, .headerOuter.headerSolid.headerBlack svg .menuIconSVG, .headerOuter.headerSolid.headerBlack svg .cartIconSVG, .headerOuter.headerTransparentWhite svg .logoSVG, .headerOuter.headerTransparentWhite svg .menuIconSVG, .headerOuter.headerTransparentWhite svg .cartIconSVG {
    fill:#fff;
}

.headerMenuIconOuter {
    float:left;
    line-height:0;
    width:58px;
}

.headerLogoIconOuter {
    line-height:0;
    text-align:center;
}

.headerCartIconOuter {
    float:right;
    line-height:0;
    position:relative;
    width:52px;
    height:100%;
}

.headerMenuIconOuter svg, .headerLogoIconOuter svg, .headerCartIconOuter svg {
    height:86px;
    padding:35px 16px;
    cursor:pointer;
    width:auto;
    transition:height 0.2s 0.2s, padding 0.2s 0.2s;
}

.headerMenuIconOuter .headerMenuHintIcon {
    padding:38px 16px;
    margin-left:-24px;
}

.headerLogoIconOuter svg {
    height:86px;
    padding:25px 16px 20px 16px;
    width:150px;
}

.headerSolid .headerMenuIconOuter svg, .headerSolid .headerLogoIconOuter svg, .headerSolid .headerCartIconOuter svg {
    height:56px;
    padding:20px 16px;
    transition:height 0.2s, padding 0.2s;
}

.headerSolid .headerMenuIconOuter .headerMenuHintIcon {
    padding:23px 16px;
}

.headerSolid .headerLogoIconOuter svg {
    height:56px;
    padding:10px 16px 5px 16px;
    transition:height 0.2s, padding 0.2s;
}

.headerLogoIconOuter svg {
    padding-left:0 !important;
    padding-right:0 !important;
}

.headerCartIconOuter svg {
    padding-top:28px !important;
}

.headerSolid .headerCartIconOuter svg {
    padding-top:13px !important;
}

.mainMenuOuter {
    position:fixed;
    left:0;
    top:0;
    width:100%;
    height:100%;
    background:#fff;
    z-index:9999;
    transition:transform 0.3s, width 0.3s;
    transform:translateX(-100%);
    overflow:hidden;
}

.mainMenuOpen .mainMenuOuter {
    transform:translateX(0%);
}

.mainMenuOverlay, .cartOverlay {
    position:fixed;
    width:100%;
    height:100vh;
    top:0;
    opacity:0;
    visibility:hidden;
    background:rgba(0,0,0,0.75);
    transition:opacity 0.3s, visibility 0.1s ease 0.2s;
    z-index:9998;
}

.mainMenuOpen .mainMenuOverlay, .cartOpen .cartOverlay {
    visibility:visible !important;
    opacity:1 !important;
    transition:opacity 0.3s !important;
}

.mainMenuCloseButton {
    width:60px;
    height:60px;
    padding:20px;
    position:absolute;
    left:0;
    right:0;
    cursor:pointer;
}

.mainMenuSocialIconsOuter {
    position:absolute;
    bottom:0;
    width:100%;
    text-align:center;
    background:#fff;
    padding:16px 0 32px 0;
}

.mainMenuSocialIconsItem {
    display:inline-block;
    background-size:100% 100%;
    line-height:0;
    margin:0 2px;
}

.mainMenuSocialIconsItem a {
    display:inline-block;
    width:28px;
    height:28px;
    opacity:0;
    transition:opacity 0.1s;
    background-size:100% 100%;
}

.mainMenuSocialIconsItem a:hover {
    opacity:1;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {  
    .mainMenuSocialIconsItem a {
        background-image:url(/assets/images/template2019/mainMenuGradient.svg) !important;
        mix-blend-mode:screen;
    }
}

.mainMenuOuter .fixedPositionScroll {
    min-height:calc(100% - 160px);
    height:calc(100% - 160px);
    margin: 80px 0;
}

.mainMenuInner {
    display:table;
    width:100%;
    height:100%;
    text-align:left;
}

.mainMenuInner:before, .mainMenuInner:after {
    content:'';
    vertical-align:middle;
    display:table-cell;
    width:50%;
}

.mainMenuInnerInner {
    display:table-cell;
    vertical-align:middle;
    padding:0 16px;
}

.mainMenuItemInner {
    display:inline-block;
    line-height:3.5em;
}

.mainMenuItemInner a {
    color:#000;
    text-decoration:none !important;
    display:inline;
    transition:color 0.1s;
    font-size:3.5em; /* Needs to be em to scale properly with the auto JS resizing */
	line-height:1.1em;
    font-family:'Avenir LT W01_95 Black1475556', sans-serif;
	white-space:nowrap;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {  
    .mainMenuItemInner {
        background-image:url(/assets/images/template2019/mainMenuGradient.svg);
        background-size:100% 100%;
        -webkit-background-clip:text;
    }
    .mainMenuItemInner a:hover {
        color:rgba(0,0,0,0) !important;
    }
}

.mainMenuItemInner a:hover {
    color:#ffa815;
}

.mainMenuHelperArrow {
    margin:0 5px 0 0;
    transition:margin 0.1s;
}

.mainMenuItemInner a:hover .mainMenuHelperArrow {
    margin:0 0 0 5px;
}

.mainMenuSubMenu {
    padding-top:16px;
}

.mainMenuSubMenu .mainMenuItemInner {
    line-height:1.5em;
}

.mainMenuSubMenu .mainMenuItemInner a {
    font-size:24px;
	line-height:1.1em;
}

.popupContainer {
    z-index:999999;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    opacity:0;
    transition:opacity 0.2s, visibility 0.1s ease 0.2s;
    visibility:hidden;
    background:rgba(0,0,0,0.75);
}

.popupContainer.popupOpen {
    visibility:visible !important;
    opacity:1 !important;
    transition:opacity 0.2s !important;
}

.popupOuter {
    display:table;
    width:100%;
    height:100%;
    text-align:center;
}

.popupOuter:before, .popupOuter:after {
    display:table-cell;
    vertical-align:middle;
    content:'';
}

.popupInner {
    display:table-cell;
    vertical-align:middle;
}

.popupInnerInner {
    background:#fff;
    width:calc(100% - 32px);
    max-width:600px;
    height:auto;
    padding:32px;
    position:relative;
    display:inline-block;
    border-radius:5px;
    margin:16px;
    text-align:left;
}

.popupCloseButton {
    position:absolute;
    top:0;
    right:0;
    padding:16px;
    line-height:0;
    cursor:pointer;
}

.popupSeparator {
    border-bottom:2px solid #000;
    margin:16px 0;
}

.popupInnerInner p, .popupInnerInner h3 {
    margin-bottom:0;
}

.popupCloseButton svg {
    width:16px;
    height:16px;
}

#mouseLeaveEmailCapture .popupInner {
    background:url(/assets/images/template/mouseLeaveCapture-mobile.jpg) no-repeat #fff top;
    background-size:100% auto;
    padding:27% 32px 32px 32px;
    max-width:720px;
}

.locationPopupButtonContainer {
    text-align:center;
}

.locationPopupButtonContainer .darkButton {
    margin:4px 0;
    width:100%;
}

.locationPopupButtonContainer .selectLocationStay {
    border-color:#eee;
    background:#eee;
    color:#000;
    margin-right:8px;
}

.locationPopupButtonContainer .selectLocationStay:hover {
    border-color:#ddd;
    background:#ddd;
}

.cookiePopupContainer {
    position:fixed;
    width:100%;
    bottom:0;
    background:#212121;
    z-index:150;
    transition:bottom 0.5s;
}

.cookiePopupContainer.permHidden {
    display:none;
}

.cookiePopupContainer.tempHidden {
    bottom:-96px;
}

.cookiePopupOuter {
    width:100%;
    padding:0 16px;
    max-width:720px;
    margin:0 auto;
    display:table;
}

.cookiePopupText {
    color:#fff;
    width:100%;
    padding:4px 16px 4px 0;
}

.cookiePopupText span {
    display:inline-block;
    text-align:center;
    font-size:12px; 
    line-height:1.5em;
}

.cookiePopupText span a {
    color:#fff;
    text-decoration:underline;
}

.cookiePopupButton {
    display:inline-block;
    margin:0 8px 8px 8px;
}

.cookiePopupButtonInner {
    background:#fff;
    margin:4px 0;
    padding:2px 24px;
    cursor:pointer;
    border-radius:5px;
    transition:background 0.5s;
}

.cookiePopupButtonInner span {
    font-size:12px;
    font-family:'Avenir LT W01_65 Medium1475532';
}

.contentContainer {
    background:#fff;
    border-bottom:1px solid #ddd;
}

.contentContainer.footerFixed {
    border-bottom:1px solid #eee;
}

.contentContainer::after {
    content: "";
    display:table;
    clear:both;
}

.headerSpacer {
    width:100%;
    height:92px;
}

.footerOuter {
    width:100%;
    background-color:#f5f5f5;
    width:100%;
    text-align:center;
}

.footerOuter.footerFixed {
    position:fixed;
    bottom:0;
    z-index:-1;
}

.footerOuter span, .footerOuter a {
    font-family:'Avenir LT W01_65 Medium1475532', sans-serif;
    color:#000;
    text-decoration:none;
}

.footerSpacer {
    width:1px;
    position:absolute;
}

.footerTitleOuter {
    padding-bottom:0;
}

.footerTitleOuter span {
    font-size:20px;
}

.footerSeparator {
    border-bottom:2px solid #000;
    padding-top:24px;
}

.footerBodyOuter {
    padding-top:8px;
}

.footerLinkItem {
    padding:16px 0 0 0;
}

.footerLinkItem:nth-child(odd) {
    float:left;
    width:50%;
    text-align:left;
}

.footerLinkItem:nth-child(even) {
    float:right;
    width:50%;
    text-align:right;
}

.footerLocationOuter, .footerCopyrightOuter {
    padding-top:16px;
    clear:both;
}

.footerLocationOuter {
    display:inline-block;
}

.footerLocationOuter img {
    width:auto;
    height:16px;
    padding-right:8px;
    float:left;
}

.footerLocationOuter a {
    font-size:13px !important;
}

.footerCopyrightOuter span {
    font-size:13px !important;
}

/* -------------------------------------- SHOPIFY STYLING --------------------------------------------- */

.shopify-buy-cart-wrapper {
    max-width:100% !important;
    padding:16px;
    background:#fff;
}
.shopify-buy-cart-wrapper.is-active {
    box-shadow:1px 1px 14px 0px rgba(49,49,49,0.2);
}
.shopify-buy__cart {
    width:100%;
    height:100%;
    max-width:480px;
    margin:0 auto;
}
.cartCloseButton {
    position:absolute;
    right:0;
    top:0;
    cursor:pointer;
}
.cartCloseButton img {
    width:60px;
    padding:20px;
}
.shopify-buy__btn--close {
    display:none;
}
.shopify-buy__cart__header {
    padding-top:24px;
}
.shopify-buy__cart__header h2 {
    font-size:32px;
    line-height:1.5em;
    border-bottom:2px solid #000;
}
.shopify-buy__cart-scroll {
    width:100%;
    height:calc(100% - 224px);
}
.shopify-buy__cart-items {
    width:100%;
    height:100%;
    overflow:hidden;
    overflow-y:auto;
    max-width:480px;
    margin:0 auto;
}
.shopify-buy__cart-empty-text {
    text-align:center;
    font-family:'Avenir LT W01_35 Light1475496';
}
.shopify-buy__cart-item {
    animation:400ms flipIn forwards;
    opacity:1;
    max-height:400px;
    overflow:hidden;
}
.shopify-buy__cart-item.is-hidden {
    animation-name:flipOut !important;
    max-height:0px;
}
@keyframes flipIn {
	from {
		max-height: 0px;
	} to {
		max-height: 400px;
	}
}
@keyframes flipOut {
	from {
		max-height: 400px;
	} to {
		max-height: 0px;
	}
}
.shopify-buy__cart-item:after {
    content:'';
    display:block;
    clear:both;
}
.shopify-buy__cart-item__image {
    float:left;
    width:128px;
    height:160px;
    background-size:contain;
    background-position:center;
    background-repeat:no-repeat;
}
.shopify-buy__cart-item__title {
    display:block;
    padding-top:40px;
    font-family:'Avenir LT W01_85 Heavy1475544';
    line-height:1.2em;
    padding-bottom:8px;
    font-size:16px;
}
.shopify-buy__cart-item__price {
    display:inline-block;
    float:right;
    font-family:'Avenir LT W01_65 Medium1475532';
    font-size:18px;
    padding:4px 0;
}
.shopify-buy__cart-item__full-price {
    display:inline-block;
    font-family:'Avenir LT W01_65 Medium1475532';
    font-size:18px;
    padding:4px 0;
}
.shopify-buy__quantity-container {
    float:left;
}
.shopify-buy__btn--seamless {
    background:#eee;
    float:left;
    border:0;
    padding:0;
    line-height:0;
    cursor:pointer;
    outline:0;
    font-size:12px;
    border-radius:5px 0 0 5px;
    margin:0;
    transition:background 0.2s;
}
.shopify-buy__btn--seamless:hover {
    background:#ddd;
}
.shopify-buy__quantity-decrement {
    border-radius:5px 0 0 5px;
}
.shopify-buy__quantity-increment {
    border-radius:0 5px 5px 0;
}
.shopify-buy__btn--seamless svg {
    width:24px;
    height:32px;
}
.shopify-buy__quantity-decrement svg {
    padding:8px 0;
}
.shopify-buy__quantity-increment svg {
    padding:8px 0;
}
.shopify-buy__btn--seamless .visuallyhidden {
    display:none;
}
.shopify-buy__quantity {
    float:left;
    width:32px;
    height:32px;
    margin:0;
    padding:8px 0;
    text-align:center;
    background:#f5f5f5;
    border-radius:0 !important;
    -moz-appearance: textfield;
}
.shopify-buy__quantity::-webkit-inner-spin-button {
    display: none; 
}
.shopify-buy__cart-bottom {
    width:100%;
    border-top:2px solid #000;
    padding-top:16px;
}
.shopify-buy__cart__subtotal__text {
    float:left;
    font-family:'Avenir LT W01_65 Medium1475532';
    font-size:22px;
    margin-bottom:8px;
}
.shopify-buy__cart__subtotal__price {
    float:right;
    font-family:'Avenir LT W01_65 Medium1475532';
    font-size:22px;
    margin-bottom:8px;
}
.shopify-buy__cart__notice {
    text-align:center;
    clear:both;
    font-size:12px;
}
.shopify-buy__btn--cart-checkout {
    display:inline-block;
	background:rgba(0,0,0,0);
	color:#000;
	font-size:14px;
	font-family:'Avenir LT W01_85 Heavy1475544', sans-serif;
	border:2px solid #000;
	line-height:1em;
	cursor:pointer;
	transition:background 0.2s, border 0.2s, color 0.1s;
	padding:10px 40px;
	text-align:center;
	user-select: none;
	border-radius:100px;
	text-transform:uppercase;
	letter-spacing:0.05em;
	width:100%;
	text-decoration:none !important;
}
.shopify-buy__btn--cart-checkout:hover {
	background:rgba(0,0,0,1);
	color:#fff;
}
.shopify-buy-frame--toggle {
    position:absolute !important;
    width:100% !important;
    right:0 !important;
    top:0 !important;
    height:100% !important;
    cursor:pointer;
    transform:scale(1) !important;
    z-index:5 !important;
    display:block !important;
}
.shopify-buy__cart-toggle {
    width:100%;
    height:100%;
}
.shopify-buy__icon-cart {
    display:none;
}
.shopify-buy--visually-hidden {
    display:none;
}
.shopify-buy__cart-toggle__count {
    position:absolute;
    bottom:50%;
    right:6px;
    font-size:12px;
    border-radius:100%;
    background:#ffb400;
    line-height:1em;
    width:19px;
    height:19px;
    padding:4px 0;
    font-family:'Avenir LT W01_95 Black1475556', sans-serif;
    opacity:0;
    transition:opacity 0.3s;
    text-align:center;
    user-select:none;
}
.shopify-buy-frame--toggle.is-active .shopify-buy__cart-toggle__count {
    opacity:1;
}
.shopify-buy__cart-item__discount {
    display:none;
}
.shopify-buy__cart-item__price-and-discounts .visuallyhidden {
    display:none;
}
.productBuyButton2019 button {
    border:0;
    background:#2f2f2f;
    border-radius:10em;
    font-family:'Avenir LT W01_65 Medium1475532';
    padding:0.5em 1.5em;
    color:#fff;
    font-size:14px;
    cursor:pointer;
    transition:background 0.1s;
    outline:none;
    text-transform:uppercase;
    letter-spacing:0.05em;
}
.productBuyButton2019 button:disabled {
    background:#ddd !important;
    color:#555 !important;
    cursor:auto !important;
}
.productBuyButton2019 button:hover {
    background:#ffa500;
}

.shopify-buy__cart__discount {
    display:none;
}

/* -------------------------------------- PAGE STYLING --------------------------------------------- */


.productRangeRow2018 .productRangeImage2018 {
    transition:transform 0.2s;
}

.productRangeRow2018 .productRangeImage2018:hover {
    transform:scale(0.98);
}

.productRangeRow2018 .productRangeTitleContainer2018 {
    margin-bottom:16px;
}

.productRangeRow2018 .productRangeTitle2018 {
    text-align:center;
    margin:0;
    font-family:'Avenir LT W01_85 Heavy1475544', sans-serif;
}

.productRangeRow2018 .productRangeTitleContainer2018 a {
    color:#333;
    text-decoration:none;
}

.productRangeRow2018 .productRangeIntrotextContainer2018 {
    margin-bottom:16px;
    text-align:justify;
}

.productRangeRow2018 .productRangeIntrotextContainer2018 a {
    color:#000;
    text-decoration:none;
}

.productRangeRow2018 .productRangeOuter2018 {
    background:#f5f5f5;
    border-radius:16px;
    margin:0 16px 48px 16px;
}

.productRangeRow2018 .productRangeOuter2018:after {
    content:'';
    display:block;
    clear:both;
}

.productRangeRow2018 .productRangeColourChoicesContainer2018 {
    background:#fff;
    border-radius:5px;
    padding:8px 16px;
    margin-bottom:16px;
}

.productRangeRow2018 .productRangeColourChoicesContainer2018:after {
    content:'';
    clear:both;
    display:block;
}

.productRangeRow2018 .productRangeColourChoicesText2018 {
    float:left;
    padding:3px 0;
}

.productRangeRow2018 .productRangeColourChoicesText2018 .uppercaseText {
    font-size:12px;
    color:#2b2b2b;
}

.productRangeRow2018 .productRangeColourChoicesIcons2018 {
    float:right;
    line-height:0;
}

.productRangeRow2018 .productRangeColourChoicesIcons2018 .productColourSelector2018 {
    margin:4px 5px;
}

.productColourSelector2018.Black {
    background:#000;
}

.productColourSelector2018.White {
    background:#fff;
    border:1px solid black;
}

.productColourSelector2018.Bamboo {
    background:#ecb06b;
}

.productColourSelector2018.BlackPlus {
    background:#000;
    position:relative;
}

.productColourSelector2018.xBlackPlus:before {
    display:block;
    content:'';
    position:absolute;
    width:1px;
    height:80%;
    top:10%;
    left:48%;
    background:#fff;
}

.productColourSelector2018.xBlackPlus:after {
    display:block;
    content:'';
    position:absolute;
    width:80%;
    height:1px;
    top:48%;
    left:10%;
    background:#fff;
}

.productColourSelector2018.WhitePlus {
    background:#fff;
    border:1px solid black;
    position:relative;
}

.productColourSelector2018.BambooPlus {
    background:#ecb06b;
    position:relative;
}

.productColourSelector, .productColourSelector2018 {
    display:inline-block;
    width:16px;
    height:16px;
    border-radius:50%;
    margin:0 8px;
    cursor:pointer;
    border:1px solid transparent;
}

.productRangeRow2018 .productRangeColourChoicesIcons2018 .BambooWithSub, .productRangeRow2018 .productRangeColourChoicesIcons2018 .BlackWithSub, .productRangeRow2018 .productRangeColourChoicesIcons2018 .WhiteWithSub {
    display:none;
}

.productRangeRow2018 .productRangePriceContainer2018 {
    float:left;
    margin-top:6px;
}

.productRangeRow2018 .productRangePriceContainer2018 span {
    color:#323232;
}

.productRangeRow2018 .productRangePriceContainer2018 span span {
    text-decoration:line-through;
    color:#FE6464;
    margin:0;
    font-size:14px;
}

.productRangeRow2018 .productRangePriceContainer2018 span span span {
    text-decoration:none;
    margin:0;
    display:inline;
}

.productRangeRow2018 .productRangeBuyButtonContainer2018 {
    float:right;
}

.productRangeFamilyImageOuter {
    position:relative;
    line-height:0;
}

.productRangeFamilyImageOuter a {
    position:absolute;
    display:block;
}

.productRangeFamilyTextOuter {
    display:inline-block;
    width:68%;
}

.productRangeFamilyTextOuter div {
    float:left;
    width:20%;
}

.productRangeFamilyTextOuter div a {
    font-family:'Avenir LT W01_85 Heavy1475544';
    letter-spacing:0.1em;
    font-size:12px;
    color:#2b2b2b;
    text-decoration:none;
    padding:16px 8px;
    display:block;
    transition:opacity 0.2s;
}

.articleSelectorImageOuter2018 {
    position:relative;
    line-height:0;
    overflow:hidden;
}

.articleSelectorOuter2018 .articleSelectorImageOuter2018 {
    border-radius:8px;
}

.articleSelectorImageInner2018 {
    background-position:center;
    background-size:cover;
    transform:scale(1);
    transition:transform 0.3s;
    width:100%;
    height:100%;
    position:absolute;
}

.articleSelectorOuter2018:hover .articleSelectorImageInner2018 {
    transform:scale(1.05);
}

.articleSelectorImage2018 {
    visibility:hidden;
}

.articleSelectorTitle2018 {
    margin-top:16px;
}

.articleSelectorDate2018 {
    margin-bottom:8px;
    text-transform:uppercase;
    font-family:'Avenir LT W01_65 Medium1475532';
    letter-spacing:0.1em;
    font-size:11px;
    color:#707070;
}

.articleSelectorIntrotext2018 {
    margin-bottom:18px;
}

.articleSelectorTagsOuter2018 a {
    display:inline-block;
    padding:5px 16px;
    background:#eee;
    border-radius:100px;
    margin-right:8px;
    color:#000;
    text-decoration:none;
    transition:background 0.2s, color 0.1s;
    margin-bottom:8px;
    font-size:12px;
    font-family:'Avenir LT W01_65 Medium1475532';
    color:#555;
}

.articleSelectorTagsOuter2018 a:hover {
    background:#555;
    color:#fff;
}

.articleSocialShareButtons2018 a img {
    margin:0 4px;
    width:32px;
    transition:filter 0.2s;
}

.articleSocialShareButtons2018 a:hover img {
    filter:invert(40%);
}

@media only screen and (max-width:47em) {
    .articleSelectorClear2018 {display:block !important;}
}
@media only screen and (min-width:47em) and (max-width:62em) {
    .articleSelectorClear2018:nth-child(4n) {display:block !important;}
}
@media only screen and (min-width:62em) {
    .articleSelectorClear2018:nth-child(6n) {display:block !important;}
}

.blogIntro {
    text-align:center !important;
    font-size:28px;
    margin:0 auto;
}
    
.dockPageBulletPoint {
    width:100% !important;
}

.dockGrooveSliderButton:hover {
    transform:scale(1.05);
}

.productRangeRow2018 {
    max-width:100em;
}

.productRangeRow2018 .productRangeImage2018 {
    transition:transform 0.2s;
}

.productRangeRow2018 .productRangeImage2018:hover {
    transform:scale(0.98);
}

.productRangeRow2018 .productRangeTitleContainer2018 {
    margin-bottom:16px;
}

.productRangeRow2018 .productRangeTitle2018 {
    text-align:center;
    margin:0;
    line-height:1em;
    font-family:'Avenir LT W01_85 Heavy1475544', sans-serif;
}

.productRangeRow2018 .productRangeTitle2018 a {
    color:#2f2f2f;
    text-decoration:none;
}

.productRangeRow2018 .productRangeIntrotextContainer2018 {
    margin-bottom:16px;
    line-height:1.1em;
    text-align:justify;
}

.productRangeRow2018 .productRangeIntrotextContainer2018 a {
    color:#000;
    text-decoration:none;
}

.productRangeRow2018 .productRangeOuter2018 {
    background:#f5f5f5;
    border-radius:16px;
    margin:0 16px 48px 16px;
}

.productRangeRow2018 .productRangeOuter2018:after {
    content:'';
    display:block;
    clear:both;
}

.productRangeRow2018 .productRangeColourChoicesContainer2018 {
    background:#fff;
    border-radius:5px;
    padding:8px 16px;
    margin-bottom:16px;
}

.productRangeRow2018 .productRangeColourChoicesContainer2018:after {
    content:'';
    clear:both;
    display:block;
}

.productRangeRow2018 .productRangeColourChoicesText2018 {
    float:left;
}

.productRangeRow2018 .productRangeColourChoicesText2018 span {
    font-size:11px;
    letter-spacing:0.1em;
    text-transform:uppercase;
    color:#2b2b2b;
    font-family:'Avenir LT W01_85 Heavy1475544';
}

.productRangeRow2018 .productRangeColourChoicesIcons2018 {
    float:right;
    line-height:0;
}

.productRangeRow2018 .productRangeColourChoicesIcons2018 .productColourSelector2018 {
    margin:4px 5px;
}

.productRangeRow2018 .productRangeColourChoicesIcons2018 .BambooWithSub, .productRangeRow2018 .productRangeColourChoicesIcons2018 .BlackWithSub, .productRangeRow2018 .productRangeColourChoicesIcons2018 .WhiteWithSub {
    display:none;
}

.productRangePriceContainer2018 {
    float:left;
    margin-top:6px;
}

.productRangePriceContainer2018 span {
    font-size:19px;
    color:#323232;
    font-family:'Avenir LT W01_55 Roman1475520';
}

.productRangePriceContainer2018 span span {
    text-decoration:line-through;
    color:#FE6464;
    margin:0;
    font-size:14px;
}

.productRangePriceContainer2018 span span span {
    text-decoration:none;
    margin:0;
    display:inline;
}

.productRangeRow2018 .productRangeBuyButtonContainer2018 {
    float:right;
}

.productRangeRow2018 .productRangeBuyButtonContainer2018 a.buyButton {
    padding:8px 24px;
}

.productRangeRow2018 .productRangeBuyButtonContainer2018 a.buyButton span {
    font-size:14px;
}

.supportSelector a {
    color:#000;
    text-decoration:none;
    text-align:center;
}

.supportSelector h3 {
    text-align:center;
}

.supportSelector p {
    text-align:center;
}

.supportSelector p a {
    color:#888;
    font-size:16px;
}

.supportSelector img {
    border-radius:8px;
    transition:transform 0.2s;
}

.supportSelector a:hover img {
    transform:scale(0.98);
}

.accessorySelectorCol2018 {
    padding:16px !important;
}

.accessorySelectorInner2018 {
    background:#f5f5f5;
    border-radius:16px;
    padding:16px;
}

.accessorySelectorInner2018 .accessorySelectorImage2018 {
    width:70%;
    transition:transform 0.2s;
}

.accessorySelectorInner2018 .accessorySelectorImage2018:hover {
    transform:scale(0.98);
}

.accessorySelectorInner2018 .accessorySelectorTitleContainer2018 {
    margin-bottom:16px;
}

.accessorySelectorInner2018 a {
    color:#000;
    text-decoration:none;
}

.accessorySelectorInner2018 h3 {
    margin:0;
}

.accessorySelectorInner2018 .accessorySelectorDivider2018 {
    border-top:2px solid #000;
    margin-bottom:16px;
}

.accessorySelectorInner2018 .accessorySelectorIntrotextContainer2018 {
    margin-bottom:16px;
}

.accessorySelectorInner2018 .accessorySelectorIntrotextContainer2018 a {
    color:#000;
    text-decoration:none;
}

.accessorySelectorInner2018 .accessorySelectorPriceLearnContainer2018:after {
    content:'';
    display:block;
    clear:both;
}

.accessorySelectorInner2018 .accessorySelectorPriceContainer2018 {
    float:left;
    margin-top:8px;
}

.accessorySelectorInner2018 .accessorySelectorPriceContainer2018 {
    color:#323232;
}

.accessorySelectorInner2018 .accessorySelectorBuyButtonContainer2018 {
    float:right;
}

feefowidget-logo-small {
    padding-top:8px !important;
    padding-bottom:8px !important;
    clear:both;
    background:none !important;
}

.feefo-review-widget-product img {
    width:auto;
}

.feefowidget-reviews-total, .feefowidget-logo {
    display:none;
}

.feefoReviewLink feefowidget-rating-stars .feefowidget-rating-wrapper .feefowidget-star {
    font-size:22px !important;
    margin-right:3px !important;
}

feefowidget-global .feefowidget-global-container {
    background:transparent !important;
}

feefowidget-global feefowidget-feedbacks-filtering-dropdown .feefowidget-ratings-dropdown.feefowidget-ratings-dropdown-desktop .feefowidget-ratings-dropdown-button {
    background-color:transparent !important;
}

.explosionSlider {
    visibility:hidden;
}

.explosionHelper {
    text-align:center;
    visibility:hidden;
}

.explosionHelper img {
    width:9px;
    transform:rotate(270deg);
}

.explosionHelper span {
    text-size:12px;
}

#specs {
    color:#fff;
    background:#1e1e1e;
    padding:24px 0;
}

#specs [class*="col-"] {
    line-height:1.1em;
}

.specsTable {
    margin:0;
    table-layout: fixed;
}

.specsTable td {
    vertical-align:middle;
    padding:6px 0;
}

.specsImage {
    line-height:0;
    width:48px;
}

.specsTable img {
    width:48px;
    padding-right:24px;
    line-height:0;
}

.specsTitle {
    font-size:22px;
    font-family:"Avenir LT W01_65 Medium1475532";
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.newProductPageInfoContainer {
    max-width:480px;
    margin:0 auto 32px auto;
}

.newProductPageInfoContainer:after {
    content:'';
    display:block;
    clear:both;
}

.newProductPageTitle  {
    margin:0;
    font-family:'Avenir LT W01_85 Heavy1475544', sans-serif;
    font-size:48px;
    color:#333;
}

.newProductPageIntrotextContainer {
    margin:5px auto 16px auto;
    font-size:1.2em;
    line-height:1.1em;
}

.newProductPageLineSpacer {
    border-top:1px solid #c0c0c0;
    margin-bottom:19px;
}

.newProductPagePrice {
    text-align:center;
    padding-bottom:16px;
}

.newProductPagePrice span {
    font-size:32px;
    line-height:1em;
    color:#2f2f2f;
}

.newProductPagePrice span span {
    font-size:18px;
    text-decoration:line-through;
    color:#eb6666;
}

.newProductPagePrice span span span {
    text-decoration:none;
}

.productBuyButton2019 {
    padding-bottom:16px;
}

.newProductPagePriceName {
    text-align:center;
    margin-bottom:16px;
}

.newProductPageBulletPointRow.row {
    padding-top:24px;
    padding-bottom:24px;
}

.newProductPageBulletPointRow a {
    color:#000;
    text-decoration:none;
}

.newProductPageBulletPointRow img {
    width:20%;
}

.newProductPageBulletPointTitle {
    padding:16px 0;
    font-family:'Avenir LT W01_55 Roman1475520';
    font-size:19px;
}

.newProductPageBulletPointDescription {
    line-height:1.1em;
    font-size:15px;
}

.productDetailShotContainer {
    position:relative;
    line-height:0;
    background:#000;
    margin:2em auto;
    width:100%;
}

.productDetailBackground {
    visibility:hidden;
    width:100%;
}

.productDetailShot1, .productDetailShot2, .productDetailShot3, .productDetailShot4 {
    width:100%;
    overflow:hidden;
}

.productDetailShotContainer img {
    transition:transform 0.5s;
    width:100%;
}

.productDetailShotContainer img:hover {
    transform:scale(1.05);
}

.productDetailShotContainer .imageActive {
    width:100% !important;
    height:100% !important;
}

.productDetailShot1 {
    top:0;
    left:0;
}

.productDetailShot2 {
    top:0;
    right:0;
}

.productDetailShot3 {
    bottom:0;
    left:0;
}

.productDetailShot4 {
    bottom:0;
    right:0;
}

.productCommercialImageContainer {
    position:absolute;
    left:0;
    line-height:0;
    margin:2em auto;
    width:100%;
}

.productCommercialImageBackground {
    visibility:hidden;
    width:100%;
}

.productCommercialImage1, .productCommercialImage2, .productCommercialImage3, .productCommercialImage4, .productCommercialImage5, .productCommercialImage6 {
    width:100%;
    overflow:hidden;
}

.productCommercialImageContainer div img {
    transition:transform 0.5s, margin 0.5s;
    height:auto;
    width:100%;
}

.productCommercialImageContainer img:hover {
    transform:scale(1.05);
}

.productCommercialImageContainer .imageActive {
    width:100% !important;
    height:100% !important;
    left:0 !important;
}

.productCommercialImageContainer .imageActive img {
    margin-left:0;
    margin-right:0;
}

.productCommercialImageContainer .productCommercialImage3.imageActive, .productCommercialImageContainer .productCommercialImage6.imageActive {
    width:100% !important;
    height:100% !important;
    left:auto !important;
}

.productCommercialImage1 {
    top:0;
    left:0;
}

.productCommercialImage2 {
    top:0;
    left:33.33%;
}

.productCommercialImage3 {
    top:0;
    right:0;
}

.productCommercialImage4 {
    bottom:0;
    left:0;
}

.productCommercialImage5 {
    bottom:0;
    left:33.33%;
}

.productCommercialImage6 {
    bottom:0;
    right:0;
}

.productMenuOuter {
    position:fixed;
    top:-75px;
    width:100%;
    z-index:1000;
    background:rgba(255,255,255,0.9);
    border-bottom:1px solid rgba(238,238,238,0.9);
    transition:top 0.3s;
}

.productMenuOuter .col-24 {
    padding-top:0;
    padding-bottom:0;
    overflow:hidden;
}

.productMenuItemsOuter {
    clear:both;
    height:0;
    overflow:hidden;
    transition:height 0.2s;
}

.productMenuItemsOuter.open {
    height:auto;
}

.productMenuItemsInner {
    border-top:1px solid #ddd;
}

.productMenuItemsInner:after {
    content:'';
    clear:both;
    display:block;
}

.productMenuTitleOuter a, .productMenuItemsOuter a {
    display:block;
    color:#000;
    text-decoration:none !important;
    font-family:'Avenir LT W01_65 Medium1475532', sans-serif;
    font-size:15px;
}

.productMenuTitleOuter a {
    padding:23px 20px 23px 0;
    float:left;
    user-select:none;
}

.productMenuTitleOuter a img {
    width:16px;
    transition:transform 0.2s;
    margin-left:5px;
}

.productMenuOuter.open .productMenuTitleOuter a img {
    transform:rotate(180deg);
}

.productMenuOpenButton {
    text-align:center;
}

.productMenuOpenButton img {
    width:20px;
}

.productMenuItemsOuter a {
    opacity:0.8;
    transition:opacity 0.1s;
    padding:15px 10px;
}

.productMenuItemsOuter a:hover {
    opacity:1;
}

.productMenuBuyButtonOuter {
    float:right;
    padding:15px 0;
}

.productMenuBuyButtonOuter .productBuyButton2019 {
    padding:0;
}/* Above tablet width */

@media only screen and (min-width: 62em) {

.articleSelectorClearDesktopOnly2018 {
    display:block !important;
}

.shopify-buy-cart-wrapper {
    width:50% !important;
}

}


/* Tablet width */

@media only screen and (min-width: 47em) and (max-width: 62em) {
    
/* ------------------------------------ SITE WIDE CLASSES --------------------------------------------- */
    
.tab-col-0 {display:none !important; width:0 !important; height:0 !important; padding:0 !important;}
.tab-col-1 {width: 4.16% !important;}
.tab-col-2 {width: 8.33% !important;}
.tab-col-3 {width: 12.5% !important;}
.tab-col-4 {width: 16.66% !important;}
.tab-col-5 {width: 20.83% !important;}
.tab-col-6 {width: 25% !important;}
.tab-col-7 {width: 29.16% !important;}
.tab-col-8 {width: 33.33% !important;}
.tab-col-9 {width: 37.5% !important;}
.tab-col-10 {width: 41.66% !important;}
.tab-col-11 {width: 45.83% !important;}
.tab-col-12 {width: 50% !important;}
.tab-col-13 {width: 54.16% !important;}
.tab-col-14 {width: 58.33% !important;}
.tab-col-15 {width: 62.5% !important;}
.tab-col-16 {width: 66.66% !important;}
.tab-col-17 {width: 70.83% !important;}
.tab-col-18 {width: 75% !important;}
.tab-col-19 {width: 79.16% !important;}
.tab-col-20 {width: 83.33% !important;}
.tab-col-21 {width: 87.5% !important;}
.tab-col-22 {width: 91.66% !important;}
.tab-col-23 {width: 95.83% !important;}
.tab-col-24 {width: 100% !important; display:block !important;}

.centerTablet {text-align:center !important;}

/* -------------------------------------- TEMPLATE STYLING --------------------------------------------- */

.mainMenuOuter {
    width:75% !important;
}

.shopify-buy-cart-wrapper {
    width:75% !important;
}

/* -------------------------------------- PAGE STYLING --------------------------------------------- */

.articleSelectorClearTabletOnly2018 {
    display:block !important;
}

}




/* ------------------------------------- Desktop width ----------------------------------------------- */

@media only screen and (min-width: 47em) {
    
/* ------------------------------------ SITE WIDE CLASSES --------------------------------------------- */
    
.row {padding:0 16px;}
.col-1 {width: 4.16%;}
.col-2 {width: 8.33%;}
.col-3 {width: 12.5%;}
.col-4 {width: 16.66%;}
.col-5 {width: 20.83%;}
.col-6 {width: 25%;}
.col-7 {width: 29.16%;}
.col-8 {width: 33.33%;}
.col-9 {width: 37.5%;}
.col-10 {width: 41.66%;}
.col-11 {width: 45.83%;}
.col-12 {width: 50%;}
.col-13 {width: 54.16%;}
.col-14 {width: 58.33%;}
.col-15 {width: 62.5%;}
.col-16 {width: 66.66%;}
.col-17 {width: 70.83%;}
.col-18 {width: 75%;}
.col-19 {width: 79.16%;}
.col-20 {width: 83.33%;}
.col-21 {width: 87.5%;}
.col-22 {width: 91.66%;}
.col-23 {width: 95.83%;}
.col-24 {width: 100%;}

.centerMobile {text-align:inherit;}
.centerTablet {text-align:inherit;}
.mobileOnly {display:none !important;}
.mobileOnlyMiddleAlign {display:none !important;}
.desktopOnly {display:block !important;}
.desktopOnlyMiddleAlign {display:table-cell !important;}
img.autoWidthIfDesktop{width:auto;}
.noPaddingMobile { padding-left:16px !important; padding-right:16px !important;}

.middleAlign div[class*='col-'] {
	display:table-cell;
	float:none;
	vertical-align:middle;
}

.openExpandable:hover .expandableIcon {
    opacity:1;
}

.sliderOuterImage {
    background:none;
}

.sliderOuterImage .sliderItem {
    background:none !important;
    opacity:1;
}

.sliderOuterImage img {
    visibility:visible;
}

.pageHeaderBackground2019 {
    background-attachment:fixed;
}

/* -------------------------------------- TEMPLATE STYLING --------------------------------------------- */

.mainMenuOuter {
    width:50%;
}

.locationPopupButtonContainer .darkButton {
    width:auto;
    float:right;
}

#mouseLeaveEmailCapture .popupInner {
    background:url(/assets/images/template/mouseLeaveCapture-desktop.jpg) no-repeat #fff left;
    background-size:240px auto;
    padding:32px 32px 32px 272px;
    max-width:720px;
    text-align:left;
}

.cookiePopupText span {
    font-size:16px !important;
}

.shopify-buy-cart-wrapper {
    padding:16px 32px;
}

.shopify-buy__cart-item__image {
    width:160px;
}

.mouseLeaveEmailCaptureContainer .headerUpsellContainerInnerInner {
    background:url(/assets/images/template/mouseLeaveCapture-desktop.jpg) no-repeat #fff left;
    background-size:240px auto;
    padding:32px 32px 32px 272px;
    max-width:720px;
    text-align:left;
}

.mouseLeaveEmailCaptureContainer .headerUpsellLine {
    width:80px;
    margin:0 0 16px 0;
}

.mouseLeaveEmailCaptureContainer h2 {
    text-align:left;
}

.cookiePopupText span {
    font-size:16px;
}

.footerTitleOuter span {
    font-size:24px;
}

.footerLinksOuter {
    display:block;
}

.footerLinksSameLine .footerLinksOuter {
    display:inline-block;
}

.footerLinkItem {
    float:none !important;
    padding:16px 16px 0 16px;
    width:auto !important;
    display:inline-block;
}

.footerLocationOuter {
    float:left;
    width:224px;
    text-align:left;
}

.footerCopyrightOuter {
    float:right;
    width:224px;
    text-align:right;
    clear:none;
}

/* -------------------------------------- PAGE STYLING --------------------------------------------- */

#storeLocatorMap, #storeLocatorPanel {
	height: 80vh;
}

#storeLocatorOuter {
	display:block !important;
	padding:24px 16px;
}

.productDetailShotContainer {
    width:calc(100% - 32px);
}

.productDetailShotContainer div {
    position:absolute;
    width:50%;
    height:50%;
    transition:0.5s width, 0.5s height;
    cursor:pointer;
}

.productCommercialImageContainer {
    position:absolute;
    width:100%;
    margin:24px 0;
}

.productCommercialImageContainer div {
    position:absolute;
    width:33.33%;
    height:50%;
    transition:0.5s width, 0.5s height, 0.5s left;
    cursor:pointer;
}

.productCommercialImageContainer div img {
    height:100%;
    width:auto;
    margin-left:-25%;
    margin-right:-25%;
}

.productDetailShotContainer div::before, .productCommercialImageContainer div::before {
    content:'';
    position:absolute;
    top:32px;
    right:32px;
    background:url(/assets/images/template/close.svg);
    width:32px;
    height:32px;
    z-index:777;
    background-size:100% 100%;
    opacity:0;
}

.specsMainTitle {
    width:192px !important;
}

.specsMainTitle h2 {
    width:192px !important;
}

.specsMainTitleImage {
    width:100% !important;
    text-align:center;
}

.specsMainTitleImage img {
    width:60% !important;
    min-width:240px;
}

.A70SubwooferBG {
    width:calc(100% - 32px);
    margin:0 auto;
}

.A70SubwooferOuter {
    position:absolute;
    top:0;
    right:0;
    width:100%;
    background:transparent;
    height:100%;
}

.A70SubImage {
    margin-top:0;
}

.dockPageBulletPoint {
    width:20% !important;
}

.newProductPageBulletPoint {
    width:20% !important;
}

.productRangeRow2018 .productRangeTitle2018 {
    text-align:left;
}

.productRangeRow2018 .productRangeIntrotextContainer2018 {
    text-align:left;
}

.newProductPageInfoContainer .newProductPagePrice {
    float:left;
}

.newProductPageInfoContainer .productBuyButton2019 {
    float:right;
}

.imageActive::before {
    opacity:1 !important;
    transition:0.5s opacity 0.5s;
}

.productMenuItemsOuter a {
    float:left;
}

}