/* Global Reset */
html {
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    height: 100%;
}



/* Media Elements */
audio, canvas, progress, video {
    vertical-align: baseline;
    display: inline-block;
}

audio:not([controls]), [hidden], template {
    display: none;
}

/* Links */
/* a {
    background-color: transparent;
}

a:active, a:hover {
    outline: 0;
} */

/* Text Formatting */
abbr[title] {
    border-bottom: 1px dotted;
}

b, strong {
    font-weight: bold;
}

dfn {
    font-style: italic;
}

mark {
    color: #000;
    background: #ff0;
}

small {
    font-size: 80%;
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
}

sup { top: -0.5em; }
sub { bottom: -0.25em; }

/* Images */
img {
    border: 0;
    vertical-align: middle;
    max-width: 100%;
    display: inline-block;
}

svg:not(:root) {
    overflow: hidden;
}

/* Horizontal Rule */
hr {
    box-sizing: content-box;
    height: 0;
}

/* Preformatted Text */
pre {
    overflow: auto;
}

code, kbd, pre, samp {
    font-family: monospace;
    font-size: 1em;
}

/* Form Elements */
/* button, input, optgroup, select, textarea {
    color: inherit;
    font: inherit;
    margin: 0;
}

button {
    overflow: visible;
    text-transform: none;
    cursor: pointer;
}

button, input[type="button"], input[type="reset"] {
    -webkit-appearance: button;
}

button[disabled], input[disabled] {
    cursor: default;
}

button::-moz-focus-inner, input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

input {
    line-height: normal;
}

input[type="checkbox"], input[type="radio"] {
    box-sizing: border-box;
    padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

legend {
    border: 0;
    padding: 0;
}

textarea {
    overflow: auto;
}

optgroup {
    font-weight: bold;
} */


/* Webflow Overrides */
html.w-mod-touch * {
    background-attachment: scroll !important;
}

.w-block {
    display: block;
}

.w-inline-block {
    max-width: 100%;
    display: inline-block;
}

.w-clearfix:before, .w-clearfix:after {
    content: " ";
    display: table;
}

.w-clearfix:after {
    clear: both;
}

.w-hidden {
    display: none;
}

.w-button {
    color: #fff;
    cursor: pointer;
    background-color: #3898ec;
    border: 0;
    padding: 9px 16px;
    text-decoration: none;
    display: inline-block;
}

input.w-button {
    -webkit-appearance: button;
}

html[data-w-dynpage] [data-w-cloak] {
    color: transparent !important;
}

.w-code-block {
    margin: 0;
}

pre.w-code-block code {
    all: inherit;
}

.w-optimization {
    display: contents;
}



blockquote {
    border-left: 5px solid #e2e2e2;
    margin: 0 0 10px;
    padding: 10px 20px;
    font-size: 18px;
    line-height: 22px;
}


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

.w-embed:before,
.w-embed:after {
    content: " ";
    grid-area: 1 / 1 / 2 / 2;
    display: table;
}

.w-embed:after {
    clear: both;
}

.w-video {
    width: 100%;
    padding: 0;
    position: relative;
}

.w-video iframe,
.w-video object,
.w-video embed {
    border: none;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

button,
[type="button"],
[type="reset"] {
    cursor: pointer;
    -webkit-appearance: button;
    border: 0;
}

.w-form {
    margin: 0 0 16px;
}

.w-form-done {
    text-align: center;
    background-color: #ddd;
    padding: 20px;
    display: none;
}

.w-form-fail {
    background-color: #ffdede;
    margin-top: 10px;
    padding: 10px;
    display: none;
}



.w-input,
.w-select {
    color: #333;
    vertical-align: middle;
    background-color: #fff;
    border: 1px solid #ccc;
    width: 100%;
    height: 38px;
    margin-bottom: 10px;
    padding: 8px 12px;
    font-size: 14px;
    line-height: 1.42857;
    display: block;
}

.w-input::placeholder,
.w-select::placeholder {
    color: #999;
}

.w-input:focus,
.w-select:focus {
    border-color: #3898ec;
    outline: 0;
}

.w-input[disabled],
.w-select[disabled],
.w-input[readonly],
.w-select[readonly],
fieldset[disabled] .w-input,
fieldset[disabled] .w-select {
    cursor: not-allowed;
}

.w-input[disabled]:not(.w-input-disabled),
.w-select[disabled]:not(.w-input-disabled),
.w-input[readonly],
.w-select[readonly],
fieldset[disabled]:not(.w-input-disabled) .w-input,
fieldset[disabled]:not(.w-input-disabled) .w-select {
    background-color: #eee;
}

textarea.w-input,
textarea.w-select {
    height: auto;
}

.w-select {
    background-color: #f3f3f3;
}

.w-select[multiple] {
    height: auto;
}

.w-form-label {
    cursor: pointer;
    margin-bottom: 0;
    font-weight: normal;
    display: inline-block;
}

.w-radio {
    margin-bottom: 5px;
    padding-left: 20px;
    display: block;
}

.w-radio:before,
.w-radio:after {
    content: " ";
    grid-area: 1 / 1 / 2 / 2;
    display: table;
}

.w-radio:after {
    clear: both;
}

.w-radio-input {
    float: left;
    margin: 3px 0 0 -20px;
    line-height: normal;
}

.w-file-upload {
    margin-bottom: 10px;
    display: block;
}

.w-file-upload-input {
    opacity: 0;
    z-index: -100;
    width: 0.1px;
    height: 0.1px;
    position: absolute;
    overflow: hidden;
}

.w-file-upload-default,
.w-file-upload-uploading,
.w-file-upload-success {
    color: #333;
    display: inline-block;
}

.w-file-upload-error {
    margin-top: 10px;
    display: block;
}

.w-file-upload-default.w-hidden,
.w-file-upload-uploading.w-hidden,
.w-file-upload-error.w-hidden,
.w-file-upload-success.w-hidden {
    display: none;
}

.w-file-upload-uploading-btn {
    cursor: pointer;
    background-color: #fafafa;
    border: 1px solid #ccc;
    margin: 0;
    padding: 8px 12px;
    font-size: 14px;
    font-weight: normal;
    display: flex;
}

.w-file-upload-file {
    background-color: #fafafa;
    border: 1px solid #ccc;
    flex-grow: 1;
    justify-content: space-between;
    margin: 0;
    padding: 8px 9px 8px 11px;
    display: flex;
}

.w-file-upload-file-name {
    font-size: 14px;
    font-weight: normal;
    display: block;
}

.w-file-remove-link {
    cursor: pointer;
    width: auto;
    height: auto;
    margin-top: 3px;
    margin-left: 10px;
    padding: 3px;
    display: block;
}

.w-icon-file-upload-remove {
    margin: auto;
    font-size: 10px;
}

.w-file-upload-error-msg {
    color: #ea384c;
    padding: 2px 0;
    display: inline-block;
}

.w-file-upload-info {
    padding: 0 12px;
    line-height: 38px;
    display: inline-block;
}

.w-file-upload-label {
    cursor: pointer;
    background-color: #fafafa;
    border: 1px solid #ccc;
    margin: 0;
    padding: 8px 12px;
    font-size: 14px;
    font-weight: normal;
    display: inline-block;
}

.w-icon-file-upload-icon,
.w-icon-file-upload-uploading {
    width: 20px;
    margin-right: 8px;
    display: inline-block;
}

.w-icon-file-upload-uploading {
    height: 20px;
}

.w-container {
    max-width: 940px;
    margin-left: auto;
    margin-right: auto;
}

.w-container:before,
.w-container:after {
    content: " ";
    grid-area: 1 / 1 / 2 / 2;
    display: table;
}

.w-container:after {
    clear: both;
}

.w-container .w-row {
    margin-left: -10px;
    margin-right: -10px;
}

.w-row:before,
.w-row:after {
    content: " ";
    grid-area: 1 / 1 / 2 / 2;
    display: table;
}

.w-row:after {
    clear: both;
}

.w-row .w-row {
    margin-left: 0;
    margin-right: 0;
}

.w-col {
    float: left;
    width: 100%;
    min-height: 1px;
    padding-left: 10px;
    padding-right: 10px;
    position: relative;
}

.w-col .w-col {
    padding-left: 0;
    padding-right: 0;
}

.w-col-1 {
    width: 8.33333%;
}

.w-col-2 {
    width: 16.6667%;
}

.w-col-3 {
    width: 25%;
}

.w-col-4 {
    width: 33.3333%;
}

.w-col-5 {
    width: 41.6667%;
}

.w-col-6 {
    width: 50%;
}

.w-col-7 {
    width: 58.3333%;
}

.w-col-8 {
    width: 66.6667%;
}

.w-col-9 {
    width: 75%;
}

.w-col-10 {
    width: 83.3333%;
}

.w-col-11 {
    width: 91.6667%;
}

.w-col-12 {
    width: 100%;
}

.w-hidden-main {
    display: none !important;
}

@media screen and (max-width: 991px) {
    .w-container {
        max-width: 728px;
    }

    .w-hidden-main {
        display: inherit !important;
    }

    .w-hidden-medium {
        display: none !important;
    }

    .w-col-medium-1 {
        width: 8.33333%;
    }

    .w-col-medium-2 {
        width: 16.6667%;
    }

    .w-col-medium-3 {
        width: 25%;
    }

    .w-col-medium-4 {
        width: 33.3333%;
    }

    .w-col-medium-5 {
        width: 41.6667%;
    }

    .w-col-medium-6 {
        width: 50%;
    }

    .w-col-medium-7 {
        width: 58.3333%;
    }

    .w-col-medium-8 {
        width: 66.6667%;
    }

    .w-col-medium-9 {
        width: 75%;
    }

    .w-col-medium-10 {
        width: 83.3333%;
    }

    .w-col-medium-11 {
        width: 91.6667%;
    }

    .w-col-medium-12 {
        width: 100%;
    }

    .w-col-stack {
        width: 100%;
        left: auto;
        right: auto;
    }
}

@media screen and (max-width: 767px) {
    .w-hidden-main,
    .w-hidden-medium {
        display: inherit !important;
    }

    .w-hidden-small {
        display: none !important;
    }

    .w-row,
    .w-container .w-row {
        margin-left: 0;
        margin-right: 0;
    }

    .w-col {
        width: 100%;
        left: auto;
        right: auto;
    }

    .w-col-small-1 {
        width: 8.33333%;
    }

    .w-col-small-2 {
        width: 16.6667%;
    }

    .w-col-small-3 {
        width: 25%;
    }

    .w-col-small-4 {
        width: 33.3333%;
    }

    .w-col-small-5 {
        width: 41.6667%;
    }

    .w-col-small-6 {
        width: 50%;
    }

    .w-col-small-7 {
        width: 58.3333%;
    }

    .w-col-small-8 {
        width: 66.6667%;
    }

    .w-col-small-9 {
        width: 75%;
    }

    .w-col-small-10 {
        width: 83.3333%;
    }

    .w-col-small-11 {
        width: 91.6667%;
    }

    .w-col-small-12 {
        width: 100%;
    }
}

@media screen and (max-width: 479px) {
    .w-container {
        max-width: none;
    }

    .w-hidden-main,
    .w-hidden-medium,
    .w-hidden-small {
        display: inherit !important;
    }

    .w-hidden-tiny {
        display: none !important;
    }

    .w-col {
        width: 100%;
    }

    .w-col-tiny-1 {
        width: 8.33333%;
    }

    .w-col-tiny-2 {
        width: 16.6667%;
    }

    .w-col-tiny-3 {
        width: 25%;
    }

    .w-col-tiny-4 {
        width: 33.3333%;
    }

    .w-col-tiny-5 {
        width: 41.6667%;
    }

    .w-col-tiny-6 {
        width: 50%;
    }

    .w-col-tiny-7 {
        width: 58.3333%;
    }

    .w-col-tiny-8 {
        width: 66.6667%;
    }

    .w-col-tiny-9 {
        width: 75%;
    }

    .w-col-tiny-10 {
        width: 83.3333%;
    }

    .w-col-tiny-11 {
        width: 91.6667%;
    }

    .w-col-tiny-12 {
        width: 100%;
    }
}

.w-widget {
    position: relative;
}

.w-widget-map {
    width: 100%;
    height: 400px;
}

.w-widget-map label {
    width: auto;
    display: inline;
}

.w-widget-map img {
    max-width: inherit;
}

.w-widget-map .gm-style-iw {
    text-align: center;
}

.w-widget-map .gm-style-iw > button {
    display: none !important;
}

.w-widget-twitter {
    overflow: hidden;
}

.w-widget-twitter-count-shim {
    vertical-align: top;
    text-align: center;
    background: #fff;
    border: 1px solid #758696;
    border-radius: 3px;
    width: 28px;
    height: 20px;
    display: inline-block;
    position: relative;
}

.w-widget-twitter-count-shim * {
    pointer-events: none;
    -webkit-user-select: none;
    user-select: none;
}

.w-widget-twitter-count-shim .w-widget-twitter-count-inner {
    text-align: center;
    color: #999;
    font-family: serif;
    font-size: 16px;
    line-height: 12px;
    position: relative;
}

.w-widget-twitter-count-shim .w-widget-twitter-count-clear {
    display: block;
    position: relative;
}

.w-widget-twitter-count-shim.w--large {
    width: 36px;
    height: 28px;
}

.w-widget-twitter-count-shim.w--large .w-widget-twitter-count-inner {
    font-size: 18px;
    line-height: 18px;
}

.w-widget-twitter-count-shim:not(.w--vertical) {
    margin-left: 5px;
    margin-right: 8px;
}

.w-widget-twitter-count-shim:not(.w--vertical).w--large {
    margin-left: 6px;
}

.w-widget-twitter-count-shim:not(.w--vertical):before,
.w-widget-twitter-count-shim:not(.w--vertical):after {
    content: " ";
    pointer-events: none;
    border: solid #0000;
    width: 0;
    height: 0;
    position: absolute;
    top: 50%;
    left: 0;
}

.w-widget-twitter-count-shim:not(.w--vertical):before {
    border-width: 4px;
    border-color: #75869600 #5d6c7b #75869600 #75869600;
    margin-top: -4px;
    margin-left: -9px;
}

.w-widget-twitter-count-shim:not(.w--vertical).w--large:before {
    border-width: 5px;
    margin-top: -5px;
    margin-left: -10px;
}

.w-widget-twitter-count-shim:not(.w--vertical):after {
    border-width: 4px;
    border-color: #fff0 #fff #fff0 #fff0;
    margin-top: -4px;
    margin-left: -8px;
}

.w-widget-twitter-count-shim:not(.w--vertical).w--large:after {
    border-width: 5px;
    margin-top: -5px;
    margin-left: -9px;
}

.w-widget-twitter-count-shim.w--vertical {
    width: 61px;
    height: 33px;
    margin-bottom: 8px;
}

.w-widget-twitter-count-shim.w--vertical:before,
.w-widget-twitter-count-shim.w--vertical:after {
    content: " ";
    pointer-events: none;
    border: solid #0000;
    width: 0;
    height: 0;
    position: absolute;
    top: 100%;
    left: 50%;
}

.w-widget-twitter-count-shim.w--vertical:before {
    border-width: 5px;
    border-color: #5d6c7b #75869600 #75869600;
    margin-left: -5px;
}

.w-widget-twitter-count-shim.w--vertical:after {
    border-width: 4px;
    border-color: #fff #fff0 #fff0;
    margin-left: -4px;
}

.w-widget-twitter-count-shim.w--vertical .w-widget-twitter-count-inner {
    font-size: 18px;
    line-height: 22px;
}

.w-widget-twitter-count-shim.w--vertical.w--large {
    width: 76px;
}

.w-background-video {
    color: #fff;
    height: 500px;
    position: relative;
    overflow: hidden;
}

.w-background-video > video {
    object-fit: cover;
    z-index: -100;
    background-position: 50%;
    background-size: cover;
    width: 100%;
    height: 100%;
    margin: auto;
    position: absolute;
    inset: -100%;
}

.w-background-video > video::-webkit-media-controls-start-playback-button {
    -webkit-appearance: none;
    display: none !important;
}

.w-background-video--control {
    background-color: #0000;
    padding: 0;
    position: absolute;
    bottom: 1em;
    right: 1em;
}

.w-background-video--control > [hidden] {
    display: none !important;
}

.w-slider {
    text-align: center;
    clear: both;
    -webkit-tap-highlight-color: #0000;
    tap-highlight-color: #0000;
    background: #ddd;
    height: 300px;
    position: relative;
}

.w-slider-mask {
    z-index: 1;
    white-space: nowrap;
    height: 100%;
    display: block;
    position: relative;
    left: 0;
    right: 0;
    overflow: hidden;
}

.w-slide {
    vertical-align: top;
    white-space: normal;
    text-align: left;
    width: 100%;
    height: 100%;
    display: inline-block;
    position: relative;
}

.w-slider-nav {
    z-index: 2;
    text-align: center;
    -webkit-tap-highlight-color: #0000;
    tap-highlight-color: #0000;
    height: 40px;
    margin: auto;
    padding-top: 10px;
    position: absolute;
    inset: auto 0 0;
}

.w-slider-nav.w-round > div {
    border-radius: 100%;
}

.w-slider-nav.w-num > div {
    font-size: inherit;
    line-height: inherit;
    width: auto;
    height: auto;
    padding: 0.2em 0.5em;
}

.w-slider-nav.w-shadow > div {
    box-shadow: 0 0 3px #3336;
}

.w-slider-nav-invert {
    color: #fff;
}

.w-slider-nav-invert > div {
    background-color: #2226;
}

.w-slider-nav-invert > div.w-active {
    background-color: #222;
}

.w-slider-dot {
    cursor: pointer;
    background-color: #fff6;
    width: 1em;
    height: 1em;
    margin: 0 3px 0.5em;
    transition: background-color 0.1s, color 0.1s;
    display: inline-block;
    position: relative;
}

.w-slider-dot.w-active {
    background-color: #fff;
}

.w-slider-dot:focus {
    outline: none;
    box-shadow: 0 0 0 2px #fff;
}

.w-slider-dot:focus.w-active {
    box-shadow: none;
}

.w-slider-arrow-left,
.w-slider-arrow-right {
    cursor: pointer;
    color: #fff;
    -webkit-tap-highlight-color: #0000;
    tap-highlight-color: #0000;
    -webkit-user-select: none;
    user-select: none;
    width: 80px;
    margin: auto;
    font-size: 40px;
    position: absolute;
    inset: 0;
    overflow: hidden;
}

.w-slider-arrow-left [class^="w-icon-"],
.w-slider-arrow-right [class^="w-icon-"],
.w-slider-arrow-left [class*=" w-icon-"],
.w-slider-arrow-right [class*=" w-icon-"] {
    position: absolute;
}

.w-slider-arrow-left:focus,
.w-slider-arrow-right:focus {
    outline: 0;
}

.w-slider-arrow-left {
    z-index: 3;
    right: auto;
}

.w-slider-arrow-right {
    z-index: 4;
    left: auto;
}

.w-icon-slider-left,
.w-icon-slider-right {
    width: 1em;
    height: 1em;
    margin: auto;
    inset: 0;
}

.w-slider-aria-label {
    clip: rect(0 0 0 0);
    border: 0;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    overflow: hidden;
}

.w-slider-force-show {
    display: block !important;
}

.w-dropdown {
    text-align: left;
    z-index: 900;
    margin-left: auto;
    margin-right: auto;
    display: inline-block;
    position: relative;
}

.w-dropdown-btn,
.w-dropdown-toggle,
.w-dropdown-link {
    vertical-align: top;
    color: #222;
    text-align: left;
    white-space: nowrap;
    margin-left: auto;
    margin-right: auto;
    padding: 20px;
    text-decoration: none;
    position: relative;
}

.w-dropdown-toggle {
    -webkit-user-select: none;
    user-select: none;
    cursor: pointer;
    padding-right: 40px;
    display: inline-block;
}

.w-dropdown-toggle:focus {
    outline: 0;
}

.w-icon-dropdown-toggle {
    width: 1em;
    height: 1em;
    margin: auto 20px auto auto;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
}

.w-dropdown-list {
    background: #ddd;
    min-width: 100%;
    display: none;
    position: absolute;
}

.w-dropdown-list.w--open {
    display: block;
}

.w-dropdown-link {
    color: #222;
    padding: 10px 20px;
    display: block;
}

.w-dropdown-link.w--current {
    color: #0082f3;
}

.w-dropdown-link:focus {
    outline: 0;
}

@media screen and (max-width: 767px) {
    .w-nav-brand {
        padding-left: 10px;
    }
}

.w-lightbox-backdrop {
    cursor: auto;
    letter-spacing: normal;
    text-indent: 0;
    text-shadow: none;
    text-transform: none;
    visibility: visible;
    white-space: normal;
    word-break: normal;
    word-spacing: normal;
    word-wrap: normal;
    color: #fff;
    text-align: center;
    z-index: 2000;
    opacity: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    -webkit-tap-highlight-color: transparent;
    background: #000000e6;
    outline: 0;
    font-size: 17px;
    font-style: normal;
    font-weight: 300;
    line-height: 1.2;
    list-style: disc;
    position: fixed;
    inset: 0;
    -webkit-transform: translate(0);
}

.w-lightbox-backdrop,
.w-lightbox-container {
    -webkit-overflow-scrolling: touch;
    height: 100%;
    overflow: auto;
}

.w-lightbox-content {
    height: 100vh;
    position: relative;
    overflow: hidden;
}

.w-lightbox-view {
    opacity: 0;
    width: 100vw;
    height: 100vh;
    position: absolute;
}

.w-lightbox-view:before {
    content: "";
    height: 100vh;
}

.w-lightbox-group,
.w-lightbox-group .w-lightbox-view,
.w-lightbox-group .w-lightbox-view:before {
    height: 86vh;
}

.w-lightbox-frame,
.w-lightbox-view:before {
    vertical-align: middle;
    display: inline-block;
}

.w-lightbox-figure {
    margin: 0;
    position: relative;
}

.w-lightbox-group .w-lightbox-figure {
    cursor: pointer;
}

.w-lightbox-img {
    width: auto;
    max-width: none;
    height: auto;
}

.w-lightbox-image {
    float: none;
    max-width: 100vw;
    max-height: 100vh;
    display: block;
}

.w-lightbox-group .w-lightbox-image {
    max-height: 86vh;
}

.w-lightbox-caption {
    text-align: left;
    text-overflow: ellipsis;
    white-space: nowrap;
    background: #0006;
    padding: 0.5em 1em;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    overflow: hidden;
}

.w-lightbox-embed {
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
}

.w-lightbox-control {
    cursor: pointer;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 24px;
    width: 4em;
    transition: all 0.3s;
    position: absolute;
    top: 0;
}

.w-lightbox-left {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9Ii0yMCAwIDI0IDQwIiB3aWR0aD0iMjQiIGhlaWdodD0iNDAiPjxnIHRyYW5zZm9ybT0icm90YXRlKDQ1KSI+PHBhdGggZD0ibTAgMGg1djIzaDIzdjVoLTI4eiIgb3BhY2l0eT0iLjQiLz48cGF0aCBkPSJtMSAxaDN2MjNoMjN2M2gtMjZ6IiBmaWxsPSIjZmZmIi8+PC9nPjwvc3ZnPg==");
    display: none;
    bottom: 0;
    left: 0;
}

.w-lightbox-right {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9Ii00IDAgMjQgNDAiIHdpZHRoPSIyNCIgaGVpZ2h0PSI0MCI+PGcgdHJhbnNmb3JtPSJyb3RhdGUoNDUpIj48cGF0aCBkPSJtMC0waDI4djI4aC01di0yM2gtMjN6IiBvcGFjaXR5PSIuNCIvPjxwYXRoIGQ9Im0xIDFoMjZ2MjZoLTN2LTIzaC0yM3oiIGZpbGw9IiNmZmYiLz48L2c+PC9zdmc+");
    display: none;
    bottom: 0;
    right: 0;
}

.w-lightbox-close {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9Ii00IDAgMTggMTciIHdpZHRoPSIxOCIgaGVpZ2h0PSIxNyI+PGcgdHJhbnNmb3JtPSJyb3RhdGUoNDUpIj48cGF0aCBkPSJtMCAwaDd2LTdoNXY3aDd2NWgtN3Y3aC01di03aC03eiIgb3BhY2l0eT0iLjQiLz48cGF0aCBkPSJtMSAxaDd2LTdoM3Y3aDd2M2gtN3Y3aC0zdi03aC03eiIgZmlsbD0iI2ZmZiIvPjwvZz48L3N2Zz4=");
    background-size: 18px;
    height: 2.6em;
    right: 0;
}

.w-lightbox-strip {
    white-space: nowrap;
    padding: 0 1vh;
    line-height: 0;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    overflow: auto hidden;
}

.w-lightbox-item {
    box-sizing: content-box;
    cursor: pointer;
    width: 10vh;
    padding: 2vh 1vh;
    display: inline-block;
    -webkit-transform: translate3d(0, 0, 0);
}

.w-lightbox-active {
    opacity: 0.3;
}

.w-lightbox-thumbnail {
    background: #222;
    height: 10vh;
    position: relative;
    overflow: hidden;
}

.w-lightbox-thumbnail-image {
    position: absolute;
    top: 0;
    left: 0;
}

.w-lightbox-thumbnail .w-lightbox-tall {
    width: 100%;
    top: 50%;
    transform: translate(0, -50%);
}

.w-lightbox-thumbnail .w-lightbox-wide {
    height: 100%;
    left: 50%;
    transform: translate(-50%);
}

.w-lightbox-spinner {
    box-sizing: border-box;
    border: 5px solid #0006;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    margin-top: -20px;
    margin-left: -20px;
    animation: 0.8s linear infinite spin;
    position: absolute;
    top: 50%;
    left: 50%;
}

.w-lightbox-spinner:after {
    content: "";
    border: 3px solid #0000;
    border-bottom-color: #fff;
    border-radius: 50%;
    position: absolute;
    inset: -4px;
}

.w-lightbox-hide {
    display: none;
}

.w-lightbox-noscroll {
    overflow: hidden;
}

@media (min-width: 768px) {
    .w-lightbox-content {
        height: 96vh;
        margin-top: 2vh;
    }

    .w-lightbox-view,
    .w-lightbox-view:before {
        height: 96vh;
    }

    .w-lightbox-group,
    .w-lightbox-group .w-lightbox-view,
    .w-lightbox-group .w-lightbox-view:before {
        height: 84vh;
    }

    .w-lightbox-image {
        max-width: 96vw;
        max-height: 96vh;
    }

    .w-lightbox-group .w-lightbox-image {
        max-width: 82.3vw;
        max-height: 84vh;
    }

    .w-lightbox-left,
    .w-lightbox-right {
        opacity: 0.5;
        display: block;
    }

    .w-lightbox-close {
        opacity: 0.8;
    }

    .w-lightbox-control:hover {
        opacity: 1;
    }
}

.w-lightbox-inactive,
.w-lightbox-inactive:hover {
    opacity: 0;
}

.w-richtext:before,
.w-richtext:after {
    content: " ";
    grid-area: 1 / 1 / 2 / 2;
    display: table;
}

.w-richtext:after {
    clear: both;
}

.w-richtext[contenteditable="true"]:before,
.w-richtext[contenteditable="true"]:after {
    white-space: initial;
}

.w-richtext ol,
.w-richtext ul {
    overflow: hidden;
}

.w-richtext .w-richtext-figure-selected.w-richtext-figure-type-video div:after,
.w-richtext .w-richtext-figure-selected[data-rt-type="video"] div:after,
.w-richtext .w-richtext-figure-selected.w-richtext-figure-type-image div,
.w-richtext .w-richtext-figure-selected[data-rt-type="image"] div {
    outline: 2px solid #2895f7;
}

.w-richtext figure.w-richtext-figure-type-video > div:after,
.w-richtext figure[data-rt-type="video"] > div:after {
    content: "";
    display: none;
    position: absolute;
    inset: 0;
}

.w-richtext figure {
    max-width: 60%;
    position: relative;
}

.w-richtext figure > div:before {
    cursor: default !important;
}

.w-richtext figure img {
    width: 100%;
}

.w-richtext figure div {
    color: #0000;
    font-size: 0;
}

.w-richtext figure.w-richtext-figure-type-image,
.w-richtext figure[data-rt-type="image"] {
    display: table;
}

.w-richtext figure.w-richtext-figure-type-image > div,
.w-richtext figure[data-rt-type="image"] > div {
    display: inline-block;
}

.w-richtext figure.w-richtext-figure-type-video,
.w-richtext figure[data-rt-type="video"] {
    width: 60%;
    height: 0;
}

.w-richtext figure.w-richtext-figure-type-video iframe,
.w-richtext figure[data-rt-type="video"] iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.w-richtext figure.w-richtext-figure-type-video > div,
.w-richtext figure[data-rt-type="video"] > div {
    width: 100%;
}

.w-richtext figure.w-richtext-align-center {
    clear: both;
    margin-left: auto;
    margin-right: auto;
}

.w-richtext figure.w-richtext-align-center.w-richtext-figure-type-image > div,
.w-richtext figure.w-richtext-align-center[data-rt-type="image"] > div {
    max-width: 100%;
}

.w-richtext figure.w-richtext-align-normal {
    clear: both;
}

.w-richtext figure.w-richtext-align-fullwidth {
    text-align: center;
    clear: both;
    width: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    display: block;
}

.w-richtext figure.w-richtext-align-fullwidth > div {
    padding-bottom: inherit;
    display: inline-block;
}

.w-richtext figure.w-richtext-align-floatleft {
    float: left;
    clear: none;
    margin-right: 16px;
}

.w-richtext figure.w-richtext-align-floatright {
    float: right;
    clear: none;
    margin-left: 16px;
}

.w-nav {
    z-index: 1000;
    background: #ddd;
    position: relative;
}

.w-nav:before,
.w-nav:after {
    content: " ";
    grid-area: 1 / 1 / 2 / 2;
    display: table;
}

.w-nav:after {
    clear: both;
}

.w-nav-brand {
    float: left;
    color: #333;
    text-decoration: none;
    position: relative;
}

.w-nav-link {
    vertical-align: top;
    color: #222;
    text-align: left;
    margin-left: auto;
    margin-right: auto;
    padding: 20px;
    text-decoration: none;
    display: inline-block;
    position: relative;
}

.w-nav-link.w--current {
    color: #0082f3;
}

.w-nav-menu {
    float: right;
    position: relative;
}

[data-nav-menu-open] {
    text-align: center;
    background: #c8c8c8;
    min-width: 200px;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    overflow: visible;
    display: block !important;
}

.w--nav-link-open {
    display: block;
    position: relative;
}

.w-nav-overlay {
    width: 100%;
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    overflow: hidden;
}

.w-nav-overlay [data-nav-menu-open] {
    top: 0;
}

.w-nav[data-animation="over-left"] .w-nav-overlay {
    width: auto;
}

.w-nav[data-animation="over-left"] .w-nav-overlay,
.w-nav[data-animation="over-left"] [data-nav-menu-open] {
    z-index: 1;
    top: 0;
    right: auto;
}

.w-nav[data-animation="over-right"] .w-nav-overlay {
    width: auto;
}

.w-nav[data-animation="over-right"] .w-nav-overlay,
.w-nav[data-animation="over-right"] [data-nav-menu-open] {
    z-index: 1;
    top: 0;
    left: auto;
}

.w-nav-button {
    float: right;
    cursor: pointer;
    -webkit-tap-highlight-color: #0000;
    tap-highlight-color: #0000;
    -webkit-user-select: none;
    user-select: none;
    padding: 18px;
    font-size: 24px;
    display: none;
    position: relative;
}

.w-nav-button:focus {
    outline: 0;
}

.w-nav-button.w--open {
    color: #fff;
    background-color: #c8c8c8;
}

.w-nav[data-collapse="all"] .w-nav-menu {
    display: none;
}

.w-nav[data-collapse="all"] .w-nav-button,
.w--nav-dropdown-open,
.w--nav-dropdown-toggle-open {
    display: block;
}

.w--nav-dropdown-list-open {
    position: static;
}

@media screen and (max-width: 991px) {
    .w-nav[data-collapse="medium"] .w-nav-menu {
        display: none;
    }

    .w-nav[data-collapse="medium"] .w-nav-button {
        display: block;
    }
}

@media screen and (max-width: 767px) {
    .w-nav[data-collapse="small"] .w-nav-menu {
        display: none;
    }

    .w-nav[data-collapse="small"] .w-nav-button {
        display: block;
    }

    .w-nav-brand {
        padding-left: 10px;
    }
}

@media screen and (max-width: 479px) {
    .w-nav[data-collapse="tiny"] .w-nav-menu {
        display: none;
    }

    .w-nav[data-collapse="tiny"] .w-nav-button {
        display: block;
    }
}

.w-tabs {
    position: relative;
}

.w-tabs:before,
.w-tabs:after {
    content: " ";
    grid-area: 1 / 1 / 2 / 2;
    display: table;
}

.w-tabs:after {
    clear: both;
}

.w-tab-menu {
    position: relative;
}

.w-tab-link {
    vertical-align: top;
    text-align: left;
    cursor: pointer;
    color: #222;
    background-color: #ddd;
    padding: 9px 30px;
    text-decoration: none;
    display: inline-block;
    position: relative;
}

.w-tab-link.w--current {
    background-color: #c8c8c8;
}

.w-tab-link:focus {
    outline: 0;
}

.w-tab-content {
    display: block;
    position: relative;
    overflow: hidden;
}

.w-tab-pane {
    display: none;
    position: relative;
}

.w--tab-active {
    display: block;
}

@media screen and (max-width: 479px) {
    .w-tab-link {
        display: block;
    }
}

.w-ix-emptyfix:after {
    content: "";
}

@keyframes spin {
    0% {
        transform: rotate(0);
    }

    100% {
        transform: rotate(360deg);
    }
}

.w-dyn-empty {
    background-color: #ddd;
    padding: 10px;
}

.w-dyn-hide,
.w-dyn-bind-empty,
.w-condition-invisible {
    display: none !important;
}

.wf-layout-layout {
    display: grid;
}

.w-code-component > * {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

:root {
    --light--text-primary: #1b1b1b;
    --light--white: white;
    --light--theme: #ca305f;
    --light--text-disabled: #6d6d6d;
    --light--theme-secondary: #00308d;
    --light--page-bg: #f5ede2;
    --light--theme-highlight: #f49fb1;
    --light--background: white;
    --light--black: black;
    --light--text-secondary: #292929;
    --dark--background: #1b1b1b;
    --dark--text-primary: white;
    --dark--text-secondary: #d5d5d5;
    --dark--text-disabled: #909090;
    --dark--theme: #ed6f8b;
    --dark--page-bg: #292621;
}

.w-layout-grid {
    grid-row-gap: 16px;
    grid-column-gap: 16px;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
    grid-auto-columns: 1fr;
    display: grid;
}

.w-layout-layout {
    grid-row-gap: 20px;
    grid-column-gap: 20px;
    grid-auto-columns: 1fr;
    justify-content: center;
    padding: 20px;
}

.w-layout-cell {
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
}


.w-layout-vflex {
    flex-direction: column;
    align-items: flex-start;
    display: flex;
}


img {
    display: block;
}



blockquote {
    border-left: 5px solid #e2e2e2;
    margin-top: 25px;
    margin-bottom: 25px;
    padding: 16px 30px;
    font-size: 20px;
    line-height: 34px;
}

.display-2 {
    text-transform: none;
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 36px;
    font-weight: 400;
    line-height: 50px;
}

.styleguide-block {
    text-align: left;
    flex-direction: column;
    align-items: center;
    margin-top: 80px;
    margin-bottom: 80px;
    display: block;
}

.display-3 {
    text-transform: uppercase;
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: 500;
    line-height: 32px;
}

.rich-text {
    width: 70%;
    margin-bottom: 100px;
    margin-left: auto;
    margin-right: auto;
}

.rich-text p {
    opacity: 0.6;
    margin-top: 16px;
    margin-bottom: 25px;
}


.styleguide-content-wrap {
    text-align: center;
}

.paragraph-small {
    font-size: 0.875rem;
    line-height: 1.625rem;
}

.styleguide-header-wrap {
    color: #fff;
    text-align: center;
    background-color: #1a1b1f;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 460px;
    padding: 30px;
    display: flex;
}

.styleguide-button-wrap {
    margin-top: 10px;
    margin-bottom: 10px;
}


.section.cc-contact {
    background-color: #f4f4f4;
    padding-left: 80px;
    padding-right: 80px;
}

.section.featured-works {
    grid-column-gap: 24px;
    grid-row-gap: 24px;
    object-fit: fill;
    flex-flow: wrap;
    justify-content: space-between;
    align-self: stretch;
    align-items: flex-start;
    display: flex;
}

.section.left-aligned-title {
    align-self: stretch;
    display: block;
}

.section.about {
    margin-top: 100px;
    margin-bottom: 100px;
}

.section.filter-header {
    align-self: stretch;
    display: block;
}

.section.hero-section {
    background-color: var(--light--theme);
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding-left: 48px;
    padding-right: 48px;
}

.button {
    color: #fff;
    letter-spacing: 2px;
    text-transform: uppercase;
    background-color: #1a1b1f;
    border-radius: 4px;
    padding: 12px 25px;
    font-size: 12px;
    line-height: 20px;
    text-decoration: none;
    transition: background-color 0.4s, opacity 0.4s, color 0.4s;
}

.button:hover {
    color: #fff;
    background-color: #32343a;
}

.button:active {
    background-color: #43464d;
}

.button.cc-jumbo-button {
    padding: 16px 35px;
    font-size: 14px;
    line-height: 26px;
}

.button.cc-white-button {
    color: #202020;
    background-color: #fff;
    padding: 16px 35px;
    font-size: 14px;
    line-height: 26px;
}

.button.cc-white-button:hover {
    background-color: #fffc;
}

.button.cc-white-button:active {
    background-color: #ffffffe6;
}

.paragraph-bigger {
    opacity: 0.75;
    border-left: 8px solid #a8efc8;
    margin-top: 12px;
    margin-bottom: 12px;
    padding-left: 24px;
    font-size: 1.25rem;
    line-height: 2.125rem;
}

.paragraph-bigger.cc-bigger-light {
    opacity: 0.6;
    color: var(--light--theme);
}

.divider {
    background-color: #eee;
    height: 1px;
}

.navigation-item {
    opacity: 0.6;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding-top: 8px;
    padding-bottom: 8px;
    line-height: 20px;
    transition-property: color;
    display: block;
    overflow: visible;
}

.navigation-item:hover {
    opacity: 0.9;
    color: var(--light--theme);
    border: 0 #000;
}

.navigation-item:active {
    opacity: 0.8;
}

.navigation-item.w--current {
    opacity: 1;
    color: var(--light--theme);
    text-decoration: none;
    transition: opacity 0.2s;
    display: block;
}

.navigation-item.w--current:hover {
    opacity: 0.8;
}

.navigation-item.w--current:active {
    opacity: 0.7;
    color: #32343a;
}

.navigation-item.text-block {
    opacity: 1;
    color: var(--light--text-disabled);
    letter-spacing: 0;
    padding: 0;
    line-height: 1.75rem;
    transition-property: color;
}

.navigation-item.text-block:hover {
    color: var(--light--theme);
}

.navigation-item.text-block.w--current {
    text-transform: uppercase;
}

.navigation-items {
    flex: 1;
    justify-content: space-between;
    align-items: center;
    display: flex;
}

.navigation {
    background-color: #0000;
    align-items: center;
    padding: 24px 48px;
    display: flex;
}

.logo-image {
    width: 24px;
    height: 24px;
    display: none;
}

.navigation-wrap {
    align-items: center;
    margin-right: -20px;
    display: flex;
}

.intro-wrap {
    margin-top: 100px;
    margin-bottom: 140px;
}

.position-name-text {
    text-transform: none;
    margin-bottom: 10px;
    font-size: 20px;
    font-weight: 400;
    line-height: 34px;
}

.work-description {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin-bottom: 60px;
    display: flex;
}

.work-image {
    text-align: center;
    background-color: #f4f4f4;
    background-image: url("https://d3e54v103j8qbb.cloudfront.net/img/background-image.svg");
    background-position: 50%;
    background-size: cover;
    flex-direction: column;
    justify-content: center;
    align-items: stretch;
    height: 460px;
    margin-bottom: 40px;
    text-decoration: none;
    display: flex;
}

.work-image:hover {
    opacity: 0.8;
}

.work-image:active {
    opacity: 0.7;
}

.work-image.cc-work-1 {
    background-image: url("https://cdn.prod.website-files.com/64f68d40b2e9f3e7960f273e/64f68d41b2e9f3e7960f27aa_portfolio%201%20-%20wide.svg");
    background-size: cover;
    flex-flow: row;
    width: 100%;
    display: block;
}

.work-image.cc-work-2 {
    background-image: url("https://cdn.prod.website-files.com/64f68d40b2e9f3e7960f273e/64f68d41b2e9f3e7960f27a9_portfolio%202%20-%20wide.svg");
    background-size: cover;
    width: 300px;
    min-width: 500px;
}

.work-image.cc-work-4 {
    background-image: url("https://cdn.prod.website-files.com/64f68d40b2e9f3e7960f273e/64f68d41b2e9f3e7960f27a7_portfolio%203%20-%20wide.svg");
    background-size: cover;
    width: 300px;
}

.work-image.cc-work-3 {
    background-image: url("https://cdn.prod.website-files.com/64f68d40b2e9f3e7960f273e/64f68d41b2e9f3e7960f27a6_portfolio%204%20-%20wide.svg");
    background-size: cover;
    width: 300px;
}

.project-name-link {
    color: var(--light--text-primary);
    margin-bottom: 5px;
    font-size: 20px;
    font-weight: 400;
    line-height: 34px;
    text-decoration: none;
}

.project-name-link:hover {
    opacity: 0.8;
}

.project-name-link:active {
    opacity: 0.7;
}

.text-field {
    border: 1px solid #e4e4e4;
    border-radius: 0;
    margin-bottom: 18px;
    padding: 21px 20px;
    font-size: 14px;
    line-height: 26px;
    transition: border-color 0.4s;
}

.text-field:hover {
    border-color: #e3e6eb;
}

.text-field:active,
.text-field:focus {
    border-color: #43464d;
}

.text-field::placeholder {
    color: #32343a66;
}

.text-field.cc-textarea {
    height: 200px;
    padding-top: 12px;
}

.status-message {
    color: #fff;
    text-align: center;
    background-color: #202020;
    padding: 9px 30px;
    font-size: 14px;
    line-height: 26px;
}

.status-message.cc-success-message {
    background-color: #12b878;
}

.status-message.cc-error-message {
    background-color: #db4b68;
}

.contact {
    padding-top: 80px;
    padding-bottom: 90px;
}

.contact-headline {
    width: 70%;
    margin-bottom: 40px;
}


.services-items-grid {
    grid-column-gap: 30px;
    grid-row-gap: 30px;
    grid-template-rows: auto;
    grid-template-areas: ". .";
    padding-top: 10px;
}

.skills-grid {
    grid-column-gap: 80px;
    grid-row-gap: 30px;
    grid-template:
        ". ."
        / 1fr 1fr;
    margin-bottom: 140px;
}

.project-overview-grid {
    grid-column-gap: 50px;
    grid-row-gap: 100px;
    grid-template:
        "Project-Overview"
        / 2.5fr 1fr;
    margin-top: 32px;
    margin-bottom: 0;
}



.project-description-grid {
    grid-column-gap: 30px;
    grid-row-gap: 30px;
    grid-template:
        ". ."
        / 1fr 2.5fr;
    margin-top: 0;
    margin-bottom: 0;
}

.detail-image {
    border-radius: 8px;
    width: 1400px;
    margin-bottom: 8px;
    display: block;
    position: static;
    top: 0;
    left: 0;
    overflow: hidden;
}

.email-section {
    text-align: center;
    width: 70%;
    margin: 140px auto 200px;
}

.email-link {
    text-transform: none;
    margin-top: 16px;
    margin-bottom: 16px;
    font-size: 64px;
    font-weight: 400;
    line-height: 88px;
    text-decoration: none;
}

.email-link:hover {
    opacity: 0.8;
}

.email-link:active {
    opacity: 0.7;
}

.utility-page-wrap {
    color: #fff;
    text-align: center;
    justify-content: center;
    align-items: center;
    width: 100vw;
    max-width: 100%;
    height: 100vh;
    max-height: 100%;
    padding: 30px;
    display: flex;
}

._404-wrap {
    background-color: #1a1b1f;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    padding: 30px;
    display: flex;
}

._404-content-wrap {
    margin-bottom: 20px;
}

.protected-wrap {
    text-align: center;
    justify-content: center;
    padding-top: 90px;
    padding-bottom: 100px;
    display: flex;
}

.protected-form {
    flex-direction: column;
    display: flex;
}

.protected-heading {
    margin-bottom: 30px;
}

.text-block {
    font-family: Ubuntu, Helvetica, sans-serif;
    font-size: 1.5rem;
    font-weight: 500;
}

.text-block:hover {
    mix-blend-mode: normal;
}

.link {
    color: var(--light--theme-secondary);
}

.svg {
    width: 16px;
    height: 16px;
}

.link-block {
    opacity: 0.6;
    color: var(--light--text-primary);
    justify-content: flex-start;
    align-items: center;
    padding-left: 20px;
    padding-right: 20px;
    text-decoration: none;
    display: flex;
}

.text-block-2 {
    padding-left: 8px;
    font-size: 0.75rem;
    line-height: 1.25rem;
    text-decoration: none;
}


.cell {
    background-color: var(--light--theme-highlight);
    align-items: center;
    display: flex;
}

.cell-2,
.cell-3 {
    background-color: var(--light--theme-highlight);
    align-items: center;
}

.quick-stack {
    padding: 0;
}

.div-block-3 {
    display: none;
}

.body-2 {
    flex-flow: column;
    align-items: stretch;
    display: flex;
}

.body-3,
.body-4 {
    flex-flow: column;
    display: flex;
}

.body-5 {
    -webkit-text-fill-color: inherit;
    background-color: #f1eeea;
    background-image: url("https://cdn.prod.website-files.com/64f68d40b2e9f3e7960f273e/678f45d5c397ad0a8b34a96b_paper%20texture%20copy.jpg");
    background-position: 0 0;
    background-size: 512px;
    background-attachment: scroll;
    background-clip: border-box;
    flex-flow: column;
    justify-content: flex-start;
    display: flex;
}

.waves-image-gallery-1 {
    border-radius: 8px;
    width: 100%;
    margin-bottom: 12px;
}

.waves-column-gallery-1 {
    grid-row-gap: 12px;
    flex-direction: column;
    display: flex;
}

.waves-grid-gallery-1 {
    grid-column-gap: 32px;
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr;
    margin-bottom: 12px;
}

.waves-master-gallery-1 {
    width: 100%;
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto;
}

.waves---main-container {
    max-width: 1400px;
    padding-left: 0;
    padding-right: 0;
}

.waves---section-medium {
    padding-top: 0;
    padding-bottom: 0;
}


.feature-card {
    background-color: var(--light--theme-highlight);
    flex-flow: column;
    max-width: 600px;
    display: flex;
}

.selection-arrow {
    text-align: center;
    justify-content: center;
    align-items: center;
    width: 34px;
    height: 34px;
    display: flex;
}

.box-title {
    justify-content: space-between;
    align-self: stretch;
    align-items: flex-start;
    display: flex;
}

.image-6 {
    max-width: 100%;
}

.div-block-5 {
    grid-column-gap: 24px;
    grid-row-gap: 24px;
    flex-flow: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
}

.image-7 {
    flex-flow: row;
    flex: 0 auto;
    min-width: 100px;
    max-width: 1000px;
    margin-bottom: 12px;
    display: block;
    overflow: clip;
}

.div-block-6 {
    margin-bottom: 12px;
}

.div-block-7 {
    flex-flow: column;
    flex: 1;
    justify-content: flex-start;
    align-items: flex-start;
    width: auto;
    display: flex;
}

.div-block-8 {
    flex: 0 auto;
}



.project-card {
    background-color: var(--light--background);
    -webkit-text-decoration-skip-ink: auto;
    text-decoration-skip-ink: auto;
    border-radius: 32px 32px 4px;
    justify-content: flex-start;
    align-items: flex-start;
    margin-bottom: 24px;
    padding-bottom: 16px;
    -webkit-text-decoration: none;
    text-decoration: none;
    overflow: hidden;
    box-shadow: 2px 2px 16px #0000001a;
}


.fs-radio_field {
    border: 2px solid var(--light--text-primary);
    background-color: var(--light--background);
    color: #000;
    cursor: pointer;
    border-radius: 0.25rem;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    margin-bottom: 0;
    padding: 0.5rem 1rem;
    font-weight: 500;
    display: flex;
    position: relative;
}

.fs-radio_field:hover {
    border-color: var(--light--text-disabled);
    opacity: 1;
    color: #696969;
}

.fs-radio_field:focus {
    border-color: var(--light--theme);
}

.fs-radio_field:focus-visible {
    border-color: var(--light--theme);
}

.fs-radio_field[data-wf-focus-visible] {
    border-color: var(--light--theme);
}

.fs-radio_field.is-active {
    border-color: var(--light--theme);
    background-color: var(--light--theme);
    color: #fff;
}

.fs-radio_icon {
    z-index: 1;
    flex: none;
    width: 1.5rem;
    height: 1.5rem;
    margin-right: 0.5rem;
    position: relative;
}

.fs-radio_button {
    border-style: none;
    border-radius: 0;
    width: 100%;
    height: 100%;
    margin-top: 0;
    margin-left: 0;
    display: block;
    position: absolute;
    inset: 0%;
    box-shadow: 1px 1px 3px #0000;
}

.fs-radio_button.w--redirected-focus {
    box-shadow: none;
}

.fs-radio_button.w--redirected-focus-visible {
    box-shadow: none;
    outline-offset: 4px;
    outline: 2px solid #9b9b9b;
}

.fs-radio_label {
    margin-bottom: 0;
    font-weight: 500;
    position: relative;
}

.collection-list {
    grid-column-gap: 0.5em;
    grid-row-gap: 0.5em;
    flex-flow: wrap;
    display: flex;
}

.collection-list-2 {
    flex-flow: wrap;
    display: flex;
}

.card-image {
    box-sizing: border-box;
    aspect-ratio: auto;
    -webkit-text-fill-color: inherit;
    object-fit: fill;
    background-clip: content-box;
    max-width: 100%;
    overflow: visible;
}

.card-text {
    text-decoration: none;
    -webkit-text-decoration-color: var(--light--text-primary);
    text-decoration-color: var(--light--text-primary);
    margin-top: 1em;
    margin-left: 1em;
    margin-right: 1em;
}

.card-tag {
    margin-left: 1em;
    margin-right: 1em;
}



.project-tag {
    background-color: #f0eced;
    border-radius: 32px;
    padding-left: 8px;
    padding-right: 8px;
}

.project-card-list {
    flex-flow: wrap;
    place-content: stretch center;
    align-items: flex-start;
    display: flex;
}

.code-embed {
    height: 400px;
}

.div-block-9 {
    position: static;
}

@media screen and (max-width: 991px) {
    .styleguide-block {
        text-align: left;
    }


    /* .label,
    .paragraph-light {
        text-align: left;
    } */

    .section.cc-contact {
        padding-left: 0;
        padding-right: 0;
    }



    .navigation-wrap {
        margin-right: 0;
    }

    .work-image {
        margin-bottom: 30px;
    }

    .contact {
        width: auto;
        padding: 30px 50px 40px;
    }

    .contact-headline,
    .contact-form-wrap {
        width: 100%;
    }

    .service-name-text {
        font-size: 24px;
        line-height: 42px;
    }


    .services-items-grid {
        grid-row-gap: 0px;
        grid-template:
            "."
            "."
            / 1fr;
        padding-top: 0;
        text-align: center;
    }

    .skills-grid {
        grid-row-gap: 50px;
        
        grid-template:
            "."
            "."
            / 1fr;
        /* width: 80%; */
        margin: auto;
        /* margin-right: auto; */
    }

    .project-overview-grid {
        grid-row-gap: 50px;
        text-align: center;
        grid-template:
            "."
            "."
            "."
            / 1fr;
        width: 70%;
        margin-left: auto;
        margin-right: auto;
    }

    .project-description-grid {
        grid-row-gap: 50px;
        text-align: center;
        grid-template:
            "."
            "."
            / 1fr;
        width: 80%;
        margin-left: auto;
        margin-right: auto;
    }

    .email-section {
        margin-bottom: 160px;
    }

    .email-link {
        font-size: 36px;
        line-height: 54px;
    }

}

@media screen and (max-width: 767px) {
    .display-2 {
        font-size: 30px;
        line-height: 52px;
    }

    .rich-text {
        text-align: left;
        width: 90%;
        max-width: 470px;
    }

    .paragraph-bigger {
        font-size: 16px;
        line-height: 28px;
    }

    .navigation {
        padding: 20px 30px;
    }

    .work-position-wrap {
        margin-bottom: 40px;
    }

    .project-name-link {
        font-size: 16px;
        line-height: 28px;
    }

    .text-field.cc-textarea {
        text-align: left;
    }

    .contact {
        padding-left: 30px;
        padding-right: 30px;
    }

    .contact-form-grid {
        grid-column-gap: 30px;
        grid-template:
            "."
            "."
            "."
            / 1fr;
    }

    .contact-form {
        flex-direction: column;
        display: flex;
    }

    .contact-form-wrap {
        text-align: left;
    }

    .skills-grid {
        grid-template-columns: 1fr;
        /* width: 70%; */
        /* max-width: 470px; */
    }

    .project-overview-grid {
        width: 80%;
        max-width: 470px;
        margin-top: 90px;
        margin-bottom: 95px;
    }

    .project-description-grid {
        width: 70%;
        max-width: 470px;
        margin-top: 90px;
        margin-bottom: 85px;
    }

    .detail-image {
        margin-bottom: 16px;
    }

    .email-section {
        width: 80%;
        max-width: 470px;
        margin-top: 120px;
        margin-bottom: 120px;
    }

    .email-link {
        font-size: 36px;
        line-height: 54px;
    }

    .utility-page-wrap {
        padding: 16px;
    }

    ._404-wrap {
        padding: 30px;
    }
    .waves-grid-gallery-1 {
        grid-template-columns: 1fr;
    }

    .waves-master-gallery-1 {
        max-width: 390px;
        margin-left: auto;
        margin-right: auto;
    }

    .waves---main-container {
        padding-left: 16px;
        padding-right: 16px;
    }

    .waves---section-medium {
        padding-top: 80px;
        padding-bottom: 80px;
    }
}

@media screen and (max-width: 479px) {
    .rich-text {
        width: 100%;
        max-width: none;
    }

    .navigation {
        padding-left: 20px;
        padding-right: 20px;
    }

    .menu-button,
    .menu-button.w--open {
        flex: none;
    }

    .contact {
        padding-left: 16px;
        padding-right: 16px;
    }

    .skills-grid {
        grid-template-columns: 1fr;
        /* width: 100%; */
        max-width: none;
    }

    .project-overview-grid {
        grid-column-gap: 36px;
        grid-row-gap: 36px;
        width: 100%;
        max-width: none;
        margin-top: 48px;
        margin-bottom: 48px;
    }

    .project-description-grid {
        grid-column-gap: 30px;
        grid-row-gap: 50px;
        flex-flow: column;
        grid-template-rows: auto auto;
        grid-template-columns: 1fr;
        grid-auto-columns: 1fr;
        grid-auto-flow: row;
        width: 100%;
        max-width: none;
        display: flex;
    }

    .email-section {
        flex-direction: column;
        align-items: center;
        width: 100%;
        max-width: none;
        display: flex;
    }

    .email-link {
        font-size: 30px;
        line-height: 46px;
    }



    .waves---section-medium {
        padding-top: 64px;
        padding-bottom: 64px;
    }

    .div-block-5 {
        justify-content: center;
        align-items: flex-start;
    }
}
