/*                 ,--.
,--,--,--.,--. ,--.|  |,-. ,--.--. ,---.
|        | \  '  / |     / |  .--'| .-. |
|  |  |  |  \   '  |  \  \ |  |   | '-' |
`--`--`--'.-'  /   `--'`--'`--'    `---'
          `---'

 //////////////////////////////////////////////////////////
// ------------------------------------------------------ //
//  mykro.css                                      1.0.0  //
// ------------------------------------------------------ //
//  hans malkow (c) 2010-2025. all rights reserved.       //
//  https://malkow.media                                  //
// ------------------------------------------------------ //
/////////////////////////////////////////////////////////*/

:root {
	--default-font: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", "Ubuntu", sans-serif;

	--my-gutter-x: 2rem;
	--my-gutter-y: 2rem;

	/* --- */

	--my-z-dropdown: 1000;
	--my-z-sticky: 1020;
	--my-z-fixed: 1030;
	--my-z-offcanvas-backdrop: 1040;
	--my-z-offcanvas: 1045;
	--my-z-modal-backdrop: 1050;
	--my-z-modal: 1055;
	--my-z-popover: 1070;
	--my-z-tooltip: 1080;
	--my-z-toast: 1090;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

*::before,
*::after {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
}

button, input, optgroup, select, textarea {
	margin: 0;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
}

figure, dl, dt, dd {
	margin: 0;
}

img {
	display: block;
}

a img {
	border: none;
}

[tabindex="-1"]:focus:not(:focus-visible) {
	outline: 0 !important;
}

.g-1-5 {
	--my-gutter-x: 3rem;
	--my-gutter-y: 3rem;
}

.g-2 {
	--my-gutter-x: 4rem;
	--my-gutter-y: 4rem;
}

.g-2-5 {
	--my-gutter-x: 5rem;
	--my-gutter-y: 5rem;
}

.g-3 {
	--my-gutter-x: 6rem;
	--my-gutter-y: 6rem;
}

html {
	font-family: var(--primary-font, var(--default-font));
	font-size: 62.5%;
	-webkit-font-smoothing: antialiased;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	-webkit-text-size-adjust: 100%;
	text-rendering: optimizeLegibility;
}

body {
	margin: 0;
	padding: 0;
}

.container,
.container-sm,
.container-md,
.container-lg,
.container-xl,
.container-xxl,
.container-fluid {
	margin-right: auto;
	margin-left: auto;
	padding-left: var(--my-gutter-x);
	padding-right: var(--my-gutter-x);
	width: 100%;
}

.row {
	display: flex;
    flex-wrap: wrap;
	margin-right: calc(var(--my-gutter-x) * -.5);
	margin-left: calc(var(--my-gutter-x) * -.5);
}

.row > * {
	flex-shrink: 0;
	width: 100%;
	max-width: 100%;
	padding-right: calc(var(--my-gutter-x) * .5);
	padding-left: calc(var(--my-gutter-x) * .5);
	flex: 0 0 auto;
}

.col {
	flex: 1 0 0%;
}

.col-1 { width: 8.333333%; }
.col-2 { width: 16.666666%; }
.col-3 { width: 25%; }
.col-4 { width: 33.333333%; }
.col-5 { width: 41.666666%; }
.col-6 { width: 50%; }
.col-7 { width: 58.333333%; }
.col-8 { width: 66.666666%; }
.col-9 { width: 75%; }
.col-10 { width: 83.333333%; }
.col-11 { width: 91.666666%; }
.col-12 { width: 100%; }

.btn,
.btn-primary,
.btn-secondary,
.btn-success,
.btn-warning,
.btn-danger,
.btn-info,
.btn-light,
.btn-dark {
	border-radius: var(--my-btn-radius, .5rem);
	background: var(--outline-light);
	border: var(--1px) solid transparent;
	color: var(--text);
	cursor: pointer;
	display: inline-block;
	padding: .8rem 1.6rem;
	text-align: center;
	text-decoration: none;
	transition: color .1s ease-in-out, background-color .1s ease-in-out, border-color .1s ease-in-out, box-shadow .1s ease-in-out;
	user-select: none;
	z-index: 2;
}

/* === == = == === */

.modal:not(.show),
.modal::-webkit-scrollbar {
	display: none;
}

.modal {
	-ms-overflow-style: none;
	overflow: -moz-scrollbars-none;
	overflow: auto;
	position: fixed;
	top: 0; right: 0; bottom: 0; left: 0;
}

.modal.hide {
	pointer-events: none;
}

.modal > .modal-backdrop {
	opacity: 0;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: var(--my-z-modal-backdrop);
}

.modal .modal-wrap {
    opacity: 0;
}

.modal.loading .modal-wrap {
	visibility: hidden;
}

/* === == = == === */

.modal-default.loading > .modal-backdrop {
	cursor: wait;
}

.modal-default.show > .modal-backdrop {
	animation: modal-fade-in 200ms forwards;
}

.modal-default.hide > .modal-backdrop {
	animation: modal-fade-out 200ms forwards;
}

.modal-default.visible .modal-wrap {
	animation: modal-pop-in 300ms forwards;
}

.modal-default.hide .modal-wrap {
	animation: modal-zoom-out 300ms forwards;
}

.modal-default .modal-container {
    margin: calc(var(--my-gutter-x) * .5);
}

.modal-default .modal-wrap {
    background: var(--my-modal-background, #fff);
	border: var(--my-modal-border, 1px solid rgba(0,0,0,.2));
	box-shadow: 0 8px 16px rgba(0,0,0,.2);
	display: flex;
	flex-direction: column;
	height: auto;
	margin-left: auto;
	margin-right: auto;
    max-width: 800px;
    min-width: 300px;
	background-clip: padding-box;
	position: relative;
    width: 100%;
    z-index: var(--my-z-modal);
}

.modal-backdrop:after {
	background: var(--my-modal-backdrop-background, rgba(0,0,0,.25));
	content: "";
	position: absolute;
	top: 0; right: 0; bottom: 0; left: 0;
}

.modal-default .modal-body {
	flex: 1;
}

.modal-default .modal-header,
.modal-default .modal-body,
.modal-default .modal-footer {
    padding: var(--my-gutter-y) var(--my-gutter-x);
}

.modal-default .modal-header {
	background: var(--my-modal-background, #fff);
    border-bottom: 1px solid var(--outline-light, #e6e6e6);
    border-color: rgba(0,0,0,.1);
	position: sticky;
	top: 0;
	z-index: 10;
}

.modal-default .modal-header .modal-title {
    font-size: 2rem;
    line-height: 1.2;
}

.modal-default .modal-header .btn-close {
	border: none;
	border-radius: 20px;
	color: var(--text-light, #ccc);
	cursor: pointer;
	display: inline-block;
	padding: 12px;
	position: absolute;
	top: 5px; right: 5px;
}

.modal-default .modal-header .btn-close > svg {
	display: block;
	width: 16px; height: 16px;
}

.modal-default .modal-header .btn-close:hover {
	background-color: var(--outline-bright, rgba(0,0,0,.1));
	color: var(--text, #000);
}

.modal-default .modal-footer {
	background: var(--my-modal-background, #fff);
    border-top: 1px solid var(--outline-light, rgba(0,0,0,.1));
	position: sticky;
	bottom: 0;
	z-index: 10;
}

.modal-loader {
	text-align: center;
    position: fixed;
    top: 0; right: 0; bottom: 0; left: 0;
	z-index: 9005;
}

.modal-loader > .modal-loader-wrap {
	margin: 0 auto;
}

.modal-loader .modal-spinner {
	border: 5px solid rgba(255, 255, 255, .2);
	border-top-color: #fff;
	border-radius: 100%;
	height: 32px;
	width: 32px;
	position: relative;
	animation: spinner .36s infinite linear;
	height: 64px;
	width: 64px;
	margin: 0 auto;
}

/* === == = == === */

@keyframes spinner {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(359deg); }
}

/* --- */

@keyframes modal-fade-in {
	0% { opacity: 0; }
	100% { opacity: 1; }
}

@keyframes modal-fade-out {
	0% { opacity: 1; }
	100% { opacity: 0; }
}

/* --- */

@keyframes modal-slide-down {
	0% { transform: translateY(-5vh); opacity: 0; }
	100% { transform: translateY(0); opacity: 1; }
}

@keyframes modal-slide-up {
	0% { transform: translateY(0); opacity: 1; }
	100% { transform: translateY(-5vh); opacity: 0; }
}

/* --- */

@keyframes modal-zoom-in {
	0% { transform: scale(.9); opacity: 0; }
	100% { transform: scale(1); opacity: 1; }
}

@keyframes modal-zoom-out {
	0% { transform: scale(1); opacity: 1; }
	100% { transform: scale(.9); opacity: 0; }
}

/* --- */

@keyframes modal-pop-in {
	0% { transform: scale(.9); opacity: 0; }
	40% { transform: scale(1.1); }
	100% { transform: scale(1); opacity: 1; }
}

@keyframes modal-pop-out {
	0% { transform: scale(1); opacity: 1; }
	40% { transform: scale(1.1); }
	100% { transform: scale(.9); opacity: 0; }
}

/* === == = == === */

.spinner {
	--size: 32px;
	--speed: .36s;

	border: 4px solid rgba(var(--primary-rgb), .1);
	border-top-color: var(--primary);
	border-radius: 100%;
	display: block;
	margin: calc(-1 * var(--size) / 2);
	height: var(--size);
	width: var(--size);
	position: relative;
	animation: spinner var(--speed) infinite linear;
}

.spinner-text {
	border-color: rgba(var(--text-rgb), .1);
	border-top-color: var(--text);
}

.spinner-white {
	border-color: rgba(var(--background-rgb), .1);
	border-top-color: var(--background);
}

/* toaster ================================ */

#toaster {
	display: flex;
	flex: 1;
	gap: 1rem;
	align-items: center;
	flex-direction: column;
	/*
	flex-direction: column-reverse;
	*/
	pointer-events: none;

	position: fixed;
	inset: 1rem;
	z-index: 10000;
}

#toaster .toast {
	--toast-background-rgb: 255,255,255;
	--toast-color-rgb: 50,50,50;
	
	background-color: rgba(var(--toast-background-rgb), 1);
	border-radius: .4rem;
	box-shadow: 0 2px 4px rgba(0,0,0,.2);
	box-shadow: 0px 3px 10px rgba(0,0,0,.1), 0px 3px 3px rgba(0,0,0,.05);
	color: var(--toast-color-rgb);
	display: inline-block;
	padding: calc(var(--my-gutter-y) / 2) var(--my-gutter-x);
	will-change: transform;
}

#toaster .toast.toast-show {
	-webkit-animation: toast-show 0.2s ease-out;
	animation: toast-show 0.2s ease-out;
}

#toaster .toast.toast-hide {
	-webkit-animation: toast-hide 0.15s ease-in forwards;
	animation: toast-hide 0.15s ease-in forwards;
}

@-webkit-keyframes toast-show {
	from {
		opacity: 0;
		transform:scale(0.9);
	}
	to {
		opacity: 1;
		transform:scale(1);
	}
}

@keyframes toast-show {
	from {
		opacity: 0;
		transform:scale(0.9);
	}
	to {
		opacity: 1;
		transform:scale(1);
	}
}

@-webkit-keyframes toast-hide {
	from {
		opacity: 1;
		transform:scale(1);
	}
	to {
		opacity: 0;
		transform:scale(0.9);
	}
}

@keyframes toast-hide {
	from {
		opacity: 1;
		transform:scale(1);
	}
	to {
		opacity: 0;
		transform:scale(0.9);
	}
}

/* === == = == === */

@media (min-width: 576px) {
	.container,
	.container-sm {
		max-width: 540px;
	}

	.col-sm-1 { width: 8.333333%; }
	.col-sm-2 { width: 16.666666%; }
	.col-sm-3 { width: 25%; }
	.col-sm-4 { width: 33.333333%; }
	.col-sm-5 { width: 41.666666%; }
	.col-sm-6 { width: 50%; }
	.col-sm-7 { width: 58.333333%; }
	.col-sm-8 { width: 66.666666%; }
	.col-sm-9 { width: 75%; }
	.col-sm-10 { width: 83.333333%; }
	.col-sm-11 { width: 91.666666%; }
	.col-sm-12 { width: 100%; }
}

@media (min-width: 768px) {
	html {
		font-size: 58.5%;
	}

	.container,
	.container-sm,
	.container-md {
		max-width: 720px;
	}

	.col-md-1 { width: 8.333333%; }
	.col-md-2 { width: 16.666666%; }
	.col-md-3 { width: 25%; }
	.col-md-4 { width: 33.333333%; }
	.col-md-5 { width: 41.666666%; }
	.col-md-6 { width: 50%; }
	.col-md-7 { width: 58.333333%; }
	.col-md-8 { width: 66.666666%; }
	.col-md-9 { width: 75%; }
	.col-md-10 { width: 83.333333%; }
	.col-md-11 { width: 91.666666%; }
	.col-md-12 { width: 100%; }
}

@media (min-width: 992px) {
	.container,
	.container-sm,
	.container-md,
	.container-lg {
		max-width: 960px;
	}

	.col-lg-1 { width: 8.333333%; }
	.col-lg-2 { width: 16.666666%; }
	.col-lg-3 { width: 25%; }
	.col-lg-4 { width: 33.333333%; }
	.col-lg-5 { width: 41.666666%; }
	.col-lg-6 { width: 50%; }
	.col-lg-7 { width: 58.333333%; }
	.col-lg-8 { width: 66.666666%; }
	.col-lg-9 { width: 75%; }
	.col-lg-10 { width: 83.333333%; }
	.col-lg-11 { width: 91.666666%; }
	.col-lg-12 { width: 100%; }

	.modal-default .modal-header .modal-title {
		font-size: 2.2rem;
	}

	.modal-default .modal-header .btn-close {
		top: 12px; right: 15px;
	}
}

@media (min-width: 1200px) {
	.container,
	.container-sm,
	.container-md,
	.container-lg,
	.container-xl {
		max-width: 1140px;
	}

	.col-xl-1 { width: 8.333333%; }
	.col-xl-2 { width: 16.666666%; }
	.col-xl-3 { width: 25%; }
	.col-xl-4 { width: 33.333333%; }
	.col-xl-5 { width: 41.666666%; }
	.col-xl-6 { width: 50%; }
	.col-xl-7 { width: 58.333333%; }
	.col-xl-8 { width: 66.666666%; }
	.col-xl-9 { width: 75%; }
	.col-xl-10 { width: 83.333333%; }
	.col-xl-11 { width: 91.666666%; }
	.col-xl-12 { width: 100%; }
}

@media (min-width: 1400px) {
	.container,
	.container-sm,
	.container-md,
	.container-lg,
	.container-xxl {
		max-width: 1320px;
	}

	.col-xxl-1 { width: 8.333333%; }
	.col-xxl-2 { width: 16.666666%; }
	.col-xxl-3 { width: 25%; }
	.col-xxl-4 { width: 33.333333%; }
	.col-xxl-5 { width: 41.666666%; }
	.col-xxl-6 { width: 50%; }
	.col-xxl-7 { width: 58.333333%; }
	.col-xxl-8 { width: 66.666666%; }
	.col-xxl-9 { width: 75%; }
	.col-xxl-10 { width: 83.333333%; }
	.col-xxl-11 { width: 91.666666%; }
	.col-xxl-12 { width: 100%; }
}
/* ubuntu-regular - latin */
@font-face {
	font-family: 'Ubuntu';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('/static/fonts/ubuntu-v14-latin-regular.eot'); /* IE9 Compat Modes */
	src: local('Ubuntu Regular'), local('Ubuntu-Regular'),
		 url('/static/fonts/ubuntu-v14-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		 url('/static/fonts/ubuntu-v14-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
		 url('/static/fonts/ubuntu-v14-latin-regular.woff') format('woff'), /* Modern Browsers */
		 url('/static/fonts/ubuntu-v14-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
		 url('/static/fonts/ubuntu-v14-latin-regular.svg#Ubuntu') format('svg'); /* Legacy iOS */
}
/* ubuntu-italic - latin */
@font-face {
	font-family: 'Ubuntu';
	font-style: italic;
	font-weight: 400;
	font-display: swap;
	src: url('/static/fonts/ubuntu-v14-latin-italic.eot'); /* IE9 Compat Modes */
	src: local('Ubuntu Italic'), local('Ubuntu-Italic'),
		 url('/static/fonts/ubuntu-v14-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		 url('/static/fonts/ubuntu-v14-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
		 url('/static/fonts/ubuntu-v14-latin-italic.woff') format('woff'), /* Modern Browsers */
		 url('/static/fonts/ubuntu-v14-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
		 url('/static/fonts/ubuntu-v14-latin-italic.svg#Ubuntu') format('svg'); /* Legacy iOS */
}
/* ubuntu-700 - latin */
@font-face {
	font-family: 'Ubuntu';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('/static/fonts/ubuntu-v14-latin-700.eot'); /* IE9 Compat Modes */
	src: local('Ubuntu Bold'), local('Ubuntu-Bold'),
		 url('/static/fonts/ubuntu-v14-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		 url('/static/fonts/ubuntu-v14-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
		 url('/static/fonts/ubuntu-v14-latin-700.woff') format('woff'), /* Modern Browsers */
		 url('/static/fonts/ubuntu-v14-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
		 url('/static/fonts/ubuntu-v14-latin-700.svg#Ubuntu') format('svg'); /* Legacy iOS */
}

html {
	background: #eeedec;
	color: #434549;
	font-family: "Ubuntu", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", "Ubuntu", sans-serif;
	font-size: 62.5%;
	-webkit-font-smoothing: antialiased;
	line-height: 1.15;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	-webkit-text-size-adjust: 100%;
	text-rendering: optimizeLegibility;
	width: 100%;
}

body {
	font-size: 1.6rem;
	line-height: 1.55;
	height: 100%;
	margin: 0 auto;
	padding: 0;
	width: 100%;
}

a {
	color: #367e87;
	text-decoration: underline;
}

a:hover,
a:focus {
	color: #389e31;
	text-decoration: underline;
}

code {
	font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
	background-color: #f9f2f4;
	border-radius: .4rem;
	color: #c7254e;
    font-size: 90%;
    margin: 0;
    padding: .2rem .4rem;
}

pre > code {
	background-color: rgba(27,31,35,.05);
	border: 1px solid rgba(27,31,35,.1);
	color: #111;
	display: block;
    padding: 1.2rem;
}

*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

*:before,
*:after {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
}

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
	display: block;
}

[tabindex="-1"]:focus {
	outline: 0 !important;
}

aside, footer {
	font-size: 1.5rem;
}

h1, h2, h3, h4, h5, h6 {
	line-height: 1.2;
	margin: 3rem 0 1.5rem;
}

h1 {
	margin: 0 0 3rem;
}

.heading-no {
	display: none;
}

.rel {
	position: relative;
}

.abs {
	position: absolute;
}

.inline {
	display: inline;
}

.block {
	display: block;
}

.iblock {
	display: inline-block;
}

.fw {
	width: 100%;
}

.mtz {
	margin-top: 0 !important;
}

.oxa {
	overflow-x: auto;
}

.i {
	font-family: "icomoon";
	font-weight: normal;
	font-style: normal;
}

.row {
    display: -ms-flexbox;
	display: flex;
	
    -ms-flex-wrap: wrap;
    	flex-wrap: wrap;
}

[class*="col-"] {
    width: 100%;
    min-height: 1px;
	padding-right: 1rem;
	padding-left: 1rem;
	position: relative;
}

figure {
	margin: 0;
}

/* tabs ====================================== */

.tabs > .tabs-header {
	display: -ms-flexbox !important;
	display: flex !important;
}

.tabs > .tabs-header {
	-ms-flex-direction: row !important;
		flex-direction: row !important;
}

.tabs > .tabs-body > section.tab-content:not(:first-child) {
	display: none;
}

.tabs > .tabs-header > .tab-title {
	-ms-flex-direction: column !important;
		flex-direction: column !important;
}

/* tabs default theme */

.tabs.tabs-default > .tabs-header > .tab-title {
	border: 1px solid transparent;
	border-bottom: none;
	border-radius: .4rem .4rem 0 0;
	color: #389e31;
	cursor: pointer;
	margin-bottom: -1px;
	padding: .75rem 1.5rem;
}

.tabs.tabs-default > .tabs-header > .tab-title:hover {
	color: #2058b1;
}

.tabs.tabs-default > .tabs-header > .tab-title.tab-open {
	background: #f2f2f2;
	border-color: #ccc;
	color: #2058b1;
}

.tabs.tabs-default > .tabs-body {
	border: 1px solid #ccc;
}

.tabs.tabs-default > .tabs-body > .tab-content {
	padding: 1.5rem;
}

.tabs.tabs-default[data-tab-index="0"] > .tabs-body {
	border-top-left-radius: 0;
}

/* accordion ====================================== */


dl, dt, dd {
	margin: 0;
}

.accordion > dl > dd {
	display: none;
}

.accordion.accordion-open-first > dl:first-child > dd {
	display: block;
}

/* accordion default theme */

.accordion.accordion-default > dl {
	border: 1px solid #ddd;
}

.accordion.accordion-default > dl:hover {
	border: 1px solid #ccc;
}

.accordion.accordion-default > dl:not(:last-child) {
	margin-bottom: .5rem;
}

.accordion.accordion-default > dl > dt {
	color: #389e31;
	cursor: pointer;
	padding: 1rem 1.5rem;
}

.accordion.accordion-default > dl > dt:hover {
	color: #2058b1;
}

.accordion.accordion-default > dl.accordion-open > dt {
	background: #f2f2f2;
	color: #2058b1;
}

.accordion > dl > dd {
	padding: 1.5rem;
}

/* misc ====================================== */

blockquote {
	margin: 0;
	padding: 15px 20px 15px 50px;
	position: relative;
}

a img {
	border: none;
}

.li-mb-1 li {
	margin-bottom: 1rem;
}

ul.unstyled,
ol.unstyled,
ul.unstyled ul,
ol.unstyled ul,
ul.unstyled ol,
ol.unstyled ol,
.toc ul,
.toc ol,
.toc ul ul,
.toc ul ol,
.toc ol ol,
.toc ol ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

ul.unstyled li,
ol.unstyled li,
.toc ul,
.toc ol {
	display: inline-block;
}

.toc ol,
ol.toc {
	counter-reset: item;
}

.toc ol li,
ol.toc li {
	display: block;
	position: relative;
}

.toc ol li:before,
ol.toc li:before {
	content: counters(item, ".") ". ";
	counter-increment: item;
	margin-right: .5rem;

	position: absolute;
	right: 100%;
}

.cfix,
.row {
	zoom: 1;
}

.cfix:after,
.row:after {
	clear: both;
	content: "";
	display: block;
	height: 0;
	line-height: 0;
	visibility: hidden;
}

/* flex ====================================== */

.flex {
	display: -ms-flexbox !important;
	display: flex !important;
}

.flex-row {
	-ms-flex-direction: row !important;
		flex-direction: row !important;
}

.flex-col {
	-ms-flex-direction: column !important;
		flex-direction: column !important;
}

/* header ==================================== */

header {
	background: #fff;
	margin-bottom: 1.5rem;
}

header #logo {
	font-size: 2rem;
	letter-spacing: -.05rem;
	line-height: 60px;
	padding: 0 15px 0 70px;
	position: relative;
	text-decoration: none !important;
}

header #logo:hover {
	background: #f6f6f6;
}

header #logo > img {
	position: absolute;
	top: 5px; left: 10px;
}

header #logo > span.name {
	color: #434549;
	font-weight: bold;
}

header #logo > span.tld {
	color: #838589;
}

header .nav {
	font-size: 1.7rem;
	line-height: 6rem;
	margin-left: auto;
	margin-right: .5rem;
}

header ul.nav > li > a {
	color: #282828;
	padding: 0 1.5rem;
	text-transform: uppercase;
	text-decoration: none;
}

header ul.nav > li > a:hover {
	color: #367e87;
	text-decoration: none;
}

/* footer ==================================== */

footer {
	color: #aeadac;
	font-size: 1.4rem;
	padding: 1.5rem 0 3rem;
}

footer ul > li:first-child {
	padding: 0 2rem 0 2rem;
}

footer a {
	color: #6e6d6c;
	font-weight: 500;
	text-decoration: none;
}

footer a:hover {
	color: #367e87;
	text-decoration: none;
}

/* navigation ================================ */

.navbar {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    padding-left: 0;
    margin-bottom: 0;
	list-style: none;
	width: auto;

    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.nav {
	position: relative;
	z-index: 30;
}

ul.nav {
	height: inherit;
	position: relative;
}

ul.nav > li {
	height: inherit;
	position: relative;
}

ul.nav > li > a {
	display: block;
	padding: 0 1rem;
	position: relative;
}

ul.nav > li > a:hover,
ul.nav > li > a.open {
	position: relative;
	z-index: 302;
}

ul.nav > li ul {
	display: none;

	position: absolute;
	right: auto; left: 0;
	z-index: 140;
}

ul.nav > li ul > li {
	display: block;
}

ul.nav > li ul > li > a {
	display: block;
	width: auto;
	white-space: nowrap;
}

ul.nav > li > a:hover + ul,
ul.nav > li > a + ul:hover,
ul.nav > li.open > a + ul {
	display: block;
}

ul.nav > li ul {
	background: #fff;
	border: 1px solid #ddd;
	font-size: 1.4rem;
	margin-top: -5px;
	padding: .75rem 0;
}

ul.nav > li.tr {
	height: 1px solid #ddd;
	margin: .25rem 0;
}

ul.nav > li ul > li > a {
	color: #333;
	display: block;
	line-height: 1.2;
	padding: .75rem 6rem .75rem 2rem;
	text-decoration: none;
}

ul.nav > li ul > li > a:hover {
	background: #eee;
	color: #000;
	text-decoration: none;
}

/* ------------------------------ */

.breadcrumbs {
	font-size: 11px;
	line-height: 30px;
	height: 30px;
	padding: 0 10px;
	position: relative;
}

.breadcrumbs ol {
	list-style: none;
	margin: 0;
	padding: 0;
}

.breadcrumbs li {
	float: left;
}

.breadcrumb li:after {
	content: "";
	width: 16px; height: 16px;
	background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI4IiBoZWlnaHQ9IjgiPjxwYXRoIGQ9Ik0yLjUgMEwxIDEuNSAzLjUgNCAxIDYuNSAyLjUgOGw0LTQtNC00eiIgZmlsbD0iY3VycmVudENvbG9yIi8+PC9zdmc+);
}

/* ------------------------------ */

.card {
	border: 1px solid #ddd;
	padding: 1.5rem;
}

/* ============================== */

.rounded,
.chk,
.rad,
.btn,
.txt,
.sel,
.box,
.progress,
.card,
.fency-form .input {
	-webkit-border-radius: .4rem;
	 -khtml-border-radius: .4rem;
	   -moz-border-radius: .4rem;
	     -o-border-radius: .4rem;
		    border-radius: .4rem;
}

.btn,
.txt,
.sel {
	-webkit-appearance: none;
	   -moz-appearance: none;

	border: 1px solid #eee;
	color: inherit;
	font-family: inherit;
	font-size: inherit;
	line-height: 1.5;
	padding: .6rem 1.2rem;
	position: relative;
	vertical-align: middle;
}

.btn-s,
.txt-s,
.sel-s {
	font-size: 80%;
	padding: .4rem 1.2rem;
}

.btn-l,
.txt-l,
.sel-l {
	font-size: 120%;
}

.btn,
.txt,
.sel,
.chk:active:before,
.chk:hover:before,
.chk:checked:before,
.rad:active:before,
.rad:hover:before,
.rad:checked:before {
	-webkit-transition: color .2s ease-in-out, background-color .2s ease-in-out, border-color .2s ease-in-out, box-shadow .2s ease-in-out;
    -moz-transition: color .2s ease-in-out, background-color .2s ease-in-out, border-color .2s ease-in-out, box-shadow .2s ease-in-out;
    -o-transition: color .2s ease-in-out, background-color .2s ease-in-out, border-color .2s ease-in-out, box-shadow .2s ease-in-out;
	transition: color .2s ease-in-out, background-color .2s ease-in-out, border-color .2s ease-in-out, box-shadow .2s ease-in-out;
}

.btn:focus,
.txt:focus,
.sel:focus {
	outline: none;
	text-decoration: none;
	z-index: 3;
}

.txt,
.sel {
	background: #fff;
	border: 1px solid #ccc;
}

.sel {
	background: #fff url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right .75rem center;
	background-size: 8px 10px;
	padding-right: 2rem;
}

.sel > option,
.sel > optgroup {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
}

.txt[disabled],
.sel[disabled] {
	background-color: #f1f1f1;
	cursor: no-drop;
}

.txt:hover,
.sel:hover {
	border-color: #aaa;
}

.btn:focus,
.txt:focus,
.sel:focus,
.chk:focus:before,
.rad:focus:before {
	box-shadow: 0 0 0 .3rem rgba(200,200,200,.3);
	transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.txt:focus,
.sel:focus,
.chk:focus:before,
.rad:focus:before,
.btn-primary:focus,
.btn-outline-primary:focus {
	border-color: #389e31;
	box-shadow: 0 0 0 .3rem rgba(56, 158, 49, .3);
}

.btn, .txt, .sel, .chk, .rad {
	position: relative;
	z-index: 1;
}

.btn:hover, .txt:hover, .sel:hover, .chk:hover, .rad:hover,
.btn:active, .txt:active, .sel:active, .chk:active, .rad:active,
.btn:focus, .txt:focus, .sel:focus, .chk:focus, .rad:focus {
	z-index: 10;
}

.btn.btn-big {
	font-size: 1.8rem;
	padding: .8rem 2rem;
}

/* checkbox ================================== */

.chk,
.rad {
	margin: 0 .5rem 0 0;
    vertical-align: -1px;
	position: relative;
	width: 18px;
	height: 18px;
}

.chk:before {
	background: white;
	border-radius: 3px;
    display: block;
    width: 18px;
    height: 18px;
	border: 1px solid #ccc;
	content: "";
	font-weight: 800;
	line-height: 15px;
	text-align: center;

	position: relative;
	top: 0; left: 0;
}

.chk:checked:after {
	background: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E") no-repeat 50% 50%;
	background-size: 12px;
	content: "";
	width: 18px;
	height: 18px;

	position: absolute;
	top: 0; left: 0;
}

.chk:not([disabled]):hover:before {
	background: #f6f6f6;
	border-color: #aaa;
}

.chk:not([disabled]):checked:before {
	background: #389e31;
	border-color: transparent;
}

.chk:not([disabled]):checked:hover:before {
	background: #7cbf77;
	border-color: rgba(0,0,0,.1);
}

.chk:not([disabled]):active:before {
	border-color: #389e31;
}

/* radio ===================================== */

.rad:before {
	background: white;
	border-radius: 50%;
	display: block;
	width: 18px;
	height: 18px;
	border: 1px solid #ccc;
	content: "";
	font: 7px "icomoon";
	line-height: 16px;
	text-align: center;

	position: absolute;
	top: 0; left: 0;
}

.rad:after {
	background: white;
	border-radius: 50%;
	content: "";
	display: block;
	margin: -4px 0 0 -4px;
    width: 8px;
	height: 8px;
	visibility: hidden;

	position: absolute;
	top: 50%; left: 50%;
	z-index: 1;
}

.rad:checked:after {
	visibility: visible;
}

.rad:not([disabled]):hover:before {
	background: #f6f6f6;
	border-color: #aaa;
}

.rad:checked:before {
	background: #389e31;
	border-color: transparent;
}

.rad:not([disabled]):checked:hover:before {
	background: #7cbf77;
	border-color: rgba(0,0,0,.1);
}

.rad:not([disabled]):active:before {
	border-color: #389e31;
}

/* button ==================================== */

.btn {
	background: #ddd;
	border: 1px solid transparent;
	color: #333;
	cursor: pointer;
	display: inline-block;
	padding: .6rem 1.2rem;
	text-align: center;
	text-decoration: none;
	user-select: none;
	z-index: 2;
}

.btn:not([disabled]):hover,
.btn:not([disabled]):focus,
.btn:not([disabled]):active {
	background: #ccc;
	color: #000;
	text-decoration: none;
}

.btn[disabled] {
	opacity: .333;
	cursor: not-allowed;
	text-decoration: none;
}

.btn-block {
	display: block;
	width: 100%;
}

.btn-outline {
	background-color: transparent;
	border-color: #ccc;
}

.btn-outline:not([disabled]):hover,
.btn-outline:not([disabled]):focus {
	background: #f2f2f2;
	border-color: #bbb;
}

/* primary button ============================ */

.btn-primary {
	background-color: #389e31;
	color: #fff;
}

.btn-primary:not([disabled]):hover,
.btn-primary:not([disabled]):focus,
.btn-primary:not([disabled]):active {
	background: #7cbf77;
	color: #fff;
}

.btn-outline-primary:not([disabled]):active {
	color: #fff;
}

.btn-outline-primary {
	background-color: transparent;
	border-color: #389e31;
	color: #389e31;
}

.btn-outline-primary[disabled] {
	background: transparent;
	border-color: rgba(0, 161, 203, .382);
	color: rgba(0, 161, 203, .382);
}

.btn-outline-primary:not([disabled]):hover,
.btn-outline-primary:not([disabled]):focus {
	background: #389e31;
	color: #fff;
}

/* secondary button ========================== */

.btn-secondary {
	background-color: #858789;
	color: #fff;
}

.btn-secondary:not([disabled]):hover,
.btn-secondary:not([disabled]):focus,
.btn-secondary:not([disabled]):active {
	background: #959799;
	color: #fff;
}

.btn-outline-secondary {
	background-color: transparent;
	border-color: #858789;
	color: #646668;
}

.btn-outline-secondary:not([disabled]):hover,
.btn-outline-secondary:not([disabled]):focus {
	background: #858789;
	border-color: transparent;
	color: #fff;
}

.btn-secondary:not([disabled]):focus,
.btn-outline-secondary:not([disabled]):focus {
	box-shadow: 0 0 0 .3rem rgba(102,102,102,.3);
}

/* green button ================================ */

.btn-green {
	background-color: #7ab80e;
	color: #fff;
}

.btn-green:not([disabled]):hover,
.btn-green:not([disabled]):focus,
.btn-green:not([disabled]):active {
	background: #8cc52a;
	color: #fff;
}

.btn-outline-green {
	background-color: transparent;
	border-color: #7ab80e;
	color: #7ab80e;
}

.btn-outline-green:not([disabled]):hover,
.btn-outline-green:not([disabled]):focus {
	background: #7ab80e;
	border-color: transparent;
	color: #fff;
}

.btn-green:not([disabled]):focus,
.btn-outline-green:not([disabled]):focus {
	box-shadow: 0 0 0 .3rem rgba(122,184,14,.3);
}

/* orange button ============================= */

.btn-orange {
	background-color: #ffc107;
	color: #222;
}

.btn-orange:not([disabled]):hover,
.btn-orange:not([disabled]):focus,
.btn-orange:not([disabled]):active {
	background: #ffcd38;
	color: #000;
}

.btn-outline-orange {
	background-color: transparent;
	border-color: #ffc107;
	color: #ffc107;
}

.btn-outline-orange:not([disabled]):hover,
.btn-outline-orange:not([disabled]):focus {
	background: #ffc107;
	border-color: transparent;
	color: #222;
}

.btn-orange:not([disabled]):focus,
.btn-outline-orange:not([disabled]):focus {
	box-shadow: 0 0 0 .3rem rgba(255,193,7,.3);
}

/* red button ================================ */

.btn-red {
	background-color: #de2620;
	color: #fff;
}

.btn-red:not([disabled]):hover,
.btn-red:not([disabled]):focus,
.btn-red:not([disabled]):active {
	background: #df4742;
	color: #fff;
}

.btn-outline-red {
	background-color: transparent;
	border-color: #de2620;
	color: #de2620;
}

.btn-outline-red:not([disabled]):hover,
.btn-outline-red:not([disabled]):focus {
	background: #de2620;
	border-color: transparent;
	color: #fff;
}

.btn-red:not([disabled]):focus,
.btn-outline-red:not([disabled]):focus {
	box-shadow: 0 0 0 .3rem rgba(222,38,32,.3);
}

/* dark button =============================== */

.btn-dark {
	background-color: #444;
	color: #fff;
}

.btn-dark:not([disabled]):hover,
.btn-dark:not([disabled]):focus,
.btn-dark:not([disabled]):active {
	background: #555;
	color: #fff;
}

.btn-outline-dark {
	background-color: transparent;
	border-color: #444;
	color: #444;
}

.btn-outline-dark:not([disabled]):hover,
.btn-outline-dark:not([disabled]):focus {
	background: #444;
	border-color: transparent;
	color: #fff;
}

.btn-dark:not([disabled]):focus,
.btn-outline-dark:not([disabled]):focus {
	box-shadow: 0 0 0 .3rem rgba(51,51,51,.3);
}

/* amazon button ============================= */

.btn-amz,
.btn-amz:not([disabled]):hover {
	background: #f3d078;
	background: -webkit-linear-gradient(top,#f7dfa5,#f0c14b);
	background: linear-gradient(to bottom,#f7dfa5,#f0c14b);
	border-color: #a88734 #9c7e31 #846a29;
	color: #111;
}

.btn-amz:not([disabled]):hover,
.btn-amz:not([disabled]):focus {
	background: #f1c860;
	background: -webkit-linear-gradient(top,#f5d78e,#eeb933);
	background: linear-gradient(to bottom,#f5d78e,#eeb933);
	border-color: #a88734 #9c7e31 #846a29;
	color: #111;
}

.btn-amz:not([disabled]):active {
	background: #f0c14b;
	background: -webkit-linear-gradient(top,#dfa104,#eeb933);
	background: linear-gradient(to bottom,#dfa104,#eeb933);
	border-color: #a88734 #9c7e31 #846a29;
}

.btn-amz span.amz-logo {
	background: url("../svg/amz.svg") no-repeat 50% 50%;
	background-size: contain;
	display: inline-block;
	margin: -6px 0;
	vertical-align: middle;
	width: 84px; height: 28px;
}

.btn-amz:not([disabled]):focus {
	box-shadow: 0 0 0 .3rem rgba(240,193,75,.3);
}

/* image & video ============================= */

.media,
.video {
	margin-bottom: 20px;
	height: auto;
}

.media:not(.media-float-left):not(.media-float-right),
.video:not(.video-float-left):not(.video-float-right) {
	width: 100%;
}

.video.with-body {
	display: table;
}

.video-iframe {
	position: relative;
	padding-bottom: 56.25%; /* Default for 16:9 videos*/
	padding-top: 0px;
	height: 0;
	overflow: hidden;
}

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

.video-wrap {
	text-align: left;
	position: relative;

	width: 100%;
	height: auto;
}

.media,
.media-body {
	width: 100%;
	overflow: hidden;
	zoom: 1;
}

.media-body p:last-child,
.video-body p:last-child {
	margin-bottom: 0;
}

.media > figure > a,
.video > figure > a {
	display: block;
}

.media > figure > img,
.video > figure > img,
.media > figure > a > img,
.video > figure > a > img {
	display: block;
	max-width: 100%;
}

.media.with-body > figure > img,
.video.with-body > figure > img,
.media.with-body > figure > a > img,
.video.with-body > figure > a > img {
	max-width: none;
}

.media > figure,
.video > figure {
	display: table;
}

.media > figure > img,
.video > figure > img {
	display: block;
}

.media.center figcaption,
.video.center figcaption {
	text-align: center;
}

.media > figure > a {
	position: relative;
}

.media > figure > a:focus,
.video > figure > a:focus {
	outline: none;
}

.media.media-link > figure > a
{
	cursor: zoom-in;
}

.media.media-link > figure > a:after {
	background: #ccc;
	background: rgba(0,0,0,.25);

	-webkit-border-radius: 2px;
	 -khtml-border-radius: 2px;
	   -moz-border-radius: 2px;
	     -o-border-radius: 2px;
		    border-radius: 2px;
	
	color: #fff;
	content: "\f00e";
	display: block;
	font-family: "icomoon";
	font-size: 16px;
	opacity: 0;

	width: 24px;
	height: 24px;
	line-height: 24px;
	text-align: center;

	position: absolute;
	right: 4px; bottom: 4px;
}

.media.media-link > figure > a:hover:after {
	background: #aaa;
	background: rgba(0,0,0,.5);
	opacity: 1;
}

.media figcaption,
.video figcaption {
	font-style: italic;
	font-size: 90%;
	line-height: 1.4;
	margin-top: 1rem;
	margin-bottom: 1.2rem;
}

.media-center > figure,
.video-center > figure {
	margin: 0 auto;
	padding-bottom: 20px;
}

.media-right .media-body,
.media > .pull-right,
.video-right .video-body,
.video > .pull-right {
	padding-right: 30px;
}

.media-left .media-body,
.media > .pull-left,
.video-left .video-body,
.video > .pull-left {
	padding-left: 30px;
}

.media.no-body.media-left,
.media-float-left,
.video-float-left {
	float: left;
	margin: 0 30px 20px 0;
}

.media.no-body.media-right,
.media-float-right,
.video-float-right {
	float: right;
	margin: 0 0 20px 30px;
}

.video.no-body.media-left,
.video.no-body.media-right {
	margin: 0 0 20px 0;
}

.media.with-body {
	display: table;
}

.media.media-left figure,
.media.media-left .media-body,
.video.video-left figure,
.video.video-left .video-body,
.media.media-right figure,
.media.media-right .media-body,
.video.video-right figure,
.video.video-right .video-body {
	display: table-cell;
	vertical-align: top;
}

.media.with-body.media-middle,
.video.with-body.video-middle {
	vertical-align: middle;
}

.media.with-body.media-bottom,
.video.with-body.video-bottom {
	vertical-align: bottom;
}

.media-heading {
	margin-top: 0;
	margin-bottom: 5px;
}

.media-list {
	padding-left: 0;
	list-style: none;
}

/* gallery =================================== */

.gallery {
	margin-bottom: 20px;
}

.gallery > .galleryTitle {
	margin-top: 20px;
}

.gallery > .counter {
	color: #888;
	display: block;
	text-align: right;
	margin: 2px 0 0;
}

.gallery > .galleryFigures {
	position: relative;
}

.gallery > .galleryFigures > figure > .imageWrap {
	position: relative;
}

.gallery > .galleryFigures > figure > .imageWrap > img {
	display: block;
}

.gallery > .galleryFigures > figure > .imageWrap > a {
	color: #fff;
	cursor: pointer;
	display: block;
	min-height: 50px;
	text-decoration: none;
	
	width: 38.2%;

	position: absolute;
	top: 0; bottom: 0;
}

.gallery > .galleryFigures > figure > .imageWrap > a.btnNext {
	width: 61.8%;
}

.gallery > .galleryFigures > figure > .imageWrap > a:after {
	background: rgba(0,0,0,.5);

	-webkit-border-radius: 4px;
	 -khtml-border-radius: 4px;
	   -moz-border-radius: 4px;
	     -o-border-radius: 4px;
		    border-radius: 4px;

	cursor: pointer;
	display: inline-block;
	font-family: "icomoon";
	line-height: 100px;
	text-align: center;

	-webkit-transition: background 100ms;
	   -moz-transition: background 100ms;
		-ms-transition: background 100ms;
		 -o-transition: background 100ms;
			transition: background 100ms;
	
	width: 4rem;

	position: absolute;
	top: 50%;
    top: calc(50% - 50px);
}

.gallery > .galleryFigures > figure > .imageWrap > a:hover:after {
	background: #000;
}

.gallery > .galleryFigures > figure > .imageWrap > a.btnNext {
	right: 0;
}

.gallery > .galleryFigures > figure > .imageWrap > a.btnPrevious:after {
	content: "\edc4";
	left: 10px;
}

.gallery > .galleryFigures > figure > .imageWrap > a.btnNext:after {
	content: "\edbc";
	right: 10px;
}

.gallery figure {
	border-bottom: 1px solid #ddd;
	text-align: center;
}

.gallery img {
	margin: auto;
	max-width: 100%;
}

.gallery figure figcaption {
	font-size: 1.4rem;
	padding: 10px 0 0;
	text-align: left;
}

.gallery figure figcaption > span {
	display: block;
	margin-bottom: 10px;
}

.gallery span.caption {
	font-weight: bold;
}

.gallery span.copyright {
	color: #888;
	font-size: 1.3rem;
	text-align: right;
}

.gallery span.copyright:before {
	content: "© ";
}

/* box ================================== */

.box {
	background-color: #eaebef;
	border-left: .5rem solid #D0D2D6;
	font-size: inherit;
	padding: 1.6rem;
	position: relative;
}

.box.box-yellow {
	background-color: #f8f4e3;
    border-left: .5rem solid #e6ddb8;
}

.box h3 {
	margin-top: 0;
}

/* progressbar =============================== */

.progress-bar {
	background: #f2f2f2;

	-webkit-box-shadow: inset 0 1px 5px rgba(0,0,0,.1);
	 -khtml-box-shadow: inset 0 1px 5px rgba(0,0,0,.1);
	   -moz-box-shadow: inset 0 1px 5px rgba(0,0,0,.1);
	     -o-box-shadow: inset 0 1px 5px rgba(0,0,0,.1);
	        box-shadow: inset 0 1px 5px rgba(0,0,0,.1);
	
	display: block;
	height: 20px;
	margin-bottom: 10px;
	overflow: hidden;
	position: relative;
}

.progress-bar > div {
	box-shadow: inset 0 3px 1px rgba(255,255,255,.15);
	display: block;
	overflow: hidden;

	position: absolute;
	top: 0; bottom: 0; left: 0;
	z-index: 2;
}

.progress-bar span {
	display: block;
	font-size: 13px;
	line-height: 1;
	margin-top: -8px;
	position: absolute;
	top: 50%;
	left: 5px;
	color: #fff;
	text-shadow: 1px 1px 1px rgba(0,0,0,.2);
}

.progress-bar > span {
	color: #555;
	z-index: 1;
}

.progress-bar span.percent {
	float: right;
}

/* footnotes =================================== */

sup > a.footnote-ref:hover:before,
sup > a.footnote-ref:hover:after {
	text-decoration: none !important;
}

sup > a.footnote-ref:before {
	content: "[";
}

sup > a.footnote-ref:after {
	content: "]";
}

.footnotes > hr {
	background: #aaa;
	border: none;
	height: 1px;
	margin: 3rem 0 2rem;
	width: 50%;
}

/* tooltip =================================== */

#tooltip {
	display: none;
	font-size: 13px;
	line-height: 17px;
	padding: 10px 15px;

	position: absolute;
	z-index: 100;
}

#tooltip > .caret {
	display: block;
	position: absolute;
}

#tooltip > .caret:after,
#tooltip > .caret:before {
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;

	z-index: 99;
}

#tooltip.caret-top > .caret {
	top: 0;
}

#tooltip.caret-bottom > .caret {
	bottom: 0;
}

#tooltip.caret-left > .caret {
	left: 0;
}

#tooltip.caret-right > .caret {
	right: 0;
}

.tooltip {
	display: none;
}

/* tooltip styling =========================== */

#tooltip {
	background: rgba(0,0,0,.9);
	border-radius: 2px;
	box-shadow: 2px 2px 4px rgba(0,0,0,.2);
	color: #fff;
}

.media figcaption {
	color: #979da2;
}

#tooltip a {
	color: #fff;
	text-decoration: underline;
}

#tooltip a:hover {
	color: #07b;
	text-decoration: underline;
}

#tooltip.caret-top {
	margin-top: 10px;
}

#tooltip.caret-bottom {
	margin-top: -10px;
}

#tooltip.caret-left {
	margin-left: 10px;
	margin-top: -16px;
}

#tooltip.caret-right {
	margin-left: -10px;
	margin-top: -16px;
}

#tooltip.caret-top > .caret,
#tooltip.caret-bottom > .caret {
	width: 32px;
	height: 6px;
}

#tooltip.caret-left > .caret,
#tooltip.caret-right > .caret {
	width: 6px;
	height: 32px;
}

#tooltip.caret-top > .caret {
	top: -6px;
}

#tooltip.caret-bottom > .caret {
	bottom: -6px;
}

#tooltip.caret-left > .caret {
	left: -6px;
	top: 0;
}

#tooltip.caret-right > .caret {
	right: -6px;
	top: 0;
}

#tooltip > .caret:after {
	border-width: 6px;
}

#tooltip > .caret:before {
	border-width: 7px;
}

#tooltip.caret-top > .caret:before,
#tooltip.caret-bottom > .caret:before {
	margin-left: 9px;
}

#tooltip.caret-top > .caret:after,
#tooltip.caret-bottom > .caret:after {
	margin-left: 10px;
}

#tooltip.caret-left > .caret:before,
#tooltip.caret-right > .caret:before {
	margin-top: 9px;
}

#tooltip.caret-left > .caret:after,
#tooltip.caret-right > .caret:after {
	margin-top: 10px;
}

#tooltip.caret-top > .caret:after {
	margin-top: -6px;
}

#tooltip.caret-bottom > .caret:after {
	margin-top: 0;
}

#tooltip.caret-left > .caret:after,
#tooltip.caret-left > .caret:before {
	right: 0;
}

#tooltip.caret-top > .caret:after {
	border-bottom-color: black;
	border-bottom-color: rgba(0,0,0,.95);
}

#tooltip.caret-bottom > .caret:after {
	border-top-color: black;
	border-top-color: rgba(0,0,0,.95);
}

#tooltip.caret-left > .caret:after {
	border-right-color: black;
	border-right-color: rgba(0,0,0,.95);
}

#tooltip.caret-right > .caret:after {
	border-left-color: black;
	border-left-color: rgba(0,0,0,.95);
}

#tooltip.caret-top > .caret:before {
	border-bottom-color: black;
}

#tooltip.caret-bottom > .caret:before {
	border-color: rgba(255,255,255,0);
	border-top-color: black;
}

/* lists & tabs ============================== */

blockquote,
p,
ul.default-list,
ol.default-list,
div.box,
div.tabs {
	margin-top: 0;
	margin-bottom: 1.2rem;
}

.box p:last-child {
	margin-bottom: 0;
}

/* stars ===================================== */

span.stars,
span.small-stars {
  background: url("/preset/img/stars.png") no-repeat;
  background-size: 160px 32px;
  display: inline-block;
  width: 80px;
  height: 16px;
  margin: 0;
}
span.stars-0 {
  background-position: -80px 0;
}
span.stars-5 {
  background-position: -64px -16px;
}
span.stars-10 {
  background-position: -64px 0;
}
span.stars-15 {
  background-position: -48px -16px;
}
span.stars-20 {
  background-position: -48px 0;
}
span.stars-25 {
  background-position: -32px -16px;
}
span.stars-30 {
  background-position: -32px 0;
}
span.stars-35 {
  background-position: -16px -16px;
}
span.stars-40 {
  background-position: -16px 0;
}
span.stars-45 {
  background-position: 0 -16px;
}
span.stars-50 {
  background-position: 0 0;
}

span.small-stars {
  background-size: 120px 24px;
  width: 60px;
  height: 12px;
}
span.small-stars-0 {
  background-position: -60px 0;
}
span.small-stars-5 {
  background-position: -48px -12px;
}
span.small-stars-10 {
  background-position: -48px 0;
}
span.small-stars-15 {
  background-position: -36px -12px;
}
span.small-stars-20 {
  background-position: -36px 0;
}
span.small-stars-25 {
  background-position: -24px -12px;
}
span.small-stars-30 {
  background-position: -24px 0;
}
span.small-stars-35 {
  background-position: -12px -12px;
}
span.small-stars-40 {
  background-position: -12px 0;
}
span.small-stars-45 {
  background-position: 0 -12px;
}
span.small-stars-50 {
  background-position: 0 0;
}

/* input group =============================== */

.input-group {
    align-items: stretch;
    display: -ms-flexbox;
	display: flex;
	
    -ms-flex-wrap: wrap;
    	flex-wrap: wrap;
	
	-ms-flex-align: stretch;
    position: relative;
    width: 100%;
}

.input-group > .btn,
.input-group > .txt,
.input-group > .sel {
	position: relative;
	
    -ms-flex: 1 1 auto;
    	flex: 1 1 auto;
	
	width: 1%;
    margin-bottom: 0;
}

.input-group-prepend {
    margin-right: -1px;
}

.input-group-append {
    margin-left: -1px;
}

.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group > .input-group-append:last-child > .txt:not(:last-child),
.input-group > .input-group-append:not(:last-child) > .btn,
.input-group > .input-group-append:not(:last-child) > .txt,
.input-group > .input-group-prepend > .btn,
.input-group > .input-group-prepend > .txt {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group > .sel:not(:first-child),
.input-group > .txt:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.input-group > .btn:not(:last-child),
.input-group > .txt:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group > .input-group-append > .btn,
.input-group > .input-group-append > .txt,
.input-group > .input-group-prepend:first-child > .btn:not(:first-child),
.input-group > .input-group-prepend:first-child > .txt:not(:first-child),
.input-group > .input-group-prepend:not(:first-child) > .btn,
.input-group > .input-group-prepend:not(:first-child) > .txt {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

/* switch ==================================== */

.switch {
	display: inline-block;
	vertical-align: middle;
}

.switch > input {
	position: absolute;
	margin: 0 0 0 -9999px;
	visibility: hidden;
}

.switch > input + label {
	cursor: pointer;
	display: block;
	outline: none;
	padding: 2px;
	position: relative;
	width: 48px;
	height: 28px;
	background-color: #ddd;
	
	-webkit-border-radius: 14px;
	   -moz-border-radius: 14px;
		-ms-border-radius: 14px;
		 -o-border-radius: 14px;
			border-radius: 14px;
	
	-webkit-transition: background .15s;
	   -moz-transition: background .15s;
		 -o-transition: background .15s;
		 	transition: background .15s;

	z-index: 1;
}

.switch > input + label:after {
	display: block;
	position: absolute;
	content: "";
	top: 2px;
	left: 2px;
	bottom: 2px;
	width: 24px;
	background-color: #fff;
	
	-webkit-border-radius: 12px;
	   -moz-border-radius: 12px;
		-ms-border-radius: 12px;
		 -o-border-radius: 12px;
			border-radius: 12px;

	-webkit-box-shadow: 0 1px 1px rgba(0,0,0,.2);
	 -khtml-box-shadow: 0 1px 1px rgba(0,0,0,.2);
	   -moz-box-shadow: 0 1px 1px rgba(0,0,0,.2);
	     -o-box-shadow: 0 1px 1px rgba(0,0,0,.2);
	        box-shadow: 0 1px 1px rgba(0,0,0,.2);
	
	-webkit-transition: margin .15s;
	   -moz-transition: margin .15s;
		 -o-transition: margin .15s;
		 	transition: margin .15s;

	z-index: 1;
}

.switch-dark > input + label {
	background-color: rgba(255,255,255,.2);
	background-color: #555759;
}

.switch-dark > input + label:after {
	background-color: #c9cbcd;
}

.switch-dark > input:checked + label:after {
	background-color: #fff;
}

.switch > input:checked + label {
	background-color: #7cbf77;
}

.switch > input:checked + label:after {
	margin-left: 20px;
}

.switch-green > input:checked + label {
	background-color: #7db500;
}

.switch-red > input:checked + label {
	background-color: #c00;
}

.switch-green-red > input + label {
	background-color: #0cb90d;
}

.switch-green-red > input:checked + label {
	background-color: #c00;
}

.switch-label {
	display: block;
	float: left;
	padding: 2px 0;
	width: 120px;
}

.switch-s > input + label {
	cursor: pointer;
	display: block;
	outline: none;
	padding: 2px;
	position: relative;
	width: 32px;
	height: 20px;
}

.switch-s > input + label:after {
	width: 16px;
}

.switch-s > input:checked + label:after {
	margin-left: 12px;
}

/* post & page ================================ */

main .post-title {
	text-align: center;
}

main .post-title > h1 {
	font-size: 3rem;
	font-weight: bold;
}

main .post-subtitle {
	color: #909498;
	font-size: 1.5rem;
	margin: -1rem 0 2.5rem;
	text-align: center;
}

main .post-date,
main .post-time {
	padding-left: .5rem;
}

main .post-date:before,
main .post-time:before {
	font-family: "icomoon";
	font-size: 1.6rem;
	margin: 0 .8rem 0 1rem;
	vertical-align: -1px;
}

main .post-date:before {
	content: "\ea62"
}

main .post-time:before {
	content: "\ea4e"
}

main .post-media > img {
	border-radius: .4rem;
	display: block;
	margin-bottom: 2rem;
	max-width: 100%;
	height: auto;
}

main .post-teaser {
	border-bottom: 1px solid #eaecef;
	font-weight: bold;
	margin-bottom: 2.4rem;
	padding-bottom: 2.4rem;
}

/* fency ===================================== */

.form-group {
	position: relative;
}

.fency-form .input {
	background-color: #fff;
	border: 1px solid #ccc;

	-webkit-appearance: none;
	   -moz-appearance: none;
	
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	height: 4.4rem;
	margin-bottom: 1.2rem;
	padding: 1rem 1.4rem;

    -webkit-transition: .15s border-color, .15s background;
       -moz-transition: .15s border-color, .15s background;
    	 -o-transition: .15s border-color, .15s background;
    		transition: .15s border-color, .15s background;

	width: 100%;
}

.fency-form .input:focus,
.fency-form .input:not(.empty) {
	outline: none;
}

.fency-form .input:focus {
	background-color: #fff;
	border-color: #389e31;

	-webkit-box-shadow: 0 1px 2px rgba(0, 119, 187, .2);
	 -khtml-box-shadow: 0 1px 2px rgba(0, 119, 187, .2);
	   -moz-box-shadow: 0 1px 2px rgba(0, 119, 187, .2);
	     -o-box-shadow: 0 1px 2px rgba(0, 119, 187, .2);
	        box-shadow: 0 1px 2px rgba(0, 119, 187, .2);
}

.fency-form .input + label {
	color: #999;
	cursor: text;
	font-size: inherit;
	line-height: inherit;

    -webkit-transition: .15s top, .15s font-size, .15s color;
       -moz-transition: .15s top, .15s font-size, .15s color;
    	 -o-transition: .15s top, .15s font-size, .15s color;
    		transition: .15s top, .15s font-size, .15s color;

    -webkit-user-select: none;
       -moz-user-select: none;
    	-ms-user-select: none;
    		user-select: none;

	position: absolute;
	top: 1rem; left: 1.5rem;
	z-index: 2;
}

.fency-form .input + label > span {
	opacity: .5;
}

.fency-form .input + label:before {
	background: white;
	position: absolute;
    content: '';
    top: .7rem;
    right: -.5rem;
    left: -.5rem;
    height: 1px;
	opacity: 0;

	-webkit-transform: translate3d(0, -2.3rem, 0) scaleX(.1);
    	-ms-transform: translate3d(0, -2.3rem, 0) scaleX(.1);
    		transform: translate3d(0, -2.3rem, 0) scaleX(.1);

    -webkit-transition: .15s transform, .15s opacity;
       -moz-transition: .15s transform, .15s opacity;
    	 -o-transition: .15s transform, .15s opacity;
    		transition: .15s transform, .15s opacity;
}

.fency-form .input + label span {
    z-index: 3;
    position: relative;
}

.fency-form .input:focus,
.fency-form .input:not(.empty) {
	background-color: #fff;
}

.fency-form .input:focus + label,
.fency-form .input:not(.empty) + label {
	color: #888;
	font-size: 1.3rem;
	line-height: 1.3rem;
	top: -.7rem;
}

.fency-form .input:-webkit-autofill + label {
	color: #888;
	font-size: 1.3rem;
	line-height: 1.3rem;
	top: -.7rem;
}

.fency-form .input:focus + label {
	color: #389e31;
}

.fency-form .input:focus + label:before,
.fency-form .input:not(.empty) + label:before {
	-webkit-transform: translate3d(0, 0, 0) scaleX(1);
    	-ms-transform: translate3d(0, 0, 0) scaleX(1);
    		transform: translate3d(0, 0, 0) scaleX(1);
    
    opacity: 1;
    z-index: -1;
}

.fency-form .input:-webkit-autofill + label:before {
	-webkit-transform: translate3d(0, 0, 0) scaleX(1);
    	-ms-transform: translate3d(0, 0, 0) scaleX(1);
    		transform: translate3d(0, 0, 0) scaleX(1);
    
    opacity: 1;
    z-index: -1;
}

.fency-form select.input {
	background: #fff url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 288 448'%3E%3Cpath fill='%23848a90' d='M268.75 184c0 2-1 4.25-2.5 5.75l-116.5 116.5c-1.5 1.5-3.75 2.5-5.75 2.5s-4.25-1-5.75-2.5l-116.5-116.5c-1.5-1.5-2.5-3.75-2.5-5.75s1-4.25 2.5-5.75l12.5-12.5c1.5-1.5 3.5-2.5 5.75-2.5 2 0 4.25 1 5.75 2.5l98.25 98.25 98.25-98.25c1.5-1.5 3.75-2.5 5.75-2.5s4.25 1 5.75 2.5l12.5 12.5c1.5 1.5 2.5 3.75 2.5 5.75z'/%3E%3C/svg%3E") no-repeat right .75rem center;
	background-size: 2.8rem 2.4rem;
	padding-right: 3.5rem;
}

.fency-form .input-error .input {
	background-color: #fff;
	border-color: #de2620;
}

.fency-form .input-error .input:focus + label,
.fency-form .input-error .input:not(.empty) + label,
.fency-form .input-error .input:-webkit-autofill + label {
	color: #de2620;
}

.fency-form .input-error .input + label {
	color: #aaa;
}

/* form validation messages ================== */

.fency-form .msg {
	font-size: 1.3rem;
	line-height: 1.3;
	margin: -.8rem 0 .8rem;
}

.fency-form .msg.error > div {
	color: #de2620;
	padding-left: 2.5rem;
}

.fency-form .msg.error:before {
	background-size: 1.6rem 1.6rem;
	content: "";
	display: block;
	width: 1.6rem;
	height: 1.6rem;
	margin: 0 0 0 .3rem;
	position: absolute;
}

.fency-form .msg.error:before {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg xmlns="http://www.w3.org/2000/svg" width="512" height="512" viewBox="0 0 512 512"%3E%3Cpath fill="%23de2620" d="M256 46.387l214.551 427.613h-429.103l214.552-427.613zM256 0c-11.035 0-22.070 7.441-30.442 22.324l-218.537 435.556c-16.743 29.766-2.5 54.12 31.652 54.12h434.654c34.15 0 48.396-24.354 31.65-54.12h0.001l-218.537-435.556c-8.371-14.883-19.406-22.324-30.441-22.324v0z"%3E%3C/path%3E%3Cpath fill="%23de2620" d="M288 416c0 17.673-14.327 32-32 32s-32-14.327-32-32c0-17.673 14.327-32 32-32s32 14.327 32 32z"%3E%3C/path%3E%3Cpath fill="%23de2620" d="M256 352c-17.673 0-32-14.327-32-32v-96c0-17.673 14.327-32 32-32s32 14.327 32 32v96c0 17.673-14.327 32-32 32z"%3E%3C/path%3E%3C/svg%3E');
}

/* pagenav =================================== */

.bottom-pages {
	text-align: center;
}

.pagination {
	cursor: default;
	line-height: 34px;
	vertical-align: middle;
}

.pagination .pagination-count {
	display: inline-block;
}

.pagination a {
	display: inline-block;
	margin: 0 2px;
	padding: 0 1rem;
	text-decoration: none;
}

.pagination a.pagination-prev .arrow,
.pagination a.pagination-next .arrow {
	display: inline-block;
	font-size: 180%;
	margin: -3px 3px;
	vertical-align: -3px;
}

.pagination .pagination-current {
	background: #eee;
	font-weight: bold;
}

.pagination .pagination-dots {
	margin: 0 5px;
}

.pagination .pagination-disabled {
	color: #aaa;
}

.rating {
	display: block;
	line-height: 24px;
	margin: 30px 0 25px;
}

.rating > div {
	display: block;
	float: left;
}

.rating > .stars {
	font-family: "icomoon";
	font-size: 20px;
	direction: rtl;
	position: relative;
	text-align: left;
	unicode-bidi: bidi-override;
}

.rating > .stars > span {
	display: inline-block;
	position: relative;
	width: 1em;
	height: 1em;
}

.rating > .stars:not(:hover) > span.full:after {
	color: #999;
	content: "\f005";
	background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBiYXNlUHJvZmlsZT0idGlueSIgdmVyc2lvbj0iMS4yIiB2aWV3Qm94PSIwIDAgMjQgMjQiIHhtbDpzcGFjZT0icHJlc2VydmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0ibTkuMzYyIDkuMTU4cy0zLjE2IDAuMzUtNS4yNjggMC41ODRjLTAuMTkgMC4wMjMtMC4zNTggMC4xNS0wLjQyMSAwLjM0M3MwIDAuMzk0IDAuMTQgMC41MjFjMS41NjYgMS40MjkgMy45MTkgMy41NjkgMy45MTkgMy41NjktMmUtMyAwLTAuNjQ2IDMuMTEzLTEuMDc0IDUuMTktMC4wMzYgMC4xODggMC4wMzIgMC4zODcgMC4xOTYgMC41MDYgMC4xNjMgMC4xMTkgMC4zNzMgMC4xMjEgMC41MzggMC4wMjggMS44NDQtMS4wNDggNC42MDYtMi42MjQgNC42MDYtMi42MjRzMi43NjMgMS41NzYgNC42MDQgMi42MjVjMC4xNjggMC4wOTIgMC4zNzggMC4wOSAwLjU0MS0wLjAyOSAwLjE2NC0wLjExOSAwLjIzMi0wLjMxOCAwLjE5NS0wLjUwNS0wLjQyOC0yLjA3OC0xLjA3MS01LjE5MS0xLjA3MS01LjE5MXMyLjM1My0yLjE0IDMuOTE5LTMuNTY2YzAuMTQtMC4xMzEgMC4yMDItMC4zMzIgMC4xNC0wLjUyNHMtMC4yMy0wLjMxOS0wLjQyLTAuMzQxYy0yLjEwOC0wLjIzNi01LjI2OS0wLjU4Ni01LjI2OS0wLjU4NnMtMS4zMS0yLjg5OC0yLjE4My00LjgzYy0wLjA4Mi0wLjE3My0wLjI1NC0wLjI5NC0wLjQ1Ni0wLjI5NHMtMC4zNzUgMC4xMjItMC40NTMgMC4yOTRjLTAuODc0IDEuOTMyLTIuMTgzIDQuODMtMi4xODMgNC44M3oiLz48L3N2Zz4=");
}

.rating > .stars > span:after,
.rating > .stars:hover > span.full:after {
	color: #ddd;
	content: "\f006";
	font-family: "icomoon";
	line-height: 1;
	text-shadow: none;
	position: absolute;
	top: 0; left: 0;
}

.rating > .stars > span:hover,
.rating > .stars > span:hover ~ span,
.rating > .stars > span.selected,
.rating > .stars > span.selected ~ span {
	color: transparent;
}

.rating > .stars:hover > span:hover:after,
.rating > .stars:hover > span:hover ~ span:after,
.rating > .stars > span.selected:after,
.rating > .stars > span.selected ~ span:after {
	content: "\f005";
	font-family: "icomoon";
	color: gold !important;
	text-shadow: 0 0 5px gold;
}

.rating > .label {
	font-size: 85%;
	padding: 0 0 0 10px;
}

.rating > .label > span {
	font-weight: 600;
}

/* responsive ================================ */

@media (min-width: 768px) {
	main aside {
		padding-left: 0 !important;
	}

	.row {
		display: -ms-flexbox;
		display: flex;
		
		-ms-flex-wrap: wrap;
			flex-wrap: wrap;
		
		margin-right: -1.5rem;
		margin-left: -1.5rem;
	}

	[class*="col-"] {
		padding-right: 1.5rem;
		padding-left: 1.5rem;
    }

	.col-1 { -ms-flex: 0 0 8.333333%; flex: 0 0 8.333333%; max-width: 8.333333%; }
	.col-2 { -ms-flex: 0 0 16.666666%; flex: 0 0 16.666666%; max-width: 16.666666%; }
	.col-3 { -ms-flex: 0 0 25%; flex: 0 0 25%; max-width: 25%; }
	.col-4 { -ms-flex: 0 0 33.333333%; flex: 0 0 33.333333%; max-width: 33.333333%; }
	.col-5 { -ms-flex: 0 0 41.666666%; flex: 0 0 41.666666%; max-width: 41.666666%; }
	.col-6 { -ms-flex: 0 0 50%; flex: 0 0 50%; max-width: 50%; }
	.col-7 { -ms-flex: 0 0 58.333333%; flex: 0 0 58.333333%; max-width: 58.333333%; }
	.col-8 { -ms-flex: 0 0 66.666666%; flex: 0 0 66.666666%; max-width: 66.666666%; }
	.col-9 { -ms-flex: 0 0 75%; flex: 0 0 75%; max-width: 75%; }
	.col-10 { -ms-flex: 0 0 83.333333%; flex: 0 0 83.333333%; max-width: 83.333333%; }
	.col-11 { -ms-flex: 0 0 91.666666%; flex: 0 0 91.666666%; max-width: 91.666666%; }
	.col-12 { -ms-flex: 0 0 100%; flex: 0 0 100%; max-width: 100%; }
}

@media all and (max-width: 768px)
{
    html {
    	font-size: 58.5%;
    }
}

@media all and (max-width: 600px)
{
	div.media, div.media > figure, div.media > div.media-body {
		display: block !important;
		float: none !important;
		padding: 0 !important;
		width: 100% !important;
	}

	div.media figcaption {
		text-align: center;
	}

	div.media img,
	div.media iframe {
		max-width: 100%;
		width: auto;
		margin: 0 auto;
	}
}

.container {
	margin: 0 auto;
	max-width: 1102px;
}

/* reset ===================================== */

.bg-white {
	background-color: #fff;
}

.bg-light {
	background-color: #fafafa;
}

.fw-300 {
	font-weight: 300;
}

.fw-400 {
	font-weight: 400;
}

.fw-500 {
	font-weight: 500;
}

.fw-600 {
	font-weight: 600;
}

.fw-700 {
	font-weight: 700;
}

.p-1 {
	padding: 1rem;
}

.p-1-5 {
	padding: 1.5rem;
}

.p-2 {
	padding: 2rem;
}

.p-2-5 {
	padding: 2.5rem;
}

.m-1 {
	margin: 1rem;
}

.m-1-5 {
	margin: 1.5rem;
}

.m-2 {
	margin: 2rem;
}

.mt-1 {
	margin-top: 1rem;
}

.mt-2 {
	margin-top: 2rem;
}

.mt-3 {
	margin-top: 3rem;
}

.mb-1 {
	margin-bottom: 1rem;
}

.mb-2 {
	margin-bottom: 2rem;
}

.mb-3 {
	margin-bottom: 3rem;
}

.cornered {
	-webkit-border-radius: 0;
	 -khtml-border-radius: 0;
	   -moz-border-radius: 0;
	     -o-border-radius: 0;
		    border-radius: 0;
}

.center {
	text-align: center;
}

.p-0 {
	padding: 0;
}

.p-2 {
	padding: 2rem;
}

.shadow {
	-webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, .075);
	 -khtml-box-shadow: 0 2px 4px rgba(0, 0, 0, .075);
	   -moz-box-shadow: 0 2px 4px rgba(0, 0, 0, .075);
	     -o-box-shadow: 0 2px 4px rgba(0, 0, 0, .075);
	        box-shadow: 0 2px 4px rgba(0, 0, 0, .075);
}

.shadow-s {
	-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
	 -khtml-box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
	   -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
	     -o-box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
	        box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
}

.shadow-l {
	-webkit-box-shadow: 0 4px 8px rgba(0, 0, 0, .075);
	 -khtml-box-shadow: 0 4px 8px rgba(0, 0, 0, .075);
	   -moz-box-shadow: 0 4px 8px rgba(0, 0, 0, .075);
	     -o-box-shadow: 0 4px 8px rgba(0, 0, 0, .075);
	        box-shadow: 0 4px 8px rgba(0, 0, 0, .075);
}

.shadow-xl {
	-webkit-box-shadow: 0 8px 16px rgba(0, 0, 0, .075);
	 -khtml-box-shadow: 0 8px 16px rgba(0, 0, 0, .075);
	   -moz-box-shadow: 0 8px 16px rgba(0, 0, 0, .075);
	     -o-box-shadow: 0 8px 16px rgba(0, 0, 0, .075);
	        box-shadow: 0 8px 16px rgba(0, 0, 0, .075);
}

.spinner[data-size] {
	border: 6px solid rgba(53, 122, 233, .2);
	border-top-color: #389e31;
	border-radius: 100%;
	display: block;
	height: 32px;
	width: 32px;
	position: relative;
	animation: spinner .36s infinite linear;
}

.spinner[data-size="16"] {
	height: 16px;
	width: 16px;
	border-width: 3px;
	margin: -8px;
}

.spinner[data-size="24"] {
	height: 24px;
	width: 24px;
	border-width: 4px;
	margin: -12px;
}

.spinner[data-size="48"] {
	height: 48px;
	width: 48px;
	border-width: 4px;
	margin: -24px;
}

.spinner[data-size="64"] {
	height: 64px;
	width: 64px;
	border-width: 12px;
	margin: -32px;
}

.spinner-white[data-size] {
	border-color: rgba(0, 0, 0, .1);
	border-top-color: rgba(255, 255, 255, 1);
}

.spinner-grey[data-size] {
	border-color: rgba(120, 120, 120, .2);
	border-top-color: rgba(120, 120, 120, 1);
}

@keyframes spinner
{
	from {
		transform: rotate(0deg);
	}

	to {
		transform: rotate(359deg);
	}
}

.toc {
	background: #fff;
	border: 1px solid #aaa;
	box-shadow: 0 2px 6px rgba(0,0,0,.1);
	border-radius: 3px;
	display: inline-block;
	line-height: 1.2;
	margin-bottom: 10px;
	overflow: hidden;
}

.toc .toc-title {
	background: #eee;
	cursor: pointer;
	font-size: 2rem;
	padding: 1rem 5rem 1rem 1.5rem;
}

.toc .toc-title:hover {
	background: #eee;
}

.toc.toc-open .toc-title,
.toc .toc-title:hover {
	background: #eee;
}

.toc .toc-title::after {
	color: #888;
	margin-left: 1rem;
}

.toc:not(.toc-open) .toc-title::after {
	content: "[+]";
}

.toc.toc-open .toc-title::after {
	content: "[-]";
}

.toc .toc-body {
	padding: .5rem 0;
}

.toc ol {
	counter-reset: item;
	list-style: none;
	margin: 0;
	padding: 0;
}

.toc li {
	display: block;
	position: relative;
	padding-left: 3rem;
}

.toc li::before {
	content: counters(item, ".") ". ";
	counter-increment: item;
	font-weight: bold;
	padding: .5rem 0 .5rem 1.5rem;
	position: absolute;
	left: 0;
}

.toc ol ol {
	font-size: 90%;
}

.toc li > ol {
	display: none;
}

.toc a {
	color: #2a2a2a;
	display: block;
	padding: .5rem 1.5rem;
	text-decoration: none;
}

.toc a:hover,
.toc a:active,
.toc a:focus {
	color: #367e87;
	text-decoration: none;
}