:root {
	--color-white-1: #f9f9f9;
	--color-black-1: #0c152e;
	--color-black-2: #070a0f;
	--color-black-3: #1d1d1d;
	--color-gray-1: #eaf1f3;
	--color-gray-2: #d1e3e8;
	--color-gray-3: #b9c6c9;
	--color-gray-4: #878f91;
	--color-gray-5: #4a575a;
	--color-sky-1: #36c6e8;
	--color-sky-2: #36c6e8;
	--color-sky-3: #29afce;
	--color-yellow-1: #ffcd00;
	--color-yellow-2: #e5b900;
	--color-yellow-3: #c9a200;
	--color-green-1: #22f29e;
	--color-green-2: #17c97d;
	--color-green-3: #11a562;
	--color-red-1: #ff573b;
	--color-red-2: #e23a2d;
	--color-red-3: #ce251d;
	--color-purple-1: #8361ff;
	--color-purple-2: #6748f9;
	--color-purple-3: #533dea;
	--color-highlight: #28a9e8;
	--box-shadow: 0 0 2rem rgba(0,0,0,0.1);
	--box-shadow-hover: 0 0 2rem rgba(0,0,0,0.2);
}

* {
	margin: 0;
	padding: 0;
	border: none;
	outline: none;
	text-indent: 0;
	color: var(--color-black-2);
}

* * {
	background: transparent;
	line-height: inherit;
	font-size: inherit;
	font-family: inherit;
	font-weight: inherit;
	font-style: inherit;
	text-decoration: inherit;
	tab-size: inherit;
	-moz-tab-size: inherit;
	color: inherit;
}

html {
  font-weight: normal;
  font-style: normal;
  text-decoration: none;
  font-family: "Suisse Int'l";
  line-height: 1.4;
}

h1 {
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	font-size: 3rem;
	font-weight: 800;
	line-height: 1.1;
}

h2 {
	margin-top: 0.7em;
	margin-bottom: 0.7em;
	font-size: 2.3rem;
	font-weight: 800;
	line-height: 1.2;
}

h3 {
	font-size: 1.5rem;
	font-weight: 800;
	margin-top: 1em;
	margin-bottom: 1em;
	line-height: 1.2;
}

p {
	font-size: 1.1rem;
	margin-top: 1em;
	margin-bottom: 1em;
	color: var(--color-gray-5);
}

small {
	font-size: 0.8rem;
	color: var(--color-gray-5);
	margin: 1em 0;
}

small > * {
	font-size: 0.8rem;
}

ul, ol {
	font-size: 1.1rem;
	padding-left: 1em;
	margin-left: 1em;
	color: var(--color-gray-5);
}

ul.g-no-default-style {
	list-style-type: none;
	padding: 0;
	margin: 0;
}

form input {
	background-color: var(--color-gray-1);
	padding: 0.5rem 0.7rem;
	border-radius: 0.2rem;
	box-sizing: border-box;
	width: 100%;
}

form input:hover {
	background-color: var(--color-gray-2);
}

form input:focus {
	background-color: var(--color-white-1);
	outline: 0.15rem solid var(--color-highlight);
}

form input:disabled {
	pointer-events: none;
	background-color: var(--color-gray-3);
	color: var(--color-gray-4);
}

form fieldset {
	margin: 1em 0;
	width: 100%;
}

form fieldset label {
	display: block;
	font-size: 0.9rem;
	margin-bottom: 0.2em;
}

form div.g-flex > fieldset {
	margin-top: 0;
	margin-bottom: 0;
}

form div.g-flex {
	margin-top: 1em;
	margin-bottom: 1em;
}

form div.g-flex > fieldset:not(:last-of-type) {
	margin-right: 1em;
}

a {
	color: var(--color-purple-2);
}

a:hover:not(.g-button) {
	text-decoration: underline;
}

pre, code {
	font-family: "Suisse Int'l Mono";
	font-size: 0.9rem;
}

article {
	tab-size: 4;
	-moz-tab-size: 4;
}

img {
	display: block;
	width: 100%;
}

strong, b {
	font-weight: bold;
}

dt {
	font-size: 1.3rem;
	font-weight: 600;
}

dt * {
	font-size: 1.3rem;
}

dd {
	margin: 1em 0 1em 1em;
	font-size: 1.1rem;
	color: var(--color-gray-5);
}

abbr {
	text-decoration: dotted underline;
}

hr {
	height: 0.1rem;
	background-color: var(--color-black-2);
	margin: 1em 0;
}

i, em {
	font-style: italic;
}

.g-section-main-para {
	font-size: 1.2rem;
}

.g-flex {
	display: flex;
}

.g-side-by-side {
	display: grid;
	grid-template-columns: 3fr 2fr;
	align-items: center;
	gap: 2rem;
}

.g-justify-content-space-between {
	justify-content: space-between;
}

.g-align-items-center {
	align-items: center;
}

.g-block {
	display: block;
}

.g-button, button {
	text-decoration: none;
	padding: 1em 1.5em;
	text-transform: uppercase;
	border-radius: 0.3em;
	box-shadow: var(--box-shadow);
	color: var(--color-white-1);
	font-size: 0.9rem;
	transition: all 0.1s ease;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.g-button.red, button.red {
	border: 0.1rem solid var(--color-red-2);
	background-color: var(--color-red-2);
}

.g-button.blue, button.blue {
	border: 0.1rem solid var(--color-purple-2);
	background-color: var(--color-purple-2);
}

.g-button.blue-border, button.blue-border {
	background-color: transparent;
	border: 0.1rem solid var(--color-purple-2);
	color: var(--color-purple-2);
}

.g-button.white, button.white {
	background-color: transparent;
	border: 0.1rem solid var(--color-white-1);
}

.g-button.blue-border:hover, button.blue-border:hover {
	border-color: var(--color-purple-3);
	box-shadow: var(--box-shadow-hover);
}

.g-button.blue:hover, button.blue:hover {
	background-color: var(--color-purple-3);
	box-shadow: var(--box-shadow-hover);
}

.g-button.red:hover, button.red:hover {
	background-color: var(--color-red-3);
	box-shadow: var(--box-shadow);
}

.g-page-max-width {
	max-width: 76.875rem;
	margin: 0 auto;
	width: 100%;
	padding: 0 1.5rem;
	box-sizing: border-box;
}

.g-color-white {
	color: var(--color-white-1);
}

.g-color-gray-2 {
	color: var(--color-gray-2);
}

.g-color-purple {
	color: var(--color-purple-3);
}

.g-color-red {
	color: var(--color-red-1);
}

.g-color-green {
	color: var(--color-green-2);
}

.g-color-yellow {
	color: var(--color-yellow-2);
}

.g-bg-black-1 {
	background-color: var(--color-black-1);
}

.g-bg-black-2 {
	background-color: var(--color-black-2);
}

.g-bg-red {
	background-color: var(--color-red-1);
}

.g-bg-green {
	background-color: var(--color-green-2);
}

.g-bg-purple {
	background-color: var(--color-purple-2);
}

.g-bg-gray-1 {
	background-color: var(--color-gray-1);
}

.g-text-align-center {
	text-align: center;
}

.g-text-align-left, .g-text-align-left-desktop-center-mobile {
	text-align: left;
}

.g-buttons-container {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1em;
	max-width: 32rem;
	margin: 2em 0;
}

.g-buttons-container.center {
	margin: 2em auto;
}

.g-buttons-container.left-desktop-center-mobile {
	margin: 2em 0;
}

.g-cards {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(20rem, 1fr));
	gap: 2em;
}

.g-cards.no-link > div {
	padding: 1em;
	box-sizing: border-box;
	justify-content: flex-start;
}

.g-cards > div {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	background-color: #F6F9FC;
	box-shadow: 0.1rem 0.1rem 0.3rem 0.1rem #e8e8e8;
	height: 100%;
}

.g-cards > div > div {
	padding: 1em;
}

.g-cards dt {
	display: flex;
	align-items: center;
}

.g-cards dt > img {
	width: 1rem;
	margin-right: 1em;
	margin-bottom: 0.2em;
}

.g-cards dd {
	margin: 1em 0 0 0;
}

.g-cards > div > a {
	padding: 1em;
}

.g-no-section-margin-bottom {
	margin-bottom: 5rem;
}

.g-accordion > * {
	border-bottom: 0.1rem solid var(--color-gray-1);
	padding: 1.5em 0;
}

.g-accordion > div dd {
	margin: 0;
}

.g-accordion.toggle dt > label {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	cursor: pointer;
}

.g-accordion.toggle dt > label > img {
	width: 0.8rem;
	transition: transform 0.1s ease;
}

.g-accordion.toggle dt > label:hover > span {
	text-decoration: underline;
}

.g-accordion.toggle dd {
	margin-top: 1em;
}

.g-accordion.toggle dd, .g-accordion.toggle input[type="checkbox"] {
	display: none;
}

.g-accordion.toggle input[type="checkbox"]:checked ~ dd {
	display: block;
}

.g-accordion.toggle input[type="checkbox"]:checked + dt > label > img {
	transform: rotate(90deg);
}

.g-insight-type-blob {
	padding: 0.5em 0.8em;
	border-radius: 0.2em;
	text-transform: uppercase;
	color: var(--color-white-1);
	font-size: 0.7rem;
}

.g-insight-type-blob.announcement {
	background-color: #4f4f4fc7;
}

.g-insight-type-blob.case-study {
	background-color: #0f8650cf;
}

.g-insight-type-blob.press-release {
	background-color: #ce251dc2;
}

.g-insight-type-blob.webinar {
	background-color: #ffcd00a6;
}

.g-insight-type-blob.blog {
	background-color: #6748f9bf;
}

.g-banner-img {
	max-width: 30rem;
	margin: 0 auto;
}

.g-section-divide-padding {
	padding-top: 7rem;
	padding-bottom: 7rem;
}

.g-overflow-x-auto {
	overflow-x: auto;
}

.g-section-divide-padding > *:first-child, .g-side-by-side > div > *:first-child {
	margin-top: 0;
}

.g-section-divide-padding > *:last-child, .g-side-by-side > div > *:last-child  {
	margin-bottom: 0;
}

.g-section-divide-border-bottom {
	border-bottom: 0.1rem solid var(--color-gray-1);
}

.g-no-margin {
	margin: 0;
}

.g-margin-center {
	margin-left: auto;
	margin-right: auto;
}

.g-no-margin-top {
	margin-top: 0;
}

.g-no-margin-bottom {
	margin-bottom: 0;
}

*:target {
	scroll-margin-top: 7rem;
}
#mobile-menustate, nav input[type="checkbox"] {
	display: none;
}

html([data-scroll="0"]) nav {
	display: none;
}

nav {
	height: 7rem;
	position: fixed;
	top: 0;
	width: 100%;
	background-color: white;
	z-index: 1000;
	transition: background-color 0.2s ease;
}

nav.transparent {
	background-color: transparent;
}

nav.transparent #home > img:first-of-type {
	display: none;
}

nav + *.g-page-max-width {
	margin-top: 7rem;
}

nav:not(.transparent) > div > div {
	border-bottom: 0.1rem solid var(--color-black-2);
}

nav #mobile-menu-toggle {
	padding: 0.5em;
	cursor: pointer;
	display: none;
}

nav #mobile-menu-toggle > span {
	display: block;
	width: 1.3rem;
	height: 0.2rem;
	background-color: var(--color-black-2);
	transition: all 0.2s ease;
}

nav #mobile-menu-toggle > span:nth-of-type(2) {
	margin: 0.3em 0;
}

#mobile-menustate:checked + nav.transparent {
	background-color: white;
}

#mobile-menustate:checked + nav.transparent #home > img:last-of-type {
	display: none;
}

#mobile-menustate:checked + nav.transparent #home > img:first-of-type {
	display: block;
}

#mobile-menustate:checked + nav #mobile-menu-toggle > span:nth-of-type(1) {
	opacity: 0;
	background-color: var(--color-black-2);
}

#mobile-menustate:checked + nav #mobile-menu-toggle > span:nth-of-type(2) {
	position: relative;
	top: 0.04em;
	transform: rotate(-45deg);
	background-color: var(--color-black-2);
}

#mobile-menustate:checked + nav #mobile-menu-toggle > span:nth-of-type(3) {
	position: relative;
	top: -0.45em;
	transform: rotate(45deg);
	background-color: var(--color-black-2);
}

nav ul {
	list-style-type: none;
	padding-left: 0;
}

nav a {
	text-decoration: none;
	color: var(--color-black-2);
}

nav > div, nav > div > div {
	height: 100%;
}

nav > div > div {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

nav > div > div > ul {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

nav > div > div > ul > div:first-of-type {
	display: flex;
}

nav > div > div > ul > div > li {
	margin: 0 1em;
}

nav .nav-parent > label, nav #login {
	display: flex;
	align-items: center;
}

nav .nav-parent {
	position: relative;
	color: var(--color-black-2);
}

nav .nav-parent > ul {
	background-color: white;
	border: 0.08rem solid var(--color-gray-1);
	padding: 0.2em 0;
	display: none;
	position: absolute;
	left: -2rem;
	width: 15rem;
	border-radius: 0.2em;
}

nav .nav-parent > ul a {
	display: block;
	padding: 0.5em 0.7em;
}

nav .chevron-down, nav #login img {
	width: 1rem;
	margin-left: 0.5em;
}

nav #login {
	margin-right: 0;
}

nav.transparent > div > div > ul > div > li > label, nav.transparent > div > div > ul > div > li > a:not(.g-button) {
	color: var(--color-white-1);
}

nav.transparent #mobile-menu-toggle > span {
	background-color: var(--color-white-1);
}
@font-face {
	font-family: "Suisse Int'l";
	font-weight: 100;
	font-style: normal;
	src: url("/static/common/fonts/SuisseIntl-Ultralight.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l";
	font-weight: 100;
	font-style: italic;
	src: url("/static/common/fonts/SuisseIntl-UltralightItalic.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l";
	font-weight: 200;
	font-style: normal;
	src: url("/static/common/fonts/SuisseIntl-Thin.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l";
	font-weight: 200;
	font-style: italic;
	src: url("/static/common/fonts/SuisseIntl-ThinItalic.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l";
	font-weight: 300;
	font-style: normal;
	src: url("/static/common/fonts/SuisseIntl-Light.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l";
	font-weight: 300;
	font-style: italic;
	src: url("/static/common/fonts/SuisseIntl-LightItalic.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l";
	font-weight: 400;
	font-style: normal;
	src: url("/static/common/fonts/SuisseIntl-Regular.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l";
	font-weight: 400;
	font-style: italic;
	src: url("/static/common/fonts/SuisseIntl-RegularItalic.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l";
	font-weight: 500;
	font-style: normal;
	src: url("/static/common/fonts/SuisseIntl-Book.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l";
	font-weight: 500;
	font-style: italic;
	src: url("/static/common/fonts/SuisseIntl-BookItalic.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l";
	font-weight: 600;
	font-style: normal;
	src: url("/static/common/fonts/SuisseIntl-Medium.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l";
	font-weight: 600;
	font-style: italic;
	src: url("/static/common/fonts/SuisseIntl-MediumItalic.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l";
	font-weight: 700;
	font-style: normal;
	src: url("/static/common/fonts/SuisseIntl-SemiBold.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l";
	font-weight: 700;
	font-style: italic;
	src: url("/static/common/fonts/SuisseIntl-SemiBoldItalic.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l";
	font-weight: 800;
	font-style: normal;
	src: url("/static/common/fonts/SuisseIntl-Bold.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l";
	font-weight: 800;
	font-style: italic;
	src: url("/static/common/fonts/SuisseIntl-BoldItalic.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l";
	font-weight: 900;
	font-style: normal;
	src: url("/static/common/fonts/SuisseIntl-Black.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l";
	font-weight: 900;
	font-style: italic;
	src: url("/static/common/fonts/SuisseIntl-BlackItalic.ttf") format("truetype");
}


@font-face {
	font-family: "Suisse Int'l Mono";
	font-weight: 200;
	font-style: normal;
	src: url("/static/common/fonts/SuisseIntlMono-Thin.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l Mono";
	font-weight: 400;
	font-style: normal;
	src: url("/static/common/fonts/SuisseIntlMono-Regular.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l Mono";
	font-weight: 800;
	font-style: normal;
	src: url("/static/common/fonts/SuisseIntlMono-Bold.ttf") format("truetype");
}


@font-face {
	font-family: "Suisse Int'l Condensed";
	font-weight: 200;
	font-style: normal;
	src: url("/static/common/fonts/SuisseIntlCond-Thin.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l Condensed";
	font-weight: 200;
	font-style: italic;
	src: url("/static/common/fonts/SuisseIntlCond-ThinItalic.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l Condensed";
	font-weight: 300;
	font-style: normal;
	src: url("/static/common/fonts/SuisseIntlCond-Light.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l Condensed";
	font-weight: 300;
	font-style: italic;
	src: url("/static/common/fonts/SuisseIntlCond-LightItalic.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l Condensed";
	font-weight: 400;
	font-style: normal;
	src: url("/static/common/fonts/SuisseIntlCond-Regular.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l Condensed";
	font-weight: 400;
	font-style: italic;
	src: url("/static/common/fonts/SuisseIntlCond-RegularItalic.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l Condensed";
	font-weight: 600;
	font-style: normal;
	src: url("/static/common/fonts/SuisseIntlCond-Medium.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l Condensed";
	font-weight: 600;
	font-style: italic;
	src: url("/static/common/fonts/SuisseIntlCond-MediumItalic.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l Condensed";
	font-weight: 700;
	font-style: normal;
	src: url("/static/common/fonts/SuisseIntlCond-Semibold.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l Condensed";
	font-weight: 700;
	font-style: italic;
	src: url("/static/common/fonts/SuisseIntlCond-SemiboldItalic.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l Condensed";
	font-weight: 800;
	font-style: normal;
	src: url("/static/common/fonts/SuisseIntlCond-Bold.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Int'l Condensed";
	font-weight: 800;
	font-style: italic;
	src: url("/static/common/fonts/SuisseIntlCond-BoldItalic.ttf") format("truetype");
}


@font-face {
	font-family: "Suisse Works";
	font-weight: 400;
	font-style: normal;
	src: url("/static/common/fonts/SuisseWorks-Regular.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Works";
	font-weight: 400;
	font-style: italic;
	src: url("/static/common/fonts/SuisseWorks-RegularItalic.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Works";
	font-weight: 500;
	font-style: normal;
	src: url("/static/common/fonts/SuisseWorks-Book.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Works";
	font-weight: 500;
	font-style: italic;
	src: url("/static/common/fonts/SuisseWorks-BookItalic.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Works";
	font-weight: 600;
	font-style: normal;
	src: url("/static/common/fonts/SuisseWorks-Medium.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Works";
	font-weight: 600;
	font-style: italic;
	src: url("/static/common/fonts/SuisseWorks-MediumItalic.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Works";
	font-weight: 800;
	font-style: normal;
	src: url("/static/common/fonts/SuisseWorks-Bold.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Works";
	font-weight: 800;
	font-style: italic;
	src: url("/static/common/fonts/SuisseWorks-BoldItalic.ttf") format("truetype");
}


@font-face {
	font-family: "Suisse Sign";
	font-weight: 300;
	font-style: normal;
	src: url("/static/common/fonts/SuisseSign-Thin.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Sign";
	font-weight: 300;
	font-style: italic;
	src: url("/static/common/fonts/SuisseSign-ThinItalic.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Sign";
	font-weight: 400;
	font-style: normal;
	src: url("/static/common/fonts/SuisseSign-Regular.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Sign";
	font-weight: 400;
	font-style: italic;
	src: url("/static/common/fonts/SuisseSign-RegularItalic.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Sign";
	font-weight: 700;
	font-style: normal;
	src: url("/static/common/fonts/SuisseSign-SemiBold.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Sign";
	font-weight: 700;
	font-style: italic;
	src: url("/static/common/fonts/SuisseSign-SemiBoldItalic.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Sign";
	font-weight: 800;
	font-style: normal;
	src: url("/static/common/fonts/SuisseSign-Bold.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Sign";
	font-weight: 800;
	font-style: italic;
	src: url("/static/common/fonts/SuisseSign-BoldItalic.ttf") format("truetype");
}


@font-face {
	font-family: "Suisse Neue";
	font-weight: 300;
	font-style: normal;
	src: url("/static/common/fonts/SuisseNeue-Light.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Neue";
	font-weight: 300;
	font-style: italic;
	src: url("/static/common/fonts/SuisseNeue-LightItalic.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Neue";
	font-weight: 400;
	font-style: normal;
	src: url("/static/common/fonts/SuisseNeue-Regular.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Neue";
	font-weight: 400;
	font-style: italic;
	src: url("/static/common/fonts/SuisseNeue-RegularItalic.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Neue";
	font-weight: 600;
	font-style: normal;
	src: url("/static/common/fonts/SuisseNeue-Medium.ttf") format("truetype");
}

@font-face {
	font-family: "Suisse Neue";
	font-weight: 600;
	font-style: italic;
	src: url("/static/common/fonts/SuisseNeue-MediumItalic.ttf") format("truetype");
}
footer {
	padding-bottom: 1em;
}

footer #book-a-meeting > div.g-section-divide-border-bottom {
	border-color: #181e2a;
}

footer > section:nth-of-type(2) {
	display: grid;
	grid-template-columns: 4fr 7fr;
	gap: 3em;
}

footer > section:nth-of-type(2) > div:first-of-type > a {
	display: block;
	width: 12rem;
} 

footer > section:nth-of-type(2) > div:first-of-type > address {
	margin-top: 2rem;
}

footer > section:nth-of-type(2) > div:nth-of-type(2) {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(8rem, 1fr));
	gap: 2em;
}

footer > section:nth-of-type(2) > div:nth-of-type(2) h3 {
	font-size: 0.8rem;
	color: var(--color-white-1);
	margin-top: 0;
	text-transform: uppercase;
}

footer > section:nth-of-type(2) > div:nth-of-type(2) h3 + ul > li {
	margin: 0.7em 0;
}

footer > section:nth-of-type(2) > div:nth-of-type(3) .g-button.blue {
	margin-top: 1em;
}

footer > section ul li, footer > section ul li > a {
	color: var(--color-gray-2);
	font-size: 0.8rem;
}

footer > section:nth-of-type(2) > div:nth-of-type(3) > p {
	margin-top: 2em;
	margin-bottom: 0;
}

footer > section:last-of-type #social-icons-container a {
	width: 1.5rem;
	margin-left: 1em;
	margin-bottom: 0.3em;
}

footer > section:last-of-type ul > div:first-of-type li {
	margin-right: 1em;
}
@media (min-width: 79em) {
	nav .nav-parent:hover > ul {
		display: block;
	}
	
	nav .nav-parent:hover > label {
		cursor: pointer;
	}
}

@media (max-width: 78.99em) {
	nav.transparent > div > div > ul > div > li > label, nav.transparent > div > div > ul > div > li > a:not(.g-button) {
		color: var(--color-black-2);
	}
	
	nav {
		height: 5rem;
	}
	
	nav + *.g-page-max-width {
		margin-top: 5rem;
	}
	
	nav #home > img {
		width: 10em;
	}
	
	nav > div > div > ul {
		display: none;
		background-color: white;
		position: absolute;
		top: 5rem;
		width: 100%;
		left: 0;
		height: calc(100vh - 5rem);
	}
	
	nav #mobile-menu-toggle {
		display: block;
	}
	
	#mobile-menustate:checked + nav {
		background-color: white;
	}
	
	#mobile-menustate:checked + nav #home > .desktop {
		display: none;
	}
	
	#mobile-menustate:checked + nav #home > .mobile {
		display: block;
	}
	
	#mobile-menustate:checked + nav > div > div > ul {
		display: block;
	}
	
	nav > div > div > ul > div:first-of-type {
		display: initial;
	}
	
	nav > div > div > ul > div > li {
		margin: 0;
	}
	
	nav .nav-parent > input[type="checkbox"]:checked ~ ul {
		display: block;
	}
	
	nav .nav-parent > ul {
		position: initial;
		background-color: initial;
		transform: none;
		padding: 0;
		width: initial;
		border-radius: initial;
		border: none;
		margin-top: 0.5em;
	}
	
	nav .nav-parent > ul li {
		padding: 0;
		border-bottom: none;
	}
	
	nav ul li {
		padding: 1em 2em;
		border-bottom: 0.08rem solid var(--color-gray-1);
	}
	
	nav #login {
		margin-left: 0;
	}
	
	.t-doc > aside {
		top: 6rem;
	}
	
	*:target {
		scroll-margin-top: 5rem;
	}
}

@media (max-width: 63em) {
	p, ul, ol, dd {
		font-size: 1rem;
	}
	
	h1 {
		font-size: 2.5rem;
	}
	
	h2 {
		font-size: 1.8rem;
	}
	
	h3 {
		font-size: 1.4rem;
	}
	
	footer > section:nth-of-type(2) {
		grid-template-columns: initial;
	}
	
	#p-front header > #header-content > h1 {
		font-size: 2.6rem;
	}
	
	#p-front header > #header-content > p {
		font-size: 1.2rem;
	}
	
	#p-careers header {
		padding-top: 8rem;
	}
	
	.t-doc > aside {
		display: none;
	}
	
	.t-doc > main {
		width: 100%;
	}
	
	.g-button, button, form fieldset label {
		font-size: 0.8rem;
	}
	
	.g-section-main-para, dt, dt * {
		font-size: 1.1rem;
	}
	
	.g-section-divide-padding {
		padding-top: 5rem;
		padding-bottom: 5rem;
	}
	
	.g-no-section-margin-bottom {
		margin-bottom: 3rem;
	}
	
	.g-side-by-side {
		grid-template-columns: initial;
	}
	
	.g-text-align-left-desktop-center-mobile {
		text-align: center;
	}
}

@media (max-width: 42em) {
	#p-insights #articles li > a {
		grid-template-columns: initial;
		gap: initial;
	}
}

@media (max-width: 33em) {
	.g-page-max-width {
		padding-left: 1rem;
		padding-right: 1rem;
	}
	
	.g-text-align-center, .g-text-align-left-desktop-center-mobile {
		text-align: initial;
	}
	
	.g-buttons-container {
		grid-template-columns: initial;
	}
}
#p-front header {
	height: 100vh;
	position: relative;
	display: flex;
	align-items: center;
}

#p-front header > #video-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #0c152ed9;
	z-index: -1;
}

#p-front header > video {
	position: absolute;
	object-fit: cover;
	width: 100%;
	height: 100%;
	z-index: -2;
}

#p-front header > #header-content > h1 {
	font-size: 4rem;
	margin: 0;
}

#p-front header > #header-content > p {
	max-width: 55rem;
	margin-top: 1em;
	margin-bottom: 2em;
	font-size: 1.5rem;
}

#p-front .g-cards {
	margin-top: 2em;
}

#p-front #code-section {
	box-shadow: var(--box-shadow);
	padding: 0.7em;
	border-radius: 0.3rem;
	width: 100%;
	max-width: 30rem;
	box-sizing: border-box;
	margin: 0 auto;
}

#p-front #code-section > div {
	background-color: var(--color-purple-2);
	border-radius: 0.3rem;
	padding: 0.3em 0.5em;
	display: flex;
	align-items: center;
}

#p-front #code-section > div > img {
	width: 0.9rem;
	margin-right: 0.5em;
}

#p-front #code-section pre {
	counter-reset: line;
	padding: 1em 0;
}

#p-front #code-section pre > span::before {
	counter-increment: line;
	content: counter(line);
	display: inline-block;
	min-width: 2rem;
	color: var(--color-gray-1);
}

#p-front #popup-container {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #0000001c;
	animation-name: show-overlay;
	animation-duration: 0.5s;
	animation-delay: 0.2s;
	animation-fill-mode: forwards;
	animation-timing-function: ease;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	z-index: 1001;
}

#p-front #popup-container > div {
	background-color: white;
	box-shadow: 0rem 0.2rem 1rem #0000003d;
	box-sizing: border-box;
	padding: 2.5rem;
	border-radius: 0.3rem;
	opacity: 0;
	animation-name: show-overlay;
	animation-duration: 0.4s;
	animation-delay: 0.7s;
	animation-fill-mode: forwards;
	animation-timing-function: ease;
	max-width: 35rem;
}

#p-front #popup-container > div > h3:first-of-type {
	margin-top: 0;
}

@keyframes show-overlay {
	0% {
		opacity: 0;
	}
	
	100% {
		opacity: 1;
	}
}
	
#p-products .g-cards.no-link > div:target {
	background-color: #E5F2FF;
	border: 0.1rem solid #CBE5FF;
}
#p-academic-research-lab #slack-logo {
	max-width: 25rem;
	margin: 2em auto;
}
#p-careers header {
	padding-top: 14rem;
	background-image: url("/static/page/about/careers/careers-header-img.jpg");
	background-size: cover;
	position: relative;
	background-position-y: 30%;
	background-position-x: center;
	background-repeat: no-repeat;
}

#p-careers header::after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #00000085;
}

#p-careers #header-content {
	position: relative;
	z-index: 1;
}
#p-introduction .t-doc #esg-categories > ul {
	display: flex;
	flex-wrap: wrap;
}

#p-introduction .t-doc #esg-categories > ul > li {
	width: 9rem;
	margin: 0.5em;
}

#p-introduction .t-doc #esg-categories > ul > li > small {
	text-align: center;
	display: block;
	margin-top: 1em;
}

#p-introduction .t-doc #esg-categories-legends {
	margin-bottom: 1em;
}

#p-introduction .t-doc #esg-categories-legends > small:nth-of-type(2) {
	margin: 0 1em;
}

#p-introduction .t-doc #score-guide {
	height: 1.6rem;
	display: flex;
	margin: 2em auto 7em auto;
	width: 90%;
}

#p-introduction .t-doc #score-guide > div:not(.label-container) {
	width: 25%;
	border-right: 0.12rem solid #000000b3;
	display: flex;
	justify-content: space-evenly;
}

#p-introduction .t-doc #score-guide > div:nth-of-type(2) {
	border-left: 0.12rem solid #000000b3;
}

#p-introduction .t-doc #score-guide > div > div {
	border-right: 0.08rem solid #000000b3;
	height: 0.6rem;
}

#p-introduction .t-doc #score-guide > div > div:nth-of-type(5) {
	height: 0.9rem;
}

#p-introduction .t-doc #score-guide > .label-container {
	position: relative;
	display: flex;
	justify-content: center;
}

#p-introduction .t-doc #score-guide > .label-container > small {
	position: absolute;
	text-align: center;
	top: 1.8rem;
}
#p-team .grid {
	display: grid;
	gap: 2em;
}

#p-team .grid.team-container {
	grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
}

#p-team .grid.team-container figcaption > a.g-block {
	width: 1.5rem;
}

#p-team .grid#advisors {
	grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr))
}
#p-insights #articles li > a{
	display: grid;
	grid-template-columns: 250px auto;
	gap: 2em;
	align-items: center;
}

#p-insights #articles li > a > div:first-of-type {
	position: relative;
}

#p-insights #articles li > a:hover {
	text-decoration: none;
}

#p-insights #articles li > a:hover h3 {
	text-decoration: underline;
}

#p-insights #articles .g-insight-type-blob {
	position: absolute;
	left: 0.5rem;
	top: 0.5rem;
}

#p-insights #articles li > a > div:first-of-type > img {
	border-radius: 0.5rem;
	box-shadow: var(--box-shadow);
}

#p-insights #articles li h3 {
	color: var(--color-black-2);
}

#p-insights #articles li p {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
}
.t-insight .g-insight-type-blob {
	font-size: 0.8rem;
	padding: 0.7em 1.3em;
}

.t-insight #banner-img {
	border: 0.01rem solid var(--color-gray-2);
	border-radius: 0.2em;
}

.t-insight #banner-img + p {
	margin-bottom: 3em;
}

.t-insight #read-container > img {
	width: 1.2rem;
	margin-right: 0.5em;
	margin-bottom: 0.1em;
}

.t-insight #share-container > a {
	width: 2.5rem;
	margin: 0 0.3em;
	border-radius: 0.2em;
	overflow: hidden;
}

.t-insight #share-container > a:last-of-type {
	margin-right: 0;
}

.t-insight section:not(#header) {
	margin: 5rem 0;
}

.t-insight #insight-footer {
	margin-top: 7em;
	padding: 1em;
	border: 0.08rem solid var(--color-gray-2);
	border-radius: 0.2em;
}

.t-insight #insight-footer ul {
	color: var(--color-black-2);
}

.t-insight #insight-footer ul > li:not(:first-of-type), .t-insight #insight-footer ul > li > address {
	display: inline;
}

.t-insight #insight-footer ul > li:not(:first-of-type) + li::before {
	content: "";
	width: 0.4rem;
	height: 0.4rem;
	display: inline-block;
	background-color: var(--color-black-2);
	margin: 0 0.5em 0.13em;
	border-radius: 50%;
}

.t-insight #insight-footer > img {
	width: 2rem;
	margin-right: 1em;
}

.t-insight section figure {
	margin: 3em auto;
}

.t-insight section figure.small {
	max-width: 40rem;
}

.t-insight section figure.medium {
	max-width: 60rem;
}

.t-insight section figure > figcaption {
	text-align: center;
	font-family: "Suisse Neue";
	font-style: italic;
	font-size: 0.9rem;
	margin-top: 1em;
}

.t-insight section figure > figcaption * {
	font-size: 0.9rem;
}

.t-insight section figure > table {
	border-collapse: collapse;
	width: 100%;
	text-align: center;
	color: var(--color-gray-5);
	border: 0.05rem solid var(--color-gray-1);
}

.t-insight section figure > table.no-border {
	border: none;
}

.t-insight section figure > table > thead {
	background-color: var(--color-purple-2);
}

.t-insight section figure > table > thead.no-bg {
	background-color: initial;
}

.t-insight section figure > table > thead > tr > th {
	padding: 0.7em 0.5em;
	font-weight: bold;
	color: var(--color-white-1);
}

.t-insight section figure > table > tbody > tr:nth-child(2n) {
	background-color: var(--color-gray-1);
}

.t-insight section figure > table > tbody > tr > td {
	padding: 0.5em;
}

.t-insight section figure > table > tbody > tr > td.border-right {
	border-right: 0.05rem solid var(--color-gray-2);
}

.t-insight section .math {
	font-family: "Suisse Neue";
	margin-bottom: 2em;
}

.t-insight iframe {
	width: 100%;
	height: 80vh;
}
.t-doc > aside {
	position: sticky;
	height: 30rem;
	top: 8rem;
}

.t-doc > aside > .g-accordion.toggle {
	margin-right: 2em;
	width: 13rem;
}

.t-doc > aside > .g-accordion.toggle > div {
	padding: 0;
	border-bottom: none;
}

.t-doc > aside > .g-accordion.toggle dt > label > span {
	font-size: 1rem;
}

.t-doc > aside > .g-accordion.toggle dt > label > img {
	width: 0.6rem;
}

.t-doc > aside > .g-accordion.toggle dd a {
	font-size: 1rem;
}

.t-doc > main {
	width: calc(100% - 15rem);
}

.t-doc > main > h1 {
	margin-top: 0;
}

.t-doc > main > section {
	margin: 3rem 0;
}

.t-doc .next-page {
	justify-content: flex-end;
}

.t-doc pre {
	padding: 1em;
}

.t-doc .code-border {
	border-radius: 0.2rem;
	overflow: hidden;
}

.t-doc pre.wrap-text {
	overflow-x: auto;
	white-space: pre-wrap;
	white-space: -moz-pre-wrap;
	white-space: -pre-wrap;
	white-space: -o-pre-wrap;
	word-wrap: break-word;
}

.t-doc .code-section {
	margin: 1em 0;
}

.t-doc .code-section > small {
	padding: 0.5em 1em;
	display: block;
	background-color: var(--color-gray-4);
	color: var(--color-white-1);
}

.t-doc .code-section.overflow-auto > div {
	padding: 1em;
}

.t-doc .code-section.overflow-auto > div > pre {
	padding: 0;
	overflow-x: auto;
}
