
@font-face{
	font-family:'fontawesome';
	src:url('../../fonts/fontawesome-webfont.eot');
	src:url('../../fonts/fontawesome-webfont.eot') format('embedded-opentype'),
	url('../../fonts/fontawesome-webfont.woff2') format('woff2'),
	url('../../fonts/fontawesome-webfont.woff') format('woff'),
	url('../../fonts/fontawesome-webfont.ttf') format('truetype'),
	url('../../fonts/fontawesome-webfont.svg') format('svg');
	font-weight:normal;
	font-style:normal;
	font-display: swap;
}


@font-face{
	font-family:'brands';
	src:url('../../fonts/brands-webfont.eot');
	src:url('../../fonts/brands-webfont.eot') format('embedded-opentype'),
	url('../../fonts/brands-webfont.woff2') format('woff2'),
	url('../../fonts/brands-webfont.woff') format('woff'),
	url('../../fonts/brands-webfont.ttf') format('truetype'),
	url('../../fonts/brands-webfont.svg') format('svg');
	font-weight:normal;
	font-style:normal;
	font-display: swap;
}


/* --------------------------------------------------------------
CSS RESET
-------------------------------------------------------------- */

/* CSS RESET */
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 { background:transparent; border:0; margin:0; padding:0; vertical-align:baseline; }
header, nav, section, article, aside, footer { display:block; }
body { line-height:1; }
h1, h2, h3, h4, h5, h6 { font-weight:normal; }
ol, ul, li { list-style:none; }
blockquote { quotes:none; }
blockquote:before, blockquote:after { content:''; }
del { text-decoration:line-through; }
table { border-collapse:collapse; border-spacing:0; }
a img { border:none; }


/* --------------------------------------------------------------
GENERAL ELEMENTS
-------------------------------------------------------------- */

/* BODY */
body { font-family:'Open Sans', sans-serif; letter-spacing:0; text-transform:none; background:#fff; color:#444; font-size:16px; font-weight:normal; line-height:1.8; transition:0.3s opacity; }
html body:before { visibility:hidden; opacity:0; }

/* HEADINGS */
h1, h2, h3, h4, h5, h6, .heading { line-height:1.2; margin:0 0 0.4em; font-family:'Open Sans', sans-serif; letter-spacing:0; text-transform:none; color:#333; font-size:16px; font-weight:bold; }
h1 { font-size:2.5em; }
h2 { font-size:2.0em; }
h3 { font-size:1.5em; }
h4 { font-size:1.3em; }
h5 { font-size:1.2em; }
h6 { font-size:1.1em; }


/* HYPERLINKS */
a, a:visited { color:#22aacc; text-decoration:none; }
a:hover { color:#3be; text-decoration:none; }

/* FORMS */
label { padding:0; margin:0; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; box-sizing:border-box; }
input[type=text], input[type=password], input[type=input],
input[type=tel], input[type=url], input[type=email],
input[type=number], input[type=range], input[type=search], input[type=color],
input[type=time], input[type=week], input[type=month], input[type=date], input[type=datetime],
textarea, select { font-size:1em; font-family:inherit; border:none; padding:14px; margin:0; width:100%; color:#555; background:#f4f5f8; box-sizing:border-box; -webkit-appearance:none; border-radius:0; }
::placeholder { color:#888; opacity:0.4; }
input[type=submit] { width:auto; -webkit-appearance:none; }
body select { background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAAFCAYAAACn39dKAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAD5JREFUeNpiYGBgmMmAG8z8//8/A7GYCaYJm0EMJAKQYelYNMPY6aQYxojHJWCDQM4nxWUMWFyRzkAGAAgwAGMTKhZAxxJyAAAAAElFTkSuQmCC'); background-repeat:no-repeat; background-position:right; }
input:focus, select:focus, textarea:focus, button:focus { outline:none; }


/* GENERAL TYPOGRAPHY */
p, address { margin-bottom:1.6em; }
span, div, p, dl, td, th, ul, ol, blockquote { }

/* LISTS */
ul li, ol li { list-style:disc; margin:5px 0 5px 25px; list-style-position:outside; }
ol li { list-style:decimal; }
ol ol li { list-style:upper-alpha; }
ol ol ol li { list-style:lower-roman; }
ol ol ol ol li { list-style:lower-alpha; }
ol ul li,
ol ol ul li,
ol ol ol ul li { list-style:disc; }
ul ul, ol ol, ul ol, ol ul { margin-bottom:0; }
ul, ol, dd, pre, hr { margin-bottom:25px; }
ul ul, ol ol, ul ol, ol ul { margin-bottom:0; }

dl { margin:0 0 24px 0; }
dt { font-weight:bold; }
dd { margin-bottom:18px; }
strong, b { font-weight:bold; }
cite, em, i { border:none; font-style:italic; }
big { font-size:131.25%; }
ins { background:#ffc; border:none; }
del { text-decoration:line-through; }

/* ADDRESSES */
address { font-size:0.9em; line-height:1.2em; }

/* CITATIONS */
blockquote { display:block; font-style:italic; padding:0 5%; margin:25px 0; }
blockquote cite, blockquote em, blockquote i { font-style:normal; }

/* PREDEFINED TEXT */
pre { display:block; overflow:auto; font-family:Courier, monospace; background:url(data:image/gif;base64,R0lGODlhAQAyAIAAAP////f39yH5BAAAAAAALAAAAAABADIAAAIIhI+pGO0P4ysAOw==); border:1px solid #eee; color:#555; line-height:25px; padding:25px 20px; font-size:14px; margin:25px 0; }

/* TEXT VARIATIONS */
abbr, acronym { border-bottom:1px dotted #666; cursor:help; }
ins { text-decoration:none; }
sup, sub { font-size:0.7em; height:0; line-height:1; position:relative; vertical-align:baseline; }
sup { bottom:1ex; }
sub { top:.5ex; }
kbd, tt, var { line-height:21px; }
code { font-size:1.05em; }

/* CODE */
code, code var { font-family:Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace; }

/* IFRAMES */
iframe { max-width:100%; }

/* TABLES */
table { border-collapse:collapse; border-spacing:0; margin:0 0 24px; line-height:1.5; text-align:left; width:100%; }
tr th, thead th { border:none; font-weight:bold; line-height:1.2em; padding:12px 0; border-bottom:2px solid rgba(0,0,0,0.1); }
tbody { border-bottom:2px solid rgba(0,0,0,0.1); }
tbody:last-child { border-bottom:none; }
tr td { border:none; padding:12px 0; }
tfoot tr td { border-bottom:none; }
tr td, tr th, thead th, tr th, thead th { }
.dark tr th, .dark thead th { }
.dark tr td {  }

/* FORM FIELDS */
fieldset { margin:0 0 30px; }
legend { font-size:1.3em; display:block; margin:0 0 20px; }

/* HEADING LINE */
hr { background-color:#fff; border:0; border-top:2px solid #eee; border-bottom:1px solid #fff; clear:both; height:0; margin:40px 0; }

/* INLINE IMAGES */
img { margin:0; max-width:100%; line-height:0; height:auto; }
img.align-left { display:block; float:left; max-width:50%; margin:4px 30px 20px 0; }
img.align-right { display:block; float:right; max-width:50%; margin:4px 0 20px 30px; }
img.align-center { display:block; margin:0 auto 20px; }
img.align-full { display:block; width:100%; margin:0 auto 20px; }
.align-left { text-align:left; }
.align-center { text-align:center; }
.align-right { text-align:right; }
.align-full { text-align:justify; }

.clear { clear:both; width:100%; height:0; margin:0; padding:0; }
html body .outer .hidden { display:none; }


/* ICON FONTS */
.font-fontawesome { font-family:'fontawesome'; }
.font-brands { font-family:'brands'; }
.font-linearicons { font-family:'linearicons'; }


/* --------------------------------------------------------------
FIELDS - Text, checkboxes...
-------------------------------------------------------------- */

/* BUTTONS */
.button,
.button:visited,
body input[type=submit],
button { position:relative; display:inline-block; width:auto; border:none; margin:0; padding:1em 2em; text-align:center; border-radius:0; box-sizing:border-box; text-decoration:none; cursor:pointer; font-family:'Open Sans'; letter-spacing:1px; text-transform:uppercase; color:#fff; font-size:16px; font-weight:bold; background:#6b2; transition:0.2s all; }

/* DECORATED CHECKBOXES */
.field-checkbox { position:relative; padding-left:35px; margin:6px 0; }
.field-checkbox span:hover { opacity:0.7; }
.field-checkbox-field { cursor:pointer; }
.field-checkbox:before { display:block; position:absolute; top:50%; left:0; content:' '; background:#fff; text-align:center; font-size:12px; color:#fff; width:20px; height:20px; margin-top:-10px; line-height:20px; border-radius:4px; border:2px solid #ddd; transition:0.2s all; }
.field-checkbox input { position:absolute; left:-9999px; }
.field-checkbox.field-checkbox-active:before { background:#6b2; border:2px solid #6b2; content:'\f00c'; font-family:'fontawesome'; }


/* --------------------------------------------------------------
LAYOUT ELEMENTS - Header, footer...
-------------------------------------------------------------- */


/* WRAPPERS */
.outer { overflow:clip; position:relative; width:100%; }
.container { max-width:92vw; width:1180px; padding:0; margin:0 auto; }
.container:after { display:block; width:100%; content:' '; height:0px; }
.container .container { max-width:100%; }
.container.container-narrow { width:800px; }
.wrapper { }
.wrapper-body { background:#fff; }


.header { margin:0; padding:60px 0; position:relative; background:#F5FAFD; }
.header-body { display:flex; position:relative; padding:0 0 30px; flex-direction:row; flex-wrap:wrap; justify-content:space-between; align-items:center; }
.header-logo { width:250px; }
@media screen and (max-width:600px){
	.header { padding:30px 0; }
}


/* LOGO */
.logo { width:250px; max-width:100%; white-space:nowrap; text-overflow:ellipsis; }
.logo a,
.logo-image { display:block; line-height:1; height:60px; object-fit:contain; object-position: left;  text-transform:uppercase; letter-spacing:1px; color:inherit; font-weight:bold; }
.logo-text { display:inline-block; font-size:20px; transform:skew(-10deg, 0); background:#444; color:#fff; line-height:1; font-weight:bold; padding:10px 15px; }
.logo a:hover { text-decoration:none; }
@media screen and (max-width:600px){
	.logo { width:200px; }
}


.search { display:flex; position:relative; gap:20px; flex-direction:row; width:100%; flex-wrap:nowrap; justify-content:space-between; align-items:center; }
.search .search-text { padding:20px 30px; flex-grow:1; box-sizing:border-box; background:#fff; border-radius:5px; }
.search .search-submit { border-radius: 5px; padding:20px 30px; }


/* MAIN/CONTENT */
.main { clear:both; padding:60px 0; min-height:30vh; }

.layout { display:flex; gap:50px; }
.layout-sidebar { width:250px; flex-shrink:0; }
.layout-content { flex-grow:1; }

.menu { width:100%; }
.menu-item,
.menu-item:link,
.menu-item:visited { display:flex; align-items:center; width:100%; margin: 0 0 25px; font-size:18px; color:#444; gap:20px; }
.menu-item-active { opacity:0.5; }
.menu-item-logout, .menu-item-logout:link, .menu-item-logout:visited { margin-top:40px; color:#f66; }
.menu-item-icon { width:30px; height:30px; font-size:24px; line-height:30px; text-align:center; opacity:0.7; }
.menu-item-name { flex-grow:1; white-space:nowrap; overflow:hidden; }



/* Clear main sections */
.outer:after,
.clear-after:after,
.wrapper-body:after,
.header-body:after,
.menu-main:after,
.content:after,
.pagetitle:after,
.subfooter:after,
.footer:after,
.bottom:after,
.menu-bottom:after,
.menu-footer:after,
.footer-menu:after,
.main:before,
.main:after { display:block; width:100%; content:' '; height:0; float:none;	 clear:both; }


/* FOOTER */
.footer { padding:50px 0 50px; text-align: center; }
/* LOGO */
.footer-logo { display:block; width:200px; margin:0 auto; white-space:nowrap; text-overflow:ellipsis; }
.footer-logo a { display:block; }
.footer-logo a:hover { text-decoration:none; }
.footer-logo-image { display:block; width:200px; height:50px; object-fit:contain; filter:saturate(0); opacity:0.3; }


/* --------------------------------------------------------------
COMMON ELEMENTS - Languages, social...
-------------------------------------------------------------- */


/* NUMBERED POST NAVIGATION */
.pagination { margin:30px 0 30px; overflow:hidden; }
.pagination .pagination-page { display:inline-block; cursor:pointer; font-weight:bold; margin:0 0; color:inherit; padding:8px 15px; text-align:center; border-radius:3px; box-shadow:inset 0 0 0 1px #ddd; }
.pagination .pagination-page-first:before { font-family:'fontawesome'; content:'\f100'; }
.pagination .pagination-page-last:before { font-family:'fontawesome'; content:'\f101'; }
.pagination .pagination-page-current { opacity:0.5; }
.pagination a:hover { text-decoration:none; }



/* MESSAGE BOXES */
.message { display:block; position:relative; background:#f9f9f9; margin:0 0 30px; padding:25px 25px; color:#666; border-radius:3px; box-shadow:0 2px 6px 0 rgba(0,0,0,0.15); }
.message-ok { background:#d9f5ce; color:#060; }
.message-info { background:#eff; color:#006; }
.message-error { background:#ffdec9; color:#761a1a; }
.message-warning { background:#fff9d8; color:#960; }


/* COLUMNS */
.row { display:block; }
.row:after { clear:both; content:' '; display:table; }
.column { display:block; float:left; margin-right:5%; }
.column:last-child { margin-right:0; }
.col1 { width:100%; }
.col2 { width:47.5%; }
.col3 { width:30%; }
.col3x2 { width:65%; }
.col4 { width:21.25%; }
.col4x2 { width:47.5%; }
.col4x3 { width:73.5%; }
.col5 { width:16%; }
.col5x2 { width:37%; }
.col5x3 { width:58%; }
.col5x4 { width:79%; }
.col6 { width:12.5%; }
.col6x2 { width:30%; }
.col6x3 { width:47.5%; }
.col6x4 { width:65%; }
.col6x5 { width:82.5%; }
.column.col-last { margin-right:0; }
.col-divide { display:block; clear:both; width:100%; }
.columns { width:auto; margin:0; }


/* TABLET SCREENS (PORTRAIT) */
@media screen and (max-width: 800px){

	.container { max-width:88vw; }


	/* COLUMNS */
	.col4 { width:47.5%; }
	.col4:nth-of-type(2n) { margin-right:0; }
	.col4:nth-of-type(3) { clear:left; }
	.col5 { width:47.5%; }
	.col5:nth-child(n+3) { width:30%; }
	.col5:nth-child(2) { margin-right:0; }
	.col6 { width:30%; }
	.col6:nth-child(3n) { margin-right:0; }

	/* CONTENT */
	.content .content-body,
	.content .content-sidebar { float:none; width:auto; }

	/* MAIN MENU */
	.menu-main { display:none; }
	.menu-mobile-toggle { display:block; }
	.menu-mobile { display:block; }
}


/* NON-SMARTPHONE SCREENS */
@media only screen and (min-width: 1023px){
	.mobile-only { display:none !important; }
}



/* SMARTPHONE SCREENS */
@media only screen and (max-width: 600px){

	.desktop-only { display:none !important; }

	/* HEADINGS */
	h1 { font-size:2em; }
	h2 { font-size:1.8em; }
	h3 { font-size:1.4em; }
	h4 { font-size:1.2em; }
	h5 { font-size:1.1em; }
	h6 { font-size:1.0em; }


	/* COLUMNS */
	.column.col2,
	.column.col3,
	/*.column.col4,*/
	.column.col3x2,
	.column.col4x2,
	.column.col4x3,
	.column.col5x2,
	.column.col5x3,
	.column.col5x4,
	.column.col6x2,
	.column.col6x3,
	.column.col6x4,
	.column.col6x5 { float:none; width:auto; margin:0; }
	.col6:nth-child(3n) { margin-right:5%; }
	.col6:nth-child(2n) { margin-right:0; }
	.col6 { width:47.5%; }
	/* Narrow */
	.column-narrow.col6:nth-child(3n) { margin-right:2%; }
	.column-narrow.col6 { width:49%; }
	/* Fit */
	.column-fit.col6:nth-child(3n) { margin-right:0%; }
	.column-fit.col6 { width:50%; }


	/* SIDEBAR */
	.sidebar { clear:both; float:none; width:auto; margin:0; }


	/* FOOTER MENU */
	.menu-footer li { display:block; margin:0 0 15px; }
	.menu-footer li ul li { margin:0; }


	/* INLINE IMAGES */
	img.align-left { max-width:40%; margin-right:10px; }
	img.align-right { max-width:40%; margin-left:10px; }

	.pagetitle .pagetitle-body { float:none; max-width:100%; margin:0 0 10px; }
	.pagetitle .pagetitle-title { font-size:2em; }
	.pagetitle .product-price { float:none; max-width:100%; text-align:left; }


	/* Bottom */
	.menu-bottom { float:none; margin:0 0 20px; }
	.bottom-content { float:none; text-align:left; }

}



/* CATEGORY LIST */
.categories { margin:0 0 50px; display:flex; flex-direction: row; flex-wrap: wrap; align-items: stretch; justify-content: flex-start; align-content: stretch; }
.categories .category-item { display:block; color:inherit; width:calc(33.333333% - 27px); box-sizing: border-box; padding:30px; margin:0 40px 40px 0; border-radius:10px; box-shadow:0 0 10px 0 rgba(0,0,0,0.1); }
.categories .category-item:nth-child(3n) { margin-right:0; }
.categories .category-item:hover { color:inherit }
.categories .category-item-title { font-size:20px; line-height:1.2; }
.categories .category-item-description { color:inherit; min-height:70px; }
.categories .category-item-meta { opacity:0.6; font-size:14px; }
@media screen and (max-width:900px){
	.categories .category-item { width:calc(50% - 20px); }
	.categories .category-item:nth-child(3n) { margin-right:40px; }
	.categories .category-item:nth-child(2n) { margin-right:0; }
}
@media screen and (max-width:600px){
	.categories .category-item { width:100%; margin-right:0; }
}


.article-item:first-child { border-top:1px solid rgba(0,0,0,0.05); }
.article-item { display:block; position:relative; font-weight:bold; color:inherit; line-height: 1.2; padding:15px 0 15px 30px; border-bottom:1px solid rgba(0,0,0,0.05); }
.article-item:visited { color:inherit; }
.article-item-title { display:block; }
.article-item-description { display:block; margin:5px 0 0; opacity:0.6; font-weight:normal; font-size:0.8em;  }
.article-item:before { display:block; position: absolute; left:0; top:50%; content:'\f15b'; font-family:'fontawesome'; color:#ccc; margin:-15px 0 0; height:30px; line-height:30px; width: 20px; }
.article-item-meta { border-radius:3px; padding:30px; background:rgba(0,0,0,0.05); }


.article { display:block; }
.article-heading { margin:0 0 20px; }
.article-body { margin:0 0 20px; display:flex; gap:40px; flex-wrap: nowrap; flex-direction: row; align-items: stretch; justify-content: space-between; }
.article-title { margin:0 0 0; line-height:1.2; font-size:28px; }
.article-subtitle { margin:10px 0 0; line-height:1.2; opacity:0.6; font-size:18px; }
.article-meta { margin:10px 0 0; }
.article-sections { width:70%; }
.article-section { border-top:1px solid #eee; padding:40px 0 20px; }
.article-section:first-child { border-top:none; }
.article-section-title { margin:0 0 10px; }
.article-section-image { display:block; border:1px solid #ddd; padding:10px; border-radius:3px; margin:20px 0 30px; box-sizing:border-box; }
.article-section-meta { margin:0 0 20px; }
.article-section-meta .article-section-link { display:inline-block; border:2px solid #666; padding:10px 20px; line-height:1; border-radius:5px; color:#666; }
.article-sidebar { width:25%; }
/*Shortcuts*/
.article-shortcuts { position:sticky; top:30px; }
.article-shortcuts .article-shortcut { display:block; margin:0; line-height:1.2; color:#444; padding:10px 0 10px 20px; border-left:2px solid #eee; }
.article-shortcuts .article-shortcut-active { border-left-color:#2ac; }
@media screen and (max-width:900px){
	.article-sections { width:100%; }
	.article-sidebar { display:none; }
}

.breadcrumbs { margin:0 0 50px;}


.login { margin:0 auto; width:100%; max-width:600px;}

/*FORMS*/
.form-section-fields { margin:0 0 50px; }
.form-field { clear:both; margin:0 0 40px; }
.form-field-heading { line-height:1.2; margin:5px 0 10px; }
.form-field-title { font-size:1.5em; font-weight:400; color:var(--headings-color); }
.form-field-subtitle { font-size:1.1em; font-weight:400; color:var(--subheadings-color); }
.form-field-required { color:#f44; font-weight:bold; }
.form-field-body { }
@media screen and (max-width:600px){
	.form-field { margin:0 0 30px; }
	.form-field-heading { float:none; width:auto; margin:0 0 5px; }
	.form-field-title { font-size:1.3em; }
	.form-field-subtitle { font-size:1em; }
	.form-field-body { margin-left:0; }
}