body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

/* Focus state style for keyboard navigation for the focusable elements */
*[tabindex]:focus-visible,
input[type="file"]:focus-visible {
    outline: 0.125rem solid #4d65ff;
    outline-offset: 0.125rem;
}

/* Get rid of top margin on first element in any rich text element */
.w-richtext> :not(div):first-child,
.w-richtext>div:first-child> :first-child {
    margin-top: 0 !important;
}

/* Get rid of bottom margin on last element in any rich text element */
.w-richtext>:last-child,
.w-richtext ol li:last-child,
.w-richtext ul li:last-child {
    margin-bottom: 0 !important;
}

/* Prevent all click and hover interaction with an element */
.pointer-events-off {
    pointer-events: none;
}

/* Enables all click and hover interaction with an element */
.pointer-events-on {
    pointer-events: auto;
}

/* Create a class of .div-square which maintains a 1:1 dimension of a div */
.div-square::after {
    content: "";
    display: block;
    padding-bottom: 100%;
}

/* Make sure containers never lose their center alignment */
.container-medium,
.container-small,
.container-large {
    margin-right: auto !important;
    margin-left: auto !important;
}

/* 
Make the following elements inherit typography styles from the parent and not have hardcoded values. 
Important: You will not be able to style for example "All Links" in Designer with this CSS applied.
Uncomment this CSS to use it in the project. Leave this message for future hand-off.
*/
/*
a,
.w-input,
.w-select,
.w-tab-link,
.w-nav-link,
.w-dropdown-btn,
.w-dropdown-toggle,
.w-dropdown-link {
  color: inherit;
  text-decoration: inherit;
  font-size: inherit;
}
*/

/* Apply "..." after 3 lines of text */
.text-style-3lines {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

/* Apply "..." after 2 lines of text */
.text-style-2lines {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

/* Adds inline flex display */
.display-inlineflex {
    display: inline-flex;
}

/* These classes are never overwritten */
/*
.hide {
  display: none !important;
}

@media screen and (max-width: 991px), 
  @media screen and (max-width: 767px), 
  @media screen and (max-width: 479px){
    .hide, .hide-tablet{
      display: none !important;
    }
  }
  @media screen and (max-width: 767px)
    .hide-mobile-landscape{
      display: none !important;
    }
  }
  @media screen and (max-width: 479px)
    .hide-mobile{
      display: none !important;
    }
  }
 */
.margin-0 {
    margin: 0rem !important;
}

.padding-0 {
    padding: 0rem !important;
}

.spacing-clean {
    padding: 0rem !important;
    margin: 0rem !important;
}

.margin-top {
    margin-right: 0rem !important;
    margin-bottom: 0rem !important;
    margin-left: 0rem !important;
}

.padding-top {
    padding-right: 0rem !important;
    padding-bottom: 0rem !important;
    padding-left: 0rem !important;
}

.margin-right {
    margin-top: 0rem !important;
    margin-bottom: 0rem !important;
    margin-left: 0rem !important;
}

.padding-right {
    padding-top: 0rem !important;
    padding-bottom: 0rem !important;
    padding-left: 0rem !important;
}

.margin-bottom {
    margin-top: 0rem !important;
    margin-right: 0rem !important;
    margin-left: 0rem !important;
}

.padding-bottom {
    padding-top: 0rem !important;
    padding-right: 0rem !important;
    padding-left: 0rem !important;
}

.margin-left {
    margin-top: 0rem !important;
    margin-right: 0rem !important;
    margin-bottom: 0rem !important;
}

.padding-left {
    padding-top: 0rem !important;
    padding-right: 0rem !important;
    padding-bottom: 0rem !important;
}

.margin-horizontal {
    margin-top: 0rem !important;
    margin-bottom: 0rem !important;
}

.padding-horizontal {
    padding-top: 0rem !important;
    padding-bottom: 0rem !important;
}

.margin-vertical {
    margin-right: 0rem !important;
    margin-left: 0rem !important;
}

.padding-vertical {
    padding-right: 0rem !important;
    padding-left: 0rem !important;
}

/* Modifying number of items in a list within a component */

[data-items="0"] li:nth-child(n+1) {
    display: none;
}

[data-items="1"] li:nth-child(n+2) {
    display: none;
}

[data-items="2"] li:nth-child(n+3) {
    display: none;
}

[data-items="3"] li:nth-child(n+4) {
    display: none;
}

/* Hide/show back to blog button in blog navigation */

[data-back-to-blog="show"] .back-to-blog {
    display: flex;
}

/* Adding calc to subtract the header from viewport height */

.height-viewport-full-minus-header,
.feature-header_component {
    min-height: calc(100vh - 4rem);
}

@media screen and (max-width: 991px) {

    .height-viewport-full-minus-header,
    .feature-header_component {
        min-height: auto;
    }
}

/* Making the mobile nav menu the right height */

@media screen and (max-width: 767px) {
    .nav-menu {
        height: calc(100vh - 3.25rem);
    }
}

/* Custom unordered and ordered lists */

.w-richtext ul {
    padding-left: 1.5em;
}

.w-richtext ul li::before {
    content: '';
    display: inline-block;
    height: 1em;
    width: 1.5em;
    margin-left: -1.5em;
    position: relative;
    top: 3px;
    background-image: url(../images/rightBranded.svg);
    background-size: contain;
    background-repeat: no-repeat;
}

.w-richtext ul li::marker {
    content: '';
}

.w-richtext ol li {
    counter-increment: list;
}

.w-richtext ol li::before {
    content: counter(list) ". ";
    display: inline-block;
    margin-left: -1.25em !important;
    min-width: 0.75em !important;
    text-align: right !important;
    position: relative;
    left: -0.75em;
}

.w-richtext ol {
    list-style: none;
    counter-reset: list;
}

/* Fixing video aspect ratio */

.w-video,
.w-richtext figure.w-richtext-figure-type-video,
.w-richtext figure[data-rt-type=video] {
    padding-top: 62.5% !important;
    padding-bottom: 0 !important;
}

/* Email sign up embed */

.email-sign-up {
    text-align: center;
}

.email-sign-up .form-group input[type="email"] {
    padding: 12px 16px;
    border-radius: 4px;
    border: 1px solid rgba(0, 0, 0, .1);
    color: #002129;
    margin-bottom: 1em;
    min-width: 50%;
}

.email-sign-up .form-group input[type="email"]:focus {
    border: 1px solid #0098AA;
    outline: none;
}

.email-sign-up .btn {
    color: #ffffff;
    border: none !important;
}

.email-sign-up .btn:hover {
    border: 1px solid #1B6567;
}

.email-sign-up .btn:focus {
    outline: none;
}

::placeholder {
    color: rgba(0, 33, 41, 0.3);
}

.email-sign-up .form-group .g-recaptcha {
    margin-bottom: 1em;
}

/* Fix for when a heading is the first element in a line height 1.75 text block */

.line-height-1-75 :first-child {
    margin-top: 0;
}

/* Adding inner border to blog images */

figure div,
.image-border {
    position: relative;
}

figure div:after,
.image-border:after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .1);
    border-radius: .5rem;
}

/* Adding a property to hide horizontal overflow */

.overflow-x-hidden {
    overflow-x: hidden;
}

/* Fix for embed incompatibility with overflow-y: scroll */

html {
    overflow-y: visible !important;
}

/* Add screen blend mode */
.screen {
    -webkit-mix-blend-mode: screen;
    mix-blend-mode: screen;
}

/* Add outline pseudo element */
.text-highlight:after {
    top: -.25em;
    left: -.25em;
    right: -.25em;
    bottom: -.25em;
    background-position: center;
    background-size: 100% 100%;
    position: absolute;
    z-index: -1;
    content: '';
    background-repeat: no-repeat;
}

.text-highlight.circle:after {
    background-image: url('https://assets.website-files.com/5fb73a40b459b8605103611a/60f4936842eda3c982b45671_circle.svg');
}

.text-highlight.smooth-underline:after {
    background-image: url('https://assets.website-files.com/5fb73a40b459b8605103611a/60f494bcb62a56827568a520_smooth-underline.svg');
}

.text-highlight.wiggly-underline:after {
    background-image: url('https://assets.website-files.com/5fb73a40b459b8605103611a/60f494c16827eadf02e8d57e_wiggly-underline.svg');
}

svg {
    display: block;
}

.is-pinned {
    opacity: 100%;
}

.dev-workflows_anchor-link:hover {
    opacity: 1 !important;
}

.text-rich-text .w-embed {
    margin: 1em 0;
    position: relative;
}

.text-rich-text .w-embed code {
    font-size: .875rem;
    border-radius: 8px;
}

.text-rich-text a.copy-code {
    background-color: #fc0;
    border-bottom: none;
    position: absolute;
    top: 2em;
    bottom: auto;
    left: auto;
    right: 1em;
    font-size: 1rem;
}

@media (min-width:992px) {
    html.w-mod-js:not(.w-mod-ix) [data-w-id="93b5ce83-466f-12b0-1e7d-066a78ab4d3f"] {
        opacity: 0;
    }

    html.w-mod-js:not(.w-mod-ix) [data-w-id="93b5ce83-466f-12b0-1e7d-066a78ab4d41"] {
        opacity: 0;
    }

    html.w-mod-js:not(.w-mod-ix) [data-w-id="93b5ce83-466f-12b0-1e7d-066a78ab4d40"] {
        opacity: 0;
    }
}

@media (max-width:991px) and (min-width:768px) {
    html.w-mod-js:not(.w-mod-ix) [data-w-id="93b5ce83-466f-12b0-1e7d-066a78ab4d3f"] {
        opacity: 0;
    }

    html.w-mod-js:not(.w-mod-ix) [data-w-id="93b5ce83-466f-12b0-1e7d-066a78ab4d41"] {
        opacity: 0;
    }

    html.w-mod-js:not(.w-mod-ix) [data-w-id="93b5ce83-466f-12b0-1e7d-066a78ab4d40"] {
        opacity: 0;
    }
}


/* input css */

.o--Widget--widget .o--Input--input {
    border-style: solid;
    box-sizing: border-box;
    padding: 12px 16px;
    width: 100%;
    background-color: transparent;
    border-color: rgba(0, 0, 0, 0.1);
    color: #000;
}

.o--Widget--widget .o--Input--cornerShape-rounded {
    border-radius: 4px;
}

.o--Widget--widget .o--Input--borderWidth-1px {
    border-width: 1px;
}

.o--Widget--widget .o--FormGroup--formGroup {
    margin-bottom: 16px;
}

.o--Widget--widget label.o--Label--label {
    display: block;
    font-size: var(--font-size-sm);
    font-weight: bold;
    margin-bottom: 8px;
}

.o--Widget--widget .o--TextArea--textArea {
    border-style: solid;
    box-sizing: border-box;
    padding: 12px 16px;
    background-color: transparent;
    border-color: rgba(0, 0, 0, 0.1);
    color: #000;
    width: 100%;
    border-radius: 4px;
    border-width: 1px;
}

.o--Widget--widget .o--FileUpload--FileUpload.o--FileUpload--displayMode-light .o--FileUpload--dropzone,
.o--Widget--widget .o--FileUpload--FileUpload.o--FileUpload--displayMode-auto .o--FileUpload--dropzone {
    border-color: var(--color-granite);
}

.o--FileUpload--FileUpload .o--FileUpload--dropzone {
    border: 3px dashed;
}

.o--FileUpload--FileUpload .o--FileUpload--dropzone p {
    text-align: center;
}

.o--FileUpload--FileUpload .o--FileUpload--dropzone p i {
    vertical-align: bottom;
}

.o--Widget--widget .o--Recaptcha--Recaptcha {
    text-align: center;
}

.o--Widget--widget .o--SectionGroup--sectionGroup {
    margin-bottom: 24px;
}

.o--Widget--widget .o--Recaptcha--Recaptcha {
    text-align: center;
    display: flex;
    justify-content: center;
}

