* {
	box-sizing: border-box;
	outline: none;
}
body {
	font-family: -apple-system, system-ui, BlinkMacSystemFont, Roboto, sans-serif;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	line-height: 1.4;
	font-weight: 400;
	color: #111;
	font-size: 15px;
	background: #f6f9fc;
}
a { color: #2a5885; text-decoration: none; cursor: pointer; outline: 0 !important; transition: all 0.1s ease 0s; }
a:focus { text-decoration: none; color: #2a5885; }
a:hover { text-decoration: none; }
h1, h2, h3, h4, h5, h6 { font-weight: bold; }
ul { margin: 0; padding: 0; list-style: none; }

img { border: 0; width: 100%; }
input:focus, select:focus, textarea:focus, button:focus { outline: none; }

input[type=text], input[type=number], input[type=email], input[type=url], input[type=password], input[type=search], textarea {
	color: #444;
	border: 1px solid #d9d9d9;
	border-radius: 3px;
	padding: 6px 8px;
	-webkit-appearance: none;
	height: 34px;
}

h1.sectionHeader {
    font-size: 140%;
    margin: 2rem 0 3rem;
}
nav a:hover,
footer a:hover { color: white; }

/*
 * FOOTER
 * ------------------------------
*/
header {
	background: #171b1e;
	z-index: 10;
}

footer {
    background: #171b1e;
    padding: 4rem 2rem;
	color: #fff;
}
footer .logo {
    margin: 0 auto;
}
footer .col {
    text-align: center;
    padding: 2rem 0;
}
footer li {
    padding: 1rem 0;
}
footer a {
    color: white;
}
footer a:hover {
    text-decoration: underline;
}
footer ul li i {
    margin-right: 0.5rem;
}

.footerMenu a { color: #c3c3c3; margin: 0 10px; }

main {
	display: block;
	background: white;
	min-height: 600px;
	background: linear-gradient(to right, #f3f3f3, #f6f6f6);
	z-index: 0;
}

.emojionepicker-picker {
	background-image: url("/img/smile.png") !important;
	width: 25px !important;
	height: 25px !important;
	right: 10px !important;
	top: 15px !important;
	left: auto !important;
	z-index: 999 !important;
}
.emojionepicker {
	position: fixed !important;
	height: 222px !important;
	top: auto !important;
	left: auto !important;
	right: 5% !important;
	bottom: 10% !important;
	border-radius: 5px !important;
	overflow: hidden !important;
	z-index: 1100 !important;
}
.emojionepicker nav { height: auto; border-radius: 0; display: block; }
.emojionepicker nav div.tab { width: 3rem; }
.emojionepicker section { height: 190px; }

.textareaWrap { position: relative; }
.textareaWrap textarea { resize: none; min-height: 66px; }

.link { color: #2a5885; text-decoration: underline; cursor: pointer; }
.link:hover { text-decoration: underline; }

.nowrap { text-overflow: ellipsis; white-space: nowrap; overflow: hidden; }

.redMessage { background: #EB3349; text-align: center; padding: 6px; color: #fff; height: 32px; }
.redMessage a { color: #fff; text-decoration: underline; }

.select2-container--default .select2-results > .select2-results__options { max-height: 240px; }
.select2-results__option {padding: 6px 8px; }
.select2-container .select2-search--inline .select2-search__field { height: auto; }

.pageWidth {
	max-width: 1200px;
	position: relative;
	margin: 0 auto;
	padding: 0;
}
.sectionHeader {
	color: #2b2f33;
	font-size: 150%;
}
.clear { clear: both; }

.ease03 {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

/*
 * BUTTONS
 * ------------------------------
*/

.btn {
	padding: 8px 10px;
	font-size: 12px;
	font-weight: bold;
	font-style: inherit;
	text-transform: uppercase;
	margin-top: auto;
	margin-bottom: auto;
	white-space: nowrap;
	outline: none;
	border-radius: 5px;
	display: inline-block;
	cursor: pointer;
	background: #e6e6e6;
	background: -webkit-linear-gradient(to right, #eaeaea, #e6e6e6);
	background: linear-gradient(to right, #eaeaea, #e6e6e6);
	border: none;
	color: #222;
	z-index: 101;
	position: relative;
	box-shadow: 0 1px 3px rgba(0,0,0,.15);
}
.btn:hover {
	color: #000;
	background: #dedede;
	background: -webkit-linear-gradient(to right, #dedede, #dedede);
	background: linear-gradient(to right, #dedede, #dedede);
}
.btn:focus, .btn:active { box-shadow: 0 1px 3px rgba(0,0,0,.15); }
.btn i { margin-right: 3px; }
.btn.noText i { margin-right: 0; }
.btn.icon { font-size: 16px; padding: 3px 8px; }
.btn.red {
	background: #EB3349;
	background: -webkit-linear-gradient(to right, #F45C43, #EB3349);
	background: linear-gradient(to right, #F45C43, #EB3349);
	color: #fff;
}
.btn.redHover:hover {
	background: #EB3349;
	background: -webkit-linear-gradient(to right, #F45C43, #EB3349);
	background: linear-gradient(to right, #F45C43, #EB3349);
	color: #fff;
}
.btn.green {
	background: #4AC34E;
	background: -webkit-linear-gradient(to right, #4AC34E, #11998e);
	background: linear-gradient(to right, #4AC34E, #11998e);
	color: #fff;
}
.btn.greenHover:hover {
	background: #4AC34E;
	background: -webkit-linear-gradient(to right, #4AC34E, #11998e);
	background: linear-gradient(to right, #4AC34E, #11998e);
	color: #fff;
}
.btn.bot { padding-left: 35px; text-align: left; }
.btn .botIcon { width: 18px; position: absolute; top: 8px; left: 10px; }

.modal { top: 20%; }
.modal .modal-content { box-shadow: none; border: none; border-radius: 3px; }
.modal .modal-content .btn { box-shadow: none; }
.modal .modal-header { padding-bottom: 5px; border: none; text-align: center; }
.modal .modal-header .close { width: 20px; height: 25px; margin: 0; position: absolute; top: 15px; right: 20px; }
.modal .modal-body { text-align: center; }
.modal .modal-footer { border: none; text-align: center; padding-bottom: 20px; }

#previewCoverModal { top: auto; }

.button {
	background-image: -moz-linear-gradient( 4deg, rgb(42,163,255) 0%, rgb(84,32,255) 100%);
	background-image: -webkit-linear-gradient( 4deg, rgb(42,163,255) 0%, rgb(84,32,255) 100%);
  	background-image: -ms-linear-gradient( 4deg, rgb(42,163,255) 0%, rgb(84,32,255) 100%);
	padding: 1.5rem 6rem;
	color: white;
	border-radius: 3rem;
	display: inline-block;
	font-weight: bold;
	text-transform: uppercase;
}
.button:hover {
	transform: translateY(-1px);
	color: white;
}

.breadcrumb {
	background-color: #fff;
	box-shadow: 0 1px 3px rgba(0,0,0,.15);
	border-radius: 6px;
	font-family: Roboto, sans-serif;
}
.breadcrumb li { margin: 0; }
.breadcrumb > li + li::before {
	padding: 0 5px;
	color: #3976ff;
	content: "/\00a0";
	font-weight: bold;
}
.breadcrumb > .active { font-weight: bold; color: #333; }
.breadcrumb a { color: #111; }
.breadcrumb a:hover { text-decoration: underline; }
.breadcrumb .access { float: right; }
.breadcrumb .access span { color: #50b850; font-weight: bold; }
.breadcrumb .access .notPaid { color: #c9302c; }
.breadcrumb .access::before { display: none; }

.svgIcon { fill: currentColor; }

/*
 * HEADER
 * ------------------------------
*/
.logo {
    width: 170px;
    display: flex;
    flex-direction: column;
    justify-content: center;
	padding: 0;
}
.logo span {
    position: absolute;
    left: -99999px;
    display: block;
}
.logo img { width: 100%; height: auto; }
.logo:hover {
	background: none;
}

nav {
    z-index: 10;
    left: 0;
    width: 100%;
	height: 60px;
    display: flex;
    justify-content: space-between;
}
nav ul {
	display: flex;
	align-items: center;
}
nav ul.active {
	display: block;
	z-index: 1000;
}
nav ul li  { margin: 0; }
nav ul li:last-child { margin: 0; }
nav a {
	text-decoration: none;
	transition: all .3s;
	padding: 0.1rem 1.3rem;
	display: inline-block;
	white-space: nowrap;
	border-radius: 25px;
	color: white;
	line-height: 30px;
	text-transform: uppercase;
	font-size: 12px;
	font-weight: bold;
}
nav a:hover {
	background: rgba(255, 255, 255, 0.09);
	color: white;
	text-decoration: none;
}
nav a.account { padding-left: 4px; }
nav .mobile { display: none; }
nav .accountLink {
	align-items: center;
	display: flex;
	justify-content: flex-end;
	width: 170px;
}
nav .account img,
nav .account .userIcon {
	width: 26px;
	height: 26px;
	overflow: hidden;
	display: inline-block;
	border-radius: 20px;
	vertical-align: top;
	margin-right: 0.5rem;
	margin-top: 2px;
	color: #505050;
	fill: currentColor;
}

nav .burger {
    width: 42px;
    height: 42px;
    line-height: 42px;
    padding: 0;
    background: none;
    border: none;
    position: relative;
    display: none;
}

nav .burger:hover span:nth-of-type(1) {
    margin: -6px 0 0
}

nav .burger:hover span:nth-of-type(3) {
    margin: 6px 0 0
}

nav .burger.active span:nth-of-type(1) {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
    -moz-transform: translate(-50%, -50%) rotate(45deg);
    -ms-transform: translate(-50%, -50%) rotate(45deg);
    -o-transform: translate(-50%, -50%) rotate(45deg);
    transform: translate(-50%, -50%) rotate(45deg);
    margin: 0
}

nav .burger.active span:nth-of-type(2) {
    opacity: 0
}

nav .burger.active span:nth-of-type(3) {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    -moz-transform: translate(-50%, -50%) rotate(-45deg);
    -ms-transform: translate(-50%, -50%) rotate(-45deg);
    -o-transform: translate(-50%, -50%) rotate(-45deg);
    transform: translate(-50%, -50%) rotate(-45deg);
    margin: 0
}

nav .burger span {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: 250ms ease-in-out;
    -moz-transition: 250ms ease-in-out;
    -o-transition: 250ms ease-in-out;
    transition: 250ms ease-in-out;
    display: block;
    opacity: 1;
    width: 30px;
    height: 3px;
    background-color: white
}

nav .burger span:nth-of-type(1) {
    margin: -9px 0 0
}

nav .burger span:nth-of-type(3) {
    margin: 9px 0 0
}

.singlePage { background: #fff; padding: 10px 30px 50px 30px; min-height: 600px; }
.singlePage h1 { font-size: 22px; }

@media (min-width: 1200px) {
	.container { width: 1200px; }
}

@media screen and (max-width: 880px) {
	.pageWidth nav {
		display: block;
		padding: 0 2rem;
		height: 70px;
	}
	nav .burger {
	    display: block;
	    float: right;
		margin-top: 14px;
	}
	nav .mobile { display: block; }
	nav .logo {
	    display: inline-block;
		margin-top: 20px;
	}
	nav .accountLink {
	    display: none;
	}
	nav ul {
		background: #fff;
		box-shadow: 0 10px 20px rgba(50,50,93,.1), 0 15px 35px rgba(50,50,93,.15), 0 5px 15px rgba(0,0,0,.1);
		border-radius: 4px;
		text-align: center;
		transition: all 1s ease;;
		position: absolute;
		right: 1rem;
		display: none;
		width: 60%;
		margin: 1rem;
	}
	nav ul:before {
        font-size: 1.4em;
        display: block;
        width: 0;
        height: 0;
        content: '';
        pointer-events: none;
        border-right: 10px solid transparent;
        border-bottom: 10px solid #fff;
        border-left: 10px solid transparent;
        position: absolute;
        top: -10px;
        right: 11px;
    }
	nav ul li {
		display: block;
		margin: 0;
	}
	nav ul a {
		font-size: 100%;
		color: #6772e5;
		display: block;
		text-align: left;
		padding: 1rem 2rem;
	}
	nav ul a.account { padding: 1rem 2rem; }
	nav ul a:hover {
		background: hsla(250, 100%, 96%, 0.63);
		color: #333;
	}
	nav #menu-toggle:checked ~ ul {
		opacity: 1;
		height: 100vh;
		visibility: visible;
	}

	nav .label-toggle {
		background: linear-gradient(to bottom, #6772e5 0%, #6772e5 20%, transparent 20%, transparent 40%, #6772e5 40%, #6772e5 60%, transparent 60%, transparent 80%, #6772e5 80%, #6772e5 100%);
		cursor: pointer;
		display: block;
		float: right;
		height: 35px;
		margin-top: 1em;
		width: 35px;
	}

}