body.dark {
	background: #252525
}

body {
	font-family: "Inter", Helvetica, sans-serif
}

main h1,
main h2,
main h3,
main h4,
main h5,
main h6,
.title-h1,
.title-h2,
.title-h3,
.title-h4,
.title-h5,
.title-h6,
.title-hero,
.logo {
	font-family: "Inter", Helvetica, sans-serif
}

main h1,
.title-h1,
.title-hero {
	font-size: 56px;
	font-weight: 900;
	line-height: 72px
}

main h2,
.title-h2 {
	font-size: 48px;
	font-weight: 900;
	line-height: 56px
}

main h3,
.title-h3 {
	font-size: 32px;
	font-weight: 900;
	line-height: 40px
}

main h4,
.title-h4 {
	font-size: 24px;
	font-weight: 700;
	line-height: 32px
}

main h5,
.title-h5 {
	font-size: 20px;
	font-weight: 700;
	line-height: 28px
}

main h6,
.title-h6 {
	font-size: 16px;
	font-weight: 700;
	line-height: 24px
}

@media only screen and (min-width:768px) {
	.title-hero {
		font-size: 72px;
		font-weight: 900;
		line-height: 88px
	}
}

@media only screen and (max-width:767px) {

	main h1,
	.title-h1 {
		font-size: 32px;
		font-weight: 900;
		line-height: 40px
	}
}

@media only screen and (max-width:767px) {

	main h2,
	.title-h2 {
		font-size: 24px;
		font-weight: 700;
		line-height: 32px
	}
}

@media only screen and (max-width:1200px) and (min-width:768px) {

	.row .title-h1,
	.row .title-hero {
		font-size: 48px;
		font-weight: 900;
		line-height: 56px
	}
}

.bg-color-primary,
.button.button-style-primary,
.card .button.button-style-primary,
.timeline [class^="col-"]:before {
	background: #252525
}

body.dark .button.button-style-primary {
	background: #252525 !important
}

.form input[type="checkbox"]:checked+label.checkbox:before,
.form input[type="radio"]:checked+label.radio:before,
.form input.switch:checked+label.switch:before {
	background: #252525
}

.button.button-style-primary:hover {
	background: #3e3e3e
}

body.dark .button.button-style-primary:hover {
	background: #3e3e3e !important
}

body.primary-white:not(.dark) [class*="bg-"].dark [class*="bg-"]:not(.dark) .button.button-style-primary {
	background: #252525 !important;
	color: #fff !important
}

body.primary-white:not(.dark) [class*="bg-"].dark [class*="bg-"]:not(.dark) .button.button-style-primary:hover {
	background: #3e3e3e !important
}

.button,
.flickity-prev-next-button,
.tag {
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px
}

.form input:not(.button),
.form select,
.form textarea,
.form label.checkbox:before {
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px
}

main pre,
main table {
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px
}

main table tr th:first-child {
	-webkit-border-top-left-radius: 6px;
	-moz-border-radius-topleft: 6px;
	border-top-left-radius: 6px
}

main table tr th:last-child {
	-webkit-border-top-right-radius: 6px;
	-moz-border-radius-topright: 6px;
	border-top-right-radius: 6px
}

.border.rounded>figure>video {
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px
}

article figure img,
article iframe,
#features .blocks[class*="bg-"],
.card,
.rounded,
.rounded>figure>video,
.sidebar-nav,
.header-main ul li.submenu>ul {
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px
}

.rounded-bottom {
	-webkit-border-bottom-left-radius: 8px;
	-moz-border-radius-bottomleft: 8px;
	border-bottom-left-radius: 8px;
	-webkit-border-bottom-right-radius: 8px;
	-moz-border-radius-bottomright: 8px;
	border-bottom-right-radius: 8px
}

.rounded-left {
	-webkit-border-bottom-left-radius: 8px;
	-moz-border-radius-bottomleft: 8px;
	border-bottom-left-radius: 8px;
	-webkit-border-top-left-radius: 8px;
	-moz-border-radius-topleft: 8px;
	border-top-left-radius: 8px
}

.rounded-right {
	-webkit-border-bottom-right-radius: 8px;
	-moz-border-radius-bottomright: 8px;
	border-bottom-right-radius: 8px;
	-webkit-border-top-right-radius: 8px;
	-moz-border-radius-topright: 8px;
	border-top-right-radius: 8px
}

.rounded-top {
	-webkit-border-top-left-radius: 8px;
	-moz-border-radius-topleft: 8px;
	border-top-left-radius: 8px;
	-webkit-border-top-right-radius: 8px;
	-moz-border-radius-topright: 8px;
	border-top-right-radius: 8px
}

.rounded-bottom-left {
	-webkit-border-bottom-left-radius: 8px;
	-moz-border-radius-bottomleft: 8px;
	border-bottom-left-radius: 8px
}

.rounded-bottom-right {
	-webkit-border-bottom-right-radius: 8px;
	-moz-border-radius-bottomright: 8px;
	border-bottom-right-radius: 8px
}

.rounded-top-left {
	-webkit-border-top-left-radius: 8px;
	-moz-border-radius-topleft: 8px;
	border-top-left-radius: 8px
}

.rounded-top-right {
	-webkit-border-top-right-radius: 8px;
	-moz-border-radius-topright: 8px;
	border-top-right-radius: 8px
}

main .dark table,
.dark .button.button-style-tertiary,
.dark .border,
.dark .border .tag,
.dark .share [class*="button-"] {
	border: 2px solid #333333
}

body.dark main table,
body.dark .button.button-style-tertiary,
body.dark .border,
body.dark .border .tag,
body.dark .share [class*="button-"] {
	border: 2px solid #333333 !important
}

main .dark table tr td,
main .dark table tr th,
.border-bottom.dark,
.dark .border-bottom {
	border-bottom: 2px solid #333333
}

body.dark main table tr td,
body.dark main table tr th,
body.dark .border-bottom {
	border-bottom: 2px solid #333333 !important
}

.dark .border-top {
	border-top: 2px solid #333333
}

body.dark .border-top {
	border-top: 2px solid #333333 !important
}

body.dark .header-main[class*="shadow-"] {
	border-bottom: 1px solid #333333
}

@media only screen and (min-width:768px) {
	.header-main ul li.submenu>ul {
		border: 1px solid #333333
	}
}

main table,
.button.button-style-tertiary,
.border,
.border .tag,
.share [class*="button-"] {
	border: 2px solid #ececee
}

main [class*="bg-"].dark [class*="bg-"]:not(.dark) table,
[class*="bg-"].dark [class*="bg-"]:not(.dark) .button.button-style-tertiary,
[class*="bg-"].dark [class*="bg-"]:not(.dark) .border,
[class*="bg-"].dark [class*="bg-"]:not(.dark) .border .tag,
[class*="bg-"].dark [class*="bg-"]:not(.dark) .share [class*="button-"] {
	border: 2px solid #ececee
}

main table tr td,
main table tr th,
.border-bottom {
	border-bottom: 2px solid #ececee
}

main [class*="bg-"].dark [class*="bg-"]:not(.dark) table tr td,
main [class*="bg-"].dark [class*="bg-"]:not(.dark) table tr th,
[class*="bg-"].dark [class*="bg-"]:not(.dark) .border-bottom {
	border-bottom: 2px solid #ececee
}

.border-top {
	border-top: 2px solid #ececee
}

[class*="bg-"].dark [class*="bg-"]:not(.dark) .border-top {
	border-top: 2px solid #ececee
}

@media only screen and (min-width:768px) {
	.header-main ul li.submenu {
		height: 40px;
		overflow: hidden;
		position: relative
	}

	.header-main ul li.submenu>ul {
		-webkit-transition: all .2s;
		-moz-transition: all .2s;
		-ms-transition: all .2s;
		-o-transition: all .2s;
		transition: all .2s;
		background: #1a1a1a;
		opacity: 0;
		padding: 7px 15px;
		position: absolute;
		right: 20px
	}

	.header-main ul li.submenu>ul li {
		display: block;
		padding-right: 0
	}

	.header-main ul li.submenu>ul li a {
		color: #fff;
		height: 32px;
		line-height: 32px;
		opacity: .8
	}

	.header-main ul li.submenu>ul li a:hover {
		opacity: 1
	}

	.header-main ul li.submenu>ul li a .icon-external-link {
		margin-bottom: 2px;
		margin-top: 2px
	}

	.header-main ul li.submenu:hover {
		overflow: visible
	}

	.header-main ul li.submenu:hover>a,
	.header-main ul li.submenu:hover>ul {
		opacity: 1
	}

	.header-main ul li:last-child.submenu>ul {
		right: 0
	}
}

@media only screen and (max-width:767px) {

	main.header-bg:before,
	main.header-fixed:before {
		height: 64px
	}

	main .hero:not(.hero-lg),
	main .hero-lg:not(.hero),
	main .hero-none,
	main.post article {
		padding-top: 64px
	}

	main.header-bg .hero:not(.hero-lg),
	main.header-fixed .hero:not(.hero-lg),
	main.header-bg .hero-lg:not(.hero),
	main.header-fixed .hero-lg:not(.hero),
	main.header-bg .hero-none,
	main.header-fixed .hero-none,
	main.header-bg.post article,
	main.header-fixed.post article {
		padding-top: 48px
	}

	main.header-bg .hero:not(.hero-lg):not(.hero-columns).hero-blocks [class*="space-hero"],
	main.header-bg .hero:not(.hero-lg):not(.hero-columns).padding-bottom-none:not(.hero-blocks) [class*="space-hero"],
	main.header-fixed .hero:not(.hero-lg):not(.hero-columns).hero-blocks [class*="space-hero"],
	main.header-fixed .hero:not(.hero-lg):not(.hero-columns).padding-bottom-none:not(.hero-blocks) [class*="space-hero"] {
		margin-top: 0
	}

	main.header-bg .hero:not(.hero-lg).hero-columns.hero-blocks [class*="space-hero"],
	main.header-fixed .hero:not(.hero-lg).hero-columns.hero-blocks [class*="space-hero"] {
		margin-top: 0
	}

	main.header-bg .hero:not(.hero-lg).hero-columns.padding-bottom-none:not(.hero-blocks) [class*="space-hero"],
	main.header-fixed .hero:not(.hero-lg).hero-columns.padding-bottom-none:not(.hero-blocks) [class*="space-hero"] {
		margin-top: 0
	}

	main.header-fixed .hero-none>[class*="space-hero"],
	main.header-fixed.post article [class*="space-hero"] {
		margin-top: 0
	}

	main.header-fixed.header-fixed--sm .anchor {
		scroll-margin-top: 96px
	}

	main.header-fixed.header-fixed--sm .position-sticky {
		top: 88px
	}

	.header-main {
		height: 64px
	}

	.header-main nav {
		padding-bottom: 12px;
		padding-top: 12px
	}

	.header-main nav.full-width {
		padding: 12px 24px
	}

	.header-main a {
		-webkit-transition: none !important;
		-moz-transition: none !important;
		-ms-transition: none !important;
		-o-transition: none !important;
		transition: none !important
	}

	.header-main ul {
		display: none;
		margin: 0
	}

	.header-main ul.header-space-reduced {
		margin-right: 0
	}

	.header-main ul.header-controls {
		display: block;
		position: absolute;
		right: 40px;
		top: 0
	}

	.header-main ul.header-controls.header-toggle-none {
		right: 0
	}

	.header-main ul.header-controls a.icon-search:hover {
		opacity: .6
	}

	.header-main .header-toggle {
		-webkit-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
		user-select: none;
		display: block;
		height: 40px;
		opacity: 1;
		padding: 10px;
		position: absolute;
		right: -10px;
		top: 0;
		width: 40px
	}

	.header-main .header-toggle svg {
		position: absolute
	}

	.header-main .header-toggle svg:last-child {
		opacity: 0
	}

	.header-main.active {
		border-bottom: none !important;
		height: 100%;
		position: fixed;
		z-index: 999
	}

	body.dark .header-main.active {
		background: #000;
		color: #fff
	}

	.header-main.active nav {
		height: 100%;
		overflow-y: scroll;
		padding-bottom: 0;
		padding-top: 12px;
		-webkit-overflow-scrolling: touch
	}

	.header-main.active nav>div {
		height: auto;
		margin-bottom: 64px
	}

	.header-main.active ul {
		text-align: left
	}

	.header-main.active ul.header-listed {
		display: block;
		float: none
	}

	.header-main.active ul.header-listed li {
		font-size: 20px;
		padding: 8px 0 0 0;
		width: 100%
	}

	.header-main.active ul.header-listed li a {
		opacity: 1
	}

	.header-main.active ul.header-listed li.submenu>ul {
		display: block;
		padding-left: 24px
	}

	.header-main.active ul.header-languages {
		display: block;
		padding: 28px 0 0 0
	}

	.header-main.active ul.header-languages li {
		font-size: 18px;
		padding: 0 8px
	}

	.header-main.active ul.header-languages li a,
	.header-main.active ul.header-languages li a:hover {
		opacity: .6
	}

	.header-main.active ul.header-languages li.active a {
		opacity: 1
	}

	.header-main.active ul.header-social {
		display: block;
		padding: 28px 0 0 0
	}

	.header-main.active ul.header-social li {
		padding: 0 20px 0 0
	}

	.header-main.active ul.header-social li a,
	.header-main.active ul.header-social li a:hover {
		opacity: 1
	}

	.header-main.active ul.header-buttons {
		display: block
	}

	.header-main.active ul.header-buttons li {
		padding: 16px 0 0 0;
		width: 100%
	}

	.header-main.active ul.header-buttons li:first-child {
		padding: 40px 0 0 0
	}

	.header-main.active ul.header-buttons li .button {
		font-size: 16px;
		line-height: 24px;
		opacity: 1
	}

	.header-main.active .header-space {
		display: block;
		padding-top: 40px;
		width: 100%
	}

	.header-main.active .header-toggle svg {
		opacity: 0
	}

	.header-main.active .header-toggle svg:last-child {
		opacity: 1
	}

	.header-main.active:not([class*="bg-"]) {
		background: #fff;
		color: #000
	}

	.header-main.header-fixed {
		position: fixed
	}

	body.dark .header-main.header-fixed {
		background: #000
	}

	body.dark .header-main.header-fixed.active {
		background: #000
	}

	.header-main.header-fixed:not([class*="bg-"]) {
		background: #fff
	}

	.header-main.header-fixed:not([class*="bg-"]).dark a:not(.button) {
		color: #000
	}

	body.dark .header-main.header-fixed:not([class*="bg-"]).dark a:not(.button) {
		color: #eee
	}

	.header-main.header-fixed:not([class*="bg-"]).active {
		background: #fff
	}
}
