:root {
  --black: #000;
  --white: #fff;
  --text: #1B211E;
  --prime: #0F1412;
  --second: #9BE03A;
  --background: var(--white);
  --stroke: #D5D9D2;
  --grey-dark: #5B625D;
  --grey-light: #F3F4F1;
  --prime-light: #26302B;
  --heading-gradient-from: var(--prime);
  --heading-gradient-to: var(--prime);
  --grad-hero: linear-gradient(180deg, #121916 0%, #0B0F0D 100%);
  --accent: var(--second);
  --heading: var(--prime);
  --text-body: var(--text);
  --text-muted: var(--grey-dark);
  --text-on-dark: var(--white);
  --text-on-dark-dim: rgb(255 255 255 / 0.78);
  --prime-deep: #0B0F0D;
  --surface-soft: var(--grey-light);
  --grad-cta: var(--grad-hero);
  --accent-deep: #3F6B12;
  --text-strong: var(--text);
  --placeholder: #9AA19C;
  --hairline: #E1E4DE;
  --hairline-on-dark: rgb(255 255 255 / 0.18);
  --blob-a: color-mix(in srgb, var(--prime) 35%, white);
  --blob-b: color-mix(in srgb, var(--accent) 30%, white);
  --type-body: "Barlow", "Helvetica Neue", Arial, sans-serif;
  --type-display: "Barlow Semi Condensed", "Barlow", "Helvetica Neue", Arial, sans-serif;
  --type-mono: "B612 Mono", Menlo, Consolas, monospace;
}
body {
    font-size: clamp(0.9rem, 1.5vw, 1.13rem);
    font-family: var(--type-body);
    color: var(--black);
    font-weight: 400;
    font-style: normal;
    margin: 0;
    padding: 0;
    line-height: 1.5;
    min-height: 100vh;
    width: 100%;
}
h1 {
    background: linear-gradient(to left, var(--heading-gradient-from) 0%, var(--heading-gradient-to) 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}
h1, h2, h3, h4 {
    font-weight: 800;
    color: var(--prime);
}
h1, h2 {
    line-height: 1.125;
    font-family: var(--type-display);
}
h1 {
    font-size: clamp(3em, 4vw, 4em);
    margin-bottom: 0.55em;
}
h1.small {
    font-size: clamp(2.5em, 4.25vw, 4.25em);
}
h2 {
    margin-bottom: 0.65em;
    font-size: clamp(2em, 3.25vw, 3.25em);
}
.small h2 {
    font-size: clamp(1.25em, 1.4vw, 1.65em);
}
h3 {
    margin: 0 0 0.65em;
    font-size: clamp(1.25em, 1.5vw, 1.5em);
}
h4 {
    margin: 0 0 0.65em;
    font-size: 1.125em;
}
h5,
h6 {
    margin: 0 0 0.5em;
    font-size: 1em;
    font-weight: 700;
    color: var(--prime);
}
a {
    border-bottom: 1px solid var(--prime);
    text-decoration: none;
    color: var(--prime);
    transition: all 0.2s ease;
}
a:hover {
    border-bottom: 1px solid var(--second);
    color: var(--second);
}
h1 a,
h3 a,
h2 a,
h1 a:hover,
h3 a:hover,
h2 a:hover {
    border-bottom: 0;
}
hr {
    margin-top: var(--space-60);
    margin-bottom: var(--space-60);
    border: 0;
    position: relative;
    border-top: 1px solid var(--prime);
}
p { margin: 0 0 1.5em; }
ul,
ol {
    margin: 0 0 1em;
    padding-inline-start: 1.25em;
}
li { margin-bottom: 0.5em; }
li:last-child { margin-bottom: 0; }
li > ul,
li > ol {
    margin-block: 0.5em 0;
}
dl { margin: 0 0 1em; }
dt {
    font-weight: 600;
}
dd {
    margin: 0 0 0.75em;
}
dd:last-child { margin-bottom: 0; }
.btn a,
a.btn,
button[type="submit"],
input[type="submit"],
.submit,
.content-download .download-element a,
.layout_latest p.more a
{
    display: inline-block;
    margin-bottom: 1.5em;
    padding: 13px 24px 16px 24px;
    text-align: center;
    background-color: var(--second);
    border-radius: 30px;
    color: var(--white);
    font-weight: 600;
    cursor: pointer;
    border: 0;
    line-height: 1.5rem;
    margin-right: 1em;
    font-size: 1.2rem;
}
.btn a:hover,
a.btn:hover,
button[type="submit"]:hover,
input[type="submit"]:hover,
.submit:hover,
.content-download .download-element a:hover,
.layout_latest p.more a:hover {
    background-color: var(--prime);
}
.btn.alt a,
a.btn.alt,
button[type="submit"].alt,
input[type="submit"].alt,
.submit.alt {
    background-color: var(--prime);
}
.btn.alt a:hover,
a.btn.alt:hover,
button[type="submit"].alt:hover,
input[type="submit"].alt:hover,
.submit.alt:hover {
    background-color: var(--second);
}
.btn.outline a,
a.btn.outline,
button[type="submit"].outline,
input[type="submit"].outline,
.submit.outline {
    background-color: transparent;
    border: 2px solid var(--prime);
    color: var(--prime);
}
.btn.outline a:hover,
a.btn.outline:hover,
button[type="submit"].outline:hover,
input[type="submit"].outline:hover,
.submit.outline:hover {
    background-color: var(--prime);
    color: var(--white);
}
.btn.alt.outline a,
a.btn.alt.outline,
button[type="submit"].alt.outline,
input[type="submit"].alt.outline,
.submit.alt.outline {
    background-color: transparent;
    border-color: var(--second);
    color: var(--second);
}
.btn.alt.outline a:hover,
a.btn.alt.outline:hover,
button[type="submit"].alt.outline:hover,
input[type="submit"].alt.outline:hover,
.submit.alt.outline:hover {
    background-color: var(--second);
    color: var(--white);
}
.btn.light a,
a.btn.light,
button[type="submit"].light,
input[type="submit"].light,
.submit.light {
    background-color: var(--white);
    color: var(--prime);
}
.btn.light a:hover,
a.btn.light:hover,
button[type="submit"].light:hover,
input[type="submit"].light:hover,
.submit.light:hover {
    background-color: var(--second);
    color: var(--white);
}
.small,
.small p {
    font-size: clamp(0.75em, 1.35vw, 1.125em);
}
.small p {
    margin-bottom: 0.875em;
}
.small a, a.small {
    display: inline-block;
}
.small li {
    margin-bottom:0;
}
a.download-element:after {
    display: inline-block;
    padding: 0 0 0 .25em;
    border: 0;
    font-family: "Font Awesome 5 Pro";
    text-transform: none;
    content: "\f019";
    font-weight: 900;
}
a.download-element {
    margin-right: .25em;
    margin-left: .25em;
    padding: 0;
    font-weight: bold;
}
.download-element .size {
    display: none;
}
.eyebrow {
    display: block;
    margin: 0 0 0.6em;
    color: var(--second);
    font-family: var(--type-body);
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}
.eyebrow::before { content: "— "; }
.svg-inline--fa,
.row > * .svg-inline--fa {
    display: inline-block;
    height: 1em;
    width: auto;
    max-width: none;
    overflow: visible;
    vertical-align: -0.125em;
}
.eyebrow.on-dark { color: var(--white); }
blockquote {
    padding: 0;
    margin: 0;
    p { margin-bottom: 0; }
    em {
        font-weight: 600;
        color: var(--prime);
    }
    em:after { content: " "; }
}
.bg-light  { background-color: var(--grey-light); }
.bg-cream  { background-color: var(--surface-soft); }
.bg-white  { background-color: var(--white); }
.bg-dark   { background-color: var(--grey-dark); color: var(--white); }
.bg-prime  { background-color: var(--prime);      color: var(--white); }
.bg-ink    { background-color: var(--prime-deep); color: var(--white); }
.bg-navy   { background: var(--grad-cta);         color: var(--white); }
.bg-light,
.bg-cream,
.bg-white,
.bg-dark,
.bg-prime,
.bg-ink,
.bg-navy {
    padding-block: var(--space-40);
    padding-inline: var(--page-gutter);
}
.band:is(.bg-light, .bg-cream, .bg-white, .bg-dark, .bg-prime, .bg-ink, .bg-navy) { padding-inline: 0; }
.band.section-80 { padding-block: var(--space-80); }
:is(.bg-dark, .bg-prime, .bg-ink, .bg-navy) :is(h1, h2, h3, h4) {
    color: var(--text-on-dark);
    background: none;
    -webkit-text-fill-color: currentColor;
}
.full_img_background {
    position: relative;
    padding-bottom: 180px;
    margin-bottom: -120px;
    margin-inline: calc(-1 * var(--page-gutter));
}
.full_img_background .content-image{
    position: absolute;
}
.all_corners img {
    border-radius: 20px;
}
@media only screen and (max-width: 1050px) {
    .btn a,
    a.btn,
    button[type="submit"],
    input[type="submit"],
    .submit,
    .content-download .download-element a,
    .layout_latest p.more a {
        padding: 10px 18px;
        font-size: 0.8em;
    }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
