html {
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    font-family: sans-serif
}

body {
    margin: 0
}

article,
footer,
main,
nav,
section {
    display: block
}

video {
    vertical-align: baseline;
    display: inline-block
}

a {
    background-color: #0000
}

a:active,
a:hover {
    outline: 0
}

strong {
    font-weight: 700
}

h1 {
    margin: .67em 0;
    font-size: 2em
}

img {
    border: 0
}

button {
    color: inherit;
    font: inherit;
    margin: 0
}

button {
    overflow: visible
}

button {
    text-transform: none
}

button {
    -webkit-appearance: button;
    cursor: pointer
}

button::-moz-focus-inner {
    border: 0;
    padding: 0
}

@font-face {
    font-family: webflow-icons;
    src: url(data:application/x-font-ttf;charset=utf-8;base64,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)format("truetype");
    font-weight: 400;
    font-style: normal
}

[class*=\ w-icon-] {
    speak: none;
    font-variant: normal;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    font-family: webflow-icons !important
}

* {
    box-sizing: border-box
}

html {
    height: 100%
}

body {
    color: #333;
    background-color: #fff;
    min-height: 100%;
    margin: 0;
    font-family: Arial, sans-serif;
    font-size: 14px;
    line-height: 20px
}

img {
    vertical-align: middle;
    max-width: 100%;
    display: inline-block
}

.w-inline-block {
    max-width: 100%;
    display: inline-block
}

h1,
h2,
h3 {
    margin-bottom: 10px;
    font-weight: 700
}

h1 {
    margin-top: 20px;
    font-size: 38px;
    line-height: 44px
}

h2 {
    margin-top: 20px;
    font-size: 32px;
    line-height: 36px
}

h3 {
    margin-top: 20px;
    font-size: 24px;
    line-height: 30px
}

p {
    margin-top: 0;
    margin-bottom: 10px
}

button {
    cursor: pointer;
    -webkit-appearance: button;
    border: 0
}

.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
}

@media screen and (max-width:767px) {
    .w-nav-brand {
        padding-left: 10px
    }
}

.w-nav-brand {
    float: left;
    color: #333;
    text-decoration: none;
    position: relative
}

@media screen and (max-width:767px) {

    .w-nav-brand {
        padding-left: 10px
    }
}



:root {
    --body-color: #edfcf4;
    --content-font: Lato, sans-serif;
    --green-1: #1f3329;
    --green-3: #3f6652;
    --green-10: #ddf1e7;
    --green-7: #6bb38f;
    --green-2: #2f4c3e;
    --heading-font: "Neco Variable", sans-serif;
    --green-9: #b5e2cb;
    --50-green-transparent: #7ecca580;
    --green-8: #8fccad;
    --radius-small: 3px;
    --transparent: #fff0;
    --green-5: #578c72;
    --green-6: #5c997a;
    --40-green-transparent: #7ecca566;
    --dark-green: #172526;
    --20-green-transparent: #7ecca533;
    --30-green-transparent: #7ecca54d;
    --10-green-transparent: #7ecca51a;
    --5-green-transparent: #7ecca50d;
    --green-4: #4f8068;
    --60-green-transparent: #7ecca599;
    --80-green-transparent: #7ecca5cc;
    --white: #fff
}

body {
    background-color: var(--body-color);
    font-family: var(--content-font);
    color: var(--green-1);
    font-size: 1vw;
    line-height: 1.2em
}

h1 {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 5em;
    font-weight: 600;
    line-height: 1.1em
}

h2 {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 4em;
    font-weight: 500;
    line-height: 1.1em
}

h3 {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 3em;
    font-weight: 600;
    line-height: 1.1em
}

p {
    margin-bottom: 0;
    font-size: 1.1em;
    line-height: 1.5em
}

a {
    color: var(--green-3);
    text-decoration: none
}

img {
    max-width: 100%;
    display: inline-block
}

strong {
    font-weight: 700
}

.section {
    z-index: 10;
    color: var(--green-1);
    width: 100%;
    position: relative;
    overflow: clip
}

.section.with-dark-background {
    background-color: var(--green-2);
    color: var(--body-color)
}

.container {
    z-index: 20;
    width: 100%;
    max-width: 2000px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 6em;
    padding-right: 6em;
    position: relative
}

.padding {
    z-index: 10;
    width: 100%;
    padding-top: 8em;
    padding-bottom: 8em;
    position: relative
}

.padding.small-paddings {
    padding-top: 5em;
    padding-bottom: 5em
}

.padding.top-small {
    padding-top: 4em
}

.heading {
    z-index: 10;
    font-family: var(--heading-font);
    letter-spacing: -.02em;
    margin-top: 0;
    margin-bottom: 0;
    font-size: 3em;
    font-weight: 500;
    line-height: 1.2em;
    position: relative
}

.heading.is-large-title {
    font-size: 5em
}
.cover-image.is-parallax {
    height: 100%!important;
    top: auto;  
    bottom: auto
}
.heading.is-cta-title {
    font-size: 3.3em;
    line-height: 1.2em
}

.heading.is-article-listing-title {
    max-width: 14em;
    font-size: 1.7em;
    font-weight: 400;
    line-height: 1.6em
}

.heading.is-large-fullwidth-title {
    white-space: nowrap;
    font-size: 8vw
}

.heading.is-simple-hero-title:where(.w-variant-d48d4a09-899a-fd4f-1b3e-6b4d3a4970a6) {
    text-align: center
}

.cover-image {
    z-index: 1;
    object-fit: cover;
    width: 100%;
    height: 100%;
    position: absolute
}

.cover-image.is-parallax {
    height: 120%;
    top: auto;
    bottom: auto
}

._3d-block {
    z-index: 8;
    perspective: 1000px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    display: flex;
    position: absolute;
    inset: 0%;
    overflow: hidden
}

.image-animation-trigger {
    z-index: 10;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    display: flex;
    position: absolute;
    overflow: hidden
}

.animation-color-bg {
    z-index: 15;
    background-color: var(--green-2);
    display: none;
    position: absolute;
    inset: 0%
}

.animation-color-bg.is-green {
    background-color: var(--green-3)
}

.brand-name-text {
    font-family: var(--heading-font);
    font-size: 2.2em;
    font-weight: 500;
    line-height: 1em
}

.nav-link-text {
    white-space: nowrap;
    font-size: 1.4em;
    line-height: 1.2em
}

.nav {
    z-index: 998;
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
    grid-auto-columns: 1fr;
    justify-content: space-between;
    align-items: stretch;
    width: 100%;
    transition: background-color .2s;
    display: flex;
    position: absolute;
    inset: 0% 0% auto
}

.nav:hover {
    border-bottom: 1px solid var(--green-5);
    background-color: var(--green-2)
}

.nav-brand {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    color: var(--green-9);
    flex-direction: row;
    flex: 0 auto;
    justify-content: center;
    align-self: stretch;
    align-items: center;
    padding: 0;
    text-decoration: none;
    display: flex
}

.parallax-animation {
    z-index: 1;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    display: flex;
    position: absolute;
    inset: 0%
}

.brand-logo-image {
    z-index: 10;
    object-fit: contain;
    object-position: 0% 50%;
    flex: none;
    width: 7em;
    height: 3em;
    display: none;
    position: relative
}

.button-circle {
    z-index: 20;
    border-radius: 50%;
    flex-direction: column;
    flex: none;
    justify-content: center;
    align-items: center;
    width: 6em;
    height: 6em;
    display: flex;
    position: relative
}

.button-circle-content {
    z-index: 20;
    text-align: center;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    display: flex;
    position: absolute
}

.button-circle-text {
    color: var(--green-8);
    text-align: center;
    width: 8em;
    font-size: 1.3em;
    font-weight: 400;
    line-height: 1.2em;
    display: none;
    position: absolute
}

.button-circle-icon {
    z-index: 10;
    object-fit: contain;
    width: 1em;
    height: 1em;
    font-size: 2em;
    position: absolute
}

.button-circle-border {
    z-index: 5;
    border: 1px solid var(--50-green-transparent);
    background-color: var(--10-green-transparent);
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    border-radius: 50%;
    transition: border-radius .4s;
    position: absolute;
    inset: 0%
}

.vertical-flex {
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    display: flex
}

.vertical-flex.with-gap-2em {
    grid-row-gap: 2em
}

.vertical-flex.with-gap-2em.is-center {
    text-align: center;
    justify-content: center;
    align-items: center
}

.cta-layout {
    z-index: 20;
    grid-column-gap: 6em;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    width: 100%;
    padding: 10em 6em;
    display: flex;
    position: relative
}

._3d-trigger {
    z-index: 10;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 105%;
    height: 108%;
    display: flex;
    position: absolute
}

.cta-overlay-color {
    z-index: 11;
    background-color: var(--green-2);
    opacity: .85;
    mix-blend-mode: multiply;
    position: absolute;
    inset: 0%
}

.regular-cta-wrapper {
    z-index: 10;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding: 1em;
    display: flex;
    position: relative;
    overflow: hidden
}

.cta-content {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    color: var(--body-color);
    text-align: center;
    grid-template-rows: auto;
    grid-template-columns: 1fr 1.5fr 1fr;
    grid-auto-columns: 1fr;
    place-items: center;
    width: 100%;
    display: grid
}

.cta-text {
    max-width: 16em;
    font-size: 1.5em;
    font-weight: 400;
    line-height: 1.7em
}

.nav-link-icon {
    width: 1em;
    height: 1em;
    font-size: 1.1em
}

.paragraph {
    z-index: 10;
    letter-spacing: .02em;
    font-size: max(16px, 1.3em);
    font-weight: 400;
    line-height: 1.6em;
    position: relative
}

.paragraph.is-medium {
    font-size: max(16px, 1.4em)
}

.paragraph.is-large {
    font-size: max(16px, 1.5em)
}

.paragraph.is-large-italic {
    font-size: 2em;
    font-style: italic
}

.nav-link {
    z-index: 10;
    grid-column-gap: .5em;
    grid-row-gap: .5em;
    border: 1px solid var(--transparent);
    border-radius: var(--radius-small);
    color: var(--dark-green);
    flex-direction: row;
    justify-content: center;
    align-self: center;
    align-items: center;
    padding: .2em .5em;
    transition: border-color .2s, background-color .2s;
    display: flex;
    position: relative
}

.nav-link:hover {
    border-color: var(--green-6);
    background-color: var(--dark-green);
    color: var(--body-color)
}

.nav-link.w--current {
    border-color: var(--green-6);
    background-color: var(--green-1)
}

.max-width-60 {
    z-index: 10;
    width: 100%;
    max-width: 60em;
    position: relative
}

.max-width-60:where(.w-variant-d48d4a09-899a-fd4f-1b3e-6b4d3a4970a6) {
    text-align: center;
    margin-left: auto;
    margin-right: auto
}

.max-width-60.center-spacing {
    margin-left: auto;
    margin-right: auto
}

.image-3d-parallax {
    z-index: 5;
    position: absolute;
    inset: 0%
}

.search-input:focus-visible {
    outline-offset: 0px;
    outline: 0 #0000
}

.footer {
    z-index: 50;
    border-top: 1px solid var(--30-green-transparent);
    background-color: var(--green-1);
    color: var(--body-color);
    width: 100%;
    position: relative;
    overflow: hidden
}

.footer-links-wrapper {
    grid-column-gap: 2.5em;
    grid-row-gap: 3em;
    flex-flow: wrap;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    display: flex
}

.footer-wrapper {
    grid-column-gap: 3em;
    grid-row-gap: 3em;
    flex-flow: wrap;
    justify-content: space-between;
    align-items: center;
    display: flex
}

.image-parallax {
    z-index: 5;
    position: absolute;
    inset: 0%
}

.footer-flex-wrapper {
    grid-column-gap: 5em;
    grid-row-gap: 5em;
    flex-wrap: wrap;
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-auto-columns: 1fr;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    display: flex
}

.footer-flex-block {
    z-index: 10;
    grid-column-gap: .1em;
    grid-row-gap: .1em;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
    position: relative
}

.footer-flex-block.with-padding {
    padding-top: 2.2em
}

.featured-articles {
    width: 100%;
    margin-left: auto;
    margin-right: auto
}

.featured-articles-list {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr 1fr;
    grid-auto-columns: 1fr;
    justify-content: space-between;
    align-items: stretch;
    width: 100%;
    display: flex
}

.featured-article-item {
    flex-direction: column;
    justify-content: space-between;
    align-items: stretch;
    width: 100%;
    transition: width .5s cubic-bezier(.075, .82, .165, 1);
    display: flex
}

.featured-article-item:hover {
    width: 115%
}

.featured-article-link-block {
    z-index: 10;
    grid-row-gap: 2em;
    color: var(--green-10);
    text-align: center;
    flex-direction: column;
    flex: 1;
    justify-content: flex-end;
    align-items: center;
    width: 100%;
    padding: 20em 0 0;
    display: flex;
    position: relative;
    overflow: hidden
}

.featured-article-link-block:hover {
    z-index: 11;
    color: var(--body-color)
}

.featured-article-content {
    z-index: 20;
    grid-row-gap: 1.25em;
    border-top: 1px solid var(--30-green-transparent);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    text-align: left;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    padding: 2em 3.5em;
    transition: background-color .2s;
    display: flex;
    position: relative
}

.featured-article-content:hover {
    background-color: var(--green-3)
}

.featured-article-background {
    z-index: 1;
    background-color: #0000;
    flex-direction: column;
    justify-content: space-between;
    align-items: stretch;
    display: flex;
    position: absolute;
    inset: 0%;
    overflow: hidden
}

.featured-article-bg-image {
    z-index: 10;
    position: absolute;
    inset: 0%;
    overflow: hidden
}

.featured-article-overlay-color {
    z-index: 11;
    background-image: linear-gradient(0deg, var(--green-1), #1f313300);
    opacity: .95;
    mix-blend-mode: multiply;
    height: 70%;
    position: absolute;
    inset: auto 0% 0%
}

.article-author-block {
    grid-column-gap: .6em;
    justify-content: flex-start;
    align-items: center;
    display: flex
}

.article-author-name {
    line-height: 1.2em
}

.cta-image {
    z-index: 10;
    border: 1px solid var(--30-green-transparent);
    position: absolute;
    inset: 0%;
    overflow: hidden
}

.store-cta-content:where(.w-variant-ca0f5e2b-50e9-fd4f-4db8-384ddb593ade) {
    text-align: left;
    justify-content: center;
    align-items: flex-start
}

.article-list-categories {
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    display: flex
}

.article-list-category-text {
    border: 1px solid var(--green-5);
    background-color: var(--10-green-transparent);
    padding: .4em .6em;
    font-size: 1em;
    font-weight: 400;
    line-height: 1.3em;
    position: relative
}

.article-list-category-text.is-featured {
    background-color: var(--green-3);
    margin-right: -1px
}

.cta-block {
    z-index: 20;
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden
}

.about-images-wrap {
    z-index: 10;
    grid-column-gap: 4vw;
    grid-row-gap: 4vw;
    justify-content: center;
    align-items: flex-end;
    height: 44em;
    display: flex;
    position: relative
}

.about-images-wrap:where(.w-variant-5047b387-82bb-dadc-9293-f59b0f93d949) {
    justify-content: center;
    align-items: center
}

.about-image-block {
    z-index: 10;
    flex: none;
    width: 23vw;
    height: 100%;
    position: relative
}

.about-image-block.is-80per {
    height: 80%
}

.about-image-block.is-50per {
    z-index: 30;
    height: 50%
}

.about-image-block.is-70per {
    z-index: 30;
    height: 70%
}

.large-titles-flex {
    z-index: 20;
    grid-column-gap: 3vw;
    grid-row-gap: 3vw;
    flex-flow: row;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding-left: 4vw;
    padding-right: 4vw;
    display: flex;
    position: relative;
    overflow: hidden
}

.nav-link-icon-block {
    z-index: 10;
    border: 1px solid var(--green-4);
    border-radius: var(--radius-small);
    background-color: var(--green-3);
    justify-content: center;
    align-items: center;
    width: 1.6em;
    height: 1.5em;
    display: flex;
    position: relative;
    overflow: hidden
}

.nav-wrapper {
    z-index: 99;
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    flex-flow: row;
    justify-content: space-between;
    align-self: stretch;
    align-items: center;
    width: 100%;
    min-height: 6em;
    padding: 1em 2em 1em 14em;
    display: flex;
    position: relative
}

.nav-links-wrapper {
    grid-column-gap: .4em;
    grid-row-gap: .4em;
    flex-flow: row;
    justify-content: flex-start;
    align-items: center;
    display: flex
}

.section-content-block {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    text-align: center;
    flex-flow: column;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    max-width: 60em;
    margin-left: auto;
    margin-right: auto;
    display: flex
}

.section-content-block:where(.w-variant-b545fa43-40fa-8293-2e93-790fc0985468) {
    margin-bottom: 5em
}

.section-content-block.small-margin {
    margin-bottom: 2.5em
}

.marker {
    z-index: 10;
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    font-family: var(--heading-font);
    text-align: center;
    flex: none;
    justify-content: center;
    align-items: center;
    min-height: 5em;
    display: flex;
    position: relative
}

.marker-title {
    z-index: 10;
    font-size: 2.4em;
    font-weight: 500;
    line-height: 1em;
    position: relative
}

.marker-number {
    z-index: 9;
    opacity: .15;
    text-align: center;
    letter-spacing: -.05em;
    text-indent: -.05em;
    font-size: 6em;
    line-height: .9em;
    position: absolute
}

.marker-title-wrapper {
    z-index: 10;
    grid-column-gap: 1.2em;
    grid-row-gap: 1.2em;
    flex-flow: row;
    justify-content: center;
    align-items: center;
    width: 100%;
    display: flex;
    position: relative
}

.ornament-image {
    width: 1em;
    height: 1em;
    font-size: 4em;
    position: absolute;
    left: -.5em
}

.ornament-image.is-right {
    left: auto;
    right: -.5em
}

.image-in-collage-small {
    z-index: 20;
    width: 12em;
    height: 12em;
    position: absolute;
    top: 2.5em;
    left: -6em
}

.smooth-scroll-image-animation-medium,
.smooth-scroll-image-animation-large {
    position: absolute;
    inset: 0%
}

.footer-links {
    grid-column-gap: 2em;
    grid-row-gap: 1em;
    flex-flow: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    display: flex
}

.footer-brand {
    grid-column-gap: 1.7em;
    grid-row-gap: 1.7em;
    color: var(--body-color);
    flex-direction: row;
    flex: 0 auto;
    justify-content: flex-start;
    align-self: stretch;
    align-items: center;
    padding: 0;
    text-decoration: none;
    display: flex
}

.footer-brand-name {
    font-family: var(--heading-font);
    font-size: 3em;
    font-weight: 500;
    line-height: 1em
}

.footer-brand-slogan-line {
    background-color: var(--green-5);
    width: 1px;
    height: 2em
}

.footer-brand-slogan {
    color: var(--green-10);
    max-width: 15em;
    font-size: 1.2em;
    line-height: 1.3em
}

.footer-text-link {
    z-index: 10;
    font-family: var(--heading-font);
    color: var(--green-7);
    text-align: center;
    font-size: 2.5em;
    line-height: 1.5em;
    transition: color .2s;
    position: relative
}

.footer-text-link:hover {
    color: var(--green-9)
}

.footer-text-link.w--current {
    color: var(--body-color)
}

.footer-bg {
    z-index: 1;
    position: absolute;
    inset: 0%
}

.footer-bg-overlay-full {
    z-index: 20;
    background-image: linear-gradient(180deg, var(--dark-green), var(--green-2));
    opacity: .8;
    mix-blend-mode: multiply;
    position: absolute;
    inset: 0%
}

.footer-bg-overlay-left {
    z-index: 20;
    background-image: linear-gradient(90deg, var(--green-1)11%, var(--transparent));
    opacity: .9;
    position: absolute;
    inset: 0%
}

.marker-icon {
    z-index: 10;
    opacity: .25;
    object-fit: contain;
    flex: none;
    width: 1em;
    height: 1em;
    font-size: 1.7em;
    position: relative
}

.marker-icon.is-right:where(.w-variant-4efdea9d-ca17-7c39-4e67-e4109e691604),
.marker-icon.is-right.for-dark-bg {
    display: none
}

.marker-icon.is-right.for-dark-bg:where(.w-variant-4efdea9d-ca17-7c39-4e67-e4109e691604) {
    display: block
}

.marker-icon.is-left:where(.w-variant-4efdea9d-ca17-7c39-4e67-e4109e691604),
.marker-icon.is-left.for-dark-bg {
    display: none
}

.marker-icon.is-left.for-dark-bg:where(.w-variant-4efdea9d-ca17-7c39-4e67-e4109e691604) {
    display: block
}

.hero-practices {
    z-index: 10;
    background-color: var(--green-2);
    color: var(--body-color);
    flex-flow: column;
    justify-content: flex-end;
    align-items: center;
    width: 100%;
    min-height: 80vh;
    display: flex;
    position: relative;
    overflow: hidden
}

.hero-practices-padding {
    width: 100%;
    padding-top: 20em;
    padding-bottom: 0
}

.hero-practices-heading {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    text-align: center;
    flex-flow: column;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    max-width: 60em;
    margin-left: auto;
    margin-right: auto;
    display: flex
}

.hero-practices-overlay-color {
    z-index: 11;
    background-image: linear-gradient(180deg, #fff0 20%, var(--green-2));
    height: 70%;
    position: absolute;
    inset: auto 0% 0%
}

.image-collage {
    z-index: 10;
    width: 100%;
    max-width: 40em;
    height: 45em;
    margin-top: 5em;
    margin-bottom: 5em;
    position: relative;
    overflow: visible
}

.image-in-collage-medium {
    z-index: 20;
    width: 14em;
    height: 16em;
    position: absolute;
    bottom: 2em;
    right: -10.5em
}

.background-illustration-3 {
    z-index: 3;
    aspect-ratio: 1;
    opacity: .2;
    mix-blend-mode: multiply;
    width: 40vw;
    height: auto;
    position: absolute;
    bottom: -1vw;
    left: -13.3vw
}

.background-illustration-4 {
    z-index: 3;
    aspect-ratio: 1;
    opacity: .2;
    mix-blend-mode: multiply;
    width: 50vw;
    height: auto;
    position: absolute;
    bottom: -1vw;
    right: -8.6vw
}

.practices-grid-2 {
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr 1fr;
    grid-auto-columns: 1fr;
    width: 100%;
    margin-top: 3em;
    display: grid
}

.practices-grid-2-block {
    z-index: 10;
    grid-row-gap: .5em;
    text-align: center;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 2em 2.5em;
    display: flex;
    position: relative
}

.practices-grid-2-block.is-featured {
    border: 1px solid var(--green-7);
    border-radius: var(--radius-small);
    background-color: var(--10-green-transparent)
}

.large-icon {
    opacity: .5;
    width: 6em
}

.article-author-image {
    z-index: 10;
    border-radius: 50%;
    width: 2em;
    height: 2em;
    position: relative;
    overflow: hidden
}

.simple-hero-title-size:where(.w-variant-d48d4a09-899a-fd4f-1b3e-6b4d3a4970a6) {
    flex-flow: column;
    justify-content: flex-start;
    align-items: center;
    margin-left: auto;
    margin-right: auto;
    display: flex
}

.character-text {
    font-size: 9vw;
    line-height: 1em
}

.small-footer-link {
    color: var(--green-9);
    padding-top: .2em;
    padding-bottom: .2em;
    font-size: max(16px, 1.3em);
    line-height: 1.4em
}

.small-footer-link:hover {
    color: var(--body-color)
}

.footer-address-wrapper {
    grid-column-gap: 5em;
    grid-row-gap: 5em;
    flex-flow: wrap;
    margin-left: auto;
    display: flex
}

.footer-brand-wrapper {
    grid-column-gap: 6em;
    grid-row-gap: 6em;
    flex-flow: row;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    display: flex
}

.footer-contacts {
    grid-column-gap: 1.5em;
    grid-row-gap: .5em;
    flex-flow: wrap;
    justify-content: flex-start;
    align-items: center;
    display: flex
}

.simple-hero-button:where(.w-variant-d48d4a09-899a-fd4f-1b3e-6b4d3a4970a6) {
    display: none
}

.footer-small-text {
    text-transform: uppercase;
    margin-bottom: 1em;
    font-size: .8em;
    font-weight: 500
}

.footer-contact-link {
    border: 1px solid var(--transparent);
    border-radius: var(--radius-small);
    color: var(--green-9);
    padding: .5em 0;
    font-size: 1.4em;
    line-height: 1.4em;
    transition: color .2s, border-color .2s, background-color .2s, padding .5s cubic-bezier(.075, .82, .165, 1)
}

.footer-contact-link:hover {
    border-color: var(--green-5);
    background-color: var(--20-green-transparent);
    color: var(--body-color);
    padding: .5em .8em
}

.max-width-50:where(.w-variant-d48d4a09-899a-fd4f-1b3e-6b4d3a4970a6) {
    text-align: center;
    margin-left: auto;
    margin-right: auto
}

.practices-grid {
    grid-column-gap: 2em;
    grid-row-gap: 4em;
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr 1fr;
    grid-auto-columns: 1fr;
    place-items: center;
    width: 100%;
    max-width: 85em;
    margin-left: auto;
    margin-right: auto;
    display: grid
}

.large-titles {
    z-index: 10;
    width: 100%;
    position: relative
}

.practices-grid-block {
    grid-column-gap: 2em;
    grid-row-gap: 2em;
    text-align: center;
    flex-flow: column;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    max-width: 23em;
    display: flex
}

.about-image-text {
    z-index: 20;
    opacity: .55;
    font-family: var(--heading-font);
    text-align: center;
    letter-spacing: 2vw;
    text-transform: uppercase;
    font-size: 15vw;
    line-height: 1em
}

.about-image-text-block {
    z-index: 20;
    opacity: .4;
    text-align: center;
    letter-spacing: 2vw;
    text-transform: uppercase;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    font-size: 15vw;
    font-weight: 800;
    display: flex;
    position: absolute;
    inset: 0%
}

.footer-address-text {
    opacity: .8;
    font-size: 1.1em;
    line-height: 1.7em
}

.nav-main {
    grid-column-gap: 2vw;
    grid-row-gap: 2vw;
    flex-flow: row;
    flex: 1;
    justify-content: flex-start;
    align-items: center;
    display: flex
}

.search-input-in-full-menu:focus-visible {
    outline-offset: 0px;
    outline: 0 #0000
}

@media screen and (min-width:1440px) {
    body {
        font-size: 15px
    }
}

@media screen and (min-width:1920px) {
    body {
        font-size: 16px
    }
}

@media screen and (max-width:991px) {
    body {
        font-size: 12px
    }

    .container {
        padding-left: 4em;
        padding-right: 4em
    }

    .padding {
        padding-top: 6em;
        padding-bottom: 6em
    }

    .heading {
        font-size: 3em
    }

    .heading.is-large-title {
        font-size: 4.5em
    }

    .heading.is-article-listing-title {
        max-width: none;
        font-size: 2em
    }

    .brand-name-text {
        font-size: 2em
    }

    .button-circle {
        font-size: .8em
    }

    .cta-layout {
        grid-column-gap: 2em;
        padding-top: 8em;
        padding-bottom: 8em
    }

    .cta-content {
        grid-row-gap: 1.5em;
        grid-template-columns: 1fr
    }

    .nav-link {
        font-size: 1.1em
    }

    .footer-links-wrapper {
        grid-column-gap: 2.75em;
        flex-wrap: wrap
    }

    .featured-articles-list {
        grid-template-columns: 1fr;
        grid-auto-columns: 1fr;
        display: grid
    }

    .featured-article-item:hover {
        width: 100%
    }

    .featured-article-content {
        padding-top: 3em;
        padding-bottom: 3em
    }

    .article-author-block {
        font-size: 1.2em
    }

    .article-list-category-text {
        font-size: 1.3em
    }

    .about-images-wrap {
        height: 30em
    }

    .nav-wrapper {
        grid-column-gap: 2vw;
        grid-row-gap: 2vw;
        min-height: 5em;
        padding-left: 11.5em;
        padding-right: 2vw
    }

    .nav-links-wrapper {
        display: none
    }

    .image-in-collage-small {
        font-size: .8em;
        left: -3.2em
    }

    .footer-links {
        grid-column-gap: 1.5em;
        grid-row-gap: 0em
    }

    .footer-brand {
        width: 100%
    }

    .hero-practices {
        min-height: auto
    }

    .hero-practices-padding {
        padding-top: 30em
    }

    .image-in-collage-medium {
        font-size: .8em;
        right: -3.7em
    }

    .practices-grid-2 {
        grid-column-gap: 2em;
        grid-row-gap: 2em;
        grid-template-columns: 1fr;
        max-width: 33em;
        margin-left: auto;
        margin-right: auto
    }

    .practices-grid-2-block:hover {
        background-color: #0000;
        border-color: #0000
    }

    .small-footer-link {
        font-size: 1.5em
    }

    .footer-address-wrapper {
        width: 100%;
        margin-left: 0
    }

    .footer-brand-wrapper {
        grid-column-gap: 2em;
        grid-row-gap: 2em;
        flex-flow: wrap
    }

    .footer-contacts {
        grid-column-gap: 1em
    }

    .footer-small-text {
        font-size: .9em
    }

    .footer-contact-link {
        border-color: var(--green-4);
        background-color: var(--5-green-transparent);
        padding: .2em .5em;
        font-size: 1.6em
    }

    .footer-contact-link:hover {
        padding: .2em .5em
    }

    .practices-grid {
        grid-template-columns: 1fr 1fr
    }

    .footer-address-text {
        font-size: 1.3em
    }
}

@media screen and (max-width:767px) {
    body {
        font-size: 11px
    }

    p {
        font-size: 1.3em;
        line-height: 1.4em
    }

    .padding {
        padding-top: 6em;
        padding-bottom: 6em
    }

    .heading {
        font-size: 2.6em
    }

    .heading.is-large-title {
        font-size: 4em
    }

    .heading.is-article-listing-title {
        line-height: 1.4em
    }

    .brand-name-text {
        font-size: 1.9em
    }

    .button-circle {
        width: 7em;
        height: 7em;
        font-size: .7em
    }

    .button-circle-icon {
        font-size: 2em
    }

    .paragraph {
        font-size: 16px
    }

    .paragraph.is-medium {
        font-size: 17px
    }

    .paragraph.is-large {
        font-size: 18px
    }

    .footer-flex-wrapper {
        grid-column-gap: 4em;
        grid-row-gap: 4em
    }

    .featured-article-content {
        padding: 6vw
    }

    .about-images-wrap {
        height: 25em
    }

    .nav-wrapper {
        padding-left: 12em
    }

    .image-collage {
        height: 35em
    }

    .background-illustration-3 {
        width: 50vw
    }

    .background-illustration-4 {
        width: 60vw
    }

    .practices-grid-2-block {
        border-bottom-width: 0;
        border-bottom-color: #0000
    }

    .footer-address-wrapper {
        grid-column-gap: 4em;
        grid-row-gap: 4em;
        margin-left: 0
    }

    .footer-small-text {
        font-size: 1em
    }

    .practices-grid {
        grid-column-gap: 3em;
        grid-row-gap: 3em;
        flex-flow: wrap;
        grid-template-columns: 1fr
    }

    .practices-grid-block {
        grid-column-gap: 1em;
        grid-row-gap: 1em
    }
}

@media screen and (max-width:479px) {

    .container {
        padding-left: 8vw;
        padding-right: 8vw
    }

    .padding.small-paddings {
        padding-top: 3.5em;
        padding-bottom: 3.5em
    }

    .heading.is-large-title {
        font-size: 3em
    }

    .heading.is-cta-title {
        font-size: 3em
    }

    .heading.is-large-fullwidth-title {
        font-size: 15vw
    }

    .brand-name-text {
        font-size: 1.7em
    }

    .gallery-lightbox.hidden-on-phone:where(.w-variant-b0b05062-5dee-a4d6-23d2-439fa9c643d8) {
        display: none
    }

    .vertical-flex.with-gap-2em {
        grid-row-gap: 1em
    }

    .cta-layout {
        grid-row-gap: 2em;
        flex-wrap: wrap;
        padding-left: 8vw;
        padding-right: 8vw
    }

    .cta-text {
        line-height: 1.9em
    }

    .paragraph.is-medium {
        line-height: 1.6em
    }

    .paragraph.is-large-italic {
        font-size: 1.7em
    }

    .footer-links-wrapper {
        grid-column-gap: 2em
    }

    .footer-wrapper {
        grid-row-gap: 2.5em;
        flex-wrap: wrap
    }

    .footer-flex-wrapper {
        grid-column-gap: 3em;
        grid-row-gap: 3em
    }

    .footer-flex-block {
        padding-top: 0
    }

    .featured-articles-list {
        grid-template-columns: 1fr
    }

    .featured-article-link-block {
        padding-top: 15em
    }

    .featured-article-link-block:hover {
        box-shadow: none;
        background-color: #0000
    }

    .featured-article-content {
        border: 1px solid var(--30-green-transparent);
        width: 92%;
        margin-bottom: 4%;
        padding: 5vw
    }

    .about-images-wrap {
        height: 14em
    }

    .large-titles-flex {
        grid-column-gap: 1vw;
        grid-row-gap: 1vw;
        text-align: center;
        flex-flow: column
    }

    .nav-wrapper {
        min-height: 4.5em;
        padding-left: 19vw
    }

    .section-content-block:where(.w-variant-b545fa43-40fa-8293-2e93-790fc0985468) {
        margin-bottom: 3.5em
    }

    .marker-title {
        font-size: 1.8em
    }

    .marker-number {
        font-size: 4.8em
    }

    .image-in-collage-small {
        font-size: .6em
    }

    .footer-links {
        flex-flow: column
    }

    .footer-brand.w--current {
        flex-flow: column;
        justify-content: flex-start;
        align-items: flex-start
    }

    .footer-brand-slogan-line {
        display: none
    }

    .footer-brand-slogan {
        font-size: 1.4em
    }

    .footer-text-link {
        font-size: 10vw
    }

    .image-collage {
        margin-top: 3em;
        margin-bottom: 3em
    }

    .image-in-collage-medium {
        font-size: .6em
    }

    .character-text {
        font-size: 20vw
    }

    .footer-address-wrapper {
        grid-column-gap: 3em;
        grid-row-gap: 3em
    }

    .footer-small-text {
        position: relative
    }
}