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,font,img,ins,kbd,q,s,samp,small,strike,
strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,
table,caption,tbody,tfoot,thead,tr,th,td
{margin:0;padding:0;border:0;outline:0;vertical-align:baseline;background:transparent}
ol,ul{list-style:none}
blockquote,q{quotes:none}
blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}
:focus{outline:0}
ins{text-decoration:none}
del{text-decoration:line-through}
table{border-collapse:collapse;border-spacing:0}

html
{
	background-color:   white;
}

body
{
	color:              #2d3134;
	font-family:		"Open Sans", Arial, Helvetica, Verdana, sans-serif;
	font-size:          16px;
}

a
{
	color:              inherit;
	text-decoration:    none;
}

a:hover
{
	color:              #ff6700;
}

h1, h2, h3, h4
{
	margin:				0;
}

p
{
	margin-top:			0.5em;
}

button,
a.button
{
	display:                inline-block;
	border-style:           none;
	background:             none;
	cursor:                 pointer;
	padding:                0;
	font-size:              16px;
	box-sizing:             border-box;
}

button.std,
a.button
{
	background-color:       #ff6700;
	color:                  white;
	border-radius:          4px;
	padding:                4px 1ex;
}

button.std:hover:not(.disabled),
a.button:hover
{
	box-shadow: 			0 0 8px 4px #ffd9c0;
}

button.std:active,
a.button:active
{
	background-color: 		#de5a00;
}

button.std.disabled,
button.std:disabled
{
	background-color:       #8e8e8e;
}

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);
	}
}

select,
input[type="text"],
input[type="email"],
input[type="password"],
textarea
{
	border:                 1px solid #ccc;
	padding:                4px 8px;
}

select,
input[type="checkbox"]
{
	-o-appearance:          none;
	-moz-appearance:        none;
	-webkit-appearance:     none;
	appearance:             none;
}

select
{
	background-image:       url( '../images/chevron-down.svg' );
	background-repeat:      no-repeat;
	background-position:    right 4px center;
	background-color:       white;
	padding:                4px 28px 4px 8px;
}

select:focus,
input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
textarea:focus
{
	outline:                none;
	border-color:           #ff6700;
}

select::-ms-expand
{
	display:                none;
}

input[type="checkbox"]
{
	border:                 2px solid #303133;
	border-radius: 			4px;
	color:					#ff6700;
	outline: 				none;
	cursor: 				pointer;
	display: 				inline-flex;
	width: 					18px;
	height:					18px;
	justify-content: 		center;
	align-content: 			flex-start;
	font-size: 				17px;
	font-weight: 			bold;
	line-height: 			11px;
	vertical-align: 		top;
}

#hamburgerMenu input[type="checkbox"]
{
	border-color: 			white;
}

input[type="checkbox"]:checked::before
{
	content:    			'\2714';
	display:    			block;
}

label.checkbox
{
	display: 				grid !important;
	grid-template-columns:	max-content 1fr;
	grid-column-gap: 		10px;
}

header,
nav,
section
{
	width:          100%;
	padding:        0;
	box-sizing:     border-box;
	margin-left:    auto;
	margin-right:   auto;
}

section.content,
nav.content,
nav .content,
header .content,
#platforms .content,
section.footer > div.content,
#reassurance > div.content,
footer > div.content
{
	max-width:      960px;
}

nav.content,
nav > .content,
section > .content,
header > .content,
section.footer > div.content,
#reassurance > div.content,
footer > div.content
{
	margin-left:    auto;
	margin-right:   auto;
}

@media( max-width: 980px )
{
	section.content,
	nav .content,
	header .content,
	#platforms .content,
	section.footer > div.content,
	#reassurance > div.content,
	footer > div.content
	{
		max-width:      calc( 100% - 20px );
	}

	section.content.mainLeft,
	section.content.mainRight
	{
		max-width:      100%;
	}
}

nav.content
{
	padding-top:            20px;
	font-size:              12px;
	color:                  #2d3134;
}

header
{
	background-color:       #2d3134;
	min-height:             88px;
}

header .content
{
	grid-area:              content;
	display:                flex;
	flex-wrap:              wrap;
	align-items:            center;
	position:               relative;
	margin-top:             -10px;
	padding:                10px 0;
}

header .content > *
{
	margin-top:             10px;
}

#headerLogo img
{
	max-width:              180px;
}

#headerLogo,
#headerActions
{
	flex:                   0 0 auto;
}

#headerSlogan
{
	flex:                   1 0 auto;
	font-size:              16px;
	line-height:            20px;
	color:                  white;
	padding-left:           30px;
}

#headerSlogan div:first-child
{
	font-weight:            bold;
}

#headerSlogan div + div
{
	font-style:             italic;
}

#headerActions a,
#headerActions button
{
	color:                  #ff6700;
	text-decoration:        none;
}

#headerActions
{
	display:                flex;
	align-items: 			center;
}

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

#headerActions > button:first-child
{
	margin-right: 			-5px;
}

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

#userIcon
{
	position: 				relative;
}

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

#userIcon > div
{
	display: 				none;
	position: 				absolute;
	left:					50%;
	top:					130%;
	transform: 				translateX( -50% );
	background-color: 		#282b2d;
	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: 		#282b2d;
	transform: 				translateX( -50% ) rotate( 45deg );
}

#userIcon.loggedIn,
#userAvatar,
.comment .avatar
{
	border-radius: 			50%;
	background-color: 		#282b2d;
	border-color: 			#d79960;
	width:					34px;
	height:					34px;
	text-align: 			center;
}

#userIcon.loggedIn,
#userIcon.loggedIn > div,
#userAvatar,
.comment .avatar,
#pointsBalance > span:first-child
{
	color:					#d79960;
}

#currentUserLevel
{
	color:			 		#f5b376;
	font-weight: 			bold;
	text-transform: 		uppercase;
}

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

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

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

#userIcon.loggedIn.userLevel100 > div,
.userLevel100 #currentUserLevel,
.userLevel100 #pointsBalance > span:first-child,
.nextLevel100 .level
{
	color:			 		#b6b4c0;
}

#userIcon.loggedIn.userLevel200,
#userIcon.loggedIn.userLevel200 > div,
#userIcon.loggedIn.userLevel200 > div::before,
#userAvatar.userLevel200,
.comment .avatar.userLevel200
{
	background-color: 		#ecd05e;
}

#userIcon.loggedIn.userLevel200 > div,
.userLevel200 #currentUserLevel,
.userLevel200 #pointsBalance > span:first-child,
.nextLevel200
{
	color:			 		#ecd05e;
}

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

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

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

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

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

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

.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 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;
}

#searchBox
{
	z-index:            1000;
	position:           absolute;
	top:                10px;
	left:               0;
	width:              100%;
	height:             calc( 100% - 10px );
	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;
}

#searchBox > div:first-child
{
	flex:               1 1 auto;
}

#searchBox input
{
	width:              100%;
	height:             36px;
	font-size:          20px;
	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;
  	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;
}

.hintValue.more
{
	padding:				2px 0;
	font-style: 			italic;
	color:					#aaa;
}

#searchResultsForm > .moduleBox:first-of-type
{
	margin-top:			0;
}

#platforms
{
	background-color:       #373b3e;
}

#platforms .content
{
	display:                flex;
	flex-wrap:              wrap;
}

#platforms .content > *
{
	display:                flex;
	align-items:            center;
	padding:                0 30px;
	color:                  white;
	position:               relative;
}

#platforms .content > *,
.tabs > a
{
	height:                 42px;
}

#platforms .content > *:not(.selectedTab):hover
{
	color:    			   #ff6700;
}

#btAside
{
	margin-right:           2ex;
}

#platforms .selectedTab
{
	background-color:       #ff6700;
	cursor: 				default;
}

#platforms .selectedTab:after
{
	content:                " ";
	background-color:       #ff6700;
	display:                block;
	transform:              rotate( 45deg );
	width:                  6px;
	height:                 6px;
	position:               absolute;
	left:                   calc( 50% - 3px );
	bottom:                 -3px;
	z-index:                1;
}

#navTab_news.selectedTab,
#navTab_news.selectedTab::after
{
	background-color: 			#48c83e;
}

#btAside
{
	padding:                0 !important;
}

#platforms + nav
{
	background-color:       #f2f2f2;
}

#menu
{
	display:                grid;
	grid-template-columns:  max-content 1fr max-content;
	font-size:              13px;
}

#menu > div
{
	padding-top:            12px;
}

#menu > div:first-child
{
	margin-right:           2em;
	font-weight:            300;
	color:                  #888;
}

#menu > div:nth-child(2)
{
	max-height:             20px;
	overflow:               hidden;
	display:                flex;
	flex-wrap:              wrap;
	justify-content:        space-between;
}

#menu.showAll > div:nth-child(2)
{
	display: 				grid;
	grid-template-columns: 	repeat( auto-fill, minmax( 150px, 1fr ));
	grid-gap: 				1em 3ex;
	max-height:             none;
	padding-bottom:         10px;
}

#menu > div:nth-child(2) a
{
	white-space:            nowrap;
	font-weight:            bold;
	margin-right:           2em;
}

#menu.showAll > div:nth-child(2) a
{
	margin-right:           0;
	text-overflow: 			ellipsis;
	overflow:				hidden;
}

#menu > div:nth-child(3)
{
	margin-left:            2em;
	font-size:              12px;
	font-weight:            bold;
	font-style:             italic;
	cursor:                 pointer;
	text-align:             center;
}

#menu > div:nth-child(3) > div
{
	margin-top:             -5px;
}

#menu.showAll > div:nth-child(3) > div
{
	transform:              rotate(180deg);
	margin-top:             -7px;
}

#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;
}

ul.rssFeeds
{
	list-style-image:       url( '../images/iconRSSWhite.svg' );
	padding-left:           34px;
}

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

section.footer button,
section.footer,
footer
{
	color:              white;
}

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

#reassurance > div.content,
footer > div.content
{
	display:            flex;
	flex-wrap:          wrap;
}

section.footer > div.content
{
	padding-bottom:         72px;
	border-bottom:          1px solid #e0e0e0;
	display:                grid;
	grid-template-columns:  repeat( auto-fit, minmax( 220px, 1fr ));
	grid-gap:               1ex 4em;
}

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

section.footer a,
section.footer button
{
	display:            flex;
	flex:               1 0 230px;
	line-height:        22px;
	font-size:          15px;
	font-weight:        300;
}

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

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

section.footer a svg,
section.footer button 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;
}

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

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

#reassurance > div.content > div
{
	display:                flex;
	flex-direction:         column;
	align-items:            center;
	font-size:              15px;
}

#reassurance .stats
{
	text-align:             center;
}

#reassurance .stats div
{
	font-size:              28px;
	font-weight:            bold;
}

#reassurance .stats
{
	margin-bottom:          1em;
}

#reassurance .stats div,
#reassurance svg,
section.footer svg,
.overlayBox .titleBar svg,
.popup .titleBar svg
{
	color:                  #ff6700;
}

.popup p
{
	margin:                 2em 10px;
}

#reassurance svg
{
	margin-bottom:          .5em;
}

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

section.content
{
	margin-top:             30px;
}

#breadcrumbs + section.content
{
	margin-top: 			22px;
}

section.content.mainLeft > div,
section.content.mainRight > div
{
	display:                flex;
	justify-content:        center;
	flex-wrap:              wrap;
	margin:                 -20px;
}

section.content.mainLeft .tns-outer,
section.content.mainRight .tns-outer
{
	margin-top:             0;
	margin-bottom:          0;
}

section.content.mainLeft > div > *,
section.content.mainRight > div > *
{
	margin:                 20px;
}

@media ( max-width: 980px )
{
	section.content.mainLeft > div,
	section.content.mainRight > div
	{
		margin-left:        0;
		margin-right:       0;
		max-width:          100%;
	}

	section.content.mainLeft > div > *,
	section.content.mainRight > div > *
	{
		margin:             20px 10px;
	}
}

section.content.mainLeft > div > div,
section.content.mainRight > div > div
{
	flex:                   10000 1 400px;
}

section.content.mainLeft > div > aside,
section.content.mainRight > div > aside
{
	flex:                   1 1 300px;
	min-width:              200px;
}

.moduleBox
{
	margin-top:             30px;
}

.moduleBox h1
{
	display:                flex;
	align-items:            center;
	padding-bottom:         20px;
	border-bottom:          1px solid black;
	font-size:              30px;
	font-weight:            normal;
}

.moduleBox.highlighted h1
{
	color:                  #ff6700;
	border-color:           #ff6700;
}

.moduleBox h1 svg
{
	margin-right:           10px;
}

.stdButtonFilter
{
	filter:                 invert(49%) sepia(51%) saturate(4987%) hue-rotate(1deg) brightness(104%) contrast(104%);
}

.extended
{
	width:					100%;
}

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

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

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

#login .formGrid > form
{
	display: 				contents;
}

.formGrid > div,
#login .formGrid > form > div
{
	font-weight: 			bold;
}

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

.formGrid button
{
	justify-self: 			start;
}

.formGrid button,
.highlightBox button,
#registerForm button
{
	text-transform:			uppercase;
}

.formGrid .okCancel
{
	text-align:            right;
}

.formGrid .okCancel button
{
	width:                  auto;
}

.formGrid button[type="submit"],
.formGrid > .validation-advice,
.formGrid > .right,
#login .formGrid > form > .right,
.formGrid > .separator,
#notification button
{
	grid-column:            2;
}

.formGrid > .separator
{
	height:                 1em;
}

.formGrid .fullRow,
.formGrid button[type="submit"].fullRow
{
	grid-column:            1 / span 2;
}

.formGrid .withButton
{
	display:                grid;
	grid-template-columns:  1fr max-content;
	grid-column-gap:        1ex;
}

.formGrid label
{
	display:                block;
}

#notification .formGrid
{
	margin-bottom:         1em;
}

#newsletter h4
{
	margin-top:				1em;
}

#popupNewslettersForm > label:first-child
{
	margin-bottom:			1em;
}

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

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

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

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

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

.tabs > a
{
	flex:                   1 0 auto;
	display:                flex;
	align-items:            center;
	justify-content:        center;
	padding:                0 30px;
	position:               relative;
}

.tabs > a.active
{
	color:                  white;
	background-color:       #ff6700;
}

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

#articleTabs,
.article.tabs,
.inPage.tabs,
.highlightBox
{
	background-color:       #f2f2f2;
}

.highlightBox
{
	padding:				1em 2ex;
	margin-bottom: 			1em;
}

.highlightBox p
{
	margin:					1em 0;
}

.highlightBox p:first-child
{
	margin-top:				0;
}

.tabPage
{
	padding-top:            5px;
}

.tabPage .formGrid:first-of-type
{
	margin-top:             0;
	padding-top:            1em;
}

.filter,
.sort
{
	background-color:       #e8e8e8;
	padding:                16px 20px;
	display:                flex;
	flex-wrap:              wrap;
}

.filter
{
	align-items:            stretch;
	justify-content:        flex-end;
}

.filter > *,
.sort > *
{
	flex:                   1 0 auto;
	margin:                 8px;
}

.filter select
{
	min-height:             20px;
}

.filter button
{
	flex:                   0 0 auto;
	display:                flex;
	align-items:            center;
	text-transform:         uppercase;
	padding:                4px 16px;
}

.filter button svg
{
	width:                  20px;
	height:                 20px;
	margin-left:            1ex;
	filter:                 invert(100%) brightness(100%);
}

.sort
{
	margin-top:             -20px;
	padding-top:            0;
	color:                  #8c8b8b;
}

.sort > *
{
	flex:                   0 0 auto;
}

.sort div
{
	text-decoration:        underline;
	padding:                0 .5ex;
	cursor:                 pointer;
}

.sort .selected
{
	color:                  #2d3134;
	text-decoration:        none;
	display:                flex;
	align-items:            center;
}

.sort .selected:after
{
	content:                " ";
	background-image:       url( '../images/chevron-down.svg' );
	background-repeat:      no-repeat;
	background-size:        contain;
	transform:              scaleY( -1 );
	display:                block;
	width:                  15px;
	height:                 15px;
	margin-left:            4px;
}

.sort[data-sort-order="desc"] .selected:after
{
	transform:              none;
}

.productListing,
#SCRSS > div,
.newsBox > div
{
	display:                grid;
	grid-template-columns:  48px 1fr 80px;
	grid-column-gap:        22px;
	padding:                16px 0;
}

.productListing.installed
{
	grid-template-columns:  48px 1fr max-content max-content;
}

.productListing + .productListing,
#SCRSS > div + div,
.newsBox > div + div
{
	border-top:             1px solid #c6c6c6;
}

.productListing > a:first-child img,
#SCRSS img,
.newsBox img
{
	max-width:              100%;
}

.productListing p,
#SCRSS p,
.newsBox p
{
	margin:                 0;
}

.productListing .title
{
	font-size:              1.2em;
	font-weight:            bold;
}

.productListing .license,
.productListing > div:nth-child(3)
{
	color:                  #b9b9b9;
}

.productListing .tools
{
	margin-top:             4px;
	font-size:              13px;
}

.productListing .tools .help
{
	cursor:                 pointer;
}

.productListing > div:nth-child(3)
{
	align-self:             center;
}

.productListing .downloads,
#review .downloads
{
	display:                flex;
	align-items:            center;
}

.productListing .downloads::before,
#review .downloads::before
{
	content:                " ";
	background-image:       url( '../images/downloads.svg' );
	background-repeat:      no-repeat;
	background-size:        contain;
	display:                inline-block;
	height:                 16px;
	width:                  16px;
	margin-right:           .5ex;
	filter:                 invert(66%) sepia(0%) saturate(3175%) hue-rotate(40deg) brightness(112%) contrast(93%);
}

.productListing .latestVersionUpdated
{
	color:            		#a00;
}

.productListing.installed > *:first-child
{
	grid-row:               span 3;
}

.productListing.installed .title,
.productListing.installed .installedVersion,
.productListing.installed .date
{
	align-self: 			start;
}

.productListing.installed .license,
.productListing.installed .summary,
.productListing.installed .tools
{
	grid-column:            2 / -1;
}

.productListing.installed .tools .help
{
	float:                  right;
}

.pagination
{
	border-top:             none;
	display:                grid;
	grid-template-columns:  minmax( 90px, max-content ) 1fr minmax( 90px, max-content );
	grid-column-gap:        4ex;
	align-items:            center;
	justify-items:          center;
}

.pagination > div:nth-child(2) a
{
	color:                  #879199;
}

.pagination strong
{
	color:                  black;
}

.spotlight
{
	display:                grid;
	grid-template-columns:  285px 1fr;
	grid-column-gap:        20px;
	padding-left:           30px;
	overflow:               hidden;
}

.spotlight a:hover
{
	color:					inherit;
}

.spotlight > div
{
	padding-top:            50px;
}

.spotlight > img
{
	align-self:             end;
}

.spotlight h3
{
	display:                block;
	font-size:              22px;
	line-height:            30px;
	max-height:             60px;
	overflow:               hidden;
}

.spotlight .info
{
	display:                flex;
	align-items:            flex-end;
	margin:                 10px 0 8px;
}

.spotlight .info span
{
	font-size:              9px;
	color:                  white;
	background-color:       #48c83e;
	border:                 1px solid white;
	border-radius:          4px;
	padding:                2px 8px;
	text-transform:         uppercase;
}

.spotlight .info img
{
	filter:                 invert(100%);
	height:                 16px;
	margin-left:            4px;
	position:               relative;
	top:                    -2px;
}

.spotlight .info img:first-of-type
{
	margin-left:            8px;
}

.spotlight .summary
{
	font-size:              16px;
	line-height:            20px;
	max-height:             60px;
	overflow:               hidden;
	display:                -webkit-box;
	-webkit-line-clamp:     3;
	-webkit-box-orient:     vertical;
	text-overflow:          ellipsis;
}

.spotlight .summary p
{
	margin:                 0;
}

.spotlight div + img
{
	/*max-height:			230px;*/
	max-width:              calc( 100% + 20px );
	justify-self:           end;
	position:               relative;
	left:                   20px;
	top:                    20px;
}

.spotlight button,
.storeProduct button,
.buySection button,
.downloadSection button
{
	display:                flex;
	align-items:            center;
	background-color:       white;
	border-radius:          4px;
	font-weight:            bold;
	padding:                8px 16px;
	margin-top:             .7em;
}

.spotlight button:hover
{
	box-shadow: 			0 0 8px 4px #ffa900;
}

.spotlight button:active
{
	background-color:		#e5e4e4;
}

.spotlight button::after,
.storeProduct button::after,
#downloads .button::after,
.buySection button::after,
.downloadSection button::after
{
	display:                block;
	background-image:       url( '../images/download.svg' );
	background-repeat:      no-repeat;
	background-size:        contain;
	content:                '';
	width:                  20px;
	height:                 20px;
	margin-left:            1ex;
	filter:                 invert(49%) sepia(51%) saturate(4987%) hue-rotate(1deg) brightness(104%) contrast(104%);
}

a.spotlight
{
	color:                  inherit;
	text-decoration:        none;
}

#downloadSpotlight > div,
#editorsChoice,
#freeFullSoftware
{
	position:               relative;
}

#downloadSpotlight > div > h3,
#editorsChoice > h3,
#freeFullSoftware > h3
{
	position:               absolute;
	top:                    10px;
	left:                   20px;
	z-index:                100;
	color:                  white;
	font-size:              1.5em;
}

#downloadSpotlight .spotlight,
#editorsChoice .spotlight,
#freeFullSoftware .spotlight
{
	height:             	265px;
	padding-left:           20px;
}

#downloadSpotlight .spotlight
{
	background:             linear-gradient(157deg, #ffb400 0%, #ffd800 37%, #ffd800 100%);
}

#editorsChoice .spotlight
{
	background-color:       #ff6700;
}

#freeFullSoftware .spotlight
{
	background:             linear-gradient(157deg, #48c83e 0%, #80ce2c 27%, #ede028 100%);
}

#downloadSpotlight > div
{
	flex:                   0 1 620px;
	max-width:              620px;
}

#downloadSpotlight .spotlight button,
#editorsChoice .spotlight button,
#freeFullSoftware .spotlight button
{
	position:               absolute;
	bottom:                 13px;
}

#downloadSpotlight .tns-outer
{
	position:               relative;
}

#downloadSpotlight .tns-nav
{
	position:               absolute;
	bottom:                 25px;
	left:                   240px;
	display:                flex;
}

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

#downloadSpotlight .tns-nav button.tns-nav-active
{
	cursor:             default;
	background-color:   white;
	position:           relative;
}

@media( max-width: 400px )
{
	#downloadSpotlight
	{
		justify-content:    start;
	}
}

@media( max-width: 620px )
{
	#downloadSpotlight > div
	{
		flex-basis: 			95vw;
		max-width:	 			95vw;
	}

	#downloadSpotlight .spotlight
	{
		grid-template-columns:	1fr;
	}

	#downloadSpotlight .spotlight > img
	{
		display: 				none;
	}
}

#freeFullSoftware .spotlight button,
.storeProduct button,
.buySection button,
.downloadSection button
{
	background-color:   #ff6700;
	color:              white;
	text-transform:     uppercase;
}

#freeFullSoftware .spotlight button:hover,
.storeProduct button:hover,
.buySection button:hover,
.downloadSection button:hover
{
	box-shadow: 			0 0 8px 4px #ffd9c0;
}

#freeFullSoftware .spotlight button:active,
.storeProduct button:active,
.buySection button:active,
.downloadSection button:active
{
	background-color: 		#de5a00;
}

#freeFullSoftware .spotlight button::after,
.storeProduct button::after,
.buySection button::after,
.downloadSection button::after
{
	filter:            invert(100%) brightness(100%);
}

#freeFullSoftware .spotlight .info img:first-of-type
{
	margin-left:        0;
}

#editorsChoice
{
	max-width:          305px;
}

@media( max-width: 400px )
{
	#editorsChoice
	{
		max-width: 			unset;
	}
}

#editorsChoice .summary
{
	color:              white;
}

.comments > div
{
	padding-top:            25px;
	margin-bottom:          25px;
	position:               relative;
}

.comments > div:nth-child( n + 2 )
{
	border-top:             1px solid #c6c6c6;
}

.comments .commentSoftware
{
	line-height:            24px;
	text-overflow:          ellipsis;
	overflow:               hidden;
	white-space:            nowrap;
	display:                block;
}

.comments .commentSoftware,
#bestSelling > div > div a,
#bestSelling > div > div a + span,
#SCRSS h3,
.newsBox h3
{
	font-size:              18px;
	font-weight:            bold;
}

.postDetails
{
	color:                  #aeaeae;
}

.postDetails,
.comments .comment
{
	font-size:              15px;
}

.commentReply
{
	margin-top:             .8em;
	margin-left:            3ex;
	padding-left:           3ex;
	border-left:            1px dotted #cecece;
	font-size:              .9em;
}

.commentReply h6
{
	font-size:              1em;
}

.moduleBox > .more,
#otherDownloads .more
{
	font-style:             italic;
	text-decoration:        underline;
	color:                  #54585b;
	font-size: 				15px;
}

#SCRSS > div,
.newsBox > div
{
	grid-template-columns:  70px 1fr;
}

#SCRSS > div > div:first-child,
.newsBox > div > div:first-child
{
	grid-row:               span 2;
}

#SCRSS .postDetails,
.newsBox .postDetails
{
	grid-column:            2;
}

.storeProduct
{
	background-color:       #f2f2f2;
	padding:                20px;
}

.storeProduct > div:first-child
{
	position:               relative;
	margin-bottom:          1em;
}

.storeProduct img
{
	margin-left:            auto;
	margin-right:           auto;
	display:                block;
	max-width:              90%;
}

.storeProduct .price
{
	font-weight:            bold;
	font-size:              40px;
	margin-top:             .3em;
}

.storeProduct s
{
	font-weight:            normal;
	font-size:              20px;
	color:                  #5e5e5e;
}

.storeProduct h4
{
	font-weight:            bold;
	font-size:              20px;
}

.storeProduct .saving
{
	background-color:       #48c83e;
	color:                  white;
	font-size:              18px;
	padding:                6px 13px;
	display:                inline-block;
	position:               absolute;
	bottom:                 -10px;
}

.storeProduct button
{
	margin-top:             1em;
	text-transform:         uppercase;
	padding:                4px 20px;
}

.storeProduct .doddTime
{
	margin-top:             1em;
	display:                flex;
	align-items:            center;
	font-size:              14px;
	font-weight:            100;
	color:                  #484848;
}

#dotdCounterWidget
{
	display:                contents;
}

.countdownTimer
{
	margin-left:            1ex;
}
/*
#outerImageContainerx
{
	width:                  auto !important;
	height:                 auto !important;
}

#lightbox
{
	display:                flex;
	flex-direction:         column;
	max-height: 			100%;
}

#outerImageContainer,
#imageContainer,
#lightbox img,
#imageDataContainer
{
	max-width:              100%;
}
*/