@media only screen {
/*****************************************************************************/

/*

COLORS:

_ #07a4db ... blue bright (logo)
_ #0080b5 ... blue bright (logo dimmed)
_ #b2e9ff ... blue bright (background)
_ #3e9cc3 ... blue dark (footer)
_ #80562a ... brown
_ #93b200 ... green
_ #4d4d4d ... gray (font)

FONTS:

font-family: 'Barlow', sans-serif;
font-weight: 300/400/600/800;

*/

/* ==========================================================================
   BASICS
   ========================================================================== */

html, body {
	position: absolute;
	width: 100%;
	min-width: 100%;
	max-width: 100%;
	height: auto;
	min-height: 100%;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
	z-index: 1;
}

body {
	background-color: #b2e9ff;
	font-family: 'Barlow', sans-serif;
	font-weight: 400;
	font-style: normal;
	/*font-size: 0;*/
	/*line-height: 0;*/
	letter-spacing: 0.5px;
	color: #4d4d4d;
	/*
	font-variant-numeric: proportional-nums;
	-webkit-font-feature-settings: "onum" 1;
	-moz-font-feature-settings: "onum" 1;
	-moz-font-feature-settings: "onum=1";
	-ms-font-feature-settings: "onum" 1;
	-o-font-feature-settings: "onum" 1;
	font-feature-settings: "onum" 1;
	*/
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}

body.patternOK {
	background: #b2e9ff url('../Images/main/etc/pattern.jpg') fixed repeat center center;
	background-size: 960px 969px;
}

*, *:before, *:after {
	-webkit-box-sizing: inherit;
	   -moz-box-sizing: inherit;
	        box-sizing: inherit;
	padding: 0;
	margin: 0;
}

::selection { color: #80562a; background-color: #fff; }

body > a.skiplink {
    position: fixed;
    bottom: 100%;
    right: 100%;
    width: 1px;
    height: 1px;
    overflow: hidden;
    z-index: 0;
}



    /* ==========================================================================
       LAYOUT
       ========================================================================== */

/* HEADER */

header {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: auto;
	z-index: 12;
}

header > div.logo {
	position: absolute;
	right: 40px;
	top: 40px;
	width: 225px;
	height: auto;
	z-index: 1;
}

header > div.logo img {
	width: 100%;
	height: auto;
}

header > nav.main {
	position: fixed;
	left: -400px;
	top: 30px;
	width: 400px;
	height: auto;
	max-height: calc(100vh - (2 * 30px));
	background-color: #fff;
	padding: 40px 0;
	opacity: 0;
	transition-property: left, opacity;
	transition-duration: 250ms;
	transition-timing-function: ease-in-out;
	overflow: auto;
	z-index: 3;
}

.navON header > nav.main {
	right: auto;
	left: 30px;
	opacity: 1;
}

header > nav.button {
	position: fixed;
	left: 30px;
	top: 30px;
	width: 60px;
	height: 60px;
	background: transparent url('../Images/main/menu/button-menu-lines-gray.svg') scroll no-repeat center center;
	background-size: cover;
	/*
	transform: scale(1);
	transition: .25s ease-in-out;
	*/
	z-index: 4;
}

header > nav.button:hover { background-image: url('../Images/main/menu/button-menu-lines-blue.svg'); cursor: pointer; }
.navON header > nav.button { background-image: url('../Images/main/menu/button-menu-cross-gray.svg'); }
.navON header > nav.button:hover { background-image: url('../Images/main/menu/button-menu-cross-blue.svg'); }

.navON header > nav.button {
    transform: scale(0.5);
}

nav.button > span { z-index: 1; }
nav.button > a { position: absolute; display: block; left: 0; top: 0; width: 100%; height: 100%; z-index: 2; }
.jsOK nav.button > a { display: none; }

header > button.snipcart-checkout {
	position: fixed;
	left: 120px;
	top: 30px;
	width: 60px;
	height: 60px;
	background: transparent url('../Images/main/menu/button-basket-gray.svg') scroll no-repeat center center;
	background-size: cover;
	border: none;
	z-index: 2;
}

.jsNO header > button.snipcart-checkout { display: none; }

header > button.snipcart-checkout > span.snipcart-total-price { display: none; }
header > button.snipcart-checkout > span.snipcart-items-count {
	position: absolute;
	right: 6px;
	top: 6px;
	font-weight: 800;
	font-size: 12px;
	line-height: 1em;
	color: #fff;
	padding: 5px 7px;
	border-radius: 50%;
	background-color: #3e9cc3;
	z-index: 100;
}

header > button.snipcart-checkout:hover {
	background-image: url('../Images/main/menu/button-basket-blue.svg');
	cursor: pointer;
}

/* MAIN */

main {
	position: relative;
	width: 100%;
	height: auto;
	z-index: 11;
}

main.pattern {
	background: transparent url('../Images/main/etc/pattern.jpg') scroll repeat center center;
	background-size: 320px 323px;
}

main > div > section {
	position: relative;
	width: 100%;
	height: auto;
	padding: 120px 0;
	text-align: center;
}

main > section:nth-of-type(1) { padding-top: 240px; }
main > section.poster:nth-of-type(1) { padding-top: 0; }

main > section.poster { padding: 0; }

main > section.poster > picture {
	width: 100%;
	height: auto;
	margin: 0;
}

main > section.poster > picture > img {
	width: 100%;
	height: auto;
}

main > div > section.gradient1 {
	background: rgb(211,241,252);
	background: linear-gradient(90deg, rgba(211,241,252,1) 0%, rgba(160,227,255,1) 100%);
}

main > div > section.gradient2 {
	background: rgb(211,241,252);
	background: linear-gradient(270deg, rgba(211,241,252,1) 0%, rgba(160,227,255,1) 100%);
}

main.pattern > section.gradient1,
main.pattern > section.gradient2 {
	background-color: transparent !important;
	background: none !important;
}

main > div > section > div.content {
	position: relative;
	width: 100%;
	max-width: 1400px;
	height: auto;
	margin: 0 auto;
	font-size: 18px;
	line-height: calc(1em * (27 / 18));
	text-align: left;
}

main > div > section.hr > div.hr {
	position: absolute;
	left: calc(50% - (1400px / 2));
	top: -32px;
	width: 1400px;
	height: 42px;
	background: transparent url('../Images/main/etc/bg-hr@3x.png') scroll no-repeat center center;
	background-size: 1400px 42px;
	z-index: 1;
}

/* MAIN (adjustments) */

main.hasPoster > div.neos-contentcollection > section:nth-of-type(1) { padding-top: 80px !important; }
section.noSpace { padding-top: 0 !important; }
div.neos-nodetypes-headline + div.neos-nodetypes-headline,
div.neos-nodetypes-headline + div.neos-nodetypes-image,
div.neos-nodetypes-headline + div.neos-nodetypes-text,
div.neos-nodetypes-headline + div.neos-nodetypes-buttonshop,
div.neos-nodetypes-headline + div.selectionWrapper,
div.neos-nodetypes-image + div.neos-nodetypes-headline,
div.neos-nodetypes-image + div.neos-nodetypes-image,
div.neos-nodetypes-image + div.neos-nodetypes-text,
div.neos-nodetypes-image + div.neos-nodetypes-buttonshop,
div.neos-nodetypes-image + div.selectionWrapper,
div.neos-nodetypes-text + div.neos-nodetypes-headline,
div.neos-nodetypes-text + div.neos-nodetypes-image,
div.neos-nodetypes-text + div.neos-nodetypes-text,
div.neos-nodetypes-text + div.neos-nodetypes-buttonshop,
div.neos-nodetypes-text + div.selectionWrapper,
div.neos-nodetypes-buttonshop + div.neos-nodetypes-headline,
div.neos-nodetypes-buttonshop + div.neos-nodetypes-image,
div.neos-nodetypes-buttonshop + div.neos-nodetypes-text,
div.neos-nodetypes-buttonshop + div.neos-nodetypes-buttonshop,
div.neos-nodetypes-buttonshop + div.selectionWrapper,
div.selectionWrapper + div.neos-nodetypes-headline,
div.selectionWrapper + div.neos-nodetypes-image,
div.selectionWrapper + div.neos-nodetypes-text,
div.selectionWrapper + div.neos-nodetypes-buttonshop,
div.selectionWrapper + div.selectionWrapper {
	margin-top: 40px;
}

div.neos-nodetypes-buttonshop.left { text-align: left; }
div.neos-nodetypes-buttonshop.center { text-align: center; }
div.neos-nodetypes-buttonshop.right { text-align: right; }

section > a {
	position: absolute;
	left: -1;
	top: 0;
	width: 1px;
	height: 1px;
	overflow: hidden;
	z-index: 1;
}

/* FOOTER */

footer {
	position: relative;
	width: 100%;
	height: auto;
	background-color: #3e9cc3;
	z-index: 12;
}

footer.fixed {
	position: fixed;
	left: 0;
	bottom: 0;
}

footer > div.address {
	position: relative;
	left: calc(50% - (1400px / 2));
	width: 100%;
	max-width: 1400px;
	height: auto;
	padding: 40px 0;
	z-index: 1;
}

footer > div.address > div {
	position: relative;
	display: inline-block;
	vertical-align: top;
	font-size: 16px;
	line-height: calc(1em * (24 / 16));
	color: #fff;
	margin-left: 40px;
}

footer > div.address > div:nth-of-type(1) { margin-left: 0; }

footer > nav.legal,
footer > nav.social {
	position: absolute;
	right: calc(50% - (1400px / 2));
	width: auto;
	height: auto;
	z-index: 2;
}

footer > nav.legal { top: 35px; }
footer > nav.social { bottom: 40px; }

/* ==========================================================================
   CONTENT
   ========================================================================== */

/* ETC */

.fontColorBlue, .fontColorBlue h1 { color: #07a4db; }
.fontColorBrown, .fontColorBrown h1 { color: #80562a; }

.fontSizeBig { font-size: 27px; line-height: calc(1em * (36 / 27)); }
.fontSizeNormal { font-size: 18px; line-height: calc(1em * (27 / 18)); }
.fontSizeSmall { font-size: 14px; line-height: calc(1em * (18 / 14)); }

/* ==========================================================================
   HEADLINES
   ========================================================================== */

h1, .h1, h2, .h2, h3, .h3 {
	position: relative;
	display: block;
	width: 100%;
	font-family: 'Barlow', sans-serif;
	font-weight: 300;
	font-size: 54px;
	line-height: calc(1em * (60 / 54));
	color: #4d4d4d;
	/*text-align: center;*/
	text-transform: none;
	margin: 0 0 1em 0;
}

h1 strong {
	display: block;
	font-weight: 600;
	/*
	font-size: 36px;
	line-height: calc(1em * (45 / 36));
	*/
	margin-top: -5px;
}

h2, .h2 {
	font-weight: 600;
	font-size: 36px;
	line-height: calc(1em * (36 / 36));
	/*
	color: #4d4d4d;
	text-align: left;
	*/
}

h2 strong, .h2 strong {
	display: block;
	font-weight: 300;
	margin-top: 0px;
}

h3, .h3 {
	font-weight: 600;
	font-size: 24px;
	line-height: calc(1em * (32 / 24));
	margin-bottom: 0.333em;
}

h3 strong, .h3 strong {
	display: block;
	font-weight: 400;
	/*
	font-size: 18px;
	line-height: calc(1em * (27 / 18));
	*/
	margin-top: -7px;
}

.textAlignLeft h1, .textAlignLeft .h1,
.textAlignLeft h2, .textAlignLeft .h2,
.textAlignLeft h3, .textAlignLeft .h3 {
	text-align: left;
}

div + h2, p + h2, ul + h2, ol + h2, h1 + h2,
div + h1, p + h1, ul + h1, ol + h1 { margin-top: 40px !important; }
h1.header + h2, h1.displayNO + h2 { margin-top: 0 !important; }

/* ==========================================================================
   LINKS
   ========================================================================== */

a.skiplink { display: none; }

a,
a:link,
a:visited {
	text-decoration: none;
	border-bottom: 0;
}

a.borderNO,
a.borderNO:link,
a.borderNO:visited {
	border: 0 !important;
}

main a,
main a:link,
main a:visited {
	color: #4d4d4d;
	text-decoration: none;
	border-bottom: 0.5px solid #4d4d4d;
}

body[data-pixelratio='1'] main a,
body[data-pixelratio='1'] main a:link,
body[data-pixelratio='1'] main a:visited {
	border-bottom-width: 1px;
}

main a:hover,
main a:focus,
main a:active,
main a:visited:hover,
main a:visited:focus,
main a:visited:active {
	color: #0080b5;
	border-bottom-width: 1px;
	border-bottom-color: #0080b5;
}

body[data-pixelratio='1'] main a:hover,
body[data-pixelratio='1'] main a:focus,
body[data-pixelratio='1'] main a:active,
body[data-pixelratio='1'] main a:visited:hover,
body[data-pixelratio='1'] main a:visited:focus,
body[data-pixelratio='1'] main a:visited:active {
	border-bottom-width: 2px;
}

footer > div.address > div a,
footer > div.address > div a:link,
footer > div.address > div a:visited {
	color: #fff;
	text-decoration: none;
	border-bottom: 0;
}

footer > div.address > div a:hover,
footer > div.address > div a:focus,
footer > div.address > div a:active,
footer > div.address > div a:visited:hover,
footer > div.address > div a:visited:focus,
footer > div.address > div a:visited:active {
	border-bottom: 1px solid #fff;
}

/* ==========================================================================
   BUTTONS
   ========================================================================== */

div.cc-banner button,
main button {
	position: relative;
	display: inline-block;
	font-weight: 400;
	font-family: 'Barlow', sans-serif;
	font-size: 18px;
	line-height: 1em;
	color: #4d4d4d;
	background: rgba(255, 255, 255, 0.333) none scroll no-repeat 10px center;
	background-size: auto 25px;
	padding: 10px 20px;
	border: 2px solid #4d4d4d !important;
	border-radius: 3px;
}

div.cc-banner button:hover,
main button:hover {
	background-color: #3e9cc3 !important;
	border-color: #fff;
	color: #fff;
	cursor: pointer;
}

main button.off { opacity: 0.5; }
main button.snipcart-add-item { background-image: url('../Images/main/etc/cart-gray@3x.png'); padding-left: 42px; }
main button:hover.snipcart-add-item { background-image: url('../Images/main/etc/cart-white@3x.png'); }

div.neos-nodetypes-buttonshop > a,
div.neos-nodetypes-buttonshop > a:link,
div.neos-nodetypes-buttonshop > a:visited {
	position: relative;
	display: inline-block;
	background: rgba(255, 255, 255, 0.333) none scroll no-repeat 10px center;
	background-size: auto 25px;
	padding: 5px 10px 5px 5px;
	border: 2px solid #4d4d4d;
	border-radius: 3px;
}

div.neos-nodetypes-buttonshop > a,
div.neos-nodetypes-buttonshop > a:link,
div.neos-nodetypes-buttonshop > a:visited {
	background-image: url('../Images/main/etc/cart-gray@3x.png');
	padding-left: 42px;
}

div.neos-nodetypes-buttonshop > a.off,
div.neos-nodetypes-buttonshop > a.off:link,
div.neos-nodetypes-buttonshop > a.off:visited {
	opacity: 0.5;
	cursor: not-allowed;
}

div.neos-nodetypes-buttonshop > a:hover,
div.neos-nodetypes-buttonshop > a:focus,
div.neos-nodetypes-buttonshop > a:active,
div.neos-nodetypes-buttonshop > a:visited:hover,
div.neos-nodetypes-buttonshop > a:visited:focus,
div.neos-nodetypes-buttonshop > a:visited:active {
	background-color: #07a4db;
	border-color: #07a4db;
	color: #fff;
}

div.neos-nodetypes-buttonshop > a:hover,
div.neos-nodetypes-buttonshop > a:focus,
div.neos-nodetypes-buttonshop > a:active,
div.neos-nodetypes-buttonshop > a:visited:hover,
div.neos-nodetypes-buttonshop > a:visited:focus,
div.neos-nodetypes-buttonshop > a:visited:active {
	background-image: url('../Images/main/etc/cart-white@3x.png');
}

/* ==========================================================================
   LISTS
   ========================================================================== */

ul, ol, dl { position: relative; margin: 0 0 1em 0; }
ul > li, ol > li, dl > li { position: relative; }

ul {
	list-style-type: disc;
	list-style-position: outside;
	margin-left: 22px;
}

ol {
	list-style-type: decimal;
	list-style-position: outside;
	margin-left: 24px;
}

/* NO BULLETS */

ul.dotsNO {
	list-style-type: none;
	list-style-position: inside;
	margin-left: 0;
}

ul.dotsNO > li {
	padding-left: 0 !important;
}

/* LEAFS */

.leafs ul,
.leafs ol {
	list-style-type: none;
	list-style-position: inside;
	margin-left: 0;
}

.leafs ol { list-style-type: decimal; }

.leafs ol li,
.leafs ul li {
	padding-left: 25px;
	background: transparent url('../Images/main/etc/bg-li-blue@3x.png') scroll no-repeat left 7px;
	background-size: 15px 19px;
}

/*
.pattern ol.leafs > li,
.pattern ul.leafs > li {
	background-image: url('../Images/main/etc/bg-li-gray@3x.png');
}
*/

/* ==========================================================================
   NAVIGATION
   ========================================================================== */

/* HEADER > MAIN */

nav.sitemap > ul > li > ul,
nav.sitemap > ul,
nav.main > ul > li > ul,
nav.main > ul {
	position: relative;
	display: block;
	width: 100%;
	height: auto;
	list-style-type: none;
	list-style-position: outside;
	margin: 0;
}

nav.main > ul > li > ul { display: none; margin: 10px 0; }
nav.main > ul > li.act > ul { display: block; }
nav.main > ul > li.on > ul { display: block; }

nav.sitemap > ul > li > ul { margin: 10px 0; }

nav.sitemap > ul > li > ul > li,
nav.sitemap > ul > li,
nav.main > ul > li > ul > li,
nav.main > ul > li {
	position: relative;
	display: block;
	width: 100%;
	height: auto;
}

nav.main > ul > li {
	padding-top: 42px;
	background: transparent url('../Images/main/etc/bg-nav-gray@3x.png') scroll no-repeat center 8px;
	background-size: 40px 36px;
}

nav.sitemap > ul > li {
	padding-top: 62px;
	background: transparent url('../Images/main/etc/bg-nav-blue@3x.png') scroll no-repeat center 28px;
	background-size: 40px 36px;
}

nav.sitemap > ul > li:nth-of-type(1),
nav.main > ul > li:nth-of-type(1) {
	padding-top: 0;
	background: none;
}

nav.sitemap > ul > li > ul > li > a,
nav.sitemap > ul > li > ul > li > a:link,
nav.sitemap > ul > li > ul > li > a:visited,
nav.sitemap > ul > li > a,
nav.sitemap > ul > li > a:link,
nav.sitemap > ul > li > a:visited,
nav.main > ul > li > ul > li > a,
nav.main > ul > li > ul > li > a:link,
nav.main > ul > li > ul > li > a:visited,
nav.main > ul > li > a,
nav.main > ul > li > a:link,
nav.main > ul > li > a:visited {
	display: block;
	width: 100%;
	height: auto;
	font-weight: 800;
	font-size: 18px;
	line-height: 1em;
	color: #4d4d4d;
	text-align: center;
	text-transform: none;
	padding: 10px 20px;
	border: 0;
}

nav.sitemap > ul > li > a > span,
nav.main > ul > li > a > span {
	font-weight: 400;
	font-size: 16px;
	line-height: 1em;
}

nav.sitemap > ul > li > ul > li > a,
nav.sitemap > ul > li > ul > li > a:link,
nav.sitemap > ul > li > ul > li > a:visited,
nav.main > ul > li > ul > li > a,
nav.main > ul > li > ul > li > a:link,
nav.main > ul > li > ul > li > a:visited {
	font-weight: 600;
	font-size: 16px;
	line-height: 1em;
	padding: 5px 20px;
}

/*
nav.sitemap > ul > li:hover > a,
nav.sitemap > ul > li:focus > a,
*/
nav.sitemap > ul > li > a:hover,
nav.sitemap > ul > li > a:focus,
nav.sitemap > ul > li > a:active,
nav.sitemap > ul > li > a:visited:hover,
nav.sitemap > ul > li > a:visited:focus,
nav.sitemap > ul > li > a:visited:active,
/*
nav.main > ul > li:hover > a,
nav.main > ul > li:focus > a,
*/
nav.main > ul > li > a:hover,
nav.main > ul > li > a:focus,
nav.main > ul > li > a:active,
nav.main > ul > li > a:visited:hover,
nav.main > ul > li > a:visited:focus,
nav.main > ul > li > a:visited:active {
	color: #07a4db !important;
}

nav.main > ul > li.act > a,
nav.main > ul > li.act > a:link,
nav.main > ul > li.act > a:visited,
nav.main > ul > li.act > a:hover,
nav.main > ul > li.act > a:focus,
nav.main > ul > li.act > a:active,
nav.main > ul > li.act > a:visited:hover,
nav.main > ul > li.act > a:visited:focus,
nav.main > ul > li.act > a:visited:active {
	color: #07a4db;
}

/*
nav.sitemap > ul > li > ul > li:hover > a,
nav.sitemap > ul > li > ul > li:focus > a,
*/
nav.sitemap > ul > li > ul > li > a:hover,
nav.sitemap > ul > li > ul > li > a:focus,
nav.sitemap > ul > li > ul > li > a:active,
nav.sitemap > ul > li > ul > li > a:visited:hover,
nav.sitemap > ul > li > ul > li > a:visited:focus,
nav.sitemap > ul > li > ul > li > a:visited:active,
/*
nav.main > ul > li > ul > li:hover > a,
nav.main > ul > li > ul > li:focus > a,
*/
nav.main > ul > li > ul > li > a:hover,
nav.main > ul > li > ul > li > a:focus,
nav.main > ul > li > ul > li > a:active,
nav.main > ul > li > ul > li > a:visited:hover,
nav.main > ul > li > ul > li > a:visited:focus,
nav.main > ul > li > ul > li > a:visited:active {
	color: #07a4db !important;
}

nav.main > ul > li > ul > li.act > a,
nav.main > ul > li > ul > li.act > a:link,
nav.main > ul > li > ul > li.act > a:visited,
nav.main > ul > li > ul > li.act > a:hover,
nav.main > ul > li > ul > li.act > a:focus,
nav.main > ul > li > ul > li.act > a:active,
nav.main > ul > li > ul > li.act > a:visited:hover,
nav.main > ul > li > ul > li.act > a:visited:focus,
nav.main > ul > li > ul > li.act > a:visited:active {
	color: #07a4db;
}

/* FOOTER > SOCIAL MEDIA */

nav.social > ul {
	position: relative;
	display: inline-block;
	width: auto;
	height: auto;
	list-style-type: none;
	list-style-position: outside;
	margin: 0;
}

nav.social > ul > li {
	position: relative;
	display: inline-block;
	width: auto;
	height: auto;
	padding-left: 20px;
}

nav.social > ul > li:nth-of-type(1) { padding-left: 0; }

nav.social > ul > li > a,
nav.social > ul > li > a:link,
nav.social > ul > li > a:visited {
	display: block;
	width: auto;
	height: auto;
	font-size: 0;
	line-height: 0;
}

nav.social > ul > li > a > img {
	width: 30px;
	height: 30px;
}

/* FOOTER > SOCIAL MEDIA */

nav.legal > ul {
	position: relative;
	display: inline-block;
	width: auto;
	height: auto;
	list-style-type: none;
	list-style-position: outside;
	margin: 0;
}

nav.legal > ul > li {
	position: relative;
	display: inline-block;
	width: auto;
	height: auto;
	padding-left: 20px;
}

nav.legal > ul > li:nth-of-type(1) { padding-left: 0; }

nav.legal > ul > li > a,
nav.legal > ul > li > a:link,
nav.legal > ul > li > a:visited {
	display: block;
	width: auto;
	height: auto;
	font-weight: 600;
	font-size: 14px;
	line-height: 1em;
	padding: 5px 0;
	color: #fff;
	text-transform: uppercase;
	border-bottom: 2px solid #3e9cc3;
}

/*
nav.legal > ul > li:hover > a,
nav.legal > ul > li:focus > a,
*/
nav.legal > ul > li > a:hover,
nav.legal > ul > li > a:focus,
nav.legal > ul > li > a:active,
nav.legal > ul > li > a:visited:hover,
nav.legal > ul > li > a:visited:focus,
nav.legal > ul > li > a:visited:active {
	border-bottom-color: #fff;
}

nav.legal > ul > li.act > a,
nav.legal > ul > li.act > a:link,
nav.legal > ul > li.act > a:visited,
nav.legal > ul > li.act > a:hover,
nav.legal > ul > li.act > a:focus,
nav.legal > ul > li.act > a:active,
nav.legal > ul > li.act > a:visited:hover,
nav.legal > ul > li.act > a:visited:focus,
nav.legal > ul > li.act > a:visited:active {
	border-bottom-color: #fff;
}

/* ==========================================================================
   GENERAL
   ========================================================================== */

.jsNO .jsNO { display: block; }
.jsOK .jsNO { display: none; }

.jsNO .jsOK { display: none; }
.jsOK .jsOK { display: block; }

.clear { clear: both; display: block; height: 0; width: 0; overflow: hidden; }
.displayNO { display: none !important; }
.wrapNO { white-space: nowrap; }
.fontNO, .fontSize0 { font-size: 0; line-height: 0; }
.hyphenOK { -webkit-hyphens: auto; -ms-hyphens: auto; hyphens: auto; word-wrap: break-word; }

hr {
	width: 100%;
	max-width: 1400px;
	height: 42px;
	margin: 100px auto;
	border: 0;
	background: transparent url('../Images/main/etc/bg-hr@3x.png') scroll no-repeat center center;
	background-size: 1400px 42px;
	opacity: 1;
}
/*body[data-pixelratio='1'] hr { border-top-width: 1px; }*/

div.distance,
div.space {
	position: relative;
	width: 100%;
	height: 40px;
	overflow: hidden;
	background-color: transparent;
}

.textAlignLeft { text-align: left !important; }
.textAlignCenter { text-align: center !important; }
.textAlignRight { text-align: right !important; }
.textAlignBlock { text-align: justify !important; }

.textCaseUpper { text-transform: uppercase !important; }
.textCaseLower { text-transform: lowercase !important; }

.paddingTopZero { padding-top: 0 !important; }
.paddingBottomZero { padding-bottom: 0 !important; }
.marginTopZero { margin-top: 0 !important; }
.marginBottomZero { margin-bottom: 0 !important; }

p, .p { margin: 0 0 1em 0; }
p:last-child, ul:last-child, ol:last-child { margin-bottom: 0; }

table { position: relative; width: 100%; border-width: 0; margin: 0 0 1.5em 0; border-collapse: collapse; empty-cells: hide; }
th, td { background-color: transparent; vertical-align: top; }

table.center { width: 100%; height: 100%; margin: 0; }
table.center > tbody > tr > td { width: 100%; height: 100% !important; text-align: center; vertical-align: middle; }

picture, figure { position: relative; display: inline-block; width: 100%; max-width: 100%; margin: 0; font-size: 0; line-height: 0; }
figure > figcaption { display: inline-block; width: 100%; max-width: 100%; margin: 0; padding: 0; opacity: 1; font-size: 50%; line-height: 1.5em; text-transform: uppercase; }
img { border: 0; height: auto; max-width: 100%; }

video {
	position: relative;
	width: 100%;
	height: auto;
	border: 0;
	-webkit-mask-image: -webkit-radial-gradient(white, black);
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility: hidden;
	-webkit-appearance: none;
}

strong { font-weight: 600; }
em, i { font-style: italic; }

pre, code { font-family: "Courier New", Courier, monospace; }
address { font-style: normal; margin: 0 0 1.5em 0; }
acronym, abbr { border-bottom: 1px dashed #000; cursor: help; }
blockquote, cite { margin: 0 0 1.5em 0; width: auto; }

sup, sub {
	font-size: 75%;
	position: relative;
	height: 0;
	line-height: 1;
	vertical-align: baseline;
}
sup { bottom: 1ex; }
sub { top: .5ex; }

iframe { margin-bottom: 1.5em; border: 0; }

/* ==========================================================================
   SUBCOLUMNS
   ========================================================================== */

div.subcolumns {
	position: relative;
	left: -40px;
	width: calc(100% + 40px);
	height: auto;
	/*margin-bottom: 1.5em;*/
	margin-bottom: 0;
}

/*div.subcolumns > div.col {*/
/*	position: relative;*/
/*	margin-left: 40px;*/
/*}*/

/*div.subcolumns > div.col.left { float: left; }*/
/*div.subcolumns > div.col.right { float: right; }*/
/*div.subcolumns > div.col.center { float: none; margin: 0 auto; }*/

/*div.subcolumns > div.col.c1 { width: calc(100% / 12 * 1 - 40px); }*/
/*div.subcolumns > div.col.c2 { width: calc(100% / 12 * 2 - 40px); }*/
/*div.subcolumns > div.col.c3 { width: calc(100% / 12 * 3 - 40px); }*/
/*div.subcolumns > div.col.c4 { width: calc(100% / 12 * 4 - 40px); }*/
/*div.subcolumns > div.col.c5 { width: calc(100% / 12 * 5 - 40px); }*/
/*div.subcolumns > div.col.c6 { width: calc(100% / 12 * 6 - 40px); }*/
/*div.subcolumns > div.col.c7 { width: calc(100% / 12 * 7 - 40px); }*/
/*div.subcolumns > div.col.c8 { width: calc(100% / 12 * 8 - 40px); }*/
/*div.subcolumns > div.col.c9 { width: calc(100% / 12 * 9 - 40px); }*/
/*div.subcolumns > div.col.c10 { width: calc(100% / 12 * 10 - 40px); }*/
/*div.subcolumns > div.col.c11 { width: calc(100% / 12 * 11 - 40px); }*/
/*div.subcolumns > div.col.c12 { width: calc(100% / 12 * 12 - 40px); }*/

div.subcolumns > .column {
    position: relative;
    margin-left: 40px;
    float: left;
}

.columns-100         .column { width: calc(100% - 40px);}
.columns-50-50       .column { width: calc(100% / 12 * 6 - 40px);}
.columns-33-33-33    .column { width: calc(100% / 12 * 4 - 40px);}
.columns-50-25-25    .column,
.columns-25-50-25    .column,
.columns-25-25-50    .column { width: calc(100% / 12 * 3 - 40px);}
.columns-50-25-25    .column:nth-of-type(1),
.columns-25-50-25    .column:nth-of-type(2),
.columns-25-25-50    .column:nth-of-type(3) { width: calc(100% / 12 * 6 - 40px);}
.columns-25-25-25-25 .column { width: calc(100% / 12 * 3 - 40px);}

/*.columns-2 {*/
/*	-webkit-column-count: 2;*/
/*	   -moz-column-count: 2;*/
/*	        column-count: 2;*/
/*	-webkit-column-gap: 40px;*/
/*	   -moz-column-gap: 40px;*/
/*	        column-gap: 40px;*/
/*}*/

/*.columns-3 {*/
/*	-webkit-column-count: 3;*/
/*	   -moz-column-count: 3;*/
/*	        column-count: 3;*/
/*	-webkit-column-gap: 40px;*/
/*	   -moz-column-gap: 40px;*/
/*	        column-gap: 40px;*/
/*}*/

/* ==========================================================================
   BURGER BUTTON (https://codepen.io/designcouch/pen/Atyop)
   ========================================================================== */

nav.button {
	transform-origin: 50% 50%;
	/*
	-webkit-transform: rotate(0deg);
	   -moz-transform: rotate(0deg);
	     -o-transform: rotate(0deg);
	        transform: rotate(0deg);
	-webkit-transition: .5s ease-in-out;
	   -moz-transition: .5s ease-in-out;
	     -o-transition: .5s ease-in-out;
	        transition: .5s ease-in-out;
	*/
	/*
	-webkit-transform: scale(0.75);
	   -moz-transform: scale(0.75);
	     -o-transform: scale(0.75);
	        transform: scale(0.75);
	*/
	cursor: pointer;
}

nav.button > span {
	position: absolute;
	display: block;
	height: 6px;
	width: 50%;
	background: #4d4d4d;
	opacity: 1;
	transform: rotate(0deg);
	transition: .25s ease-in-out;
}

/*****************************************************************************/
}



/* @1.5x */
@media
only screen and (-webkit-min-device-pixel-ratio: 1.5),
only screen and ( min--moz-device-pixel-ratio: 1.5),
only screen and ( -o-min-device-pixel-ratio: 1.5/1),
only screen and ( min-device-pixel-ratio: 1.5),
only screen and ( min-resolution: 144dpi),
only screen and ( min-resolution: 1.5dppx) {
/*****************************************************************************/

/*****************************************************************************/
}



/* @2x */
@media
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and ( min--moz-device-pixel-ratio: 2),
only screen and ( -o-min-device-pixel-ratio: 2/1),
only screen and ( min-device-pixel-ratio: 2),
only screen and ( min-resolution: 192dpi),
only screen and ( min-resolution: 2dppx) {
/*****************************************************************************/

/*****************************************************************************/
}



/* IE 10/11 */
@media only screen and (-ms-high-contrast: none), (-ms-high-contrast: active) {

}
