html,
body
{
	font-family:            "Roboto Slab", Arial, serif;
	background-color:       white;
	color:                  #333;
}

button
{
	border-style:           none;
	background:             none;
	cursor:                 pointer;
}

.content p
{
	margin-top:             1em;
}

.validation-advice
{
	margin:					2px 0;
	padding:				3px;
	background-color:		#ff3300;
	color:					white;
	font-weight:			bold;
	font-size:				12px;
	font-family:			"Lucida Grande", "Lucida Sans Unicode", Tahoma, Arial, Verdana, "Trebuchet MS", sans-serif;
}

.extended
{
	width:					100%;
	box-sizing:             border-box;
}

.errori
{
	border:					2px solid red;
	color:					red;
	padding:				6px 30px 6px 30px;
}

.pagerLine
{
	border-bottom:			1px solid silver;
	width:					99%;
}

.pagerPages
{
	white-space:			nowrap;
	font-size:				10pt;
	width:					1%;
}

.pagerPages A
{
	text-decoration:		none;
	color:					black;
}

.pagerPages A:hover
{
	text-decoration:		underline;
}

#clickToChat
{
	width:					600px;
	text-align:				right;
	position:				absolute;
	top:					3px;
	right:					4px;
}

#clickToChat a
{
	color:					#666;
	font-weight:			bold;
	position:				relative;
}

#userIcon
{
	position: 				relative;
}

#userIcon img
{
	border-radius: 			50%;
	max-width: 				24px;
	max-height:				24px;
	position: 				absolute;
	top:					2px;
	left:					2px;
}

#userIcon > div
{
	display: 				none;
	position: 				absolute;
	left:					50%;
	top:					130%;
	transform: 				translateX( -50% );
	background-color: 		#f25022;
	color:					white;
	border-radius: 			12px;
	padding:				0 8px;
	white-space: 			nowrap;
	font-size: 				14px;
	font-weight:			bold;
}

#userIcon:hover > div
{
	display:				block;
}

#userIcon > div::before
{
	content: 				'';
	width:					10px;
	height:					10px;
	display: 				block;
	position: 				absolute;
	top:					-3px;
	left:					50%;
	z-index: 				-2;
	background-color: 		#f25022;
	transform: 				translateX( -50% ) rotate( 45deg );
}

#userIcon.loggedIn,
#userAvatar,
.comment .avatar
{
	border-radius: 			50%;
	color:					#c07325;
	border-color: 			#f5b376;
	width:					28px;
	height:					28px;
	text-align: 			center;
}

#userIcon.loggedIn,
#userIcon.loggedIn > div,
#userIcon.loggedIn > div::before,
#userAvatar,
#pointsBalance > span:first-child,
.comment .avatar,
#currentLevelMeter .progress,
#currentLevelMeter .progress.level::before,
#currentLevelMeter .progress.level::after
{
	background-color: 		#f5b376;
}

#currentUserLevel,
#bonusPoints .level1 h4
{
	color:			 		#f5b376;
	font-weight: 			bold;
	text-transform: 		uppercase;
}

#userIcon.loggedIn.userLevel100,
#userAvatar.userLevel100,
.comment .avatar.userLevel100
{
	color:					#868490;
	border-color:	 		#b6b4c0;
}

#currentLevelMeter .marker.level100
{
	border-color:			#868490;
}

#userIcon.loggedIn.userLevel200,
#userAvatar.userLevel200,
.comment .avatar.userLevel20
{
	color:					#f2a823;
	border-color:	 		#ecd05e;
}

#currentLevelMeter .marker.level200
{
	border-color:			#f2a823;
}

#userIcon.loggedIn.userLevel100,
#userIcon.loggedIn.userLevel100 > div,
#userIcon.loggedIn.userLevel100 > div::before,
#userAvatar.userLevel100,
.userLevel100 #pointsBalance > span:first-child,
.comment .avatar.userLevel100,
#currentLevelMeter .progress.level100,
#currentLevelMeter .progress.level100::before,
#currentLevelMeter .progress.level100::after
{
	background-color: 		#b6b4c0;
}

.userLevel100 #currentUserLevel,
.nextLevel100,
#bonusPoints .currentLevel .level100,
#bonusPoints .currentLevelStrapline .level100,
#bonusPoints .level100 h4
{
	color:			 		#b6b4c0;
}

#userIcon.loggedIn.userLevel200,
#userIcon.loggedIn.userLevel200 > div,
#userIcon.loggedIn.userLevel200 > div::before,
#userAvatar.userLevel200,
.userLevel200 #pointsBalance > span:first-child,
.comment .avatar.userLevel200,
#currentLevelMeter .progress.level200,
#currentLevelMeter .progress.level200::before,
#currentLevelMeter .progress.levels00::after
{
	background-color: 		#ecd05e;
}

.userLevel200 #currentUserLevel,
.nextLevel200,
#bonusPoints .currentLevel .level200,
#bonusPoints .currentLevelStrapline .level200,
#bonusPoints .level200 h4
{
	color:			 		#ecd05e;
}

#userIcon.loggedIn svg
{
	height:					17px;
}

#switchCurrency,
#btSearch
{
	font-size:				16px;
}

#switchCurrency
{
	position:               relative;
	display:				inline-block;
}

#switchCurrency > div::after
{
	content:                " ";
	background-image:       url( '/images/icons/chevron-down.svg' );
	background-size:        16px 16px;
	background-position:    center;
	width:                  22px;
	height:                 22px;
	display:                inline-block;
}

#switchLanguage img
{
	max-width: 				32px;
	margin: 				4px 0;
}

#switchLanguage > div > img
{
	height: 				20px;
}

.dropdownMenu
{
	font-size:				16px;
	position:               relative;
}

.dropdownMenu,
#headerActions > a
{
	display:				inline-flex;
	flex-direction: 		column;
	justify-content:		center;
}

#headerActions > a
{
	color:					inherit;
}

.dropdownMenu ul
{
	text-align:             left;
	min-width:              60px;
	background:             white;
	border:                 1px solid #e0e0e0;
	border-radius:          5px;
	box-shadow:             1px 1px 5px 1px rgba(179,179,179,1);
	padding:                5px 0 4px;
	position:               absolute;
	top:                    22px;
	left:                  	50%;
	transform: 				translateX( -50% );
	opacity:                .97;
	z-index:                999;
}

.dropdownMenu div,
.dropdownMenu li
{
	display:                flex;
	justify-content:        center;
}

.dropdownMenu li
{
	cursor:                 pointer;
	display: 				flex;
	align-items: 			center;
	justify-content: 		flex-end;
	padding: 				0 4px;
}

.dropdownMenu li > span
{
	margin-right:			1ex;
	font-size: 				18px;
}

.dropdownMenu li:hover
{
	background-color:       #eee;
}

#socialBar
{
	width:						45px;
	height:						140px;
	position:					fixed;
	right:						0;
	top:						200px;
}

#sbClose
{
	position:					absolute;
	right:						2px;
	top:						8px;
	font-size:					9px;
}

#sbButtons
{
	margin-top:					24px;
	padding-left:				5px;
}

#sbButtons img
{
	margin-bottom:				1px;
}

.popup,
.popup .top,
.popup .bottom
{
	width:					438px;
}

.popup
{
	position:				absolute;
	top:					200px;
	left:					50%;
	margin-left:			-218px;
	width:					436px;
	min-height:				25px;
	z-index:				1000;
	border:                 3px solid #c00;
	border-radius:          5px;
	box-shadow:             1px 1px 5px 1px rgba(179,179,179,1);
	padding:                10px 5px;
	background-color:       white;
}

.popup .content
{
	overflow:				hidden;
	position:				relative;
	margin-bottom:			12px;
	width:					410px;
	padding-left:			14px;
	padding-right:			14px;
}

.popup .content button,
.popup .content .button
{
	float:					right;
}

.popup .content button.std
{
	height:                 auto;
	padding:				.2em 2ex;
	margin-top:             .5em;
}

.popup .popupFooter
{
	clear:					both;
	padding-top:			1.5em;
}

#buyPopup .text
{
	text-align:				left;
}

#buyPopupCheckbox
{
	font-size:				13px;
}

#buyPopupCheckbox p:first-child
{
	display:				inline;
	margin-top:				0;
}

#buyPopup .popupFooter
{
	padding-top:			0;
}

header,
nav,
section.content
{
	max-width:      1200px;
	padding:        0;
	box-sizing:     border-box;
	margin-left:    20px;
	margin-right:   20px;
}

@media ( min-width: 1240px )
{
	header,
	nav,
	section.content
	{
		margin-left:    auto;
		margin-right:   auto;
	}
}

header
{
	padding-top:    32px;
	display:        flex;
	flex-wrap:      wrap;
	position:       relative;
}

header > div
{
	flex:           0 0 auto;
}

header .slogan
{
	flex-grow:      1;
	font-weight:    300;
	font-style:     italic;
}

header .slogan h6
{
	display:        block;
	color:          #E40F1C;
	font-size:      18px;
	font-weight:    bolder;
	font-style:     normal;
	line-height:    22px;
}

header a,
nav a
{
	text-decoration:    none;
}

#topLogo
{
	margin-right:       16px;
	max-width:          220px;
}

.hdrIcon
{
	height:             20px;
}

#btSearch
{
	padding-right: 		0;
}

#btSearch span
{
	margin-right:		1ex;
}

#searchBox
{
	z-index:            1000;
	position:           absolute;
	top:                32px;
	left:               0;
	width:              100%;
	height:             50px;
	display:            flex;
	align-items:        center;
	background-color:   white;
	box-shadow:         0 2px 6px 0 rgba( 0, 0, 0, 0.17 );
	transition:         opacity .3s cubic-bezier( 0.175, 0.885, 0.335, 1 );
	opacity:            1;
}

header.noSearch #searchBox
{
	z-index:            -1000;
	opacity:            0;
}

#searchStore
{
	flex:               1 1 auto;
}

#searchStore input
{
	width:              100%;
	height:             36px;
	font-size:          16px;
	border:             none;
	padding:            0 1em;
}

#searchBox button
{
	padding:            0 1em;
}

#searchHints
{
	margin-left:        3px;
	padding:            0 1em;
	max-height:         800px;
	overflow:           auto;
}

div.autocomplete
{
  	position:				absolute;
	width:					99%;
	box-sizing:				border-box;
  	background-color:		white;
  	margin:					0;
  	padding:				0;
	box-shadow:             0 8px 6px 6px rgba( 0, 0, 0, 0.17 );
}

div.autocomplete ul
{
  	list-style-type:		none;
  	margin:					0;
  	padding:				0;
}

div.autocomplete ul li.selected
{
	background-color: 		#ffb;
}

div.autocomplete ul li
{
  	list-style-type:		none;
  	display:				block;
  	margin:					0;
  	padding:				0;
  	cursor:					pointer;
	position:				relative;
}

.hintType,
.hintValue
{
	padding:                2px;
}

.hintType
{
	font-style:				italic;
	font-weight:			bold;
	font-size:				15px;
	background-color:       white;
	z-index:                1;
	border-bottom:          1px solid #e0e0e0;
	margin-bottom:          10px;
	margin-top:             2px;
}

.hintValue
{
	display:                flex;
	align-items:            center;
	font-size:				18px;
}

.hintValue .img
{
	flex:                   0 0 auto;
	width:                  80px;
}

.hintValue .img img
{
	max-width:              70px;
}

.hintValue .strapline
{
	font-size:              .8em;
	color:                  #777;
}

#headerActions,
#headerActions > *
{
	display:                flex;
}

#headerActions
{
	align-items:			center;
	justify-content:		flex-end;
}

#headerActions > * + *
{
	margin-left:			30px;
}

@media( max-width: 666px )
{
	#headerActions
	{
		flex:               1 0 auto;
	}
}

nav
{
	border-top:             1px solid #e0e0e0;
	padding-top:            25px;
	margin-top:             25px;
	display:                flex;
	font-size:              16px;
}

nav button img
{
	height:                 24px;
}

nav a
{
	color:                  #333;
}

nav a:hover
{
	text-decoration:        underline;
	color:                  #eb4952;
}

nav > button
{
	flex:                   0 0 auto;
	align-self:             flex-start;
}

nav > div
{
	flex:                   0 1 auto;
	max-height:             21px;
	overflow:               hidden;
	transition:             max-height 0.2s ease-out;
}

nav div span
{
	white-space:            nowrap;
	display:                inline-block;
	margin-bottom:          .5em;
	margin-left:            60px;
}

nav div span:first-child
{
	margin-left:            1ex;
	margin-right:           -30px;
	font-weight:            lighter;
}

#returnToWebsite
{
	margin-top:             6px;
	font-size:              .8em;
}

#hamburgerMenuOverlay
{
	display:                none;
	opacity:                0;
	left:                   0;
	width:                  100vw;
	z-index:                999;
	transition:             opacity .5s ease-out;
}

#hamburgerMenu
{
	left:                   -100%;
	width:                  400px;
	padding:                20px;
	box-sizing:             border-box;
	max-width:              100vw;
	z-index:                1000;
	transition:             left .2s ease-out;
	overflow:               auto;
	overscroll-behaviour:	contain;
}

#hamburgerMenu,
#hamburgerMenu a
{
	color:                  white;
}

#hamburgerMenu a
{
	text-decoration:        none;
}

#hamburgerMenu a:hover
{
	text-decoration:        underline;
}

#hamburgerMenuOverlay,
#hamburgerMenu
{
	position:               fixed;
	top:                    0;
	bottom:                 0;
	background-color:       #333;
}

.menuOpen #hamburgerMenuOverlay
{
	display:                block;
	opacity:                .3;
	transition:             opacity .5s ease-in;
}

.menuOpen #hamburgerMenu
{
	left:                   0;
	transition:             left .3s ease-in;
}

#hamburgerMenu button:first-child
{
	float:                  right;
}

#hamburgerMenu button:first-child img
{
	filter:                 invert() saturate(100) brightness(1);
}

#hamburgerMenu h4
{
	margin-top:             1.5em;
	font-size:              120%;
	padding-bottom:         4px;
	border-bottom:          1px solid #e0e0e0;
}

#hamburgerMenu ul
{
	margin-top:             1em;
}

#hamburgerMenu ul li
{
	padding:                3px 0;
}

section.carousel
{
	position:               relative;
}

@media ( max-width: 1259px )
{
	section.carousel
	{
		max-width:          calc( 100% - 72px );
		margin-left:        auto;
		margin-right:       auto;
	}
}

.carousel-btn-prev,
.carousel-btn-next
{
	position:               absolute;
	top:                    0;
	height:                 100%;
	display:                flex;
	flex-direction:         column;
	justify-content:        center;
	padding:                0;
}

.carousel-btn-prev
{
	left:                   -36px;
}

.carousel-btn-next
{
	right:                  -36px;
}

.carousel-btn-prev img
{
	transform:              rotate( 90deg );
}

.carousel-btn-next img
{
	transform:              rotate( 270deg );
}

.carousel-btn-prev img,
.carousel-btn-next img
{
	height:                 36px;
	filter:                 invert() sepia(100) saturate(20) hue-rotate(290deg) saturate(50) brightness(0.8);
}

.tns-nav
{
	margin-top:             15px;
	display:                flex;
	flex-wrap:              wrap;
	justify-content:        center;
	width:                  100%;
}

.tns-nav button
{
	background-color:   white;
	border:             2px solid #c2c2c2;
	border-radius:      50%;
	cursor:             pointer;
	height:             16px;
	width:              16px;
	box-sizing:         border-box;
	padding:            0;
	outline:            none;
	margin:             0 10px;
}

.tns-nav button.tns-nav-active
{
	cursor:             default;
	border-color:       #e30613;
	position:           relative;
}

.tns-nav button.tns-nav-active::after
{
	height:             8px;
	width:              8px;
	border-radius:      50%;
	background-color:   #e30613;
	content:            "";
	display:            block;
	position:           absolute;
	top:                2px;
	left:               2px;
}

section.content
{
	margin-top:         16px;
	margin-bottom:      60px;
}

section.content h1,
section.content h2,
section.content h3
{
	text-align:         center;
}

section.content h1
{
	font-size:          32px;
	font-weight:        bold;
}

section.content.general h1,
section.content.general h2
{
	margin:             1em;
}

section.content h2
{
	font-size:          18px;
	font-weight:        normal;
}

section.content h2,
section.content h3
{
	margin-top:         15px;
}

.general.content h2
{
	font-size:          22px;
	font-weight:        bold;
	border-bottom:      1px solid #e0e0e0;
	padding:            1ex
}

section.content.separator
{
	border-top:         1px solid #e0e0e0;
	padding-top:        80px;
	margin-top:         80px;
}

.general.content
{
	text-align:         justify;
}

.general.content ul,
.general.content ol
{
	margin:             1em 1ex;
	padding-left:       2ex;
}

.general.content ul li
{
	list-style-type:    disc;
}

.general.content ol li
{
	list-style-type:    decimal;
}

.products-carousel
{
	margin-top:         45px;
}

.products-carousel .slide
{
	cursor:             pointer;
}

.products-carousel .slide > div
{
	margin:             0 auto;
}

.products .box,
.productBox .box
{
	width:              220px;
	text-align:         center;
	position:           relative;
	padding-top:        20px;
}

.products .box img
{
	max-width:          100%;
}

.products .box .num
{
	position:           absolute;
	top:                0;
	left:               0;
	width:              53px;
	height:             53px;
	box-sizing:         border-box;
	border:             3px solid #d02e26;
	border-radius:      50%;
	font-family:        "Avenir Next", Arial, sans-serif;
	font-weight:        bold;
	font-size:          32px;
	line-height:        46px;
	text-align:         center;
	background-color:   white;
}

.products .box .num .tag
{
	position:           absolute;
	left:               0;
	bottom:             -8px;
	width:              100%;
	height:             17px;
	line-height:        17px;
	font-size:          9px;
}

.products .box .saving,
.products .box .savingBg,
.productBox .box .saving,
.productBox .box .savingBg,
.dealBox .box .saving,
.dealBox .box .savingBg
{
	position:           absolute;
	left:               0;
	bottom:             6px;
	width:              82px;
	height:             30px;
}

.products.topDiscount .box .saving,
.products.topDiscount .box .savingBg,
.productBox .box .saving,
.productBox .box .savingBg
{
	top:                6px;
	bottom:             auto;
}

.products .box .savingBg,
.productBox .box .savingBg,
.dealBox .box .savingBg,
.dealBox .titleBg
{
	transform:          skew( 0deg, -3deg );
}

.productBox .box .saving,
.products .box .saving,
.dealBox .box .saving
{
	font-size:          20px;
	line-height:        28px;
	color:              white;
	text-shadow:        -1px -1px 0 #801916, 1px -1px 0 #801916, -1px 1px 0 #801916, 1px 1px 0 #801916;
}

.products .box .num .tag,
.products .box .savingBg,
.productBox .box .savingBg,
.dealBox .box .savingBg,
.dealBox .titleBg
{
	background-color:   #d02e26;
	color:              white;
}

.products .price,
.dealBox .price
{
    display:            flex;
    justify-content:    space-between;
    align-items:        baseline;
	width:              220px;
	color:              #c00;
	font-size:          30px;
	font-weight:        bold;
}

.products .price .rrp,
.dealBox .price .rrp
{
	color:              #333;
	text-decoration:    line-through;
	font-size:          20px;
	font-weight:        300;
}

#moreFeaturedSection
{
	display:            flex;
}

#moreFeaturedSection .dealBox
{
	flex:               0 0 auto;
}

#moreFeatured
{
	flex:               1 1 auto;
}

@media ( max-width: 955px )
{
	#moreFeaturedSection
	{
		flex-wrap:          wrap;
		justify-content:    center;
	}

	.dealBox
	{
		margin-right:       0 !important;
	}
}

#moreFeatured .products
{
	display:                grid;
	grid-template-columns:  repeat( auto-fit, 240px );
	justify-content:        center;
	align-content:          space-around;
	margin-top:             40px;
}

#moreFeatured .products > div
{
	width:              220px;
	padding:            0 10px;
	margin-bottom:      30px;
	cursor:             pointer;
}

@media ( max-width: 986px )
{
	#moreFeatured .products > div:nth-child( n + 3 )
	{
		display:        none;
	}
}

.dealBox
{
	width:              430px;
	box-sizing:         border-box;
	padding:            120px 40px 40px;
	margin-top:         30px;
	margin-bottom:      30px;
	margin-right:       45px;
	background-color:   #f1f1f1;
	position:           relative;
	align-self:         flex-start;
}

@media ( max-width: 429px )
{
	.dealBox
	{
		width:          100%;
		margin-left:    auto;
		margin-right:   auto;
	}
}

.dealBox button
{
	text-transform:     uppercase;
	width:              100%;
	margin-top:         26px;
}

.dealBox h3,
.dealBox .box
{
	text-align:         center;
}

.dealBox .box
{
	position:           relative;
}

.dealBox .box img
{
	max-height:         313px;
	max-width:          100%;
}

.dealBox h3,
.dealBox .titleBg
{
	position:           absolute;
	top:                -10px;
	left:               0;
	width:              100%;
	margin-top:         0 !important;
	font-size:          36px;
	line-height:        88px;
	height:             88px;
	color:              white;
}

.dealBox .box .saving,
.dealBox .box .savingBg
{
	font-size:          40px;
	line-height:        60px;
	height:             60px;
	width:              124px;
}

.dealBox .price
{
	font-size:          60px;
	width:              100%;
}

.dealBox .price .rrp
{
	font-size:          28px;
}

.dealBox .title
{
	font-size:          25px;
	font-weight:        bold;
}

.dealBox .licensing
{
	font-size:          20px;
	font-weight:        300;
}

.products .title
{
	width:              220px;
	font-size:          18px;
}

section input[type="text"],
section input[type="email"],
section input[type="search"],
section input[type="password"],
section select,
section textarea,
button.std
{
	box-sizing:         border-box;
	font-size:          18px;
	border:             1px solid #aaa;
	border-radius:      5px;
}

section.find input,
section.find select
{
	margin:             .5em 20px;
}

section input[type="text"],
section input[type="email"],
section input[type="search"],
section input[type="password"],
section select,
section textarea,
button.std
{
	padding:            14px 16px;
}

button.std
{
	background-color:   #489ed6;
	color:              white;
	padding:            14px 42px;
	font-family:        "Roboto Slab", serif;
}

button.std:not([disabled]):hover
{
	background-color:   #47c8ff;
}

button.buyNow
{
	background-color:   #d02e26;
}

button.buyNow:not([disabled]):hover
{
	background-color:   #ff2e26;
}

button.std img
{
	height:             24px;
	margin-left:        1ex;
	filter:             invert() sepia(100) saturate(0) brightness(1);
}

#brandsCarousel .slide
{
	width:				200px;
	height:				85px;
}

#brandsCarousel .slide a
{
	text-align:			center;
	height:             100%;
	display:            flex;
	align-items:        center;
	flex-direction:     column;
	justify-content:    center;
}

#brandsCarousel .slide img
{
	max-width:          100%;
}

section.footer,
footer
{
	background-color:   #333;
	width:              100%;
	box-sizing:         border-box;
}

section.footer,
section.footer a,
footer,
footer a
{
	color:              white;
	text-decoration:    none;
}

section.footer > div.content,
#reassurance > div.content,
footer > div.content
{
	display:            flex;
	flex-wrap:          wrap;
	max-width:          1200px;
	margin-left:        auto;
	margin-right:       auto;
}

section.footer > div.content
{
	padding-bottom:     72px;
	border-bottom:      1px solid #e0e0e0;
}

section.footer
{
	padding-top:        72px;
	justify-content:    center;
}

section.footer a
{
	display:            flex;
	flex:               1 0 350px;
	line-height:        22px;
	font-size:          18px;
	font-weight:        300;
	padding:            0 90px;
}

@media ( max-width: 1059px )
{
	section.footer a
	{
		margin-top:     2em;
	}
}

@media ( max-width: 500px )
{
	section.footer a
	{
		padding:        0 1ex;
	}
}

section.footer a svg
{
	margin-right:       20px;
	flex:               0 0 auto;
	align-self:         center;
}

footer
{
	padding:            52px 20px 72px;
}

footer .logo
{
	flex:               0 0 auto;
	align-self:         center;
}

footer .logo img
{
	max-width:			220px;
}

footer .links
{
	flex:               1 0 300px;
	font-size:          18px;
	font-weight:        300;
	margin:             0 38px;
}

footer .links > div a
{
	margin-left:        4ex;
}

footer .links > div:first-child > a:first-child
{
	margin-left:        0;
}

footer .credentials,
footer .credentials a,
footer .copyright,
footer .copyright a
{
	color:              #9f9e9e;
}

footer .copyright
{
	flex:               1 0 auto;
	text-align:         right;
	align-self:         flex-end;
}

footer .credentials,
footer .copyright
{
	font-size:          15px;
	font-weight:        300;
}

footer .logo,
footer .links,
footer .copyright,
footer .credentials
{
	margin-top:         2em;
}

footer .credentials
{
	display:            block !important;
}

section .questions h3
{
	text-align:         left;
	color:              #003399;
	cursor:             pointer;
}

.questions > div > div
{
	display:            none;
	text-align:         justify;
}

.questions > div > div.visible
{
	display:            block;
}

form th
{
	vertical-align:     middle;
}

section.twoColumns
{
	display:                grid;
	grid-template-columns:  repeat( auto-fit, minmax( 300px, 1fr ));
	grid-gap:               1em 10px;
}

table input,
table button
{
	margin:             0;
}

.formTable
{
	display:                grid;
	grid-template-columns:  minmax( min-content, max-content ) 1fr;
	grid-gap:               .5em 2ex;
	align-items:            center;
	min-width:              300px;
	margin:                 2em 10px;
}

.formTable input[type="text"],
.formTable input[type="email"],
.formTable input[type="password"],
.formTable button
{
	width:                  100%;
	box-sizing:             border-box;
	margin:                 0;
}

.formTable button[type="submit"],
.formTable > .validation-advice
{
	grid-column:            2;
}

.dataTable
{
	min-width:              100%;
	margin-top:             1em;
	margin-bottom:          1em;
}

.dataTable th
{
	border-bottom:          1px solid #e0e0e0;
	padding-bottom:         2px;
}

.dataTable tr:nth-child( n + 2 ) td
{
	padding:               2px 0;
}

.dataTable tr:nth-child( 2n + 3 )
{
	background-color:       #eee;
}

.sponsoredLinks
{
	margin:        1em 0;
	border-top:    1px solid #bfd9f2;
	border-bottom: 1px solid #bfd9f2;
	padding:       10px 20px !important;
}

.slTitle
{
	color:         #333;
	font-size:     14px;
	font-weight:   bold;
	line-height:   16px;
	margin-bottom: 20px;
}

.whatIsThis
{
	font-size:       11px;
	font-weight:     300;
	color:           #06c;
	text-decoration: none;
}

.productList .save,
#specs .save
{
	color:              #c00;
	background-color:   #f8e7e7;
	display:            inline-block;
	font-size:          15px;
	margin-left:        2ex;
	padding:            1px .5ex;
	text-align:         center;
}

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

#reassurance
{
	color:              white;
	background-color:   #3c3c3c;
	padding-top:        50px;
	padding-bottom:     50px;
}

#reassurance > div.content
{
	display:                grid;
	grid-template-columns:  repeat( auto-fit, minmax( 350px, 1fr ));
	grid-row-gap:           2em;
	justify-items:          center;
}

#reassurance > div.content:first-child
{
	display:                grid;
	grid-template-columns:  repeat( auto-fit, minmax( 350px, 1fr ));
	grid-row-gap:           2em;
	justify-items:          center;
	padding-bottom:         50px;
	margin-bottom:          50px;
	border-bottom:          1px solid #e0e0e0;
}

#reassurance > div.content:first-child > div
{
	display:                flex;
	align-items:            center;
	font-size:              18px;
}

#reassurance > div.content > div svg
{
	margin-right:           1em;
}

#reassurance > div.content:nth-child( 2 ) > div
{
	text-align:             center;
}

#reassurance h6
{
	font-size:              24px;
	text-align:             center;
	margin-bottom:          1em;
}

#customerSupport a
{
	color:                  #67c2fa;
	font-size:              24px;
	font-style:             italic;
	text-decoration:        none;
}

#customerSupport a:hover
{
	text-decoration:        underline;
	color:                  red;
}

#reassuranceBrands img
{
	max-width:              96px;
	margin-left:            5px;
	margin-right:           5px;
	margin-bottom:          2px;
}

#createForm .honey
{
	display: 			none;
}

button.workInProgress
{
	display: 			inline-flex;
	justify-content: 	center;
}

button.workInProgress::before
{
	content: 			'';
	display: 			block;
	width:				24px;
	height:				24px;
	background-image:	url("data:image/svg+xml,%3Csvg role='img' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='currentColor' d='M304 48c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48 48 21.49 48 48zm-48 368c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zm208-208c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zM96 256c0-26.51-21.49-48-48-48S0 229.49 0 256s21.49 48 48 48 48-21.49 48-48zm12.922 99.078c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.491-48-48-48zm294.156 0c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.49-48-48-48zM108.922 60.922c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.491-48-48-48z'%3E%3C/path%3E%3C/svg%3E ");
	margin-right: 		1ex;
	animation: 			rotate 2s linear infinite;
	filter:				invert(100%);
}

@-webkit-keyframes rotate
{
	0%
	{
		-webkit-transform: rotate(0deg);
		transform:         rotate(0deg);
	}
	to
	{
		-webkit-transform: rotate(1turn);
		transform:         rotate(1turn);
	}
}

@keyframes rotate
{
	0%
	{
		-webkit-transform: rotate(0deg);
		transform:         rotate(0deg);
	}
	to
	{
		-webkit-transform: rotate(1turn);
		transform:         rotate(1turn);
	}
}

.tabs,
.tabs .content
{
	display:                flex;
	flex-wrap:              wrap;
	font-weight:      		bold;
}

.tabs,
.tabs .content,
.tabs a
{
	color:					#2d3134 !important;
}

.tabs .content a:hover,
.tabs a:hover
{
	text-decoration:		none !important;
}

.tabs
{
	margin:	 				30px 0 40px;
}

.tabs .content
{
	width: 					100%;
}

.tabs a
{
	flex:                   0 0 auto;
	display:                flex;
	align-items:            center;
	justify-content:        center;
	padding:                20px 20px;
	position:               relative;
	text-decoration: 		none;
}

.tabs.equal a
{
	flex:					1;
}

.tabs a.active
{
	color:                  white !important;
	background-color:       #489ed6;
}

.tabs a.active::after
{
	content:                '';
	background-color:       #489ed6;
	display:                block;
	transform:              rotate( 45deg );
	width:                  10px;
	height:                 10px;
	position:               absolute;
	left:                   calc( 50% - 5px );
	bottom:                 -5px;
	z-index:                1;
}

.backlink a
{
	font-size:				13px;
	color:					#414141;
	text-decoration:		none;
}

.backlink a:hover
{
	text-decoration:		underline;
}