@charset "UTF-8"; html {line-height: 1.15; -webkit-text-size-adjust: 100%}
body {margin: 0}
main {display: block}
h1 {font-size: 2em; margin: 0.67em 0}
hr {box-sizing: content-box; height: 0; overflow: visible}
pre {font-family: monospace, monospace; font-size: 1em}
a {background-color: transparent}
abbr[title] {border-bottom: none; text-decoration: underline; text-decoration: underline dotted}
b, strong {font-weight: bolder}
code, kbd, samp {font-family: monospace, monospace; font-size: 1em}
small {font-size: 80%}
sub, sup {font-size: 75%; line-height: 0; position: relative; vertical-align: baseline}
sub {bottom: -0.25em}
sup {top: -0.5em}
img {border-style: none}
button, input, optgroup, select, textarea {font-family: inherit; font-size: 100%; line-height: 1.15; margin: 0}
button, input {overflow: visible}
button, select {text-transform: none}
button, [type="button"], [type="reset"], [type="submit"] {-webkit-appearance: button}
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {border-style: none; padding: 0}
button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {outline: 1px dotted ButtonText}
fieldset {padding: 0.35em 0.75em 0.625em}
legend {box-sizing: border-box; color: inherit; display: table; max-width: 100%; padding: 0; white-space: normal}
progress {vertical-align: baseline}
textarea {overflow: auto}
[type="checkbox"], [type="radio"] {box-sizing: border-box; padding: 0}
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {height: auto}
[type="search"] {-webkit-appearance: textfield; outline-offset: -2px}
[type="search"]::-webkit-search-decoration {-webkit-appearance: none}
::-webkit-file-upload-button {-webkit-appearance: button; font: inherit}
details {display: block}
summary {display: list-item}
template {display: none}
[hidden] {display: none}
:root {--space: 7.14vw; --black: #111111; --gray: #363535; --graySS: #111111; --grayS: #201F1F; --grayT: #8F8F8F; --grayTT: #D2D2D2; --grayTTT: #F9F9F9; --white: #FFFFFF; --graySS-rgb: 17,17,17; --grayS-rgb: 32,31,31; --gray-rgb: 54,53,53; --white-rgb: 255, 255, 255; --black-rgb: 17,17,17; --blue: #588DFF; --blueS: #2B467F; --blue-rgb: 88,141,255; --gold: #E3C069; --gold-rgb: 227,192,105; --green: #47E1A9; --greenS: #237054; --green-rgb: 71,225,169; --orange: #FE744E; --orangeS: #7E3926; --orange-rgb: 254,116,78; --pink: #E146C8; --pinkS: #702263; --pink-rgb: 225,70,200; --purple: #9344E2; --purpleS: #492170; --purple-rgb: 147,68,226; --gold-text-opacity: 0.5}
:root.theme-light {--black: #FFFFFF; --grayS: #F9F9F9; --graySS: #F0F0F0; --grayTT: #201F1F; --grayTTT: #111111; --white: #111111; --black-rgb: 255,255,255; --grayS-rgb: 249,249,249; --graySS-rgb: 249,249,249; --grayTT-rgb: 32,31,31; --grayTTT-rgb: 17,17,17; --white-rgb: 17,17,17; --gold-text-opacity: 0.85}
@media (min-width: 95em) {:root {--space: 5.6rem}
}
@font-face {font-family: 'Source Sans Pro'; src: url("sourcesanspro-regular.woff2") format("woff2"), url("sourcesanspro-regular.woff") format("woff"); font-weight: normal; font-style: normal}
@font-face {font-family: 'Source Sans Pro'; src: url("sourcesanspro-bold.woff2") format("woff2"), url("sourcesanspro-bold.woff") format("woff"); font-weight: bold; font-style: normal}
@font-face {font-family: 'Source Sans Pro'; src: url("sourcesanspro-italic.woff2") format("woff2"), url("sourcesanspro-italic.woff") format("woff"); font-weight: normal; font-style: italic}
@font-face {font-family: 'Source Code Pro'; src: url("sourcecodepro-regular.woff2") format("woff2"), url("sourcecodepro-regular.woff") format("woff"); font-weight: normal; font-style: normal}
@font-face {font-family: 'Quase Headline'; src: url("QuaseHeadline-Black.woff2") format("woff2"), url("QuaseHeadline-Black.woff") format("woff"); font-weight: bold; font-style: normal}
html {background: var(--grayS); color: var(--grayTT); font-size: 16px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-rendering: optimizeLegibility}
@media (min-width: 60em) {html {font-size: 18px}
}
@media (min-width: 95em) {html {font-size: 20px}
}
body {font: normal 100%/1.6rem "Source Sans Pro", sans-serif; margin: 0; overflow-anchor: none}
@media (prefers-reduced-motion: reduce) {* {animation: none !important; transition: none !important}
}
[data-whatintent='mouse'] *:focus {outline: none}
hr {background: rgba(var(--white-rgb), 0.3); border: 0; height: 1px; margin: 0}
img, svg {display: block; max-width: 100%}
table {border-collapse: collapse; border-spacing: 0; width: 100%}
td {padding: 0.8rem 0.4rem}
th {line-height: 1.2rem; font-size: 0.8706em; font-weight: bold; padding: 0.4rem; text-align: left}
tr {border-bottom: 1px solid rgba(var(--white-rgb), 0.3)}
tr > td:first-child {font-weight: bold}
a {color: var(--grayT); text-decoration: underline}
a:hover, a:focus {color: var(--white)}
a, button {transition: 250ms opacity cubic-bezier(0.23, 1, 0.32, 1)}
p {margin: 0 0 1.6rem}
@media (min-width: 50em) {p {max-width: 36em}
}
.ad {align-items: center; display: flex; justify-content: space-between; min-height: 100px}
.adIframe, .adIframe div, .adIframe iframe {height: 208px !important; width: 100% !important; max-width: 750px !important}
@media (min-width: 32.375em) {.adIframe, .adIframe div, .adIframe iframe {height: 100px !important; margin: 0}
}
.adFooterIframe, .adFooterIframe div, .adFooterIframe iframe {height: 250px !important; width: 100% !important; max-width: 300px !important}
@media (min-width: 22em) {.adFooterIframe, .adFooterIframe div, .adFooterIframe iframe {height: 250px !important; margin: 0; width: 300px !important}
}
.ad-applause {color: var(--grayT); display: none; font-size: 0.6599em; font-weight: bold; letter-spacing: 0.1em; line-height: 2rem; text-transform: uppercase; white-space: nowrap}
@media (min-width: 75em) {.ad-applause {display: block; margin-left: auto}
}
.announcement {transition: all 0.3s; display: block; background: var(--blue); color: var(--white); text-align: center; text-decoration: none}
.announcement:hover {color: var(--black)}
.attention {box-sizing: border-box; display: flex; min-height: calc(100vh - 4.8rem); padding: 4rem 0}
.attention--onboard {background: url("/assets/backgrounds/welcome.svg") center no-repeat; background-size: cover; min-height: 100vh}
.attention--judge {padding: 8rem 0}
.attention-container {grid-column-end: span 12; grid-row: 1; position: relative; z-index: 10}
.attention-container textarea {background: var(--grayS); max-width: 41.375em}
@media (min-width: 35em) {.attention-container {grid-column: 2 / span 10}
}
@media (min-width: 60em) {.attention-container p, .attention-container ul {font-size: 1.1487em}
}
@media (min-width: 75em) {.attention-container p, .attention-container ul {font-size: 1.3195em; line-height: 2rem; max-width: 26em}
}
.attention-container-action {margin-top: 2.8rem; max-width: 10rem; position: relative}
.attention-container-action::after {background: rgba(var(--white-rgb), 0.3); content: ''; display: none; height: 2px; left: calc(var(--space) * -3); margin-top: -1px; position: absolute; top: 50%; width: calc(var(--space) * 2.5)}
@media (min-width: 35em) {.attention-container-action::after {display: block}
}
@media (min-width: 95em) {.attention-container-action::after {left: calc((100vw - 65rem) / -2 - (var(--space) * 2)); width: calc((100vw - 65rem) / 2 + (var(--space) * 1.5))}
}
.attention-container-action--withLink {max-width: none}
@media (min-width: 35em) {.attention-container-content {margin-left: var(--space)}
}
.attention-media {display: none; grid-column: 8 / span 5; grid-row: 1}
@media (min-width: 50em) {.attention-media {display: block}
}
.attention-media--L {grid-column: 6 / span 7}
.attention-media--judge {align-self: start}
.avatar {border: 2px solid var(--green); border-radius: 50%; box-sizing: border-box; display: inline-block; flex-shrink: 0; height: 2rem; padding: 2px; position: relative; width: 2rem}
.avatar::after {background: var(--greenS); border: 2px solid var(--green); border-radius: 50%; bottom: 0; box-sizing: border-box; content: ''; height: 0.4rem; left: 50%; position: absolute; transform: translate(-50%, 50%); width: 0.4rem}
.avatar--level2 {border-color: var(--blue)}
.avatar--level2::after {background: var(--blueS); border-color: var(--blue)}
.avatar--level3 {border-color: var(--purple)}
.avatar--level3::after {background: var(--purpleS); border-color: var(--purple)}
.avatar--level4 {border-color: var(--pink)}
.avatar--level4::after {background: var(--pinkS); border-color: var(--pink)}
.avatar--level5 {border-color: var(--orange)}
.avatar--level5::after {background: var(--orangeS); border-color: var(--orange)}
.avatar--leveljudge {border-color: transparent}
.avatar--leveljudge::after {display: none}
.avatar--L {border-width: 0.2rem; height: 6rem; padding: 0.3rem; width: 6rem}
.avatar--L::after {border-width: 0.2rem; height: 1.4rem; width: 1.4rem}
.avatar--L .avatar-default {font-size: 1.7511em}
.avatar--S {font-size: 0.7579em; height: 1.6rem; width: 1.6rem}
.avatar--XL {border-width: 0.2rem; height: 6rem; padding: 0.3rem; width: 6rem}
.avatar--XL::after {border-width: 0.2rem; height: 1.4rem; width: 1.4rem}
.avatar--XL .avatar-default {font-size: 1.7511em}
@media (min-width: 75em) {.avatar--XL {border-width: 0.3rem; height: 8.4rem; padding: 0.4rem; width: 8.4rem}
.avatar--XL::after {border-width: 0.3rem; height: 1.5rem; width: 1.5rem}
.avatar--XL .avatar-default {font-size: 2em}
}
.avatar-default {align-items: center; background: var(--gold); border-radius: 50%; color: var(--grayS); font-size: 0.7579em; height: 100%; display: flex; justify-content: center; width: 100%}
.avatar-media {border-radius: 50%; display: block; height: 100%; width: 100%}
.banner {-webkit-clip-path: polygon(0% 2rem, 2rem 0%, 100% 0%, 100% 0%, 100% 100%, 100% 100%, 0% 100%, 0 100%); clip-path: polygon(0% 2rem, 2rem 0%, 100% 0%, 100% 0%, 100% 100%, 100% 100%, 0% 100%, 0 100%); background: var(--graySS); box-sizing: border-box; margin: 0 -1.2rem; padding: 2rem 1.2rem}
@media (min-width: 35em) {.banner {margin-left: -2rem; margin-right: -2rem; padding-left: 2rem; padding-right: 2rem}
}
@media (min-width: 60em) {.banner {margin-left: calc(var(--space) * -0.5); margin-right: calc(var(--space) * -0.5); padding-left: calc(var(--space) * 0.5); padding-right: calc(var(--space) * 0.5)}
}
.banner--L {-webkit-clip-path: polygon(0% 2rem, 2rem 0%, 100% 0%, 100% 0%, 100% 100%, 100% 100%, 0% 100%, 0 100%); clip-path: polygon(0% 2rem, 2rem 0%, 100% 0%, 100% 0%, 100% 100%, 100% 100%, 0% 100%, 0 100%); background: var(--gold); color: var(--grayS); position: relative}
.banner--L::after {background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 27 27" xmlns="http://www.w3.org/2000/svg"><path fill="%23000000" opacity="0.2" d="M5 4h4v1H5v4H4V5H0V4h4V0h1z"/></svg>'); background-repeat: repeat; background-size: 1.6rem 1.6rem; bottom: 0; content: ''; display: block; height: 2.8rem; left: 0; position: absolute; right: 0}
.banner--L .banner-content {grid-column: span 12; position: relative; z-index: 10}
.banner--L .banner-media {grid-column: span 12}
.banner--L .banner-media > * {max-height: 10rem}
@media (min-width: 30em) {.banner--L .banner-content {grid-column: span 8}
.banner--L .banner-media {grid-column: span 4}
.banner--L .banner-media > * {max-height: 34rem}
}
@media (min-width: 50em) {.banner--L {padding-bottom: 4rem}
}
@media (min-width: 60em) {.banner--L {-webkit-clip-path: polygon(0% 4rem, 4rem 0%, 100% 0%, 100% 0%, 100% 100%, 100% 100%, 0% 100%, 0 100%); clip-path: polygon(0% 4rem, 4rem 0%, 100% 0%, 100% 0%, 100% 100%, 100% 100%, 0% 100%, 0 100%)}
}
@media (min-width: 75em) {.banner--L .banner-content {grid-column: span 6}
.banner--L .banner-media {grid-column: span 6}
}
.banner--S {-webkit-clip-path: polygon(0% 0%, 0% 0%, calc(100% - 4rem) 0%, 100% 4rem, 100% 100%, 100% 100%, 0% 100%, 0 100%); clip-path: polygon(0% 0%, 0% 0%, calc(100% - 4rem) 0%, 100% 4rem, 100% 100%, 100% 100%, 0% 100%, 0 100%); border-bottom: 0.2rem solid var(--gold); margin: 0}
.banner--S .banner-content {grid-column: span 12}
.banner--S .banner-media {align-self: start; grid-column: 4 / span 6}
@media (min-width: 35em) {.banner--S .banner-media {grid-column: 5 / span 4}
}
@media (min-width: 50em) {.banner--S .banner-content {grid-column: span 9}
.banner--S .banner-media {align-self: inherit; grid-column: 1 / span 3}
}
.banner-content {grid-column: span 12}
@media (min-width: 25em) {.banner-content {grid-column: span 9}
}
@media (min-width: 35em) {.banner-content p {font-size: 1.1487em}
}
.banner-media {grid-column: span 12}
.banner-media > * {max-height: 10rem}
@media (min-width: 25em) {.banner-media {grid-column: span 3}
.banner-media > * {max-height: 14rem}
}
.bucket {align-items: center; display: flex}
.bucket--spacing > * + * {margin-left: 0.8rem}
.bucket--start {align-items: start}
.button {background: var(--gold); border: 2px solid transparent; border-radius: 0.15rem; box-sizing: border-box; color: var(--grayS); cursor: pointer; display: inline-block; flex-shrink: 0; font-size: 0.7579em; font-weight: bold; letter-spacing: 0.1em; line-height: 1.2rem; padding: calc(0.4rem - 2px) 0.4rem; text-align: center; text-decoration: none; text-transform: uppercase; white-space: nowrap; width: 100%}
.button:hover, .button:focus {color: var(--grayS); opacity: 0.8}
@media (min-width: 50em) {.button {padding-left: 0.8rem; padding-right: 0.8rem; width: auto}
}
.button:disabled {cursor: auto; opacity: 0.6}
.button--block {display: block}
@media (min-width: 50em) {.button--block {width: 100%}
}
@media (min-width: 50em) {.button--minWidth {min-width: 10rem}
}
.button--L {align-items: center; display: inline-flex; justify-content: center; padding-bottom: calc(0.5rem - 2px); padding-top: calc(0.5rem - 2px)}
.button--L:hover .button-action-icon, .button--L:focus .button-action-icon {transform: rotate(45deg)}
.button--auto {width: auto}
.button--destructive {background: var(--orange); color: var(--white)}
.button--destructive:hover, .button--destructive:focus {color: var(--white)}
.button--destructiveFocus:hover, .button--destructiveFocus:focus {background: var(--orange); color: var(--white)}
.button--iconOnly {padding: 0.4rem; font-size: 1.1487em; width: auto}
.button--report {background: var(--grayS); border-color: rgba(var(--white-rgb), 0.3); border-width: 1px; color: var(--grayT); font-weight: normal; letter-spacing: 0; text-transform: none}
.button--report:hover, .button--report:focus {border-color: var(--white); color: var(--white); opacity: 1}
.button--secondary {background: var(--white)}
.button--tertiary {background: transparent; border-color: var(--gold); color: var(--white)}
.button--tertiary:hover, .button--tertiary:focus {color: var(--white)}
.button-action {border-left: 2px solid currentColor; display: block; flex-shrink: 0; margin-left: 0.8rem; padding: 0.1rem 0 0.1rem 0.8rem}
.button-action-icon {transition: 250ms transform cubic-bezier(0.23, 1, 0.32, 1)}
.button-icon {margin-right: 0.2rem}
.button-icon--lone {margin-right: 0}
.button-reveal {display: none}
@media (min-width: 50em) {.button-reveal {display: inline}
}
.buttonCircle {align-items: center; background: transparent; border: 2px solid var(--white); border-radius: 50%; box-sizing: border-box; color: var(--white); cursor: pointer; display: inline-flex; height: 2.4rem; font-weight: bold; justify-content: center; opacity: 0.5; padding: 0; position: relative; transition: 250ms border-color cubic-bezier(0.23, 1, 0.32, 1), 250ms opacity cubic-bezier(0.23, 1, 0.32, 1); width: 2.4rem}
.buttonCircle:hover, .buttonCircle:focus {border-color: var(--gold); opacity: 1}
.buttonCircle:hover .buttonCircle-tooltip, .buttonCircle:focus .buttonCircle-tooltip {display: block}
.buttonCircle--secondary {background: var(--gold); border-color: transparent; color: var(--grayS); opacity: 1}
.buttonCircle--secondary:hover, .buttonCircle--secondary:focus {background-color: rgba(var(--gold-rgb), 0.8); border-color: transparent; color: var(--grayS)}
.buttonCircle--grayTT {background-color: transparent; border-color: var(--grayTT); color: var(--grayTT); opacity: 1}
.buttonCircle--grayTT:hover, .buttonCircle--grayTT:focus {border-color: var(--gold); color: var(--gold)}
.buttonCircle--shadow {box-shadow: 0 2px 4px rgba(var(--black-rgb, 0.5))}
.buttonCircle--S {height: 1.8rem; width: 1.8rem}
.buttonCircle--S .buttonCircle-tooltip {bottom: 2.2rem}
.buttonCircle-tooltip {background: var(--white); border-radius: 0.15rem; bottom: 2.8rem; color: var(--grayS); display: none; font-size: 0.7579em; font-weight: bold; line-height: 1.2rem; left: 50%; padding: 0.2rem 1.2rem; position: absolute; transform: translateX(-50%); white-space: nowrap}
.buttonCircle-tooltip::after {border-left: 0.2rem solid transparent; border-right: 0.2rem solid transparent; border-top: 0.3rem solid var(--white); content: ''; height: 0; width: 0; bottom: -0.3rem; left: 50%; position: absolute; transform: translateX(-50%)}
.card {border: 1px solid rgba(var(--white-rgb), 0.3); border-radius: 0.075rem; box-sizing: border-box; display: flex; flex-direction: column; min-height: 100%; padding: 1.2rem; position: relative}
a.card {color: var(--white); text-decoration: none}
a.card:hover .card-header::after, a.card:focus .card-header::after {transform: translateY(0.2rem)}
a.card:hover .card-tag, a.card:focus .card-tag {transform: translateY(0.2rem)}
.card--fill {background: var(--grayS)}
.card--noGrow {min-height: initial}
.card--icon {padding: 2.4rem 1.2rem 1.2rem}
.card--L {padding: 1.2rem}
.card--L .card-content {text-align: left}
.card--L .card-footer {margin-top: 1.2rem; padding-top: 1.2rem}
.card--L .card-header {margin: calc(-1.2rem - 1px) -1.2rem 1.2rem -1.2rem; padding: 1.2rem}
.card--L .card-header--noStrip {margin-top: -1.2rem}
@media (min-width: 35em) {.card--L {padding: 2rem}
.card--L .card-footer {margin-top: 2rem; padding-top: 2rem}
.card--L .card-header {margin: calc(-2rem - 1px) -2rem 2rem -2rem; padding-left: 2rem; padding-right: 2rem}
.card--L .card-header--noStrip {margin-top: -2rem}
}
.has-card {display: flex; flex-wrap: wrap; margin: 0 -0.4rem}
.has-card .card {flex: 1 1 100%; margin: 0 0.4rem}
.has-card .card:not(:last-child) {margin-bottom: 0.8rem}
@media (min-width: 50em) {.has-card {flex-wrap: nowrap}
.has-card .card {flex-basis: 33.333%}
.has-card .card:not(:last-child) {margin-bottom: 0}
}
.card-badge, .card-trophy {margin-left: auto; margin-right: auto; padding: 0.5rem; transition: transform 150ms cubic-bezier(0.23, 1, 0.32, 1)}
.card-badge {width: 12rem}
.card-trophy {width: 6rem}
.card-content {flex-grow: 1; text-align: center}
.card-content > *:last-child {margin-bottom: 0}
.card-content .card-trophy {margin-bottom: 1.2rem}
.card-footer {align-items: center; border-top: 1px solid rgba(var(--white-rgb), 0.3); display: flex; font-size: 0.8706em; justify-content: space-between; margin-top: 1.2rem; padding-top: 1.2rem}
.card-header {align-items: center; background-color: var(--graySS); border-radius: 0.075rem 0.075rem 0 0; display: flex; flex-shrink: 0; height: 9.6rem; justify-content: center; margin: calc(-1.2rem - 1px) -1.2rem 1.2rem -1.2rem; overflow: hidden; position: relative}
.card-header::after {background: var(--green); content: ''; height: 0.4rem; left: 0; position: absolute; right: 0; top: -0.2rem; transition: 250ms transform cubic-bezier(0.23, 1, 0.32, 1)}
.card-header--award {background: var(--black)}
.card-header--award::after {background: var(--gold)}
.card-header--gold::after {background: var(--gold)}
.card-header--gray::after {background: rgba(var(--white-rgb), 0.5)}
.card-header--gray .card-trophy {filter: saturate(0)}
.card-header--noStrip {margin-top: -1.2rem}
.card-header--noStrip::after {display: none}
.card-header--orange::after {background: var(--orange)}
.card-icon {left: 50%; position: absolute; top: 0; transform: translate(-50%, -50%)}
.card-image {height: 9.6rem; object-fit: cover; width: 100%}
.card-tag {left: 0.8rem; position: absolute; top: 1rem; transition: 250ms transform cubic-bezier(0.23, 1, 0.32, 1)}
.cardFollow {-webkit-clip-path: polygon(0% 1.2rem, 1.2rem 0%, 100% 0%, 100% 0%, 100% 100%, 100% 100%, 0% 100%, 0 100%); clip-path: polygon(0% 1.2rem, 1.2rem 0%, 100% 0%, 100% 0%, 100% 100%, 100% 100%, 0% 100%, 0 100%); align-items: center; background: var(--graySS); border-bottom: 5px solid var(--gold); box-sizing: border-box; display: flex; flex-direction: column; justify-content: center; min-height: 100%; padding: 0.8rem 1.2rem; text-align: center}
.cardFollow a {text-decoration: none}
.cardFollow strong {color: var(--white); display: block; font-size: 0.8706em; line-height: 1.2rem; margin-top: 0.4rem; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; width: 100%}
.cardFollow > * + * {margin-top: 0.8rem}
.cardFollow-empty {background: rgba(var(--white-rgb), 0.1); padding-top: 75%; position: relative}
.cardFollow-empty div {align-items: center; bottom: 0; display: flex; flex-direction: column; justify-content: center; left: 0; padding: 0.8rem; position: absolute; right: 0; top: 0}
.cardFollow-empty span {font-size: 0.8706em; line-height: 1.2rem; text-align: center; font-weight: bold}
@media (min-width: 60em) {.cardFollow-empty span {font-size: 0.7579em}
}
.cardMedia {-webkit-clip-path: polygon(0% 0%, 0% 0%, calc(100% - 1.6rem) 0%, 100% 1.6rem, 100% 100%, 100% 100%, 0% 100%, 0 100%); clip-path: polygon(0% 0%, 0% 0%, calc(100% - 1.6rem) 0%, 100% 1.6rem, 100% 100%, 100% 100%, 0% 100%, 0 100%); background: var(--white); height: 0; padding-top: 100%; position: relative}
@media (min-width: 75em) {.cardMedia {-webkit-clip-path: polygon(0% 0%, 0% 0%, calc(100% - 4rem) 0%, 100% 4rem, 100% 100%, 100% 100%, 0% 100%, 0 100%); clip-path: polygon(0% 0%, 0% 0%, calc(100% - 4rem) 0%, 100% 4rem, 100% 100%, 100% 100%, 0% 100%, 0 100%)}
}
.cardMedia-content {align-items: center; bottom: 0; display: flex; justify-content: center; left: 0; padding: 0.8rem; position: absolute; right: 0; top: 0}
@media (min-width: 75em) {.cardMedia-content {padding: 2rem}
}
.cardProject {background: var(--graySS); color: var(--white); display: block; overflow: hidden; padding-top: 75%; position: relative; width: 100%}
.cardProject::after {background: linear-gradient(to right, #C5A05D, #E3C069); bottom: 0; content: ''; height: 5px; left: 0; position: absolute; right: 0; transform: translateY(5px); transition: 500ms transform cubic-bezier(0.23, 1, 0.32, 1)}
a.cardProject:hover::after, a.cardProject:focus::after {transform: none}
a.cardProject:hover .cardProject-content, a.cardProject:focus .cardProject-content {transform: translateY(-5px); opacity: 1}
.cardBlog {display: block; overflow: hidden; position: relative; width: 100%}
.cardBlog::after {background: linear-gradient(to right, #C5A05D, #E3C069); bottom: 0; content: ''; height: 5px; left: 0; position: absolute; right: 0; transform: translateY(5px); transition: 500ms transform cubic-bezier(0.23, 1, 0.32, 1)}
a.cardBlog:hover::after, a.cardBlog:focus::after {transform: none}
a.cardBlog:hover .cardProject-content, a.cardBlog:focus .cardProject-content {transform: translateY(-5px); opacity: 1}
.cardProject-adult {align-items: center; bottom: 0; display: flex; font-size: 0.7579em; flex-direction: column; justify-content: center; left: 0; margin: -1px; position: absolute; right: 0; top: 0}
.cardProject-adult-icon {color: var(--gold); font-size: 1.3195em; margin-bottom: 0.2rem}
.cardProject-byline {align-items: center; display: flex; width: 100%}
.cardProject-byline > * + * {margin-left: 0.4rem}
.cardProject-byline-header {font-size: 0.8706em; line-height: 0.9rem; min-width: 0}
.cardProject-byline-header h3 {font-size: inherit; font-weight: bold; margin: 0 0 0.1rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap}
.cardProject-byline-header span {display: block; opacity: 0.8}
@media (min-width: 50em) {.cardProject-byline-header {font-size: 0.7579em; line-height: 0.8rem}
}
@media (min-width: 75em) {.cardProject-byline-header {font-size: 0.6599em; line-height: 0.7rem}
}
.cardProject-content {align-items: flex-end; background: linear-gradient(rgba(var(--grayS-rgb), 0) 66%, rgba(var(--grayS-rgb), 0.95)); bottom: 0; display: flex; left: 0; margin: -1px; padding: 0.7rem 0.6rem; position: absolute; right: 0; top: 0; opacity: 0; -webkit-transition: opacity ease-in-out .25s; transition: opacity ease-in-out .25s}
.cardProject-content--draft {opacity: 0.6}
.cardProject-content-count {align-items: center; display: flex; font-family: "Source Code Pro", "Source Sans Pro", sans-serif; position: absolute; right: 0.7rem; top: 0.6rem}
.cardProject-content-count span {font-size: 0.7579em; margin-right: 0.3rem}
.cardProject-icon {box-sizing: border-box; height: 2.6rem; left: 0; padding-left: 0.4rem; padding-top: 0; position: absolute; top: 0; width: 2.6rem}
.cardProject-icon::before {border-color: rgba(var(--white-rgb), 0.5) transparent transparent transparent; border-style: solid; border-width: 2.6rem 2.6rem 0 0; content: ''; height: 0; left: 0; position: absolute; top: 0; width: 0; z-index: 10}
.cardProject-icon svg {position: relative; z-index: 20}
.cardProject-icon--contest::before {border-color: rgba(var(--gold-rgb), 0.5) transparent transparent transparent}
.cardProject-icon--dark {color: var(--white)}
.cardProject-icon--dark::before {border-color: var(--black) transparent transparent transparent}
.cardProject-media {height: 100%; left: 0; object-fit: cover; object-position: center; position: absolute; top: 0; width: 100%}
.cardTeam {background: var(--graySS); color: var(--white); display: block; overflow: hidden; padding-top: 100%; position: relative; width: 100%}
.cardTeam::after {background: linear-gradient(to right, #C5A05D, #E3C069); bottom: 0; content: ''; height: 5px; left: 0; position: absolute; right: 0; transform: translateY(5px); transition: 500ms transform cubic-bezier(0.23, 1, 0.32, 1)}
a.cardTeam:hover::after, a.cardTeam:focus::after {transform: none}
a.cardTeam:hover .cardTeam-content, a.cardTeam:focus .cardTeam-content {transform: translateY(-5px)}
.cardTeam-byline {font-size: 0.8706em; line-height: 0.8rem; opacity: 0.8}
.cardTeam-content {align-items: flex-end; background: linear-gradient(rgba(var(--grayS-rgb), 0.25) 50%, rgba(var(--grayS-rgb), 0.95)); bottom: 0; display: flex; justify-content: space-between; left: 0; margin: -1px; padding: 1.2rem 0.8rem; position: absolute; right: 0; top: 0; transition: 250ms transform cubic-bezier(0.23, 1, 0.32, 1)}
.cardTeam-media {height: 100%; left: 0; object-fit: cover; object-position: center; position: absolute; top: 0; width: 100%}
.comment {display: flex}
.comment:not(:last-child) {margin-bottom: 1.6rem}
.comment--entry:not(:last-child) {margin-bottom: 2.4rem}
.has-comment {margin-left: auto; margin-right: auto; max-width: 36em}
.comment-avatar {margin: 0.4rem 1.2rem 0 0}
.comment-content {flex-grow: 1}
.comment-content > *:last-child {margin-bottom: 0}
.comment-heading {display: flex; font-size: 0.7579em; justify-content: space-between; margin-bottom: 0.4rem}
.crop {height: 22rem; position: relative; width: 100%}
.crop-slider {margin-top: 1.2rem}
.crop-slider-input {-webkit-appearance: none; background: transparent; cursor: grab; height: 1.6rem; width: 100%}
.crop-slider-input::-ms-track {background: transparent; border-color: transparent; color: transparent; cursor: pointer; width: 100%}
.crop-slider-input::-moz-range-track {height: 0.4rem; background: var(--grayT); width: 100%}
.crop-slider-input::-ms-track {height: 0.4rem; background: var(--grayT); width: 100%}
.crop-slider-input::-webkit-slider-runnable-track {height: 0.4rem; background: var(--grayT); width: 100%}
.crop-slider-input::-moz-range-thumb {background-color: var(--white); border: 0; border-radius: 50%; height: 1.6rem; width: 1.6rem}
.crop-slider-input::-ms-thumb {-webkit-appearance: none; background-color: var(--white); border: 0; border-radius: 50%; height: 1.6rem; width: 1.6rem}
.crop-slider-input::-webkit-slider-thumb {background-color: var(--white); border: 0; border-radius: 50%; height: 1.6rem; width: 1.6rem}
.crop-slider-input::-webkit-slider-thumb {-webkit-appearance: none; margin-top: -0.6rem}
.dropdown {align-items: center; display: flex; height: 100%; position: relative}
.dropdown:hover .dropdown-content, .dropdown:focus .dropdown-content {opacity: 1; transform: none; visibility: visible}
.dropdown:focus-within .dropdown-content {opacity: 1; transform: none; visibility: visible}
@media (min-width: 60em) {.dropdown:hover .dropdown-content, .dropdown:focus .dropdown-content {transform: translate(50%, 0)}
.dropdown:focus-within .dropdown-content {transform: translate(50%, 0)}
}
.dropdown--caret:hover::after, .dropdown--caret:focus::after {transform: translateY(-50%) rotate(180deg)}
.dropdown--caret:focus-within::after {transform: translateY(-50%) rotate(180deg)}
.dropdown--caret::after {border-left: 0.2rem solid transparent; border-right: 0.2rem solid transparent; border-top: 0.3rem solid var(--white); content: ''; height: 0; width: 0; opacity: 0.5; pointer-events: none; position: absolute; right: 0; top: 50%; transform: translateY(-50%); transform-origin: center center; transition: 250ms transform cubic-bezier(0.23, 1, 0.32, 1)}
.dropdown--L .dropdown-content {width: 12rem}
.dropdown-content {background: var(--grayS); border: 1px solid rgba(var(--white-rgb), 0.3); border-radius: 0.15rem; opacity: 0; position: absolute; right: -0.2rem; transform: translateY(0.4rem); transition: 250ms all cubic-bezier(0.23, 1, 0.32, 1); top: 95%; visibility: hidden; width: 8rem; z-index: 10}
@media (min-width: 60em) {.dropdown-content {right: 50%; transform: translate(50%, 0.4rem)}
}
.dropdown-content--rightmost {right: 0}
@media (min-width: 60em) {.dropdown-content--rightmost {right: calc(100% + 2px)}
}
.dropdown-link {background: none; border: 0; border-bottom: 1px solid rgba(var(--white-rgb), 0.3); box-sizing: border-box; color: var(--grayTTT); cursor: pointer; display: flex; font-size: 0.7579em; line-height: 1rem; opacity: 1; padding: 0.4rem 0.8rem; text-decoration: none; width: 100%}
.dropdown-link > * + * {margin-left: 0.4rem}
.dropdown-link:first-child {border-radius: 0.15rem 0.15rem 0 0; position: relative}
.dropdown-link:first-child::after, .dropdown-link:first-child::before {border-bottom: 10px solid transparent; border-left: 8px solid transparent; border-right: 8px solid transparent; content: ''; height: 0; position: absolute; right: 0.2rem; width: 0}
.dropdown-link:first-child::after {border-bottom-color: var(--grayS); top: -10px}
.dropdown-link:first-child::before {border-bottom-color: rgba(var(--white-rgb), 0.3); top: -11px}
.dropdown-link:last-child {border-bottom: 0; border-radius: 0 0 0.15rem 0.15rem}
.dropdown-link:hover, .dropdown-link:focus {background: var(--gray); color: var(--white)}
.dropdown-link:hover::after, .dropdown-link:focus::after {border-bottom-color: var(--gray)}
@media (min-width: 60em) {.dropdown-link:first-child::after, .dropdown-link:first-child::before {right: 50%; margin-right: -8px}
}
.dropdown-link--count {justify-content: space-between}
.dropdown-link-meta {color: var(--grayT); display: block; font-size: 0.8706em}
.dropdown-toggle {background: none; border: 0; color: inherit; cursor: pointer; padding: 0}
.dropdown-toggle--caret {padding-left: 0.8rem; padding-right: 0.8rem}
.error {box-sizing: border-box; display: flex; flex-direction: column; min-height: 100vh; padding: 4rem}
.error--404 {background: url("/assets/backgrounds/error-404.svg") center no-repeat; background-size: cover}
.error-container {margin-bottom: auto; position: relative; z-index: 10}
.error-container p {font-size: 1.3195em; line-height: 2rem; max-width: 26em}
.error-media {max-width: 34rem; margin: auto auto -5.2rem; width: 90%}
.emptyState-image {margin: 0 auto; max-width: 20rem; width: 100%}
.emptyState-image--small {max-width: 10rem}
.grid {box-sizing: border-box; column-gap: 1.2rem; display: grid; grid-column-gap: 1.2rem; grid-row-gap: 2rem; grid-template-columns: repeat(12, 1fr); padding-left: 1.2rem; padding-right: 1.2rem; row-gap: 2rem; width: 100%}
@media (min-width: 35em) {.grid {column-gap: 2rem; grid-column-gap: 2rem; padding-left: 2rem; padding-right: 2rem}
}
@media (min-width: 60em) {.grid {padding-left: var(--space); padding-right: var(--space)}
}
@media (min-width: 95em) {.grid {margin-left: auto; margin-right: auto; max-width: 65rem; padding-left: 0; padding-right: 0}
}
.grid--flush {padding-left: 0; padding-right: 0}
.grid--flush--SS {padding-left: 1.2rem; padding-right: 1.2rem}
@media (min-width: 35em) {.grid--flush--SS {padding-left: 0; padding-right: 0}
}
@media (min-width: 60em) {.grid--pullRight {padding-left: calc(var(--space) * 2); padding-right: 0}
}
@media (min-width: 95em) {.grid--pullRight {padding-left: 0; padding-right: 0; transform: translateX(var(--space))}
}
.grid--vCenter {align-items: center}
@media (min-width: 75em) {.grid--L {grid-gap: 4rem; gap: 4rem}
}
.grid--S {grid-gap: 0.8rem; gap: 0.8rem}
.grid--SS {grid-gap: 0.8rem; gap: 0.8rem}
@media (min-width: 35em) {.grid--SS {grid-gap: 0; gap: 0}
}
.grid--project {column-gap: 1.2rem; grid-column-gap: 1.2rem; grid-row-gap: 1.2rem; padding-left: 1.2rem; padding-right: 1.2rem; row-gap: 1.2rem}
@media all and (min-width: 10em) {.grid--project {grid-gap: 0.4rem; gap: 0.4rem; padding: 0}
.grid--project .grid-box {grid-column: span 4; grid-row: span 1}
}
@media all and (min-width: 30em) {.grid--project .grid-box {grid-column: span 3; grid-row: span 1}
}
@media (min-width: 68em) {.grid--project {grid-template-columns: repeat(6, 1fr)}
.grid--project .grid-box {grid-column: span 1; grid-row: span 1}
}
@media (min-width: 95em) {.grid--project {grid-template-columns: repeat(8, 1fr); max-width: inherit}
.grid--project .grid-box {grid-column: span 1; grid-row: span 1}
}
@media (min-width: 110em) {.grid--project {grid-template-columns: repeat(10, 1fr); max-width: inherit}
.grid--project .grid-box {grid-column: span 1; grid-row: span 1}
}
.grid--blog-featured {grid-template-columns: repeat(5, 1fr)}
@media (max-width: 50em) {.grid--blog-featured {grid-template-columns: repeat(2, 1fr)}
.grid--blog-featured .grid-box {grid-column: span 1}
.grid--blog-featured .grid-box:nth-child(3), .grid--blog-featured .grid-box:nth-child(4), .grid--blog-featured .grid-box:nth-child(5) {display: none}
}
@media (min-width: 50em) and (max-width: 68em) {.grid--blog-featured {grid-template-columns: repeat(3, 1fr)}
.grid--blog-featured .grid-box {grid-column: span 1}
.grid--blog-featured .grid-box:nth-child(4), .grid--blog-featured .grid-box:nth-child(5) {display: none}
}
@media (min-width: 68em) and (max-width: 95em) {.grid--blog-featured {grid-template-columns: repeat(4, 1fr)}
.grid--blog-featured .grid-box:nth-child(5) {display: none}
}
@media (min-width: 68em) and (max-width: 95em) {.grid--project--about .grid-box:nth-child(5):not(:last-child):not(:nth-last-child(2)) {grid-column: span 2; grid-row: span 2}
.grid--project--about .grid-box:nth-child(5):not(:last-child):not(:nth-last-child(2)) .grid-correction {height: 0.1rem}
}
@media (min-width: 95em) {.grid--project--about {grid-template-columns: repeat(12, 1fr); max-width: inherit}
.grid--project--about .grid-box {grid-column: span 2; grid-row: span 1}
.grid--project--about .grid-box:nth-child(5):not(:last-child):not(:nth-last-child(2)) {grid-column: span 4; grid-row: span 2}
.grid--project--about .grid-box:nth-child(5):not(:last-child):not(:nth-last-child(2)) .grid-correction {height: 0.1rem}
}
@media (min-width: 68em) and (max-width: 95em) {.grid--project--flair .grid-box:nth-child(1):not(:last-child):not(:nth-last-child(1)), .grid--project--flair .grid-box:nth-child(2):not(:last-child):not(:nth-last-child(2)), .grid--project--flair .grid-box:nth-child(3):not(:last-child):not(:nth-last-child(3)) {grid-column: span 2; grid-row: span 2}
.grid--project--flair .grid-box:nth-child(1):not(:last-child):not(:nth-last-child(1)) .grid-correction, .grid--project--flair .grid-box:nth-child(2):not(:last-child):not(:nth-last-child(2)) .grid-correction, .grid--project--flair .grid-box:nth-child(3):not(:last-child):not(:nth-last-child(3)) .grid-correction {height: 0.1rem}
}
@media (min-width: 95em) {.grid--project--flair .grid-box:nth-child(1):not(:last-child):not(:nth-last-child(1)), .grid--project--flair .grid-box:nth-child(2):not(:last-child):not(:nth-last-child(2)), .grid--project--flair .grid-box:nth-child(3):not(:last-child):not(:nth-last-child(3)), .grid--project--flair .grid-box:nth-child(4):not(:last-child):not(:nth-last-child(4)) {grid-column: span 2; grid-row: span 2}
.grid--project--flair .grid-box:nth-child(1):not(:last-child):not(:nth-last-child(1)) .grid-correction, .grid--project--flair .grid-box:nth-child(2):not(:last-child):not(:nth-last-child(2)) .grid-correction, .grid--project--flair .grid-box:nth-child(3):not(:last-child):not(:nth-last-child(3)) .grid-correction, .grid--project--flair .grid-box:nth-child(4):not(:last-child):not(:nth-last-child(4)) .grid-correction {height: 0.1rem}
.grid--project--flair .grid-box:nth-child(1):not(:last-child):not(:nth-last-child(1)) .grid-correction .cardProject-content, .grid--project--flair .grid-box:nth-child(2):not(:last-child):not(:nth-last-child(2)) .grid-correction .cardProject-content, .grid--project--flair .grid-box:nth-child(3):not(:last-child):not(:nth-last-child(3)) .grid-correction .cardProject-content, .grid--project--flair .grid-box:nth-child(4):not(:last-child):not(:nth-last-child(4)) .grid-correction .cardProject-content {transform: translateY(-5px); opacity: 1}
.grid--project--flair .grid-box:nth-child(1):not(:last-child):not(:nth-last-child(1)) .cardProject::after, .grid--project--flair .grid-box:nth-child(2):not(:last-child):not(:nth-last-child(2)) .cardProject::after, .grid--project--flair .grid-box:nth-child(3):not(:last-child):not(:nth-last-child(3)) .cardProject::after, .grid--project--flair .grid-box:nth-child(4):not(:last-child):not(:nth-last-child(4)) .cardProject::after {transform: none !important}
}
@media (min-width: 110em) {.grid--project--flair .grid-box:nth-child(1):not(:last-child):not(:nth-last-child(1)), .grid--project--flair .grid-box:nth-child(2):not(:last-child):not(:nth-last-child(2)), .grid--project--flair .grid-box:nth-child(3):not(:last-child):not(:nth-last-child(3)), .grid--project--flair .grid-box:nth-child(4):not(:last-child):not(:nth-last-child(4)), .grid--project--flair .grid-box:nth-child(5):not(:last-child):not(:nth-last-child(5)) {grid-column: span 2; grid-row: span 2}
.grid--project--flair .grid-box:nth-child(1):not(:last-child):not(:nth-last-child(1)) .grid-correction, .grid--project--flair .grid-box:nth-child(2):not(:last-child):not(:nth-last-child(2)) .grid-correction, .grid--project--flair .grid-box:nth-child(3):not(:last-child):not(:nth-last-child(3)) .grid-correction, .grid--project--flair .grid-box:nth-child(4):not(:last-child):not(:nth-last-child(4)) .grid-correction, .grid--project--flair .grid-box:nth-child(5):not(:last-child):not(:nth-last-child(5)) .grid-correction {height: 0.1rem}
}
.grid--projectLimit {column-gap: 1.2rem; grid-column-gap: 1.2rem; grid-row-gap: 1.2rem; padding-left: 1.2rem; padding-right: 1.2rem; row-gap: 1.2rem}
@media (min-width: 30em) {.grid--projectLimit {grid-gap: 0.4rem; gap: 0.4rem; padding: 0}
.grid--projectLimit .grid-box {grid-column: span 6}
}
@media (min-width: 50em) {.grid--projectLimit .grid-box {grid-column: span 4}
}
.grid-box {grid-column-end: span 12}
.grid-box--appear {display: none}
@media (min-width: 35em) {.grid-box--appear--SS {display: block}
}
@media (min-width: 50em) {.grid-box--appear--S {display: block}
}
@media (min-width: 60em) {.grid-box--appear--M {display: block}
}
@media (min-width: 75em) {.grid-box--appear--L {display: block}
}
.grid-box--newRow {grid-column-start: 1}
.grid-box--membersGap:not(:first-child) {margin-top: 2.8rem}
@media (min-width: 35em) {.grid-box--membersGap:not(:first-child) {margin-top: 0}
}
.grid-box--1 {grid-column-end: span 1}
.grid-box--2 {grid-column-end: span 2}
.grid-box--3 {grid-column-end: span 3}
.grid-box--4 {grid-column-end: span 4}
.grid-box--5 {grid-column-end: span 5}
.grid-box--6 {grid-column-end: span 6}
.grid-box--7 {grid-column-end: span 7}
.grid-box--8 {grid-column-end: span 8}
.grid-box--9 {grid-column-end: span 9}
.grid-box--10 {grid-column-end: span 10}
.grid-box--11 {grid-column-end: span 11}
@media (min-width: 35em) {.grid-box--SS--1 {grid-column-end: span 1}
.grid-box--SS--2 {grid-column-end: span 2}
.grid-box--SS--3 {grid-column-end: span 3}
.grid-box--SS--4 {grid-column-end: span 4}
.grid-box--SS--5 {grid-column-end: span 5}
.grid-box--SS--6 {grid-column-end: span 6}
.grid-box--SS--7 {grid-column-end: span 7}
.grid-box--SS--8 {grid-column-end: span 8}
.grid-box--SS--9 {grid-column-end: span 9}
.grid-box--SS--10 {grid-column-end: span 10}
.grid-box--SS--11 {grid-column-end: span 11}
}
@media (min-width: 50em) {.grid-box--S--1 {grid-column-end: span 1}
.grid-box--S--2 {grid-column-end: span 2}
.grid-box--S--3 {grid-column-end: span 3}
.grid-box--S--4 {grid-column-end: span 4}
.grid-box--S--5 {grid-column-end: span 5}
.grid-box--S--6 {grid-column-end: span 6}
.grid-box--S--7 {grid-column-end: span 7}
.grid-box--S--8 {grid-column-end: span 8}
.grid-box--S--9 {grid-column-end: span 9}
.grid-box--S--10 {grid-column-end: span 10}
.grid-box--S--11 {grid-column-end: span 11}
}
@media (min-width: 60em) {.grid-box--M--1 {grid-column-end: span 1}
.grid-box--M--2 {grid-column-end: span 2}
.grid-box--M--3 {grid-column-end: span 3}
.grid-box--M--4 {grid-column-end: span 4}
.grid-box--M--5 {grid-column-end: span 5}
.grid-box--M--6 {grid-column-end: span 6}
.grid-box--M--7 {grid-column-end: span 7}
.grid-box--M--8 {grid-column-end: span 8}
.grid-box--M--9 {grid-column-end: span 9}
.grid-box--M--10 {grid-column-end: span 10}
.grid-box--M--11 {grid-column-end: span 11}
}
@media (min-width: 75em) {.grid-box--L--1 {grid-column-end: span 1}
.grid-box--L--2 {grid-column-end: span 2}
.grid-box--L--3 {grid-column-end: span 3}
.grid-box--L--4 {grid-column-end: span 4}
.grid-box--L--5 {grid-column-end: span 5}
.grid-box--L--6 {grid-column-end: span 6}
.grid-box--L--7 {grid-column-end: span 7}
.grid-box--L--8 {grid-column-end: span 8}
.grid-box--L--9 {grid-column-end: span 9}
.grid-box--L--10 {grid-column-end: span 10}
.grid-box--L--11 {grid-column-end: span 11}
}
@media (min-width: 95em) {.grid-box--LL--1 {grid-column-end: span 1}
.grid-box--LL--2 {grid-column-end: span 2}
.grid-box--LL--3 {grid-column-end: span 3}
.grid-box--LL--4 {grid-column-end: span 4}
.grid-box--LL--5 {grid-column-end: span 5}
.grid-box--LL--6 {grid-column-end: span 6}
.grid-box--LL--7 {grid-column-end: span 7}
.grid-box--LL--8 {grid-column-end: span 8}
.grid-box--LL--9 {grid-column-end: span 9}
.grid-box--LL--10 {grid-column-end: span 10}
.grid-box--LL--11 {grid-column-end: span 11}
}
.feature-aside {align-self: start; background: var(--white); color: var(--grayS); grid-column-end: span 12; margin-top: -2rem; padding: 2rem}
.feature-aside > img {margin: 0 auto; max-width: 10rem}
@media (min-width: 70em) {.feature-aside {-webkit-clip-path: polygon(0% 0%, 0% 0%, calc(100% - 4rem) 0%, 100% 4rem, 100% 100%, 100% 100%, 0% 100%, 0 100%); clip-path: polygon(0% 0%, 0% 0%, calc(100% - 4rem) 0%, 100% 4rem, 100% 100%, 100% 100%, 0% 100%, 0 100%); grid-column: 9 / span 4; grid-row: 1; position: relative; z-index: 10}
.feature-aside > img {max-width: 100%}
}
.feature-content {background: var(--graySS); grid-column-end: span 12; grid-row: 1; padding: 4rem var(--space); position: relative}
.feature-content::after {background: linear-gradient(to right, #C5A05D, #E3C069); bottom: 0; content: ''; height: 0.2rem; left: calc(var(--space) * 0.5); position: absolute; right: 0}
.feature-content p {margin-bottom: 3.6rem}
@media (min-width: 70em) {.feature-content {grid-column: 1 / span 9}
}
.feature-content--withLink p {margin-bottom: 2rem}
.feature-content-link {margin-bottom: 3.2rem}
.feature-subheading {position: relative}
.feature-subheading:first-child::after, .feature-subheading:first-child::before {content: ''; left: calc(var(--space) * -0.5); position: absolute}
.feature-subheading:first-child::after {background: var(--white); height: 1.6rem; top: 0; width: 0.4rem}
.feature-subheading:first-child::before {background: var(--gray); height: 11.2rem; top: -6rem; width: 2px}
.feature-pressKit {-webkit-clip-path: polygon(0% 0%, 0% 0%, calc(100% - 2rem) 0%, 100% 2rem, 100% 100%, 100% 100%, 0% 100%, 0 100%); clip-path: polygon(0% 0%, 0% 0%, calc(100% - 2rem) 0%, 100% 2rem, 100% 100%, 100% 100%, 0% 100%, 0 100%); align-self: start; background: var(--white); grid-column-end: span 12; grid-row: 1; padding: 2rem}
.feature-pressKit > img {margin: 0 auto; max-width: 6rem}
@media (min-width: 35em) {.feature-pressKit {grid-column-end: span 6}
}
@media (min-width: 50em) {.feature-pressKit {-webkit-clip-path: polygon(0% 0%, 0% 0%, calc(100% - 4rem) 0%, 100% 4rem, 100% 100%, 100% 100%, 0% 100%, 0 100%); clip-path: polygon(0% 0%, 0% 0%, calc(100% - 4rem) 0%, 100% 4rem, 100% 100%, 100% 100%, 0% 100%, 0 100%); grid-column-end: span 4; padding: 3rem 4rem}
.feature-pressKit > img {max-width: 100%}
}
@media (min-width: 75em) {.feature-pressKit {grid-column: 2 / span 3}
}
.field {border: 0; margin-bottom: 1.2rem; margin-top: 0; padding: 0; position: relative}
.field--fieldset {margin-bottom: 2.8rem}
.field--fullWidth {width: 100%}
.field.is-disabled .field-label {color: rgba(var(--white-rgb), 0.5)}
.field.is-disabled .react-autosuggest__input, .field.is-disabled .field-input, .field.is-disabled .field-textarea {background: var(--gray); color: rgba(var(--white-rgb), 0.5)}
.field.is-erred .field-input, .field.is-erred .field-checkbox input, .field.is-erred .field-radio input, .field.is-erred .field-select select, .field.is-erred .field-textarea {border-color: var(--orange)}
.field-actions {border-top: 1px solid rgba(var(--white-rgb), 0.3); margin-top: 2rem; padding-top: 1.2rem}
.field-actions > * {margin-bottom: 0.8rem}
@media (min-width: 50em) {.field-actions > * {margin-bottom: 0}
.field-actions > * + * {margin-left: 1.2rem}
}
.field-checkbox {align-items: center; display: flex; position: relative}
.field-checkbox input {-webkit-appearance: none; -moz-appearance: none; appearance: none; border: 1px solid rgba(255, 255, 255, 0.5); border-radius: 0.15rem; box-sizing: border-box; cursor: pointer; flex-shrink: 0; height: 1.2rem; position: relative; width: 1.2rem}
.field-checkbox input:checked + .field-checkbox-icon {opacity: 1}
.field-checkbox input:disabled {background: var(--gray); cursor: not-allowed}
.field-checkbox input:disabled:checked + .field-checkbox-icon {opacity: 0.5}
.field-checkbox input:disabled ~ span {color: rgba(var(--white-rgb), 0.5); cursor: not-allowed}
.field-checkbox:hover input:not(:disabled) {border-color: var(--white)}
.field-checkbox span {color: rgba(var(--white-rgb), 0.8); cursor: pointer; font-size: 0.8706em; line-height: 1.2rem; padding-left: 0.4rem}
.field-checkbox-icon {left: 0; line-height: 1.2rem; opacity: 0; pointer-events: none; position: absolute; text-align: center; width: 1.2rem}
.react-autosuggest__input, .field-input {background: transparent; border: 1px solid rgba(var(--white-rgb), 0.5); border-radius: 0.15rem; box-sizing: border-box; color: var(--white); display: block; font-size: 0.8706em; line-height: 1.2rem; padding: calc(0.4rem - 1px) 0.8rem; width: 100%}
.react-autosuggest__input:disabled, .field-input:disabled {cursor: not-allowed}
.react-autosuggest__input:focus, .field-input:focus {border-color: var(--white)}
.react-autosuggest__input::-ms-input-placeholder, .field-input::-ms-input-placeholder {color: rgba(var(--white-rgb), 0.5)}
.react-autosuggest__input::placeholder, .field-input::placeholder {color: rgba(var(--white-rgb), 0.5)}
.react-autosuggest__input[type="password"], .field-input[type="password"] {letter-spacing: 0.1em}
.field-label {color: var(--white); display: block; font-size: 0.8706em; font-weight: bold; line-height: 1.2rem; margin-bottom: 0.4rem}
.field-label--warning {border-top: 1px solid rgba(var(--white-rgb), 0.3); margin-bottom: 0.6rem; margin-left: 1.8em; padding-top: 1.2rem}
.field-label--warning::before {background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path fill="%23FE744E" d="M10 20C4.48 20 0 15.52 0 10S4.48 0 10 0s10 4.48 10 10-4.48 10-10 10zm1-15H9v6h2V5zm0 8H9v2h2v-2z"/></svg>'); content: ''; display: block; height: 1.2em; margin: 0.1em 0 0 -1.8em; position: absolute; width: 1.2em}
.field-link {color: rgba(var(--gold-rgb), var(--gold-text-opacity)); font-size: 0.8706em; line-height: 1.2rem; position: absolute; right: 0; top: 0}
.field-message {color: rgba(var(--white-rgb), 0.5); display: block; font-size: 0.7579em; line-height: 1.2rem; margin-top: 0.4rem}
.field-message--error {color: var(--orange)}
.field-radio {align-items: center; display: flex}
.field-radio input {-webkit-appearance: none; -moz-appearance: none; appearance: none; border: 1px solid rgba(255, 255, 255, 0.5); border-radius: 50%; box-sizing: border-box; cursor: pointer; height: 1.2rem; position: relative; width: 1.2rem}
.field-radio input:checked::before {opacity: 1}
.field-radio input:disabled {background: var(--gray); cursor: not-allowed}
.field-radio input:disabled::before {background: rgba(var(--white-rgb), 0.5)}
.field-radio input:disabled + span {color: rgba(var(--white-rgb), 0.5); cursor: not-allowed}
.field-radio input::before {background: var(--white); border-radius: 50%; content: ''; height: 0.6rem; left: 0.25rem; opacity: 0; position: absolute; top: 0.25rem; width: 0.6rem}
.field-radio:hover input:not(:disabled) {border-color: var(--white)}
.field-radio span {color: rgba(var(--white-rgb), 0.8); cursor: pointer; font-size: 0.8706em; padding-left: 0.4rem}
.field-select {position: relative}
.field-select::after {border-left: 0.2rem solid transparent; border-right: 0.2rem solid transparent; border-top: 0.3rem solid var(--white); content: ''; height: 0; width: 0; pointer-events: none; position: absolute; right: 0.8rem; top: 0.85rem}
.field-select option {background: white; color: #201F1F}
.field-select select {-moz-appearance: none; -webkit-appearance: none; appearance: none; background: transparent; border: 1px solid rgba(var(--white-rgb), 0.5); border-radius: 0.15rem; box-sizing: border-box; color: var(--white); cursor: pointer; display: block; font-size: 0.8706em; line-height: 1.2rem; padding: calc(0.4rem - 1px) 1.6rem calc(0.4rem - 1px) 0.8rem; width: 100%}
.field-select select:focus {border-color: var(--white)}
.field-select--filter select {border-color: rgba(var(--white-rgb), 0.1)}
.field-select--fullWidth {width: 100%}
.field-textarea {background: transparent; border: 1px solid rgba(var(--white-rgb), 0.5); border-radius: 0.15rem; box-sizing: border-box; color: var(--white); display: block; font-size: 0.8706em; min-height: 8rem; line-height: 1.2rem; padding: calc(0.8rem - 1px) 0.8rem; resize: none; width: 100%}
.field-textarea:disabled {cursor: not-allowed}
.field-textarea:focus {border-color: var(--white)}
.field-textarea::-ms-input-placeholder {color: rgba(var(--white-rgb), 0.5)}
.field-textarea::placeholder {color: rgba(var(--white-rgb), 0.5)}
.field-textarea[type="password"] {letter-spacing: 0.1em}
.field-textarea--editor {color: inherit; font-size: inherit; line-height: inherit}
.field-textarea--editor p {max-width: none}
.footer {background: var(--graySS); padding: 4rem 0 2rem}
.footer-ad {grid-column: span 12}
@media (min-width: 50em) {.footer-ad {grid-column: span 6}
}
@media (min-width: 75em) {.footer-ad {grid-column: span 3}
}
.footer-connect {grid-column: span 12}
@media (min-width: 75em) {.footer-connect {grid-column: span 5}
}
@media (min-width: 50em) {.footer-connect--judge {grid-column: span 6}
}
.footer-connect-heading {display: none; margin-right: 1.6rem}
@media (min-width: 75em) {.footer-connect-heading {display: block}
}
.footer-connect-logo {display: block; margin-bottom: 3.2rem; max-width: 16rem; width: 100%}
.footer-connect-logo:hover, .footer-connect-logo:focus {opacity: 0.7}
.footer-connect-row {align-items: center; display: flex}
.footer-connect-row a {margin-bottom: 0.8rem; margin-right: 0.8rem}
.footer-footer {border-top: 1px solid rgba(var(--white-rgb), 0.3); font-size: 0.7579em; grid-column: span 12; line-height: 1.2rem; margin-top: 2rem; padding-top: 1.6rem; text-align: right}
.footer-footer a {text-decoration: none}
.footer-footer span {margin: 0 0.4rem}
.footer-navigation {grid-column: span 6; margin-bottom: 2rem}
@media (min-width: 50em) {.footer-navigation {grid-column: span 3; margin-bottom: 0}
}
@media (min-width: 75em) {.footer-navigation {grid-column: span 2}
}
@media (min-width: 75em) {.footer-navigation--judge {grid-column: span 3}
}
.header {align-items: flex-end; border-bottom: 1px solid rgba(var(--white-rgb), 0.3); justify-content: space-between; margin-bottom: 2rem; padding-bottom: 1.6rem}
@media (min-width: 50em) {.header {display: flex}
}
.header-actions > * {margin-top: 0.8rem; min-width: 100%}
@media (min-width: 30em) {.header-actions > * {min-width: 12rem}
.header-actions > * + * {margin-left: 0.8rem}
}
@media (min-width: 50em) {.header-actions > * {margin-top: 0}
}
.header-heading {color: var(--white); font-weight: bold; font-size: 1.5157em; line-height: 2rem; margin: 0}
.header-subheading {color: rgba(var(--gold-rgb), var(--gold-text-opacity)); font-size: 0.8706em; font-weight: bold; letter-spacing: 0.1em; line-height: 1.2rem; margin: 0 0 0.4rem; text-transform: uppercase}
.section-featured {position: relative}
.featured-wrap {-webkit-box-sizing: border-box; box-sizing: border-box; min-height: calc(100vh - 160px - 85px); padding: 0 12% 10vh 50%; -webkit-box-align: center; -ms-flex-align: center; align-items: center}
.featured-wrap h1, .featured-wrap h2 {font-size: 54px; font-weight: 700; line-height: 1.2; padding-top: 20px}
.featured-image {position: absolute; z-index: 0; top: 0; right: 0; bottom: 0; left: 85px; overflow: hidden; width: calc(100% - 170px); border-radius: 5px; background: no-repeat center center; background-size: cover}
.featured-wrap .featured-content {width: 100%; padding: 60px 0 60px 40px; z-index: 10}
.flex {display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap}
@media (min-width: 1024px) {.is-featured-image .featured-wrap {max-width: 700px; margin: 0 auto; padding: 0 0 10vh}
.tag-hash-full-image .featured-image::before {display: block; width: 100%; height: 100%; content: ''; opacity: .4; background-color: #101213; background-image: linear-gradient(234deg, #394245 0%, #000 100%)}
.is-featured-image .featured-wrap .featured-content {padding: 60px 0}
.featured-wrap .item-meta {width: 90%}
.featured-image::before {display: block; width: 100%; height: 100%; content: ''; opacity: .7; background-color: #101213; background-image: linear-gradient(234deg, #394245 0%, #000 100%)}
}
.headerSub {align-items: flex-end; display: flex; flex-wrap: wrap; justify-content: space-between}
.headerSub > * + * {margin-top: 1.2rem}
@media (min-width: 50em) {.headerSub {flex-wrap: nowrap}
.headerSub > * + * {margin-left: 2rem; margin-top: 0}
}
.headerSub90 {width: 90%}
.headerSub--mapped {background-color: var(--graySS); background-image: url("/assets/backgrounds/map-edge.svg"); background-size: cover; justify-content: center; padding: 2rem; text-align: center}
.headerSub-heading {color: var(--white); font-family: "Quase Headline", "Georgia", serif; font-weight: bold; font-size: 1.7511em; line-height: 2rem; margin: 0; width: 100%}
@media (min-width: 35em) {.headerSub-heading {font-size: 2.2974em; line-height: 2.4rem}
}
@media (min-width: 50em) {.headerSub-heading {width: auto}
}
.headerSub-rule {background: rgba(var(--white-rgb), 0.3); display: none; flex-grow: 1; height: 1px; margin-left: 2rem; position: relative; top: -1.2rem}
@media (min-width: 50em) {.headerSub-rule {display: block}
}
.headerSub-subheading {margin: 0.8rem 0 0}
.heading-1 {color: var(--white); font-family: "Quase Headline", "Georgia", serif; font-weight: bold; font-size: 2.2974em; line-height: 2.8rem; margin-bottom: 1.6rem; margin-top: 0}
@media (min-width: 25em) {.heading-1 {font-size: 3.33em; line-height: 3.6rem}
}
@media (min-width: 35em) {.heading-1 {font-size: 4.2em; line-height: 4.8rem}
}
@media (min-width: 50em) and (min-height: 40em) {.heading-1 {font-size: 5em; line-height: 5.4rem}
}
@media (min-width: 60em) and (min-height: 50em) {.heading-1 {font-size: 6.25em; line-height: 6.4rem}
}
.heading-2 {color: var(--white); font-family: "Quase Headline", "Georgia", serif; font-weight: bold; font-size: 1.7511em; line-height: 2rem; margin-bottom: 1.6rem; margin-top: 0}
@media (min-width: 50em) {.heading-2 {font-size: 3.33em; line-height: 3.6rem}
}
@media (min-width: 75em) {.heading-2 {font-size: 5em; line-height: 5.4rem}
}
.heading-2--shadow {text-shadow: 0 0.1rem 1rem rgba(32, 31, 31, 0.7)}
.heading-3 {color: var(--white); font-family: "Quase Headline", "Georgia", serif; font-weight: bold; font-size: 1.5157em; line-height: 2rem; margin-bottom: 1.6rem; margin-top: 0}
@media (min-width: 35em) {.heading-3 {font-size: 2.2974em; line-height: 2.8rem}
}
.heading-4 {color: var(--white); font-weight: bold; font-size: 1.1487em; line-height: 1.6rem; margin-bottom: 1.2rem; margin-top: 0}
@media (min-width: 35em) {.heading-4 {font-size: 1.5157em; line-height: 2rem}
}
.heading-5 {color: var(--white); font-size: inherit; font-weight: bold; line-height: 1.2rem; margin-bottom: 0.4rem; margin-top: 0}
@media (min-width: 35em) {.heading-5 {font-size: 1.1487em}
}
.heading-6 {color: var(--white); font-size: 0.8706em; font-weight: bold; letter-spacing: 0.1em; line-height: 1.2rem; margin-bottom: 0.8rem; margin-top: 0; text-transform: uppercase}
.heading-mono {color: var(--white); font-family: "Source Code Pro", "Source Sans Pro", sans-serif; font-weight: normal; font-size: 1em; letter-spacing: 0.1em; margin: 0 0 1.2rem; text-transform: uppercase}
.hero-container {grid-column-end: span 12; position: relative; z-index: 20}
@media (min-width: 50em) {.hero-container {grid-column: 5 / span 8; grid-row: 1}
.hero-container p {font-size: 1.1487em}
}
@media (min-width: 50em) {.hero-container--reverse {grid-column-start: 1}
}
.hero-container-content > *:last-child {margin-bottom: 0}
@media (min-width: 60em) {.hero-container-content {margin-left: var(--space)}
}
.hero-container-heading span {display: block}
.hero-illustration {grid-column-end: span 12; grid-row: 1}
.hero-illustration > img {margin: 0 auto; max-height: 14rem}
@media (min-width: 50em) {.hero-illustration {grid-column: 1 / span 5; margin-bottom: -2rem; margin-top: -2rem}
.hero-illustration > img {margin: 0; max-height: inherit}
}
@media (min-width: 60em) {.hero-illustration {margin-bottom: -4rem; margin-top: -4rem}
}
.hero-illustration--L {margin-top: -2rem}
@media (min-width: 50em) {.hero-illustration--L {margin-bottom: -3.2rem; margin-left: calc(var(--space) * -0.8); margin-top: -3.2rem}
}
@media (min-width: 60em) {.hero-illustration--L {margin-bottom: -6rem; margin-top: -6rem}
}
@media (min-width: 50em) {.hero-illustration--reverse {grid-column-start: 9}
}
.hero-illustration--reverse--L {margin-top: -2rem}
@media (min-width: 50em) {.hero-illustration--reverse--L {margin-bottom: -3.2rem; margin-right: calc(var(--space) * -0.8); margin-top: -3.2rem}
}
@media (min-width: 60em) {.hero-illustration--reverse--L {margin-bottom: -6rem; margin-top: -6rem}
}
.hero-media {grid-column-end: span 12; grid-row: 1}
@media (min-width: 50em) {.hero-media {grid-column: 1 / span 4}
}
.hero-media--decoration {position: relative}
.hero-media--decoration img {position: relative; z-index: 10}
.hero-media--decoration::after {background: rgba(var(--gold-rgb), 0.2); content: ''; display: block; height: 2.4rem; margin: -1.2rem -1.2rem 0 0; right: 0; position: absolute; width: 2.4rem; z-index: 0}
.hero-media--decoration::before {background: rgba(var(--gold-rgb), 0.2); content: ''; display: block; height: 3rem; margin: -1.5rem 0 0 -1.5rem; position: absolute; width: 3rem; z-index: 0}
@media (min-width: 75em) {.hero-media--decoration::after {height: 5rem; margin: -2.5rem -2.5rem 0 0; width: 5rem}
}
@media (min-width: 50em) {.hero-media--overlayReverse {overflow: hidden; position: relative}
.hero-media--overlayReverse::after {background: linear-gradient(to right, rgba(var(--grayS-rgb), 0.9), rgba(var(--grayS-rgb), 0.6) 50%); bottom: 0; content: ''; left: 0; margin: -1px; position: absolute; right: 0; top: 0; z-index: 10}
}
@media (min-width: 50em) {.hero-media--reverse {grid-column-start: 9}
}
.hero-media--underlapReverse {grid-column-end: span 12}
@media (min-width: 50em) {.hero-media--underlapReverse {grid-column: 5 / span 8; margin-right: calc(var(--space) * -1)}
}
.hero-media-moreDecoration {background: rgba(var(--gold-rgb), 0.2); display: block; height: 1.2rem; margin: 0.8rem 2rem 0 0; position: absolute; right: 0; width: 1.2rem; z-index: 0}
@media (min-width: 75em) {.hero-media-moreDecoration {height: 2rem; margin: 4rem -1.25rem -6rem 0; width: 2rem}
}
@media (min-width: 75em) {.hero-media-moreDecoration::after {background: rgba(var(--gold-rgb), 0.2); content: ''; display: block; height: 1.5rem; margin: -2rem 0 0 -6.5rem; position: absolute; width: 1.5rem; z-index: 0}
}
.highlight {align-items: center; box-sizing: border-box; color: var(--white); cursor: pointer; display: flex; justify-content: space-between; min-height: 5.2rem; padding: 0.8rem 1.2rem; overflow: hidden; position: relative; width: 100%}
.highlight:not(:last-child) {margin-bottom: 0.8rem}
.highlight:hover .highlight-backdrop, .highlight:hover .highlight-input, .highlight:focus .highlight-backdrop, .highlight:focus .highlight-input {border-color: var(--white)}
.highlight--orange {background-color: var(--orange)}
.highlight--radio .highlight-input {border-radius: 50%}
.highlight-backdrop {border: 1px solid rgba(var(--white-rgb), 0.5); border-radius: 0.15rem; bottom: 0; left: 0; position: absolute; right: 0; top: 0}
.highlight-check {left: 1.2rem; line-height: 1.2rem; opacity: 0; pointer-events: none; position: absolute; text-align: center; top: 50%; transform: translateY(-50%); width: 1.2rem; z-index: 10}
.highlight-content {flex-grow: 1; position: relative; z-index: 10}
.highlight-content span, .highlight-content strong {display: block; font-size: 0.8706em; line-height: 1.2rem; margin: 0; max-width: 36em}
.highlight-input {-webkit-appearance: none; -moz-appearance: none; appearance: none; border: 1px solid rgba(255, 255, 255, 0.5); border-radius: 0.15rem; height: 1.2rem; flex-shrink: 0; margin-right: 1.2rem; position: relative; width: 1.2rem; z-index: 10}
.highlight-input:checked ~ .highlight-check, .highlight-input:checked ~ .highlight-radio {opacity: 1}
.highlight-input:checked ~ .highlight-backdrop {background: rgba(var(--gold-rgb), 0.5); border-color: transparent}
.highlight-level {background: var(--graySS); border: 0.15rem solid transparent; border-radius: 50%; box-sizing: border-box; display: inline-flex; flex-shrink: 0; padding: 0.5rem; flex-shrink: 0; margin-right: 1.2rem; position: relative; height: 3rem; width: 3rem; z-index: 10}
@media (min-width: 35em) {.highlight-level {height: 4rem; padding: 0.8rem; width: 4rem}
}
.highlight-level--1 {border-color: var(--green)}
.highlight-level--2 {border-color: var(--blue)}
.highlight-level--3 {border-color: var(--purple)}
.highlight-level--4 {border-color: var(--pink)}
.highlight-level--5 {border-color: var(--orange)}
.highlight-link {color: var(--white); font-size: 0.8706em; opacity: 0.5; padding-top: 0.125rem; position: relative; text-decoration: underline; z-index: 10}
.highlight-link:hover {opacity: 1}
.highlight-link::before {content: ''; border-left: 1px solid rgba(var(--white-rgb), 0.5); margin: 0 1.25rem; padding: 0.875rem 0}
.highlight-radio {background: var(--white); border-radius: 50%; height: 0.6rem; left: 1.5rem; opacity: 0; position: absolute; top: 50%; transform: translateY(-50%); width: 0.6rem; z-index: 10}
.icon {display: inline-block; fill: currentColor; flex-shrink: 0; height: 1em; pointer-events: none; vertical-align: -0.175em; width: 1em}
.icon--LL {height: 1.7em; vertical-align: -0.5em; width: 1.7em}
.icon--L {height: 1.3em; vertical-align: -0.3em; width: 1.3em}
.icon--S {height: 0.7rem; vertical-align: -0.06em; width: 0.7rem}
.icon--SS {height: 0.5rem; vertical-align: -0.03em; width: 0.5rem}
.has-icon {align-items: center; border: 2px solid var(--gold); border-radius: 50%; box-sizing: border-box; color: var(--white); display: inline-flex; flex-shrink: 0; height: 2.8rem; justify-content: center; width: 2.8rem}
.has-icon--fill {background: var(--grayS)}
.has-icon--fillGreen {background: var(--green); border-color: transparent}
.has-icon--fillGreen .icon {fill: var(--grayS)}
.has-icon--fillSecondary {background: var(--graySS)}
.has-icon--S {height: 2rem; width: 2rem}
.has-icon--SS {border-width: 1px; height: 1.2rem; width: 1.2rem}
.journey {position: relative}
.journey--1 .journey-badge {border-color: var(--green)}
.journey--2 .journey-badge {border-color: var(--blue)}
.journey--3 .journey-badge {border-color: var(--purple)}
.journey--4 .journey-badge {border-color: var(--pink)}
.journey--5 .journey-badge {border-color: var(--orange)}
.journey--new {animation: journey--new 2500ms cubic-bezier(0.23, 1, 0.32, 1) 500ms both}
.journey--new .journey-badge {animation: journey--new-badge 2500ms cubic-bezier(0.23, 1, 0.32, 1) 500ms both}
@keyframes journey--new {0% {transform: translateX(90%)}
20% {transform: translateX(100%) rotateY(0)}
90%, 100% {transform: translateX(0) rotateY(-360deg)}
}
@keyframes journey--new-badge {0%, 50% {box-shadow: none}
}
.journey--old {animation: journey--old 2500ms cubic-bezier(0.23, 1, 0.32, 1) 500ms both}
.journey--old .journey-badge {box-shadow: none !important}
@keyframes journey--old {0% {transform: translateX(-90%)}
20% {transform: translateX(-100%) rotateY(0); opacity: 1}
90%, 100% {transform: translateX(0) rotateY(360deg); opacity: 0}
}
.journey.is-earned.journey--1 .journey-badge {box-shadow: 0 0 0 1rem rgba(71, 225, 169, 0.1)}
.journey.is-earned.journey--2 .journey-badge {box-shadow: 0 0 0 1rem rgba(88, 141, 255, 0.1)}
.journey.is-earned.journey--3 .journey-badge {box-shadow: 0 0 0 1rem rgba(147, 68, 226, 0.1)}
.journey.is-earned.journey--4 .journey-badge {box-shadow: 0 0 0 1rem rgba(225, 70, 200, 0.1)}
.journey.is-earned.journey--5 .journey-badge {box-shadow: 0 0 0 1rem rgba(254, 116, 78, 0.1)}
.journey.is-earned .journey-badge {filter: none}
.journey.is-earned .journey-progress strong {color: var(--white)}
.has-journey--H {list-style: none; margin: 2.8rem 0; padding: 0}
.has-journey--H .journey {display: flex; margin: 0; text-align: left}
.has-journey--H .journey:not(:last-child) {padding-bottom: 1.6rem}
.has-journey--H .journey:not(:first-child)::after {content: ''; display: none; height: 1.8rem; left: 1.8rem; position: absolute; top: -1.7rem; width: 0.4rem}
.has-journey--H .journey.is-earned::after {display: block}
.has-journey--H .journey--2::after {background: linear-gradient(to bottom, var(--green), var(--blue))}
.has-journey--H .journey--3::after {background: linear-gradient(to bottom, var(--blue), var(--purple))}
.has-journey--H .journey--4::after {background: linear-gradient(to bottom, var(--purple), var(--pink))}
.has-journey--H .journey--5::after {background: linear-gradient(to bottom, var(--pink), var(--orange))}
.has-journey--H .journey-badge {height: 4rem; padding: 0.8rem; position: relative; width: 4rem}
.has-journey--H .journey-progress {margin-left: 1.6rem; margin-top: 0.4rem}
@media (min-width: 35em) {.has-journey--H {display: flex}
.has-journey--H .journey {display: block; text-align: center; width: 20%}
.has-journey--H .journey:not(:last-child) {padding-bottom: 0}
.has-journey--H .journey:not(:first-child)::after {height: 0.4rem; left: calc(-50% + 3.9rem); top: 4rem; width: calc(100% - 7.8rem)}
.has-journey--H .journey--2::after {background: linear-gradient(to right, var(--green), var(--blue))}
.has-journey--H .journey--3::after {background: linear-gradient(to right, var(--blue), var(--purple))}
.has-journey--H .journey--4::after {background: linear-gradient(to right, var(--purple), var(--pink))}
.has-journey--H .journey--5::after {background: linear-gradient(to right, var(--pink), var(--orange))}
.has-journey--H .journey-badge {height: 8rem; padding: 1.6rem; width: 8rem}
.has-journey--H .journey-progress {margin-left: 0; margin-top: 1.6rem; padding: 0 0.4rem}
}
.has-journey--levelUp {height: 8rem; margin: 2rem 0 3.2rem; position: relative; z-index: 10}
.has-journey--levelUp .journey {left: 50%; margin-left: -4rem; position: absolute; top: 0}
.has-journey--V {list-style: none; margin: 0 auto; max-width: 50rem; padding: 0}
.has-journey--V .journey {display: flex; margin: 0}
.has-journey--V .journey:not(:last-child) {padding-bottom: 1.6rem}
.has-journey--V .journey:not(:last-child)::after {bottom: 0; content: ''; left: 1.8rem; position: absolute; top: 4rem; width: 0.4rem}
.has-journey--V .journey--1::after {background: linear-gradient(to bottom, var(--green), var(--blue))}
.has-journey--V .journey--1 .journey-count {text-shadow: 1px 1px var(--green), -1px 1px var(--green), 1px -1px var(--green), -1px -1px var(--green)}
.has-journey--V .journey--2::after {background: linear-gradient(to bottom, var(--blue), var(--purple))}
.has-journey--V .journey--2 .journey-count {text-shadow: 1px 1px var(--blue), -1px 1px var(--blue), 1px -1px var(--blue), -1px -1px var(--blue)}
.has-journey--V .journey--3::after {background: linear-gradient(to bottom, var(--purple), var(--pink))}
.has-journey--V .journey--3 .journey-count {text-shadow: 1px 1px var(--purple), -1px 1px var(--purple), 1px -1px var(--purple), -1px -1px var(--purple)}
.has-journey--V .journey--4::after {background: linear-gradient(to bottom, var(--pink), var(--orange))}
.has-journey--V .journey--4 .journey-count {text-shadow: 1px 1px var(--pink), -1px 1px var(--pink), 1px -1px var(--pink), -1px -1px var(--pink)}
.has-journey--V .journey--5 .journey-count {text-shadow: 1px 1px var(--orange), -1px 1px var(--orange), 1px -1px var(--orange), -1px -1px var(--orange)}
.has-journey--V .journey-badge {box-shadow: none !important; height: 4rem; padding: 0.8rem; position: relative; width: 4rem}
.has-journey--V .journey-count {display: none}
.has-journey--V .journey-progress {margin-left: 1.2rem; margin-top: 0.8rem}
@media (min-width: 50em) {.has-journey--V .journey {padding-left: 4.4rem}
.has-journey--V .journey:not(:last-child)::after {left: 8.2rem; top: 8rem}
.has-journey--V .journey-badge {height: 8rem; padding: 1.6rem; width: 8rem}
.has-journey--V .journey-count {display: block}
.has-journey--V .journey-progress {margin-left: 2rem}
}
.journey-badge {background: var(--graySS); border: 0.4rem solid transparent; border-radius: 50%; box-sizing: border-box; display: inline-flex; flex-shrink: 0; filter: saturate(0); height: 8rem; padding: 1.6rem; width: 8rem}
.journey-checkpoint {margin: 0}
.journey-checkpoint span {color: rgba(var(--gold-rgb), var(--gold-text-opacity)); flex-shrink: 0; font-size: 0.8706em; font-weight: bold; letter-spacing: 0.1em; line-height: 1.2rem; text-transform: uppercase}
@media (min-width: 50em) {.journey-checkpoint {align-items: center; display: flex}
.journey-checkpoint::after {border-top: 1px solid rgba(var(--white-rgb), 0.3); content: ''; flex-grow: 1; height: 1px; margin-left: 1.2rem}
}
.journey-count {color: var(--graySS); font-size: 5em; font-weight: bold; left: 0; line-height: 4rem; opacity: 0.5; position: absolute; top: -1.2rem}
.journey-progress {color: var(--grayT)}
.journey-progress strong {display: block}
.layout {display: flex; flex-direction: column; min-height: 100vh}
.layout-content {animation: layout-content 200ms linear 200ms backwards; flex-grow: 1}
@keyframes layout-content {from {opacity: 0}
}
.list--icon {list-style: none; margin: 0; padding: 0}
.list--icon li {display: flex}
.list--icon li:not(:last-child) {margin-bottom: 0.8rem}
.list--icon li > *:first-child {flex-shrink: 0; margin-right: 0.8rem}
@media (min-width: 35em) {.list--icon li:not(:last-child) {margin-bottom: 0.6rem}
}
.modal {bottom: 0; box-sizing: border-box; display: flex; left: 0; opacity: 0; overflow-y: auto; padding: 2rem; position: fixed; transition: opacity 300ms cubic-bezier(0.23, 1, 0.32, 1), visibility 300ms cubic-bezier(0.23, 1, 0.32, 1); top: 0; visibility: hidden; width: 100vw; z-index: 2000}
.modal.is-active {opacity: 1; visibility: visible}
.modal.is-active .modal-content {opacity: 1; transform: none}
.modal-backdrop {background: rgba(var(--grayS-rgb), 0.8); bottom: 0; left: 0; position: fixed; right: 0; top: 0}
.modal-close {position: absolute; right: 0.8rem; top: 0.8rem}
.modal-content {background: var(--graySS); margin: auto; max-width: 65rem; opacity: 0; padding: 2rem; position: relative; transform: translateY(1rem); transition: opacity 500ms cubic-bezier(0.23, 1, 0.32, 1), transform 500ms cubic-bezier(0.23, 1, 0.32, 1)}
.navigation {background: var(--grayS); box-sizing: border-box; padding-top: 0.2rem; position: relative; z-index: 1000}
.navigation::after {background: linear-gradient(to right, #C5A05D, #E3C069); content: ''; height: 0.2rem; left: 0; position: absolute; right: 0; top: 0}
.navigation.is-active {min-height: 100vh}
.navigation.is-active .navigation-content {display: block}
.navigation.is-active .navigation-toggle span::after {transform: rotate(45deg)}
.navigation.is-active .navigation-toggle span::before {transform: rotate(-45deg)}
.navigation--black {background: var(--black)}
.navigation--judge {padding-left: 1.2rem; padding-right: 1.2rem}
@media (min-width: 35em) {.navigation--judge {padding-left: 2rem; padding-right: 2rem}
}
.navigation--narrow {display: flex; flex-direction: column; padding-left: 1.2rem; padding-right: 1.2rem}
@media (min-width: 60em) {.navigation--narrow {display: none}
}
.navigation--wide {display: none; padding-left: 2rem; padding-right: 2rem}
@media (min-width: 60em) {.navigation--wide {display: block}
}
.navigation-actions {align-items: center; display: flex; height: 100%; margin-left: auto}
.navigation-actions > * {margin-left: 0.8rem}
.navigation-content {display: none; flex-grow: 1}
.navigation-content-link {background: none; border: 0; color: var(--white); cursor: pointer; display: block; font-size: 0.8706em; font-weight: bold; letter-spacing: 0.1em; line-height: 1.6rem; margin: 1.2rem 0; padding: 0; text-decoration: none; text-transform: uppercase}
.navigation-content-link:hover, .navigation-content-link:focus {opacity: 0.7}
.navigation-content-link.is-active {color: --var-white}
.navigation-events {color: var(--grayT); margin-right: -0.375rem; padding: 0.375rem}
.navigation-events.is-active {color: var(--gold)}
.navigation-header {align-items: center; display: flex; flex-shrink: 0; justify-content: space-between; height: 4.8rem}
.navigation-logo {width: 5.2rem}
@media (min-width: 60em) {.navigation-logo {width: 6.4rem}
}
.navigation-pages {display: flex; margin-left: 1.2rem}
.navigation-pages-link {background: none; border: 0; color: var(--grayT); cursor: pointer; font-size: 0.7579em; font-weight: bold; letter-spacing: 0.1em; line-height: 4.8rem; padding: 0 0.8rem; position: relative; text-decoration: none; text-transform: uppercase}
.navigation-pages-link:hover, .navigation-pages-link:focus {color: var(--white)}
.navigation-pages-link::before {background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12"><path fill="%23E3C069" d="M5.999.3l5.154 11.338-5.254-3.982-5.054 3.982z"/></svg>'); content: ''; height: 12px; left: 50%; margin-left: -6px; opacity: 0; position: absolute; top: 1rem; width: 12px}
.flagged-menu::before {background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12"><path fill="%2347E1A9" d="M5.999.3l5.154 11.338-5.254-3.982-5.054 3.982z"/></svg>'); content: ''; height: 12px; left: 50%; margin-left: -6px; opacity: 1; position: absolute; top: 1rem; width: 12px}
.navigation-pages-link.is-active {color: var(--white)}
.navigation-pages-link.is-active::before {opacity: 1}
.navigation-toggle {background: none; border: 0; padding: 0}
.navigation-toggle span {display: block; height: 1.2rem; padding: 0.4rem; position: relative; width: 1.2rem}
.navigation-toggle span::after, .navigation-toggle span::before {background: var(--white); border-radius: 1px; content: ''; height: 2px; left: 0.4rem; margin-top: -1px; position: absolute; right: 0.4rem; top: 50%; transition: transform 250ms cubic-bezier(0.23, 1, 0.32, 1); transform-origin: center center}
.navigation-toggle span::after {transform: translateY(-0.2rem)}
.navigation-toggle span::before {transform: translateY(0.2rem)}
.navigation-user {align-items: center; border-bottom: 1px solid rgba(var(--white-rgb), 0.3); border-top: 1px solid rgba(var(--white-rgb), 0.3); display: flex; justify-content: center; margin: 0 -1.2rem; padding: 0.4rem 1.2rem; width: 100%}
.navigation-user span {font-size: 0.8706em; margin-left: 0.4rem}
.navigationSide {border-left: 1px solid rgba(var(--white-rgb), 0.3); padding-bottom: 0.8rem; padding-left: 1.2rem; padding-top: 0.8rem}
@media (min-width: 50em) {.navigationSide.is-collapsed {border-left: 0; padding: 0}
.navigationSide.is-collapsed .navigationSide-hideable {display: none}
.navigationSide.is-collapsed .navigationSide-link:hover::after, .navigationSide.is-collapsed .navigationSide-link:focus::after {opacity: 0}
}
.navigationSide--fullHeight {min-height: 100%; padding-bottom: 0; padding-top: 0}
.navigationSide--S .navigationSide-link {font-size: 0.8706em; line-height: 1.2rem}
.navigationSide--S .navigationSide-list li:not(:last-child) {margin-bottom: 0.8rem}
.navigationSide-hideable {margin-left: 0.8rem}
.navigationSide-icon {margin-right: 0.4rem}
.navigationSide-link {background: transparent; border: 0; color: var(--grayT); cursor: pointer; display: block; padding: 0; position: relative; text-decoration: none}
.navigationSide-link:hover, .navigationSide-link:focus {color: var(--white)}
.navigationSide-link:hover::after, .navigationSide-link:focus::after {opacity: 1}
.navigationSide-link::after {background: var(--white); bottom: 0; content: ''; left: -1.2rem; opacity: 0; position: absolute; top: 0; width: 0.2rem}
.navigationSide-link.is-disabled {cursor: not-allowed}
.navigationSide-link.is-disabled:hover, .navigationSide-link.is-disabled:focus {color: var(--grayT)}
.navigationSide-link.is-disabled:hover::after, .navigationSide-link.is-disabled:focus::after {opacity: 0}
.navigationSide-link.is-active {color: var(--white)}
.navigationSide-link.is-active::after {opacity: 1}
.navigationSide-list {list-style-type: none; margin: 0; padding: 0}
.navigationSide-list li {margin: 0 0 0 -1px}
.navigationSide-list li:not(:last-child) {margin-bottom: 1.2rem}
.navigationSticky {background: var(--graySS); height: 3.2rem; padding: 0 0.8rem; position: sticky; top: 0; z-index: 100}
@media (min-width: 42em) {.navigationSticky {height: 6.4rem; padding-left: 1.2rem; padding-right: 1.2rem; top: -3.2rem}
}
@media (min-width: 60em) {.navigationSticky {padding-left: 2rem; padding-right: 2rem}
}
.navigationSticky--project {align-items: center; display: flex; height: 3.2rem; justify-content: space-between; margin-top: -3.2rem; top: 0}
@media (min-width: 42em) {.navigationSticky--project .navigationSticky-content {justify-content: flex-end}
}
.navigationSticky-content {align-items: center; display: flex; justify-content: center; position: relative; width: 100%}
.navigationSticky-follow {align-items: center; display: none; height: 3.2rem; justify-content: flex-end; max-width: 10rem; margin: -3.2rem 0 0 auto; position: sticky; top: 0; z-index: 10}
@media (min-width: 42em) {.navigationSticky-follow {display: flex}
}
.navigationSticky-header {align-items: center; display: none}
.navigationSticky-header > * + * {margin-left: 0.4rem}
@media (min-width: 42em) {.navigationSticky-header {display: flex}
}
.navigationSticky-header--stickyUser {height: 3.2rem; margin-top: -3.2rem; position: sticky; top: 0}
.navigationSticky-header-heading {font-size: 1em; font-weight: bold; line-height: 1.2rem; margin: 0 0 0.1rem; max-width: 10rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap}
.navigationSticky-header-subheading {display: block; font-size: 0.7579em; line-height: 0.8rem; opacity: 0.8}
.navigationSticky-link {background: none; border: 0; color: var(--grayT); cursor: pointer; font-size: 0.8706em; font-weight: bold; line-height: 3.2rem; padding: 0 0.6rem; text-decoration: none}
.navigationSticky-link:hover, .navigationSticky-link:focus {color: var(--white)}
@media (min-width: 35em) {.navigationSticky-link {padding-left: 0.8rem; padding-right: 0.8rem}
}
.navigationSticky-link.is-active {color: var(--white)}
.navigationSticky-social > * + * {margin-left: 0.4rem}
.navigationSticky-social + * {border-left: 2px solid rgba(var(--white-rgb), 0.1); display: none; margin-left: 1.2rem; padding-left: 1.2rem}
@media (min-width: 35em) {.navigationSticky-social + * {display: block}
}
.navigationSub {display: flex; padding: 0.4rem 0.4rem; background: var(--gold); align-content: center; position: relative; align-items: center; justify-content: flex-end; flex-direction: column}
@media (min-width: 50em) {.navigationSub {justify-content: center; flex-direction: row}
}
@media (pointer: coarse) {.navigationSub {justify-content: start; align-items: normal; flex-wrap: nowrap; overflow-x: auto; -webkit-overflow-scrolling: touch; -ms-overflow-style: -ms-autohiding-scrollbar; flex-direction: row}
.navigationSub::-webkit-scrollbar {display: none}
}
.navigationSub > * {flex: 0 0 auto; margin-left: 0; margin-right: 0.5rem; padding: 5px 0; width: auto}
.navigationSub > *:last-child {margin-right: 0 !important; padding-right: 0.4rem !important}
@media (min-width: 60em) {.navigationSub > * {margin-right: 1.2rem}
}
.navigationSub input, .navigationSub select {background-color: var(--gold) !important; border: 1px solid rgba(var(--grayS-rgb), 0.5) !important; color: var(--grayS) !important}
.navigationSub input:focus, .navigationSub select:focus {border-color: var(--grayS-rgb) !important}
.navigationSub input::-ms-input-placeholder, .navigationSub select::-ms-input-placeholder {color: rgba(var(--grayS-rgb), 0.5) !important}
.navigationSub input::placeholder, .navigationSub select::placeholder {color: rgba(var(--grayS-rgb), 0.5) !important}
.navigationSub .field-select::after {border-top-color: var(--grayS) !important}
@media (pointer: fine) {.navigationSub--canCenter {justify-content: center}
}
.navigationSub-school .field-select::after {display: none}
.navigationSub-action {display: none; margin-left: auto; position: absolute; right: 0.8rem; top: 50%; transform: translateY(-50%)}
@media (min-width: 35em) {.navigationSub-action {display: block}
}
@media (min-width: 50em) {.navigationSub-action {right: 1.2rem}
}
@media (min-width: 60em) {.navigationSub-action {right: 2rem}
}
.navigationSub-back {border-right: 1px solid rgba(var(--grayS-rgb), 0.5); color: var(--grayS); left: 0; line-height: 3.2rem; max-width: 8rem; opacity: 0.5; overflow: hidden; padding-left: 2.8rem; position: absolute; text-overflow: ellipsis; top: 0; white-space: nowrap; width: 0}
.navigationSub-back:hover, .navigationSub-back:focus {color: var(--grayS); opacity: 0.75}
.navigationSub-back::after {border-left: 0.2rem solid transparent; border-right: 0.2rem solid transparent; border-top: 0.3rem solid var(--grayS); content: ''; height: 0; width: 0; left: 1.2rem; position: absolute; top: 50%; transform: translateY(-50%) rotate(90deg)}
@media (min-width: 50em) {.navigationSub-back {border-right: 0; padding-left: 0.8rem; left: 1.2rem; max-width: 14rem; width: auto}
.navigationSub-back::after {left: 0}
}
@media (min-width: 60em) {.navigationSub-back {left: 2rem}
}
.navigationSub-pages {display: flex; align-items: center}
@media (pointer: fine) {.navigationSub-pages {flex-wrap: wrap; justify-content: center}
}
.navigationSub-pages-link {color: var(--grayS); font-size: 0.7579em; font-weight: bold; margin: 0 0.8rem; opacity: 0.5; text-decoration: none}
.navigationSub-pages-link:hover, .navigationSub-pages-link:focus {color: var(--grayS); opacity: 0.75}
@media (min-width: 50em) {.navigationSub-pages-link {margin-left: 1.2rem; margin-right: 1.2rem}
}
.navigationSub-pages-link.is-active {opacity: 1}
.navigationSub-search-form {display: block; position: static; left: 1.2rem; right: 2.8rem; top: 0.6rem}
.pagination {text-align: center}
.pagination-content {margin: 0 0.8rem}
.rating {border: 1px solid rgba(var(--white-rgb), 0.5); border-radius: 0.15rem; display: flex; justify-content: space-between; margin-bottom: 1.2rem; padding: 0.625rem}
.rating:focus-within {border-color: var(--white); outline: var(--gold) auto 5px; outline: -webkit-focus-ring-color auto 5px}
.rating div {display: inline-flex; height: 1.625rem; flex-direction: row-reverse; justify-content: flex-end}
.rating div:hover input:checked + label, .rating div:hover input:focus + label, .rating div:focus input:checked + label, .rating div:focus input:focus + label {opacity: 0.3}
.rating div:hover input:checked + label:hover, .rating div:hover input:focus + label:hover, .rating div:focus input:checked + label:hover, .rating div:focus input:focus + label:hover {opacity: 1}
.rating div:hover input:checked + label.rating--half, .rating div:hover input:focus + label.rating--half, .rating div:focus input:checked + label.rating--half, .rating div:focus input:focus + label.rating--half {opacity: 0}
.rating div:hover input:checked + label.rating--half:hover, .rating div:hover input:focus + label.rating--half:hover, .rating div:focus input:checked + label.rating--half:hover, .rating div:focus input:focus + label.rating--half:hover {opacity: 1}
.rating div:hover input:checked ~ label, .rating div:hover input:focus ~ label, .rating div:focus input:checked ~ label, .rating div:focus input:focus ~ label {opacity: 0.7}
.rating div:hover input:checked ~ label.rating--half, .rating div:hover input:focus ~ label.rating--half, .rating div:focus input:checked ~ label.rating--half, .rating div:focus input:focus ~ label.rating--half {opacity: 0.7}
.rating div:hover input:checked ~ label ~ label, .rating div:hover input:focus ~ label ~ label, .rating div:focus input:checked ~ label ~ label, .rating div:focus input:focus ~ label ~ label {opacity: 0.7}
.rating div:hover input:checked ~ label ~ label.rating--half, .rating div:hover input:focus ~ label ~ label.rating--half, .rating div:focus input:checked ~ label ~ label.rating--half, .rating div:focus input:focus ~ label ~ label.rating--half {opacity: 0}
.rating div:hover input:checked ~ label:hover, .rating div:hover input:focus ~ label:hover, .rating div:focus input:checked ~ label:hover, .rating div:focus input:focus ~ label:hover {opacity: 1}
.rating div:hover input:checked ~ label:hover.rating--half, .rating div:hover input:focus ~ label:hover.rating--half, .rating div:focus input:checked ~ label:hover.rating--half, .rating div:focus input:focus ~ label:hover.rating--half {opacity: 1}
.rating div:hover input:checked ~ label:hover ~ label, .rating div:hover input:focus ~ label:hover ~ label, .rating div:focus input:checked ~ label:hover ~ label, .rating div:focus input:focus ~ label:hover ~ label {opacity: 1}
.rating div:hover input:checked ~ label:hover ~ label.rating--half, .rating div:hover input:focus ~ label:hover ~ label.rating--half, .rating div:focus input:checked ~ label:hover ~ label.rating--half, .rating div:focus input:focus ~ label:hover ~ label.rating--half {opacity: 1}
.rating input {clip: rect(1px, 1px, 1px, 1px); height: 0; opacity: 0; overflow: hidden; position: absolute; width: 0}
.rating input:checked + label, .rating input:focus + label {opacity: 1}
.rating input:checked + label.rating--half, .rating input:focus + label.rating--half {opacity: 1}
.rating input:checked + label ~ label, .rating input:focus + label ~ label {opacity: 1}
.rating input:checked + label ~ label:hover, .rating input:focus + label ~ label:hover {opacity: 1}
.rating label {cursor: pointer; opacity: 0.3; padding: 0.1875rem}
.rating label::before {content: ''; display: inline-block; background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path fill="%23E3C069" d="M10 16.272l-6.18 3.249L5 12.639 0 7.765l6.91-1.004L10 .5l3.09 6.261L20 7.765l-5 4.874 1.18 6.882z"/></svg>'); background-repeat: no-repeat; background-size: 1rem 1rem; height: 1rem; width: 1rem}
.rating label.rating--half {margin-right: -0.875rem; opacity: 0; z-index: 2}
.rating label.rating--half::before {background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 10 20" xmlns="http://www.w3.org/2000/svg"><path fill="%23E3C069" d="M10 16.272l-6.18 3.249L5 12.639 0 7.765l6.91-1.004L10 .5z"/></svg>'); background-size: 0.5rem 1rem; width: 0.5rem}
.rating label:hover {opacity: 1}
.rating label:hover.rating--half {opacity: 1}
.rating label:hover ~ label {opacity: 1}
.rating-score {display: inline-block; font-size: 1.1487em; font-weight: bold; margin-right: 0.125rem; vertical-align: 0.125rem}
.row {margin-bottom: 2rem; margin-top: 2rem}
@media (min-width: 60em) {.row {margin-bottom: 4rem; margin-top: 4rem}
}
.row--bg--map {background-image: url("/assets/backgrounds/map.svg"); background-position: center; background-repeat: repeat-x; background-size: auto 100%}
.row--bg--grid--R9 {background-image: linear-gradient(to right, var(--grayS) 35.7%, rgba(var(--grayS-rgb), 0) 35.7%), url("/assets/backgrounds/grid.svg"); background-position: top left; background-size: 100% 100%, 22rem 22rem}
.row--bg--grid--R9.black {background-image: linear-gradient(to right, var(--graySS) 35.7%, rgba(var(--graySS-rgb), 0) 35.7%), url("/assets/backgrounds/grid.svg")}
.row--bg--grid--L11 {background-image: linear-gradient(to left, var(--grayS) 21.4%, rgba(var(--grayS-rgb), 0) 21.4%), url("/assets/backgrounds/grid.svg"); background-position: top left; background-size: 100% 100%, 22rem 22rem}
.row--bg--plus--bottom {position: relative}
.row--bg--plus--bottom::after {background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 27 27" xmlns="http://www.w3.org/2000/svg"><path fill="%23E3C069" opacity="0.2" d="M5 4h4v1H5v4H4V5H0V4h4V0h1z"/></svg>'); background-repeat: repeat; background-size: 1.6rem 1.6rem; bottom: 0; content: ''; display: block; height: 2.8rem; left: 0; position: absolute; right: 0}
.row--bg--plus--top {position: relative}
.row--bg--plus--top::before {background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 27 27" xmlns="http://www.w3.org/2000/svg"><path fill="%23E3C069" opacity="0.2" d="M5 4h4v1H5v4H4V5H0V4h4V0h1z"/></svg>'); background-repeat: repeat; background-size: 1.6rem 1.6rem; content: ''; display: block; height: 2.4rem; left: 0; position: absolute; right: 0; top: 0.4rem}
.row--bg--plus--L10 {background-image: linear-gradient(to left, var(--grayS) 28.6%, rgba(var(--grayS-rgb), 0) 28.6%), url('data:image/svg+xml;utf8,<svg viewBox="0 0 27 27" xmlns="http://www.w3.org/2000/svg"><path fill="%23E3C069" opacity="0.2" d="M5 4h4v1H5v4H4V5H0V4h4V0h1z"/></svg>'); background-repeat: repeat; background-size: 100% 100%, 1.6rem 1.6rem}
.row--bg--plus--LBuild {background-image: linear-gradient(var(--grayS), var(--grayS)), linear-gradient(to right, rgba(var(--grayS-rgb), 0) 57.1%, var(--grayS) 57.1%), url('data:image/svg+xml;utf8,<svg viewBox="0 0 27 27" xmlns="http://www.w3.org/2000/svg"><path fill="%23E3C069" opacity="0.2" d="M5 4h4v1H5v4H4V5H0V4h4V0h1z"/></svg>'); background-repeat: no-repeat, no-repeat, repeat; background-size: 100% 10.2rem, 100% 100%, 1.6rem 1.6rem}
.row--bg--plus--R9 {background-image: linear-gradient(to right, var(--grayS) 35.7%, rgba(var(--grayS-rgb), 0) 35.7%), url('data:image/svg+xml;utf8,<svg viewBox="0 0 27 27" xmlns="http://www.w3.org/2000/svg"><path fill="%23E3C069" opacity="0.2" d="M5 4h4v1H5v4H4V5H0V4h4V0h1z"/></svg>'); background-repeat: repeat; background-size: 100% 100%, 1.6rem 1.6rem}
.row--bg--plus--R11 {background-image: linear-gradient(to right, var(--grayS) 21.4%, rgba(var(--grayS-rgb), 0) 21.4%), url('data:image/svg+xml;utf8,<svg viewBox="0 0 27 27" xmlns="http://www.w3.org/2000/svg"><path fill="%23E3C069" opacity="0.2" d="M5 4h4v1H5v4H4V5H0V4h4V0h1z"/></svg>'); background-repeat: repeat; background-size: 100% 100%, 1.6rem 1.6rem}
.row--bg--solid {background-color: var(--graySS)}
.row--collapse {padding-bottom: 1px; padding-top: 1px}
.row--L {margin-bottom: 4rem; margin-top: 4rem}
@media (min-width: 60em) {.row--L {margin-bottom: 8rem; margin-top: 8rem}
}
.row--S {margin-bottom: 1.2rem; margin-top: 1.2rem}
@media (min-width: 60em) {.row--S {margin-bottom: 2rem; margin-top: 2rem}
}
.search {color: var(--grayS); position: relative}
.search input {background: var(--gold); border: 1px solid rgba(var(--grayS-rgb), 0.5); border-radius: 0.15rem; box-sizing: border-box; color: var(--grayS); display: block; font-size: 0.8706em; line-height: 1.2rem; padding: calc(0.4rem - 1px) 0.8rem calc(0.4rem - 1px) 2rem; width: 100%}
.search input:disabled {cursor: not-allowed}
.search input:focus {border-color: var(--grayS)}
.search input::-ms-input-placeholder {color: rgba(var(--grayS-rgb), 0.5)}
.search input::placeholder {color: rgba(var(--grayS-rgb), 0.5)}
.search-icon {pointer-events: none; position: absolute; left: 0; line-height: 2rem; text-align: center; top: 0; width: 2rem}
.session {animation: layout 200ms linear 200ms backwards; box-sizing: border-box; display: flex; flex-direction: column; min-height: 100vh; padding-top: 0.2rem}
.session::after {background: linear-gradient(to right, #C5A05D, #E3C069); content: ''; height: 0.2rem; left: 0; position: absolute; right: 0; top: 0}
@media (min-width: 55em) {.session {flex-direction: row}
}
@keyframes session {from {opacity: 0}
}
.session-container {align-items: center; display: flex; flex-grow: 1; justify-content: center; position: relative}
.session-container::after {background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 27 27" xmlns="http://www.w3.org/2000/svg"><path fill="%23E3C069" opacity="0.2" d="M5 4h4v1H5v4H4V5H0V4h4V0h1z"/></svg>'); background-repeat: repeat; background-size: 1.6rem 1.6rem; bottom: 0; content: ''; display: block; height: 2.8rem; left: 1.2rem; position: absolute; right: 0}
@media (min-width: 35em) {.session-container {padding: 2rem}
}
.session-content {box-sizing: border-box; max-width: 28rem; padding: 1.2rem; position: relative; width: 100%; z-index: 10}
.session-content::after {background: var(--white); content: ''; display: none; height: 2rem; left: -1px; position: absolute; top: 2rem; width: 0.4rem}
@media (min-width: 35em) {.session-content {border-left: 1px solid rgba(var(--white-rgb), 0.3); padding: 2rem}
.session-content::after {display: block}
}
@media (min-width: 60em) {.session-content {padding: 4rem}
.session-content::after {top: 4rem}
}
.session-header {background-color: var(--graySS); background-image: linear-gradient(rgba(var(--graySS-rgb), 0) 50%, var(--graySS)), url("/assets/backgrounds/grid.svg"); display: flex; flex-direction: column; justify-content: space-between; padding: 1.2rem}
@media (min-width: 35em) {.session-header {padding: 2rem}
}
@media (min-width: 60em) {.session-header {padding-left: var(--space); padding-right: var(--space)}
}
@media (min-width: 55em) {.session-header {width: 14rem}
}
.session-header-content {align-items: center; display: flex}
@media (min-width: 55em) {.session-header-content {display: block}
}
.session-header-content--list {align-items: flex-start; flex-wrap: wrap}
.session-header-content--list .session-header-heading {flex-basis: 100%}
@media (min-width: 35em) {.session-header-content--list {flex-wrap: no-wrap}
}
.session-header-logo {margin-bottom: 2rem; width: 6.4rem}
.session-header-media {margin-right: 1.2rem; width: 8rem}
@media (min-width: 55em) {.session-header-media {margin: 0 -2rem; width: auto}
}
.session-meta {font-size: 0.8706em; margin-top: 2rem; text-align: center}
.session-spacer {display: none}
@media (min-width: 55em) {.session-spacer {display: block}
}
.stat {color: var(--white); font-family: "Source Code Pro", "Source Sans Pro", sans-serif; font-size: 0.8706em; letter-spacing: 0.1em; padding: 4rem 2rem; text-align: center; text-transform: uppercase}
.stat span {color: var(--gold)}
@media (min-width: 75em) {.stat {font-size: 1em; padding-bottom: 6rem; padding-top: 6rem}
}
@media (min-width: 95em) {.stat {font-size: 1.1487em}
}
.stat--S {padding-bottom: 2rem; padding-top: 2rem}
@media (min-width: 75em) {.stat--S {padding-bottom: 4rem; padding-top: 4rem}
}
.stat-icon {align-items: center; background: var(--graySS); border-radius: 50%; box-sizing: border-box; color: var(--gold); display: flex; height: 2.8rem; justify-content: center; margin: 0 auto 0.4rem; width: 2.8rem}
@media (min-width: 95em) {.stat-icon {margin-bottom: 0.8rem}
}
.switch {display: flex; width: 100%}
@media (min-width: 50em) {.switch {width: auto}
}
.switch-link {border: 1px solid var(--white); box-sizing: border-box; color: var(--white); display: block; font-size: 0.7579em; font-weight: bold; letter-spacing: 0.1em; line-height: 1.2rem; opacity: 0.5; padding: calc(0.4rem - 1px) 0.8rem; text-decoration: none; text-transform: uppercase}
.switch-link:hover, .switch-link:focus {opacity: 0.8}
.switch-link:first-child {border-radius: 0.15rem 0 0 0.15rem; border-right: 0}
.switch-link:last-child {border-radius: 0 0.15rem 0.15rem 0; border-left: 0}
.switch-link.is-active {background: var(--white); color: var(--grayS); opacity: 1}
.table-header {color: var(--white); display: none; padding-right: 3.2rem}
.table-header span {box-sizing: border-box; display: block; font-size: 0.8706em; font-weight: bold; line-height: 1.2rem; padding: 0.4rem 2rem 0.4rem 0.4rem; width: 100%}
@media (min-width: 50em) {.table-header {display: flex}
}
.table-header--collaborators {padding-right: 0}
.table-header--collaborators span {width: 33.333333%}
.table-header--draft {padding-right: 0}
.table-header--draft span {width: 40%}
.table-header--draft span:nth-child(2) {width: 50%}
.table-header--draft span:nth-child(3) {padding-left: 0; padding-right: 0.4rem; text-align: right; width: 10%}
.table-header--judge {padding-right: 0}
.table-header--judge span {width: 25%}
.table-header--judge span:first-child {width: 50%}
.table-header--prize {padding-right: 0}
.table-header--prize span {width: 30%}
.table-header--prize span:nth-child(3) {width: 15%}
.table-header--prize span:nth-child(4) {width: 25%}
.table-row {border-top: 1px solid rgba(var(--white-rgb), 0.3); color: var(--white); display: flex; flex-wrap: wrap; padding: 0.8rem 3.2rem 0.8rem 0; position: relative}
.table-row span {box-sizing: border-box; padding: 0 0.4rem; width: 100%}
.table-row span:first-child {font-weight: bold}
.table-row span:not(:last-of-type) {margin-bottom: 0.4rem}
.table-row span:nth-child(2) {font-weight: bold}
@media (min-width: 50em) {.table-row {flex-wrap: nowrap}
.table-row span {width: 25%}
.table-row span:not(:last-of-type) {margin-bottom: 0}
.table-row strong {display: none}
}
.table-row--collaborators {padding-right: 0}
@media (min-width: 50em) {.table-row--collaborators span {width: 33.333333%}
.table-row--collaborators span:nth-child(3) > * + * {margin-left: 0.8rem}
}
.table-row--draft {padding-right: 0}
@media (min-width: 50em) {.table-row--draft span {width: 40%}
.table-row--draft span:nth-child(2) {width: 50%}
.table-row--draft span:nth-child(3) {padding-right: 0.4rem; text-align: right; width: 10%}
}
.table-row--judge {padding-right: 0}
.table-row--judge span:nth-child(2) {font-weight: normal}
.table-row--judge svg {height: 1.5rem; width: 1.5rem}
@media (min-width: 50em) {.table-row--judge span {width: 25%}
.table-row--judge span:first-child {width: 50%}
}
.table-row--prize.results {padding-right: 0}
@media (min-width: 50em) {.table-row--prize.results span {width: 70%}
.table-row--prize.results span:nth-child(2) {width: 30%}
}
.table-row--prize {padding-right: 0}
@media (min-width: 50em) {.table-row--prize span {width: 30%}
.table-row--prize span:nth-child(3) {width: 15%}
.table-row--prize span:nth-child(4) {width: 25%}
}
.table-row-action {position: absolute; right: 0.4rem; top: 0.6rem}
.tag {background: rgba(var(--green-rgb), 0.6); border-radius: 0.075rem; padding: 0 0.4rem; letter-spacing: 0.1em; line-height: 1.2rem; font-weight: bold; font-size: 0.7579em; text-transform: uppercase}
.tag--gold {background: rgba(var(--gold-rgb), 0.85)}
.tag--gray {background: rgba(var(--black-rgb), 0.4)}
.tag--orange {background: rgba(var(--orange-rgb), 0.85)}
.tag-list {display: inline-flex; font-size: 0.8706em; line-height: 1.2rem; margin-right: 1.2rem}
.tag-list > *:first-child {flex-shrink: 0}
.team-container {grid-column-end: span 12; grid-row: 2; position: relative}
@media (min-width: 50em) {.team-container {grid-column: 4 / span 9; grid-row: 1; margin-top: 4rem}
}
@media (min-width: 60em) {.team-container {grid-column: 4 / span 9}
}
@media (min-width: 50em) {.team-container-content {margin-left: var(--space)}
}
.team-container-header {align-items: flex-start; display: flex; justify-content: space-between; margin-bottom: 2rem}
.team-container-header::after {background: rgba(var(--white-rgb), 0.3); content: ''; flex-grow: 1; height: 1px; margin-top: 0.5rem; margin-left: 1.2rem; min-width: 0}
.team-container-header h2 {color: var(--gold); font-size: inherit; font-weight: bold; letter-spacing: 0.1em; line-height: 1.2rem; margin: 0; text-transform: uppercase}
.team-media {grid-column-end: span 12; grid-row: 1}
@media (min-width: 50em) {.team-media {grid-column: 1 / span 4; margin-left: calc(var(--space) * -1)}
}
@media (min-width: 60em) {.team-media {grid-column: 1 / span 4}
}
.team-media-image {height: 20rem; position: relative}
.team-media-image::after {background: var(--gold); bottom: 0; content: ''; height: 0.2rem; left: 0; position: absolute; right: var(--space)}
.team-media-image img {height: 100%; left: 0; object-fit: cover; object-position: center; position: absolute; top: 0; width: 100%}
@media (min-width: 50em) {.team-media-image {height: auto; padding-top: 100%}
}
.team-media-social {margin: 0.8rem 0}
.team-media-social > * + * {margin-left: 0.8rem}
@media (min-width: 50em) {.team-media-social {margin: 1.6rem var(--space)}
}
.upload {text-align: center}
.upload input {display: none}
.upload label {cursor: pointer; border: 1px dashed rgba(var(--white-rgb), 0.3); border-radius: 0.15rem; display: block; padding: 2rem}
.upload label:hover strong {color: var(--white)}
.upload strong {color: var(--grayTT); display: block; margin: 0.4rem 0}
.upload.is-dragOver {background: rgba(var(--gold-rgb), 0.2); border-color: var(--gold); cursor: copy}
.upload.is-dragOver label {cursor: copy}
.upload.is-uploading .upload-icon #icon-upload-arrow {animation: upload 1000ms ease-in-out alternate infinite}
.upload--L label {padding-bottom: 8rem; padding-top: 8rem}
.upload--S {font-size: 0.8706em; text-align: left}
.upload--S label {align-items: center; border: 0; display: flex; flex-wrap: wrap; padding: 0}
.upload--S strong {margin-left: 0.4rem; margin-right: 0.4rem; text-decoration: underline}
.upload--S .upload-message {width: 100%}
@keyframes upload {to {transform: translateY(4px)}
}
.upload-icon svg {fill: var(--white); width: 50%; height: 50%}
.upload-message {opacity: 0.5}
.upload-progress {background: var(--grayT); height: 0.8rem; max-width: 22rem; margin: 1.2rem auto}
.upload-progress-percentage {animation: 3000ms upload-progress-percentage-in linear; background: var(--gold); height: 100%; transform-origin: left center}
@keyframes upload-progress-percentage-in {from {transform: scale(0, 1)}
}
.widescreen {position: relative; padding-bottom: 56.25%; padding-top: 25px; height: 0}
.widescreen > * {position: absolute; top: 0; left: 0; width: 100%; height: 100%}
.project-content > div, a.builder-image.photoswipe-trigger {margin-bottom: 10px}
.project-content > div:last-child, a.builder-image.photoswipe-trigger:last-child {margin-bottom: 0}
.builder {align-items: flex-start; display: flex; justify-content: space-between; flex-direction: column}
@media (min-width: 50em) {.builder {flex-direction: row}
}
.builder-actions > * + * {margin-top: 0.8rem}
@media (min-width: 50em) {.builder-actions > * + * {margin-left: 0.8rem; margin-top: 0}
}
.builder-actions-delete {-webkit-appearance: none; background: none; border: 0; color: var(--grayT); cursor: pointer; font-size: 0.8706em; padding: 0; text-decoration: underline; vertical-align: -0.125rem}
.builder-actions-delete:hover {color: var(--grayT)}
.builder-actions-delete:hover:hover, .builder-actions-delete:hover:focus {color: var(--white)}
.builder-actions--narrow {margin-top: 1.2rem}
@media (min-width: 50em) {.builder-actions--narrow {display: none}
}
.builder-actions--wide {display: none}
@media (min-width: 50em) {.builder-actions--wide {display: block}
}
.builder-card {animation: builder-card 400ms ease; border: 1px solid rgba(var(--white-rgb), 0.3); padding: 1.2rem; position: relative}
.builder-card + .builder-card {margin-top: 1.2rem}
.builder-card > *:last-child {margin-bottom: 0}
.builder-card .builder-narrow img {width: initial; max-height: calc(60vh); margin: 0 auto 10px}
.builder-card.is-editing {border-color: var(--gold)}
.builder-card.is-editing .builder-card-header {position: static}
.builder-card.is-filled {border: 0; padding: 0}
@keyframes builder-card {from {background: var(--gold); opacity: 0}
}
.builder-card-actions {position: absolute; right: 1.2rem; top: 1.1rem; z-index: 10}
.builder-card-actions > * + * {margin-left: 0.4rem}
.builder-card-heading {display: block; font-size: 0.8706em; font-weight: bold; margin-bottom: 1.2rem; padding-right: 4rem}
.builder-content {background: var(--grayS); border: 1px solid rgba(var(--white-rgb), 0.3); border-radius: 0.15rem; box-sizing: border-box; flex-grow: 1; min-height: 26rem; padding: 1.2rem; width: 100%}
.builder-content--L {padding: 2rem}
.builder-embed {overflow: hidden; padding-top: 56.25%; position: relative}
.builder-embed iframe {border: 0; height: 100%; left: 0; position: absolute; top: 0; width: 100%}
.builder-embedGist {min-height: 23.2rem; overflow: scroll; position: relative}
.builder-embedGist iframe {border: 0; height: 100%; left: 0; position: absolute; top: 0; width: 100%}
.builder-empty {animation: builder-empty 400ms ease; padding-top: 2rem; text-align: center}
.builder-empty img {margin: 0 auto 2rem; max-width: 12rem}
@keyframes builder-empty {from {opacity: 0}
}
.builder-form {flex-shrink: 0; margin-top: 2rem; width: 100%}
@media (min-width: 50em) {.builder-form {margin-left: 2rem; margin-top: 0; width: 20rem}
}
.builder-hideCheckbox {-moz-appearance: none; -webkit-appearance: none; appearance: none; background: none; border: 0; height: 0; width: 0}
.builder-image {display: block}
.builder-image img {width: 100%; margin-bottom: 10px}
.builder-image img:last-child {margin-bottom: 0}
.builder-imageAction {position: absolute; right: 5.6rem; top: 1.1rem; z-index: 10}
.builder-list {align-items: center; background: var(--grayS); border: 1px solid rgba(var(--white-rgb), 0.3); display: flex; font-size: 0.8706em; font-weight: bold; margin-bottom: 0.4rem; position: relative}
.builder-list:last-child {margin-bottom: 0}
.builder-list-description {font-weight: normal}
.builder-list-delete {-webkit-appearance: none; -moz-appearance: none; appearance: none; background: none; border: 0; color: var(--grayT); cursor: pointer; flex-shrink: 0; margin-left: auto; padding: 0.8rem}
.builder-list-delete:hover, .builder-list-delete:focus {color: var(--white)}
.builder-list-media {background: var(--gray); display: flex; flex-shrink: 0; height: 4rem; margin-right: 1.2rem; width: 3rem}
.builder-list-media img {height: 100%; object-fit: cover; object-position: center; width: 100%}
.builder-list-media svg {margin: auto; height: 1.6rem; width: 1.6rem}
@media (min-width: 35em) {.builder-list-media {width: 6rem}
}
.builder-list-reorder {background: var(--black); border: 0; cursor: move; display: flex; flex-shrink: 0; height: 4rem; padding: 0}
.builder-list-reorder svg {margin: auto; padding: 0.8rem}
.builder-list-reorder:hover, .builder-list-reorder:focus {color: var(--white)}
.builder-list-truncate {min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap}
.builder-narrow {width: initial; max-height: calc(100vh - 64px); margin: 0 auto; max-width: 65rem}
.builder-narrow img {width: initial; max-height: calc(100vh - 64px); margin: 0 auto}
.builder-image.builder-narrow {max-width: 75%}
.builder-process {position: relative}
.builder-process-image {background: var(--graySS); bottom: 2.9rem; display: block; left: 0; opacity: 0; position: absolute; top: 0; right: 0}
.builder-process-image:nth-child(1) {opacity: 1; position: relative}
.builder-process-image img {height: 100%; object-fit: contain; object-position: center; width: 100%; max-height: calc(100vh - 150px)}
.builder-process-indicator {background: var(--white); border-radius: 50%; color: var(--black); line-height: 1em; margin: -3.4rem 0 0 0.8rem; padding: 0.8rem; pointer-events: none; position: absolute; transition: 350ms opacity cubic-bezier(0.23, 1, 0.32, 1), 350ms transform cubic-bezier(0.23, 1, 0.32, 1); z-index: 20}
.builder-process-indicator.is-hidden {opacity: 0; transform: translateY(0.2rem)}
.builder-process-mouseArea:hover + .builder-process-indicator {opacity: 0; transform: translateY(0.2rem)}
.builder-process-range {height: 1.6rem; margin: 0 auto; max-width: 65rem; padding: 0.65rem 4rem; position: relative; z-index: 10}
@media (min-width: 75em) {.builder-process-range {padding-left: 0.8rem; padding-right: 0.8rem}
}
.builder-process-range-input {-webkit-appearance: none; -moz-appearance: none; appearance: none; background: transparent; cursor: grab; height: 1.6rem; width: 100%}
.builder-process-range-input::-ms-track {background: transparent; border-color: transparent; color: transparent; cursor: pointer}
.builder-process-range-input::-moz-range-track {height: 0.4rem; background: #E3C069; background: linear-gradient(to right, transparent 0.4rem, #E3C069 0.4rem, #E3C069 calc(100% - 0.4rem), transparent calc(100% - 0.4rem)) repeat-x}
.builder-process-range-input::-ms-track {height: 0.4rem; appearance: none; background: #E3C069; background: linear-gradient(to right, transparent 0.4rem, #E3C069 0.4rem, #E3C069 calc(100% - 0.4rem), transparent calc(100% - 0.4rem)) repeat-x}
.builder-process-range-input::-webkit-slider-runnable-track {height: 0.4rem; background: #E3C069; background: linear-gradient(to right, transparent 0.4rem, #E3C069 0.4rem, #E3C069 calc(100% - 0.4rem), transparent calc(100% - 0.4rem)) repeat-x}
.builder-process-range-input[data-steps="3"]::-moz-range-track {background-size: 50% 100%}
.builder-process-range-input[data-steps="3"]::-ms-track {background-size: 50% 100%}
.builder-process-range-input[data-steps="3"]::-webkit-slider-runnable-track {background-size: 50% 100%}
.builder-process-range-input[data-steps="4"]::-moz-range-track {background-size: 33.333% 100%}
.builder-process-range-input[data-steps="4"]::-ms-track {background-size: 33.333% 100%}
.builder-process-range-input[data-steps="4"]::-webkit-slider-runnable-track {background-size: 33.333% 100%}
.builder-process-range-input[data-steps="5"]::-moz-range-track {background-size: 25% 100%}
.builder-process-range-input[data-steps="5"]::-ms-track {background-size: 25% 100%}
.builder-process-range-input[data-steps="5"]::-webkit-slider-runnable-track {background-size: 25% 100%}
.builder-process-range-input::-moz-range-thumb {background-color: var(--white); background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 16 12" xmlns="http://www.w3.org/2000/svg"><path fill="%23201F1F" d="M15.994 5.97L9.84 10.893V1.047zM0 5.97l6.154-4.923v9.846z"/></svg>'); background-position: center; background-repeat: no-repeat; background-size: 16px 12px; border: 0; border-radius: 50%; height: 1.6rem; width: 1.6rem}
.builder-process-range-input::-webkit-slider-thumb {-webkit-appearance: none; appearance: none; background-color: var(--white); background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 16 12" xmlns="http://www.w3.org/2000/svg"><path fill="%23201F1F" d="M15.994 5.97L9.84 10.893V1.047zM0 5.97l6.154-4.923v9.846z"/></svg>'); background-position: center; background-repeat: no-repeat; background-size: 16px 12px; border: 0; border-radius: 50%; height: 1.6rem; margin-top: -0.6rem; width: 1.6rem}
.builder-process-range-input::-ms-thumb {appearance: none; background-color: var(--white); background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 16 12" xmlns="http://www.w3.org/2000/svg"><path fill="%23201F1F" d="M15.994 5.97L9.84 10.893V1.047zM0 5.97l6.154-4.923v9.846z"/></svg>'); background-position: center; background-repeat: no-repeat; background-size: 16px 12px; border: 0; border-radius: 50%; height: 1.6rem; margin: 0; width: 1.6rem}
.builder-reorder {margin-bottom: 0.4rem}
.builder-row {display: flex}
.builder-row a {display: block}
.builder-row img {width: 100%}
.builder-row.builder-narrow, .builder-process.builder-narrow {max-width: 31rem}
.builder-row.is-hidden {display: none}
.builder-sidebar {flex-shrink: 0; margin-top: 2rem}
@media (min-width: 50em) {.builder-sidebar {margin-left: 2rem; margin-top: 0; position: sticky; top: 2rem}
}
.builder-sidebar-collapse {align-items: center; -webkit-appearance: none; -moz-appearance: none; appearance: none; background: none; border: 0; color: var(--grayT); cursor: pointer; display: none; margin-bottom: 1.2rem; padding: 0}
.builder-sidebar-collapse:hover, .builder-sidebar-collapse:focus {color: var(--white)}
.builder-sidebar-collapse span {font-size: 0.8706em; font-weight: bold; letter-spacing: 0.1em; margin-left: 0.8rem; text-transform: uppercase}
.builder-sidebar-collapse svg {background: var(--gold); color: var(--gray); padding: 0.2rem; transition: 500ms transform cubic-bezier(0.23, 1, 0.32, 1)}
@media (min-width: 50em) {.builder-sidebar-collapse {display: flex}
}
.builder-sidebar-collapse.is-collapsed {margin-left: -0.2rem}
.builder-sidebar-collapse.is-collapsed span {display: none}
.builder-sidebar-collapse.is-collapsed svg {transform: rotate(-180deg)}
.builder-spacer {align-items: center; display: flex; height: 4rem; justify-content: center}
.builder-spacer span {font-size: 0.8706em; letter-spacing: 0.1em; opacity: 0.5; text-transform: uppercase}
.builder-text {margin: 0 auto; max-width: 36em}
.builder-text h2 {color: var(--white); font-family: "Quase Headline", "Georgia", serif; font-weight: bold; font-size: 1.5157em; line-height: 2rem; margin-bottom: 1.6rem; margin-top: 0}
@media (min-width: 35em) {.builder-text h2 {font-size: 2.2974em; line-height: 2.8rem}
}
.builder-text h3 {color: var(--white); font-weight: bold; font-size: 1.1487em; line-height: 1.6rem; margin-bottom: 1.2rem; margin-top: 0}
@media (min-width: 35em) {.builder-text h3 {font-size: 1.5157em; line-height: 2rem}
}
.builder-text > *:last-child {margin-bottom: 0}
.builder-wipCheckbox {align-items: center; display: flex; flex-wrap: wrap}
.builder-wipCheckbox label {color: var(--white); font-weight: bold; margin-right: 0.5ch}
.builder-wipCheckbox-description {color: var(--grayTT); margin: 0 0 1.1rem 0}
.contest-about {background: var(--graySS); padding: 2rem 1.2rem}
@media (min-width: 35em) {.contest-about {padding-left: 2rem; padding-right: 2rem}
}
@media (min-width: 75em) {.contest-about {padding: 4rem var(--space)}
}
.contest-about.pb--04 {padding: 0.4em 4em}
@media (min-width: 50em) {.contest-about-columns {column-count: 2; column-gap: 2rem}
}
.contest-about-columns-spacer {display: none; height: 10rem}
@media (min-width: 50em) {.contest-about-columns-spacer {display: block}
}
@media (min-width: 35em) {.contest-about-header {display: flex}
.contest-about-header::after {background: rgba(var(--white-rgb), 0.3); content: ''; flex-grow: 1; height: 1px; margin: 1.2rem 0 0 2rem}
}
@media (min-width: 60em) {.contest-about-header::after {margin-right: calc(var(--space) * -1 - 2rem)}
}
@media (min-width: 75em) {.contest-about-header::after {margin-right: calc(var(--space) * -1.5)}
}
.contest-about-media1 {grid-column-end: span 12}
@media (min-width: 50em) {.contest-about-media1 {grid-column: 7 / span 6; grid-row: 2; margin-left: calc(var(--space) * 0.5); margin-right: calc(var(--space) * -0.5); margin-top: -14rem}
}
.contest-about-media2 {grid-column-end: span 12}
@media (min-width: 50em) {.contest-about-media2 {grid-column: 2 / span 5; grid-row: 2; margin-top: 2rem}
}
.contest-video {overflow: hidden; padding-top: 56.25%; position: relative; z-index: 10}
.contest-video iframe {border: 0; height: 100%; left: 0; position: absolute; top: 0; width: 100%}
.contest-stat {color: var(--white); font-family: "Source Code Pro", "Source Sans Pro", sans-serif; font-size: 0.8706em; letter-spacing: 0.1em; line-height: 2rem; margin-bottom: 2rem; text-transform: uppercase}
.contest-stat-countdown {text-transform: none; white-space: nowrap}
.contest-stat-icon {color: var(--green)}
.contest-stat-iconClosed {color: var(--orange)}
.contest-entry-rule {border-bottom: 1px solid rgba(var(--white-rgb), 0.3); margin-bottom: 1.6rem; padding-bottom: 2rem}
.contest-entry-rule-heading {margin-bottom: 0.8rem; margin-top: 0; color: var(--white)}
.contest-entry-rule-list {margin-bottom: 1.2rem; margin-top: 0}
.contest-rules {counter-reset: rules-section; margin: 0 auto; max-width: 36em}
.contest-rules h1 {color: var(--white); font-weight: bold; font-size: 1.1487em; line-height: 1.6rem; margin-bottom: 1.2rem; margin-top: 0.9375rem}
.contest-rules h1::before {color: var(--grayS); counter-increment: rules-section 1; content: counter(rules-section,decimal-leading-zero); display: inline-block; font-size: 2em; margin-left: 0; margin-right: 0.5ch; opacity: 0.75; position: relative; text-shadow: 1px 1px var(--gold), -1px 1px var(--gold), 1px -1px var(--gold), -1px -1px var(--gold); vertical-align: -0.15em}
.contest-rules h1:not(:first-child) {margin-top: 3.2rem}
@media (min-width: 35em) {.contest-rules h1 {font-size: 1.5157em; line-height: 2rem; margin-top: 0.875rem}
}
@media (min-width: 47em) {.contest-rules h1::before {display: block; font-size: 2.75rem; margin-left: -3.5rem; margin-right: 0; position: absolute}
}
@media (min-width: 66em) {.contest-rules h1 {margin-top: 0.8125rem}
.contest-rules h1::before {font-size: 5rem; margin-left: -7rem}
}
.contest-rules h2, .contest-rules h3 {color: var(--white); font-weight: bold; font-size: inherit; line-height: 1.2rem; margin-bottom: 0.4rem; margin-top: 0}
@media (min-width: 35em) {.contest-rules h2, .contest-rules h3 {font-size: 1.1487em}
}
.contest-winnerHeading {position: relative}
.contest-winnerHeading::before {background: rgba(var(--white-rgb), 0.3); content: ''; height: 1px; margin-top: 1.45rem; margin-right: calc(var(--space) * -1); position: absolute; z-index: 0; top: 0; right: 0; width: 100%}
.contest-winnerHeading-text {background: var(--grayS); padding-right: 1.6rem; position: relative; z-index: 10}
@media (min-width: 35em) {.contest-winnerImage {justify-self: end}
}
@media (min-width: 75em) {.contest-winnerImage {grid-column-start: 2}
}
@media (min-width: 50em) {.contest-winnerLinks {align-items: center; display: flex}
}
.contest-winnerLinks-share {align-items: center; display: flex; margin-top: 1.6rem}
.contest-winnerLinks-share > * + * {margin-left: 0.8rem}
@media (min-width: 50em) {.contest-winnerLinks-share {margin-top: 0}
.contest-winnerLinks-share::before {content: '|'; margin: 0 0.8rem; opacity: 0.8}
}
.dashboard-blog {background: var(--grayS); text-decoration: none}
.dashboard-blog:hover {opacity: 0.8}
.dashboard-blog-heading {color: var(--white); font-size: 1.1487em; margin: 0; padding: 1.6rem; min-height: 4em}
.dashboard-blog-image {max-height: 50vw; min-height: 50vw; object-fit: cover; width: 100%}
@media (min-width: 50em) {.dashboard-blog-image {max-height: 25vw; min-height: 25vw}
}
.dashboard-new {-webkit-clip-path: polygon(0% 0%, 0% 0%, calc(100% - 2rem) 0%, 100% 2rem, 100% 100%, 100% 100%, 0% 100%, 0 100%); clip-path: polygon(0% 0%, 0% 0%, calc(100% - 2rem) 0%, 100% 2rem, 100% 100%, 100% 100%, 0% 100%, 0 100%); align-items: center; background: var(--graySS); border-bottom: 0.2rem solid var(--gold); display: flex; flex-wrap: wrap; justify-content: center; padding: 1.2rem}
.dashboard-new > *:not(:last-child) {margin-bottom: 1.2rem}
@media (min-width: 35em) {.dashboard-new {padding: 2rem}
}
@media (min-width: 50em) {.dashboard-new {flex-wrap: nowrap; justify-content: space-between}
.dashboard-new > *:not(:last-child) {margin-bottom: 0}
}
.dashboard-new--start {align-items: start; justify-content: start}
.dashboard-new-icon {margin-bottom: 0.8rem}
@media (min-width: 50em) {.dashboard-new-icon {margin-right: 2rem}
}
.dashboard-new-heading {color: var(--white); font-family: "Quase Headline", "Georgia", serif; font-size: 1.1487em; font-weight: bold; margin-bottom: 0; margin-top: 0}
@media (min-width: 50em) {.dashboard-new-heading {font-size: 1.5157em; line-height: 2rem}
}
.dashboard-notice {-webkit-clip-path: polygon(0% 0%, 0% 0%, calc(100% - 1rem) 0%, 100% 1rem, 100% 100%, 100% 100%, 0% 100%, 0 100%); clip-path: polygon(0% 0%, 0% 0%, calc(100% - 1rem) 0%, 100% 1rem, 100% 100%, 100% 100%, 0% 100%, 0 100%); align-items: center; background: var(--gold); color: var(--grayS); display: flex; flex-wrap: wrap; justify-content: space-between; margin-bottom: 1.6rem; padding: 0.8rem 2rem}
.dashboard-notice p {margin: 0}
.dashboard-level {margin-bottom: 4rem; margin-top: 8rem; padding-bottom: 4rem; padding-top: 6rem; position: relative}
.dashboard-level-badge {left: 50%; margin-left: -4rem; margin-top: -4rem; position: absolute; top: 0}
.dashboard-level-up {align-items: center; background: var(--grayS); display: flex; flex-wrap: wrap; justify-content: center; padding: 0.8rem}
.dashboard-level-up > * + * {margin-top: 0.8rem}
@media (min-width: 50em) {.dashboard-level-up > * + * {margin-left: 2rem; margin-top: 0}
}
.info-hero {display: flex; position: relative}
@media (min-width: 50em) {.info-hero {min-height: 85vh}
}
.info-hero-container {align-self: center; grid-column: 1 / span 12; grid-row: 1; margin-top: 4rem; position: relative; z-index: 10}
@media (min-width: 50em) and (min-height: 40em) {.info-hero-container {margin-top: 8rem}
}
.info-hero-container-content p {font-size: 1.1487em; max-width: 26em}
@media (min-width: 35em) {.info-hero-container-content p {font-size: 1.5157em; line-height: 2rem}
}
@media (min-width: 60em) {.info-hero-container-content {margin-left: var(--space)}
}
.info-hero-container-heading {position: relative}
.info-hero-container-heading::after {animation: info-hero-container-heading 60000ms linear infinite; background: url("/assets/illustrations/circle-rookies.svg") center no-repeat; background-size: cover; content: ''; height: 6rem; left: -3.2rem; position: absolute; top: -3rem; width: 6rem; z-index: -1}
.info-hero-container-heading span {display: block; margin-left: calc(var(--space) * 2); position: relative}
.info-hero-container-heading span::after {background: rgba(var(--white-rgb), 0.3); content: ''; height: 2px; left: calc(var(--space) * -3); margin-top: -1px; position: absolute; top: 50%; width: calc(var(--space) * 2.5)}
@media (min-width: 60em) {.info-hero-container-heading::after {height: 8rem; left: -3.2rem; top: -4rem; width: 8rem}
}
@media (min-width: 95em) {.info-hero-container-heading span::after {left: calc((100vw - 65rem) / -2 - (var(--space) * 2)); width: calc((100vw - 65rem) / 2 + (var(--space) * 1.5))}
}
@keyframes info-hero-container-heading {to {transform: rotate(1turn)}
}
.info-hero-illustration {display: none; grid-column: 8 / span 5; grid-row: 1; margin-right: calc(var(--space) * -1)}
@media (min-height: 50em) {.info-hero-illustration {grid-column: 7 / span 6}
}
@media (min-width: 50em) {.info-hero-illustration {display: block}
}
.info-icon {margin-top: -0.89vw}
.info-quote-content {background: var(--graySS); padding: 1.2rem; grid-column-end: span 12; position: relative}
.info-quote-content::after {background: var(--gold); bottom: 0; content: ''; height: 0.2rem; left: 0; position: absolute; right: var(--space)}
.info-quote-content p {font-size: 1.1487em}
.info-quote-content > *:last-child {margin: 0}
@media (min-width: 35em) {.info-quote-content {padding: 2rem}
.info-quote-content p {font-size: 1.3195em; line-height: 2rem}
}
@media (min-width: 50em) {.info-quote-content {grid-column: 2 / span 11; grid-row: 1; padding: 4rem var(--space) 4rem calc(var(--space) * 3)}
.info-quote-content p {font-size: 1.5157em; line-height: 2.4rem}
}
.info-quote-media {display: none; grid-column: 1 / span 3; grid-row: 1; margin-top: -2rem; position: relative}
.info-quote-media img {width: 100%}
@media (min-width: 50em) {.info-quote-media {display: block}
}
.info-reviews {background: var(--graySS); padding: 2rem calc(var(--space) * 0.5)}
.info-reviews-media {border-radius: 50%; width: 3.2rem}
.info-sponsor {height: 6rem}
.info-sponsor img {height: 100%; object-fit: contain; object-position: center; width: 100%}
.judge-action {position: absolute; right: 0.8rem; top: 0.8rem}
.judge-contest-heading {margin: 1.2rem 0 0}
.judge-contest-heading h1 {margin-bottom: 0.8rem}
@media (min-width: 50em) {.judge-contest-heading {align-items: center; display: flex; flex-direction: row; justify-content: space-between}
.judge-contest-heading h1 {margin-bottom: 0}
}
.judge-entry {margin: 0 auto; max-width: 36em; position: sticky; top: 1.5rem}
.judge-entry-avatar {margin-left: -4px}
.judge-entry-details {display: flex; justify-content: space-between; margin: 1.2rem 0}
.judge-entry-selection {align-items: center; display: flex; justify-content: space-between}
.judge-entry-selection > * + * {margin-left: 0.4rem}
.judge-entry-submit {align-items: center; display: flex}
.judge-entry-submit button {flex-grow: 1}
.judge-entry-hero {background-color: var(--grayS); background-image: url("/assets/backgrounds/map.svg"); background-size: cover; background-position: center; position: relative}
.judge-entry-hero img {width: 100%}
.judge-entry-hero-placeholder {padding-top: 66.666666%; width: 100%}
.judge-entry-rating {font-weight: bold; text-align: center}
.judge-entry-rating svg {fill: var(--gold); margin-right: 0.2rem}
.judge-entry-footer {align-items: center; display: flex; justify-content: space-between}
.cardEntry {margin-bottom: 1.2rem; margin-right: 0.75rem; position: relative}
.cardEntry::after, .cardEntry::before, .cardEntry .cardEntry--border {background: var(--grayS); border-radius: 2px; border: 1px solid rgba(var(--white-rgb), 0.3); content: ''; display: block; position: absolute; bottom: 0; left: 0; right: 0; top: 0}
.cardEntry::after {transform: translate(5px, 5px); z-index: -1}
.cardEntry::before {transform: translate(10px, 10px); z-index: -2}
.cardEntry .cardEntry--border {transform: translate(15px, 15px); z-index: -3}
.cardEntry--content {flex-direction: row}
.cardEntry--edit {position: absolute; right: 0.625rem; top: 0.625rem}
.judge-selection {display: flex; flex-direction: column}
@media (min-width: 60em) {.judge-selection {position: relative}
}
.judge-selection-entries {grid-gap: 0.8rem; margin: 0 auto}
@media (min-width: 60em) {.judge-selection-entries--filled {grid-template-columns: repeat(14, 1fr)}
}
.judge-selection-entry {align-items: center; background-size: cover; display: flex; justify-content: center; min-height: 5rem}
.judge-selection-entry img {height: auto; width: 100%}
@media (min-width: 75em) {.judge-selection-entry {min-height: 6rem}
}
.judge-selection-entry--blank {border: 2px dashed rgba(var(--white-rgb), 0.3)}
.judge-selection-entry--blank span {display: block; font-weight: bold}
.judge-selection-entry--header {background: var(--gray); flex-direction: column}
.judge-selection-footer {background: var(--black); bottom: 0; padding: 1.2rem 0}
@media (min-width: 60em) {.judge-selection-footer {padding: 1rem 0; position: sticky}
}
.judge-selection-form {order: 1}
@media (min-width: 60em) {.judge-selection-form {order: initial}
}
@media (min-width: 60em) {.judge-selection-submit {align-self: center}
}
.judge-subnav--wide {display: none}
@media (min-width: 30em) {.judge-subnav--wide {display: block}
.judge-subnav--wide > * + * {margin-left: 2rem}
}
.judge-subnav--narrow {display: flex; justify-content: space-between}
@media (min-width: 30em) {.judge-subnav--narrow {display: none}
}
.judge-subnav-link {display: inline-block; font-size: 0.8706em; font-weight: bold; margin-bottom: -1px; padding: 0.4rem 0; text-decoration: none}
.judge-subnav-link.is-active {border-bottom: 5px solid var(--gold); color: var(--white); opacity: 1}
.judge-subnav-link:hover.is-active {opacity: 0.5}
.judge-subnav-link span {font-weight: normal}
@media (min-width: 30em) {.judge-subnav-link {padding: 0.8rem 0}
}
.projectEntry--content {margin: 0 auto}
.projectEntry--content > * {margin: 1rem auto}
@media (min-width: 60em) {.projectEntry--content > * {margin: 2rem auto}
}
.onboard {background: url("/assets/backgrounds/map-onboard.svg") center top no-repeat}
.onboard-modal {animation: onboard-modal 500ms cubic-bezier(0.23, 1, 0.32, 1); background: rgba(var(--grayS-rgb), 0.95); bottom: 0; display: none; left: 0; overflow-y: scroll; position: fixed; right: 0; top: 0; z-index: 20}
.onboard-modal.is-active {display: flex}
@keyframes onboard-modal {from {opacity: 0}
}
.onboard-modal-actions {margin-top: 2.8rem}
.onboard-modal-actions a:last-child {display: block; margin-top: 0.8rem}
.onboard-modal-content {margin: auto; max-width: 65rem; padding: 2rem; text-align: center}
.onboard-modal-content p {font-size: 1.1487em; line-height: 1.3em}
.onboard-modal-exclamation {border-radius: 50%; border: 0.2rem solid rgba(var(--gold-rgb), 0.5); color: rgba(var(--gold-rgb), var(--gold-text-opacity)); display: inline-block; font-size: 2.2974em; font-weight: bold; line-height: 3.6rem; margin-bottom: 2rem; width: 3.6rem}
.onboard-step {background: linear-gradient(to right, transparent 97.5%, var(--grayS) 97.5%), linear-gradient(to right, var(--gold), var(--gold)); background-size: 20.125% 100%, 0; background-repeat: repeat-x, no-repeat; height: 0.4rem}
.onboard-step--1 {background-size: 20.125% 100%, 20% 100%}
.onboard-step--2 {background-size: 20.125% 100%, 40% 100%}
.onboard-step--3 {background-size: 20.125% 100%, 60% 100%}
.onboard-step--4 {background-size: 20.125% 100%, 80% 100%}
.onboard-step--5 {background-size: 20.125% 100%, 100% 100%}
.profile-actions--narrow {margin-top: 1.2rem}
@media (min-width: 50em) {.profile-actions--narrow {display: none}
}
.profile-actions--wide {display: none}
@media (min-width: 50em) {.profile-actions--wide {display: block}
}
.profile-details {grid-row: 1}
@media (min-width: 60em) {.profile-details {grid-row: inherit; position: relative}
.profile-details::after, .profile-details::before {content: ''; left: calc(var(--space) * -0.5); position: absolute}
.profile-details::after {background: var(--white); height: 2rem; top: 0.4rem; width: 0.4rem}
.profile-details::before {background: var(--gray); bottom: -8rem; top: -6rem; width: 2px}
}
.profile-header {background: var(--grayS); max-height: calc(100vh - 8rem); position: relative; z-index: 200}
@media (min-width: 35em) {.profile-header {min-height: 320px; height: 45vh; overflow: hidden}
}
.profile-header-actions {position: absolute; top: 2rem; right: var(--space)}
.profile-header-container {background: rgba(var(--grayS-rgb), 0.7); box-sizing: border-box; display: flex; height: 100%; padding: 4rem 1.2rem; position: relative; z-index: 10}
@media (min-width: 35em) {.profile-header-container {padding-left: 2rem; padding-right: 2rem}
}
@media (min-width: 60em) {.profile-header-container {padding: 0}
}
.profile-header-content {margin: auto; text-align: center}
.profile-header-media {height: 100%; left: 0; object-fit: cover; object-position: center; position: absolute; top: 0; width: 100%}
.profile-header-social {display: block}
.profile-header-social > * {text-decoration: none}
.profile-header-social > * + * {margin-left: 0.4rem}
@media (min-width: 35em) {.profile-header-social {border-left: 2px solid rgba(var(--white-rgb), 0.1); display: inline; margin-left: 1.2rem; padding-left: 1.6rem}
}
.profile-upload-avatar {border-radius: 50%; height: 3.75rem; width: 3.75rem}
.profile-upload-empty {align-items: center; background: var(--gold); color: var(--graySS); display: flex; font-size: 1.5157em; justify-content: center; height: 3.75rem; width: 3.75rem}
.profile-schoolContainer {position: relative}
.profile-school {position: absolute; z-index: 10}
.profile-school--open {border: 1px solid var(--grayT); border-top: 0; border-radius: 0 0 3px 3px}
.profile-school-suggestion {list-style-type: none; margin: 0; padding: 0}
.profile-school-suggestion-item {background: var(--grayS); border-bottom: 1px solid var(--grayT); font-size: 0.8706em; padding: 0.2rem 0.8rem; color: var(--grayT); cursor: pointer}
.profile-school-suggestion-item:last-child {border-bottom: 0}
.profile-school-suggestion-item:hover {background: var(--gray)}
.profile-school-suggestion-item--highlighted {background: var(--gray)}
.profile-school-suggestion-highlight {color: var(--white)}
.profile-work {border: 1px solid rgba(255, 255, 255, 0.5); border-radius: 3px; margin-bottom: 1.2rem; padding: 1.2rem}
@media (min-width: 60em) {.profile-work-bucket {align-items: start; display: flex}
.profile-work-bucket > * + * {margin-left: 0.8rem}
}
@media (min-width: 50em) {.profile-work-remove {display: flex; margin-top: -1.6rem}
.profile-work-remove a {margin-left: auto}
}
.profile-web {max-width: 36em}
.profile-web label {clip: rect(1px, 1px, 1px, 1px); height: 1px; overflow: hidden; position: absolute; width: 1px}
.profile-web-new {border-radius: 0.15rem; border: 1px dashed rgba(var(--white-rgb), 0.3); color: var(--white); display: block; font-size: 0.7579em; font-weight: bold; padding: 0.6rem 1.2rem; text-align: center; text-decoration: underline; opacity: 0.8}
.profile-web-new:hover {background: var(--gray); opacity: 1}
.profile-web-url {flex: 1 1 100px}
.project-ad {position: relative; z-index: 200}
.project-footer {align-items: center; display: flex; flex-wrap: wrap; justify-content: space-between}
.project-footer > * {margin-bottom: 0.4rem; margin-top: 0.4rem}
@media (min-width: 35em) {.project-footer {flex-wrap: nowrap}
}
.project-hero {position: relative}
.project-hero--compact .project-hero-container {background: rgba(var(--grayS-rgb), 0.3); min-height: inherit}
.project-hero-actions {align-items: center; display: flex; position: absolute; right: 1.2rem; top: 2rem; z-index: 20}
@media (min-width: 50em) {.project-hero-actions {right: 2rem}
}
.project-hero-actions-iconGold {color: var(--gold)}
.project-hero-actions-social {flex-shrink: 0}
.project-hero-actions-social > * + * {margin-left: 0.2rem}
.project-hero-actions-social span {display: none}
@media (min-width: 25em) {.project-hero-actions-social > * + * {margin-left: 0.4rem}
}
@media (min-width: 35em) {.project-hero-actions-social span {display: inline}
}
.project-hero-actions-socialDivider {margin-right: 1.2rem}
@media (min-width: 25em) {.project-hero-actions-socialDivider {border-right: 2px solid rgba(var(--white-rgb), 0.1); height: 2rem; margin: 0 1.2rem}
}
.project-hero-adult {align-items: center; box-sizing: border-box; display: flex; min-height: calc(100vh - 4.8rem); padding: 4rem 0; position: relative; z-index: 10}
.project-hero-adult-icon {color: var(--gold); font-size: 1.7511em; margin-bottom: 1.2rem}
.project-hero-container {align-items: flex-end; background: rgba(var(--grayS-rgb), 0.7); box-sizing: border-box; display: flex; min-height: calc(100vh - 4.8rem); padding: 8rem 0 4rem; position: relative; z-index: 10}
.project-hero-details {margin-top: 2rem; padding-top: 2rem; position: relative}
.project-hero-details::after {background: rgba(var(--white-rgb), 0.3); content: ''; height: 1px; left: calc(var(--space) * -1); position: absolute; right: 0; top: 0}
@media (min-width: 95em) {.project-hero-details::after {left: calc((100vw - 65rem) / -2)}
}
.project-hero-media {height: 100%; left: 0; object-fit: cover; object-position: center; position: absolute; top: 0; width: 100%}
.project-tag {background: rgba(var(--white-rgb), 0.1); border-radius: 0.15rem; color: var(--white); display: inline-block; font-weight: bold; font-size: 0.8706em; letter-spacing: 0.1em; margin-bottom: 1.2rem; padding: 0.2rem 0.8rem; text-transform: uppercase}
.styleGuide {padding: 0 var(--space)}
.styleGuide-limit {max-width: 30rem}
.styleGuide-limit--L {max-width: 45rem}
.styleGuide-limit--S {max-width: 15rem}
.styleGuide-section {margin: 4rem 0}
.styleGuide-theme {position: fixed; bottom: 2rem; right: 2rem; z-index: 1000}
.react-tags {position: relative; padding: 6px 0 0 6px; border: 1px solid #D1D1D1; border-radius: 1px; font-size: 1em; line-height: 1.2; cursor: text; background: transparent; border: 1px solid rgba(var(--white-rgb), 0.5); border-radius: 0.15rem; box-sizing: border-box; color: var(--white); display: block; font-size: 0.8706em; line-height: 1.2rem; padding: 0.4rem 0.4rem 0; width: 100%}
.react-tags.is-focused {border-color: #B1B1B1}
.react-tags__selected {display: inline}
.react-tags__selected-tag {display: inline-block; box-sizing: border-box; margin: 0 6px 6px 0; padding: 6px 8px; border: 1px solid #D1D1D1; border-radius: 2px; background: #F1F1F1; font-size: inherit; line-height: inherit; background: none; border-radius: 0.15rem; border: 1px solid rgba(var(--white-rgb), 0.5); color: var(--white); cursor: pointer; font-size: 0.8706em; margin: 0 0.4rem 0.4rem 0; padding: 0.2rem 0.4rem 0.1rem}
.react-tags__selected-tag:after {content: '\2715'; color: #AAA; margin-left: 8px}
.react-tags__selected-tag:hover, .react-tags__selected-tag:focus {border-color: #B1B1B1}
.react-tags__search {display: inline-block; padding: 7px 2px; margin-bottom: 6px; max-width: 100%; margin-bottom: 0; padding: 0}
.react-tags__search input {max-width: 100%; margin: 0; padding: 0; border: 0; outline: none; font-size: inherit; line-height: inherit; background: none; color: var(--white)}
.react-tags__search-input {background: transparent; border-radius: 0.15rem; box-sizing: border-box; color: var(--white); display: block; font-size: 0.8706em; line-height: 1.2rem; margin: 0 0 0.4rem 0.2rem; padding: calc(0.2rem + 1px) 0 0.2rem; width: 100%}
.react-tags__search-input input:disabled {cursor: not-allowed}
.react-tags__search-input input:focus {border-color: var(--white)}
.react-tags__search-input input::-ms-input-placeholder {color: rgba(var(--white-rgb), 0.5)}
.react-tags__search-input input::placeholder {color: rgba(var(--white-rgb), 0.5)}
.react-tags__search-input input[type="password"] {letter-spacing: 0.1em}
.react-tags__search input::-ms-clear {display: none}
.react-tags__suggestions {display: block; position: absolute; left: -1px; width: calc(100% + 2px); z-index: 1}
.react-tags__suggestions ul {display: block; margin: 0; padding: 0; list-style: none; background: var(--grayS); border: 1px solid rgba(var(--white-rgb), 0.5); border-radius: 2px}
.react-tags__suggestions li {border-bottom: 1px solid rgba(var(--white-rgb), 0.5); color: var(--grayT); padding: 0.4rem 0.8rem}
.react-tags__suggestions li:last-child {border-bottom: 0}
.react-tags__suggestions li mark {background: none; color: var(--white)}
.react-tags__suggestions li:hover, .react-tags__suggestions li.is-active {cursor: pointer; background: var(--gray)}
.react-tags__suggestions li.is-disabled {opacity: 0.5; cursor: auto}
@-webkit-keyframes medium-editor-image-loading {0% {-webkit-transform: scale(0); transform: scale(0)}
100% {-webkit-transform: scale(1); transform: scale(1)}
}
@keyframes medium-editor-image-loading {0% {-webkit-transform: scale(0); transform: scale(0)}
100% {-webkit-transform: scale(1); transform: scale(1)}
}
@-webkit-keyframes medium-editor-pop-upwards {0% {opacity: 0; -webkit-transform: matrix(0.97, 0, 0, 1, 0, 12); transform: matrix(0.97, 0, 0, 1, 0, 12)}
20% {opacity: .7; -webkit-transform: matrix(0.99, 0, 0, 1, 0, 2); transform: matrix(0.99, 0, 0, 1, 0, 2)}
40% {opacity: 1; -webkit-transform: matrix(1, 0, 0, 1, 0, -1); transform: matrix(1, 0, 0, 1, 0, -1)}
100% {-webkit-transform: matrix(1, 0, 0, 1, 0, 0); transform: matrix(1, 0, 0, 1, 0, 0)}
}
@keyframes medium-editor-pop-upwards {0% {opacity: 0; -webkit-transform: matrix(0.97, 0, 0, 1, 0, 12); transform: matrix(0.97, 0, 0, 1, 0, 12)}
20% {opacity: .7; -webkit-transform: matrix(0.99, 0, 0, 1, 0, 2); transform: matrix(0.99, 0, 0, 1, 0, 2)}
40% {opacity: 1; -webkit-transform: matrix(1, 0, 0, 1, 0, -1); transform: matrix(1, 0, 0, 1, 0, -1)}
100% {-webkit-transform: matrix(1, 0, 0, 1, 0, 0); transform: matrix(1, 0, 0, 1, 0, 0)}
}
.medium-editor-anchor-preview {font-family: "Source Sans Pro", sans-serif; font-size: 1em; left: 0; line-height: 1.4; max-width: 280px; position: absolute; text-align: center; top: 0; word-break: break-all; word-wrap: break-word; visibility: hidden; z-index: 2000}
.medium-editor-anchor-preview a {color: var(--gray); display: inline-block; font-size: 0.8706em; margin: 0.5rem}
.medium-editor-anchor-preview a:hover {color: var(--graySS)}
.medium-editor-anchor-preview-active {visibility: visible}
.medium-editor-dragover {background: #ddd}
.medium-editor-image-loading {-webkit-animation: medium-editor-image-loading 1s infinite ease-in-out; animation: medium-editor-image-loading 1s infinite ease-in-out; background-color: #333; border-radius: 100%; display: inline-block; height: 40px; width: 40px}
.medium-editor-placeholder {position: relative}
.medium-editor-placeholder:after {content: attr(data-placeholder) !important; font-style: italic; position: absolute; left: 0; top: 0; white-space: pre; padding: inherit; margin: inherit}
.medium-editor-placeholder-relative {position: relative}
.medium-editor-placeholder-relative:after {content: attr(data-placeholder) !important; font-style: italic; position: relative; white-space: pre; padding: inherit; margin: inherit}
.medium-toolbar-arrow-under:after, .medium-toolbar-arrow-over:before {border-style: solid; content: ''; display: block; height: 0; left: 50%; margin-left: -8px; position: absolute; width: 0}
.medium-toolbar-arrow-under:after {border-width: 8px 8px 0 8px}
.medium-toolbar-arrow-over:before {border-width: 0 8px 8px 8px; top: -8px}
.medium-editor-toolbar {font-family: "Source Sans Pro", sans-serif; font-size: 16px; left: 0; position: absolute; top: 0; visibility: hidden; z-index: 2000}
.medium-editor-toolbar ul {margin: 0; padding: 0}
.medium-editor-toolbar li {float: left; list-style: none; margin: 0; padding: 0}
.medium-editor-toolbar li button {box-sizing: border-box; cursor: pointer; display: block; font-size: 14px; line-height: 1.33; margin: 0; padding: 15px; text-decoration: none}
.medium-editor-toolbar li button:focus {outline: none}
.medium-editor-toolbar li .medium-editor-action-underline {text-decoration: underline}
.medium-editor-toolbar li .medium-editor-action-pre {font-family: "Source Sans Pro", sans-serif; font-size: 12px; font-weight: 100; padding: 15px 0}
.medium-editor-toolbar-active {visibility: visible}
.medium-editor-sticky-toolbar {position: fixed; top: 1px}
.medium-editor-relative-toolbar {position: relative}
.medium-editor-toolbar-active.medium-editor-stalker-toolbar {-webkit-animation: medium-editor-pop-upwards 160ms forwards linear; animation: medium-editor-pop-upwards 160ms forwards linear}
.medium-editor-action-bold {font-weight: bolder}
.medium-editor-action-italic {font-style: italic}
.medium-editor-toolbar-form {display: none}
.medium-editor-toolbar-form input, .medium-editor-toolbar-form a {font-family: "Source Sans Pro", sans-serif}
.medium-editor-toolbar-form .medium-editor-toolbar-form-row {line-height: 14px; margin-left: 5px; padding-bottom: 5px}
.medium-editor-toolbar-form .medium-editor-toolbar-input, .medium-editor-toolbar-form label {border: none; border-bottom-left-radius: 3px; border-top-left-radius: 3px; box-sizing: border-box; display: inline-block; font-size: 0.8706em; line-height: 1.2rem; margin: 0; padding: calc(0.8rem - 1px) 0.8rem; width: 316px}
.medium-editor-toolbar-form .medium-editor-toolbar-input:focus, .medium-editor-toolbar-form label:focus {-webkit-appearance: none; -moz-appearance: none; appearance: none; border: none; box-shadow: none; outline: 0}
.medium-editor-toolbar-form a {display: inline-block; font-size: 24px; font-weight: bolder; margin: 0 10px; text-decoration: none}
.medium-editor-toolbar-form-active {display: block}
.medium-editor-toolbar-actions:after {clear: both; content: ""; display: table}
.medium-editor-element {word-wrap: break-word; min-height: 3rem}
.medium-editor-element img {max-width: 100%}
.medium-editor-element sub {vertical-align: sub}
.medium-editor-element sup {vertical-align: super}
.medium-editor-hidden {display: none}
.medium-toolbar-arrow-under:after {border-color: var(--white) transparent transparent transparent; top: 50px}
.medium-toolbar-arrow-over:before {border-color: transparent transparent var(--white) transparent; top: -8px}
.medium-editor-toolbar {background: var(--grayTT); border-radius: 3px; border: 0; box-shadow: 0 5px 10px rgba(17, 17, 17, 0.5)}
.medium-editor-toolbar li button {background: var(--white); border: 0; color: var(--grayT); height: 50px; min-width: 50px; transition: opacity 200ms ease-in-out}
.medium-editor-toolbar li button:hover {opacity: 0.75}
.medium-editor-toolbar li .medium-editor-button-first {border-bottom-left-radius: 3px; border-top-left-radius: 3px}
.medium-editor-toolbar li .medium-editor-button-last {border-bottom-right-radius: 3px; border-top-right-radius: 3px}
.medium-editor-toolbar li .medium-editor-button-active {opacity: 0.75; color: var(--black)}
.medium-editor-toolbar-form {background: var(--white); border-radius: 3px; color: var(--grayT)}
.medium-editor-toolbar-form .medium-editor-toolbar-input {background: var(--white); box-sizing: border-box; color: var(--grayT); height: 50px}
.medium-editor-toolbar-form a {color: var(--gray)}
.medium-editor-toolbar-anchor-preview {background: var(--white); border-radius: 3px; color: var(--grayT)}
.medium-editor-placeholder:after {color: var(--grayT)}
.pswp {display: none; position: absolute; width: 100%; height: 100%; left: 0; top: 0; overflow: hidden; -ms-touch-action: none; touch-action: none; z-index: 1500; -webkit-text-size-adjust: 100%; -webkit-backface-visibility: hidden; outline: none}
.pswp * {-webkit-box-sizing: border-box; box-sizing: border-box}
.pswp img {max-width: none}
.pswp--animate_opacity {opacity: 0.001; will-change: opacity; -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1)}
.pswp--open {display: block}
.pswp--zoom-allowed .pswp__img {cursor: -webkit-zoom-in; cursor: -moz-zoom-in; cursor: zoom-in}
.pswp--zoomed-in .pswp__img {cursor: -webkit-grab; cursor: -moz-grab; cursor: grab}
.pswp--dragging .pswp__img {cursor: -webkit-grabbing; cursor: -moz-grabbing; cursor: grabbing}
.pswp__bg {position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: #000; opacity: 0; -webkit-transform: translateZ(0); transform: translateZ(0); -webkit-backface-visibility: hidden; will-change: opacity}
.pswp__scroll-wrap {position: absolute; left: 0; top: 0; width: 100%; height: 100%; overflow: hidden}
.pswp__container, .pswp__zoom-wrap {-ms-touch-action: none; touch-action: none; position: absolute; left: 0; right: 0; top: 0; bottom: 0}
.pswp__container, .pswp__img {-webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-tap-highlight-color: transparent; -webkit-touch-callout: none}
.pswp__zoom-wrap {position: absolute; width: 100%; -webkit-transform-origin: left top; -ms-transform-origin: left top; transform-origin: left top; -webkit-transition: -webkit-transform 333ms cubic-bezier(0.4, 0, 0.22, 1); transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1)}
.pswp__bg {will-change: opacity; -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1)}
.pswp--animated-in .pswp__bg, .pswp--animated-in .pswp__zoom-wrap {-webkit-transition: none; transition: none}
.pswp__container, .pswp__zoom-wrap {-webkit-backface-visibility: hidden}
.pswp__item {position: absolute; left: 0; right: 0; top: 0; bottom: 0; overflow: hidden}
.pswp__img {position: absolute; width: auto; height: auto; top: 0; left: 0}
.pswp__img--placeholder {-webkit-backface-visibility: hidden}
.pswp__img--placeholder--blank {background: #222}
.pswp--ie .pswp__img {width: 100% !important; height: auto !important; left: 0; top: 0}
.pswp__error-msg {position: absolute; left: 0; top: 50%; width: 100%; text-align: center; font-size: 14px; line-height: 16px; margin-top: -8px; color: #CCC}
.pswp__error-msg a {color: #CCC; text-decoration: underline}
.pswp__button {width: 44px; height: 44px; position: relative; background: none; cursor: pointer; overflow: visible; -webkit-appearance: none; display: block; border: 0; padding: 0; margin: 0; float: right; opacity: 0.75; -webkit-transition: opacity 0.2s; transition: opacity 0.2s; -webkit-box-shadow: none; box-shadow: none}
.pswp__button:focus, .pswp__button:hover {opacity: 1}
.pswp__button:active {outline: none; opacity: 0.9}
.pswp__button::-moz-focus-inner {padding: 0; border: 0}
.pswp__ui--over-close .pswp__button--close {opacity: 1}
.pswp__button, .pswp__button--arrow--left:before, .pswp__button--arrow--right:before {background: url("/assets/photoswipe/default-skin.svg") 0 0 no-repeat; background-size: 264px 88px; width: 44px; height: 44px}
@media (-webkit-min-device-pixel-ratio: 1.1), (-webkit-min-device-pixel-ratio: 1.09375), (min-resolution: 105dpi), (min-resolution: 1.1dppx) {.pswp--svg .pswp__button, .pswp--svg .pswp__button--arrow--left:before, .pswp--svg .pswp__button--arrow--right:before {background-image: url("/assets/photoswipe/default-skin.svg")}
.pswp--svg .pswp__button--arrow--left, .pswp--svg .pswp__button--arrow--right {background: none}
}
.pswp__button--close {background-position: 0 -44px}
.pswp__button--share {background-position: -44px -44px}
.pswp__button--fs {display: none}
.pswp--supports-fs .pswp__button--fs {display: block}
.pswp--fs .pswp__button--fs {background-position: -44px 0}
.pswp__button--zoom {display: none; background-position: -88px 0}
.pswp--zoom-allowed .pswp__button--zoom {display: block}
.pswp--zoomed-in .pswp__button--zoom {background-position: -132px 0}
.pswp--touch .pswp__button--arrow--left, .pswp--touch .pswp__button--arrow--right {visibility: hidden}
.pswp__button--arrow--left, .pswp__button--arrow--right {background: none; top: 50%; margin-top: -50px; width: 70px; height: 100px; position: absolute}
.pswp__button--arrow--left {left: 0}
.pswp__button--arrow--right {right: 0}
.pswp__button--arrow--left:before, .pswp__button--arrow--right:before {content: ''; top: 35px; background-color: rgba(0, 0, 0, 0.3); height: 30px; width: 32px; position: absolute}
.pswp__button--arrow--left:before {left: 6px; background-position: -138px -44px}
.pswp__button--arrow--right:before {right: 6px; background-position: -94px -44px}
.pswp__counter, .pswp__share-modal {-webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none}
.pswp__share-modal {display: block; background: rgba(0, 0, 0, 0.5); width: 100%; height: 100%; top: 0; left: 0; padding: 10px; position: absolute; z-index: 1600; opacity: 0; -webkit-transition: opacity 0.25s ease-out; transition: opacity 0.25s ease-out; -webkit-backface-visibility: hidden; will-change: opacity}
.pswp__share-modal--hidden {display: none}
.pswp__share-tooltip {z-index: 1620; position: absolute; background: #FFF; top: 56px; border-radius: 2px; display: block; width: auto; right: 44px; -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25); box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25); -webkit-transform: translateY(6px); -ms-transform: translateY(6px); transform: translateY(6px); -webkit-transition: -webkit-transform 0.25s; transition: transform 0.25s; -webkit-backface-visibility: hidden; will-change: transform}
.pswp__share-tooltip a {display: block; padding: 8px 12px; color: #000; text-decoration: none; font-size: 14px; line-height: 18px}
.pswp__share-tooltip a:hover {text-decoration: none; color: #000}
.pswp__share-tooltip a:first-child {border-radius: 2px 2px 0 0}
.pswp__share-tooltip a:last-child {border-radius: 0 0 2px 2px}
.pswp__share-modal--fade-in {opacity: 1}
.pswp__share-modal--fade-in .pswp__share-tooltip {-webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0)}
.pswp--touch .pswp__share-tooltip a {padding: 16px 12px}
a.pswp__share--facebook:before {content: ''; display: block; width: 0; height: 0; position: absolute; top: -12px; right: 15px; border: 6px solid transparent; border-bottom-color: #FFF; -webkit-pointer-events: none; -moz-pointer-events: none; pointer-events: none}
a.pswp__share--facebook:hover {background: #3E5C9A; color: #FFF}
a.pswp__share--facebook:hover:before {border-bottom-color: #3E5C9A}
a.pswp__share--twitter:hover {background: #55ACEE; color: #FFF}
a.pswp__share--pinterest:hover {background: #CCC; color: #CE272D}
a.pswp__share--download:hover {background: #DDD}
.pswp__counter {position: absolute; left: 0; top: 0; height: 44px; font-size: 13px; line-height: 44px; color: #FFF; opacity: 0.75; padding: 0 10px}
.pswp__caption {position: absolute; left: 0; bottom: 0; width: 100%; min-height: 44px}
.pswp__caption small {font-size: 11px; color: #BBB}
.pswp__caption__center {text-align: left; max-width: 420px; margin: 0 auto; font-size: 13px; padding: 10px; line-height: 20px; color: #CCC}
.pswp__caption--empty {display: none}
.pswp__caption--fake {visibility: hidden}
.pswp__preloader {width: 44px; height: 44px; position: absolute; top: 0; left: 50%; margin-left: -22px; opacity: 0; -webkit-transition: opacity 0.25s ease-out; transition: opacity 0.25s ease-out; will-change: opacity; direction: ltr}
.pswp__preloader__icn {width: 20px; height: 20px; margin: 12px}
.pswp__preloader--active {opacity: 1}
.pswp__preloader--active .pswp__preloader__icn {background: url("/assets/photoswipe/preloader.gif") 0 0 no-repeat}
.pswp--css_animation .pswp__preloader--active {opacity: 1}
.pswp--css_animation .pswp__preloader--active .pswp__preloader__icn {-webkit-animation: clockwise 500ms linear infinite; animation: clockwise 500ms linear infinite}
.pswp--css_animation .pswp__preloader--active .pswp__preloader__donut {-webkit-animation: donut-rotate 1000ms cubic-bezier(0.4, 0, 0.22, 1) infinite; animation: donut-rotate 1000ms cubic-bezier(0.4, 0, 0.22, 1) infinite}
.pswp--css_animation .pswp__preloader__icn {background: none; opacity: 0.75; width: 14px; height: 14px; position: absolute; left: 15px; top: 15px; margin: 0}
.pswp--css_animation .pswp__preloader__cut {position: relative; width: 7px; height: 14px; overflow: hidden}
.pswp--css_animation .pswp__preloader__donut {-webkit-box-sizing: border-box; box-sizing: border-box; width: 14px; height: 14px; border: 2px solid #FFF; border-radius: 50%; border-left-color: transparent; border-bottom-color: transparent; position: absolute; top: 0; left: 0; background: none; margin: 0}
@media screen and (max-width: 1024px) {.pswp__preloader {position: relative; left: auto; top: auto; margin: 0; float: right}
}
@-webkit-keyframes clockwise {0% {-webkit-transform: rotate(0deg); transform: rotate(0deg)}
100% {-webkit-transform: rotate(360deg); transform: rotate(360deg)}
}
@keyframes clockwise {0% {-webkit-transform: rotate(0deg); transform: rotate(0deg)}
100% {-webkit-transform: rotate(360deg); transform: rotate(360deg)}
}
@-webkit-keyframes donut-rotate {0% {-webkit-transform: rotate(0); transform: rotate(0)}
50% {-webkit-transform: rotate(-140deg); transform: rotate(-140deg)}
100% {-webkit-transform: rotate(0); transform: rotate(0)}
}
@keyframes donut-rotate {0% {-webkit-transform: rotate(0); transform: rotate(0)}
50% {-webkit-transform: rotate(-140deg); transform: rotate(-140deg)}
100% {-webkit-transform: rotate(0); transform: rotate(0)}
}
.pswp__ui {-webkit-font-smoothing: auto; visibility: visible; opacity: 1; z-index: 1550}
.pswp__top-bar {position: absolute; left: 0; top: 0; height: 44px; width: 100%}
.pswp__caption, .pswp__top-bar, .pswp--has_mouse .pswp__button--arrow--left, .pswp--has_mouse .pswp__button--arrow--right {-webkit-backface-visibility: hidden; will-change: opacity; -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1)}
.pswp--has_mouse .pswp__button--arrow--left, .pswp--has_mouse .pswp__button--arrow--right {visibility: visible}
.pswp__top-bar, .pswp__caption {background-color: rgba(0, 0, 0, 0.5)}
.pswp__ui--fit .pswp__top-bar, .pswp__ui--fit .pswp__caption {background-color: rgba(0, 0, 0, 0.3)}
.pswp__ui--idle .pswp__top-bar {opacity: 0}
.pswp__ui--idle .pswp__button--arrow--left, .pswp__ui--idle .pswp__button--arrow--right {opacity: 0}
.pswp__ui--hidden .pswp__top-bar, .pswp__ui--hidden .pswp__caption, .pswp__ui--hidden .pswp__button--arrow--left, .pswp__ui--hidden .pswp__button--arrow--right {opacity: 0.001}
.pswp__ui--one-slide .pswp__button--arrow--left, .pswp__ui--one-slide .pswp__button--arrow--right, .pswp__ui--one-slide .pswp__counter {display: none}
.pswp__element--disabled {display: none !important}
.pswp--minimal--dark .pswp__top-bar {background: none}
.bc--white {background-color: var(--white) !important}
.bc--grayS {background-color: var(--grayS) !important}
.bc--graySS {background-color: var(--graySS) !important}
.m--0 {margin: 0 !important}
.mt--0, .my--0 {margin-top: 0 !important}
.mh--0, .mr--0, .mx--0 {margin-right: 0 !important}
.mb--0, .my--0 {margin-bottom: 0 !important}
.mh--0, .ml--0, .mx--0 {margin-left: 0 !important}
.p--0 {padding: 0 !important}
.pt--0, .py--0 {padding-top: 0 !important}
.ph--0, .pr--0, .px--0 {padding-right: 0 !important}
.pb--0, .py--0 {padding-bottom: 0 !important}
.ph--0, .pl--0, .px--0 {padding-left: 0 !important}
.m--04 {margin: 0.4rem !important}
.mt--04, .my--04 {margin-top: 0.4rem !important}
.mh--04, .mr--04, .mx--04 {margin-right: 0.4rem !important}
.mb--04, .my--04 {margin-bottom: 0.4rem !important}
.mh--04, .ml--04, .mx--04 {margin-left: 0.4rem !important}
.p--04 {padding: 0.4rem !important}
.pt--04, .py--04 {padding-top: 0.4rem !important}
.ph--04, .pr--04, .px--04 {padding-right: 0.4rem !important}
.pb--04, .py--04 {padding-bottom: 0.4rem !important}
.ph--04, .pl--04, .px--04 {padding-left: 0.4rem !important}
.m--08 {margin: 0.8rem !important}
.mt--08, .my--08 {margin-top: 0.8rem !important}
.mh--08, .mr--08, .mx--08 {margin-right: 0.8rem !important}
.mb--08, .my--08 {margin-bottom: 0.8rem !important}
.mh--08, .ml--08, .mx--08 {margin-left: 0.8rem !important}
.p--08 {padding: 0.8rem !important}
.pt--08, .py--08 {padding-top: 0.8rem !important}
.ph--08, .pr--08, .px--08 {padding-right: 0.8rem !important}
.pb--08, .py--08 {padding-bottom: 0.8rem !important}
.ph--08, .pl--08, .px--08 {padding-left: 0.8rem !important}
.m--12 {margin: 1.2rem !important}
.mt--12, .my--12 {margin-top: 1.2rem !important}
.mh--12, .mr--12, .mx--12 {margin-right: 1.2rem !important}
.mb--12, .my--12 {margin-bottom: 1.2rem !important}
.mh--12, .ml--12, .mx--12 {margin-left: 1.2rem !important}
.p--12 {padding: 1.2rem !important}
.pt--12, .py--12 {padding-top: 1.2rem !important}
.ph--12, .pr--12, .px--12 {padding-right: 1.2rem !important}
.pb--12, .py--12 {padding-bottom: 1.2rem !important}
.ph--12, .pl--12, .px--12 {padding-left: 1.2rem !important}
.m--16 {margin: 1.6rem !important}
.mt--16, .my--16 {margin-top: 1.6rem !important}
.mh--16, .mr--16, .mx--16 {margin-right: 1.6rem !important}
.mb--16, .my--16 {margin-bottom: 1.6rem !important}
.mh--16, .ml--16, .mx--16 {margin-left: 1.6rem !important}
.p--16 {padding: 1.6rem !important}
.pt--16, .py--16 {padding-top: 1.6rem !important}
.ph--16, .pr--16, .px--16 {padding-right: 1.6rem !important}
.pb--16, .py--16 {padding-bottom: 1.6rem !important}
.ph--16, .pl--16, .px--16 {padding-left: 1.6rem !important}
.m--2 {margin: 2rem !important}
.mt--2, .my--2 {margin-top: 2rem !important}
.mh--2, .mr--2, .mx--2 {margin-right: 2rem !important}
.mb--2, .my--2 {margin-bottom: 2rem !important}
.mh--2, .ml--2, .mx--2 {margin-left: 2rem !important}
.p--2 {padding: 2rem !important}
.pt--2, .py--2 {padding-top: 2rem !important}
.ph--2, .pr--2, .px--2 {padding-right: 2rem !important}
.pb--2, .py--2 {padding-bottom: 2rem !important}
.ph--2, .pl--2, .px--2 {padding-left: 2rem !important}
.m--4 {margin: 4rem !important}
.mt--4, .my--4 {margin-top: 4rem !important}
.mh--4, .mr--4, .mx--4 {margin-right: 4rem !important}
.mb--4, .my--4 {margin-bottom: 4rem !important}
.mh--4, .ml--4, .mx--4 {margin-left: 4rem !important}
.p--4 {padding: 4rem !important}
.pt--4, .py--4 {padding-top: 4rem !important}
.ph--4, .pr--4, .px--4 {padding-right: 4rem !important}
.pb--4, .py--4 {padding-bottom: 4rem !important}
.ph--4, .pl--4, .px--4 {padding-left: 4rem !important}
.mh--auto {margin-left: auto; margin-right: auto}
.o--80 {opacity: 0.8}
.forcePaint {animation: forcePaint 10000s infinite}
@keyframes forcePaint {100% {padding-left: 1px; margin-left: -1px}
}
.ta--center {text-align: center}
.ta--left {text-align: left}
.tc--grayTT {color: var(--grayTT)}
.tc--grayT {color: var(--grayT)}
.tc--grayS {color: var(--grayS)}
.tc--gold {color: rgba(var(--gold-rgb), var(--gold-text-opacity))}
.tc--white {color: var(--white)}
.tf--mono {font-family: "Source Code Pro", "Source Sans Pro", sans-serif; letter-spacing: 0.1em; text-transform: uppercase}
.lh--12 {line-height: 1.2rem}
.quote {position: relative}
.quote::after {content: '”'}
.quote::before {content: '“'; left: -0.5em; position: absolute}
.tsrt {font: 0/0 a; color: transparent; text-shadow: none; background-color: transparent; border: 0}
.tsh--1 {text-shadow: 0 0.15rem 0.3rem var(--grayS)}
.ts--up5 {font-size: 2em; line-height: 2.4rem}
.ts--up4 {font-size: 1.7511em; line-height: 2rem}
.ts--up3 {font-size: 1.5157em; line-height: 2rem}
.ts--up2 {font-size: 1.3195em}
.ts--up1 {font-size: 1.1487em}
.ts--down1 {font-size: 0.8706em; line-height: 1.2rem}
.tt--3 {-webkit-box-orient: vertical; -webkit-line-clamp: 3; display: -webkit-box; max-height: 4.6em; overflow: hidden; text-overflow: ellipsis}
.tw--bold {font-weight: bold}
.mw--content {max-width: 36em}
.mw--auto {max-width: inherit}
:root.theme-light .avatar-default {color: var(--white)}
:root.theme-light .banner-content .tc--grayS {color: var(--white)}
:root.theme-light .banner--L {color: var(--white)}
:root.theme-light .builder-process-indicator {background: var(--black); color: var(--white)}
:root.theme-light .builder-process-range-input::-moz-range-thumb {background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 16 12" xmlns="http://www.w3.org/2000/svg"><path fill="%23FFFFFF" d="M15.994 5.97L9.84 10.893V1.047zM0 5.97l6.154-4.923v9.846z"/></svg>')}
:root.theme-light .builder-process-range-input::-ms-thumb {background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 16 12" xmlns="http://www.w3.org/2000/svg"><path fill="%23FFFFFF" d="M15.994 5.97L9.84 10.893V1.047zM0 5.97l6.154-4.923v9.846z"/></svg>')}
:root.theme-light .builder-process-range-input::-webkit-slider-thumb {background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 16 12" xmlns="http://www.w3.org/2000/svg"><path fill="%23FFFFFF" d="M15.994 5.97L9.84 10.893V1.047zM0 5.97l6.154-4.923v9.846z"/></svg>')}
:root.theme-light .button {color: var(--white)}
:root.theme-light .button--destructive {color: var(--black)}
:root.theme-light .button--secondary {color: var(--black)}
:root.theme-light .buttonCircle {color: var(--white)}
:root.theme-light .buttonCircle--shadow {box-shadow: 0 2px 4px rgba(0, 0, 0, 0.5); color: var(--white)}
:root.theme-light .cardProject {color: var(--black)}
:root.theme-light .cardProject-content {background: linear-gradient(rgba(var(--grayTT-rgb), 0), rgba(var(--grayTT-rgb), 0.5))}
:root.theme-light .cardProject .has-icon {color: var(--black)}
:root.theme-light .dropdown-link:hover, :root.theme-light .dropdown-link:focus {background: var(--graySS)}
:root.theme-light .dropdown-link:hover::after, :root.theme-light .dropdown-link:focus::after {border-bottom-color: var(--graySS)}
:root.theme-light .feature-aside {background: var(--black)}
:root.theme-light .feature-pressKit {background: var(--graySS)}
:root.theme-light .field-checkbox input, :root.theme-light .field-radio input {border: 1px solid rgba(17, 17, 17, 0.5)}
:root.theme-light .field-checkbox input:disabled, :root.theme-light .field-radio input:disabled {background: var(--graySS)}
:root.theme-light .field-select--filter select {border-color: rgba(var(--white-rgb), 0.35)}
:root.theme-light .heading-2--shadow {text-shadow: 0 0.1rem 1rem rgba(255, 255, 255, 0.7)}
:root.theme-light .highlight-input {border: 1px solid rgba(17, 17, 17, 0.5)}
:root.theme-light .highlight-input:checked ~ .highlight-backdrop {background: rgba(var(--gold-rgb), 0.85)}
:root.theme-light .medium-editor-toolbar li button {color: var(--black)}
:root.theme-light .medium-editor-toolbar-form a {color: var(--black)}
:root.theme-light .medium-editor-toolbar-form .medium-editor-toolbar-input {color: var(--black)}
:root.theme-light .profile-school-suggestion-item--highlighted {background: var(--graySS)}
:root.theme-light .profile-school-suggestion-item:hover {background: var(--graySS)}
:root.theme-light .profile-header-container {background: rgba(var(--grayS-rgb), 0.4)}
:root.theme-light .profile-header-social a {color: var(--grayTT)}
:root.theme-light .profile-header-social a:hover {color: var(--gray)}
@media (min-width: 50em) {:root.theme-light .lightTheme-break::after {content: ''; display: block}
}
@media (min-width: 50em) {:root.theme-light .lightTheme-hero-media--overlayReverse {overflow: hidden; position: relative}
:root.theme-light .lightTheme-hero-media--overlayReverse::after {background: linear-gradient(to right, rgba(var(--grayS-rgb), 0.5), rgba(var(--grayS-rgb), 0.3) 50%); bottom: 0; content: ''; left: 0; margin: -1px; position: absolute; right: 0; top: 0; z-index: 10}
:root.theme-light .lightTheme-hero-media--overlayReverse .cardProject-content {background: none; z-index: 11}
:root.theme-light .lightTheme-hero-media--overlayReverse .cardProject-icon {z-index: 11}
}
:root.theme-light .lightTheme-noShadow {text-shadow: none}
:root.theme-light .navigationSub-back, :root.theme-light .navigationSub-pages-link {color: var(--grayTT)}
:root.theme-light .navigationSub-back:hover, :root.theme-light .navigationSub-pages-link:hover {color: var(--white)}
:root.theme-light .navigationSub-back::after {border-top-color: var(--grayTT)}
:root.theme-light .react-tags__suggestions li:hover, :root.theme-light .react-tags__suggestions li.is-active {background: var(--graySS)}
:root.theme-light .search {color: rgba(var(--grayTT-rgb), 0.5)}
:root.theme-light .search-icon {line-height: 2.2rem}
:root.theme-light .search input {border: 2px solid rgba(var(--grayTT-rgb), 0.25); color: var(--grayTT)}
:root.theme-light .search input:focus {border-color: rgba(var(--grayTT-rgb), 0.5); color: var(--white)}
:root.theme-light .search input::placeholder {color: var(--grayT)}
:root.theme-light .stat-icon {background: var(--gold); color: var(--white)}
:root.theme-light .table-row span a.tc--grayTT:hover {color: var(--grayT)}
.photoswipe-trigger {cursor: zoom-in}
.cc-btn {border-radius: 0.15rem !important; text-decoration: none !important}
.cc-window {border-radius: 0 !important; font-family: inherit !important}