/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

h1 {
    font-size: 2em;
    margin: 0.67em 0
}

hr {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

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

a {
    background-color: transparent
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted
}

b,
strong {
    font-weight: bolder
}

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

small {
    font-size: 80%
}

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

sub {
    bottom: -0.25em
}

sup {
    top: -0.5em
}

img {
    border-style: none
}

button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0
}

button,
input {
    overflow: visible
}

button,
select {
    text-transform: none
}

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

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner {
    border-style: none;
    padding: 0
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring {
    outline: 1px dotted ButtonText
}

fieldset {
    padding: 0.35em 0.75em 0.625em
}

legend {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

progress {
    vertical-align: baseline
}

textarea {
    overflow: auto
}

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

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    height: auto
}

[type="search"] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none
}

details {
    display: block
}

summary {
    display: list-item
}

template {
    display: none
}

[hidden] {
    display: none
}

:root {
    --pure-white: #ffffff;
    --cads-grey: #555454;
    --cads-red: #E30613;
    --grey26: #262626;
    --grey33: #333333;
    --grey66: #666666;
    --grey99: #999999;
    --greyee: #eeeeee;
    --radius-sm: 0.75rem;
    --radius-md: 1rem;
    --padding-x-sm: 1.5rem;
    --padding-x-md: 2rem;
    --paragraph-margin-helper: 0.25em
}

html {
    font-size: 16px
}

body {
    font-family: "Roboto", sans-serif
}

h1,
h2 {
    font-family: "Mundial", sans-serif;
    line-height: 1.25;
    font-weight: 400;
    margin: 0;
    letter-spacing: 0
}

h1 {
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1;
    margin: -0.25em 0 calc(2rem - 0.075em) 0
}

@media screen and (min-width: 992px) {
    h1 {
        font-weight: 600;
        font-size: 3rem
    }
}

@media screen and (min-width: 1220px) {
    h1 {
        font-size: 4rem
    }
}

h2 {
    font-size: 1.5rem;
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1;
    margin: -0.25em 0 calc(2rem - 0.075em) 0
}

p {
    font-size: 1rem;
    line-height: 1.5;
    margin: calc(0em - var(--paragraph-margin-helper, 0.25em)) 0em calc(1em - var(--paragraph-margin-helper, 0.25em))
}

@media screen and (min-width: 992px) {
    p {
        font-size: 1.125rem
    }
}

p:last-of-type {
    margin-bottom: calc(0em - var(--paragraph-margin-helper, 0.25em))
}

::-webkit-scrollbar {
    width: 6px
}

::-webkit-scrollbar-track {
    background: #f1f1f1
}

::-webkit-scrollbar-thumb {
    background: #888
}

::-webkit-scrollbar-thumb:hover {
    background: #555
}

[x-cloak] {
    display: none;
    opacity: 0
}

* {
    -webkit-box-sizing: border-box !important;
    box-sizing: border-box !important
}

html {
    height: 100%;
    scroll-behavior: smooth
}

body {
    min-height: 100%;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: var(--pure-white, #fff);
    position: relative
}

body.no-scroll {
    overflow: hidden
}

.full_wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
    overflow: hidden
}

.divider {
    display: block;
    width: 100%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    height: 1px;
    background-color: var(--greyee, #eee)
}

header,
main,
footer {
    width: 100%
}

header {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(30.39%, var(--grey26, #262626)), to(var(--cads-grey, #555454)));
    background: -o-linear-gradient(top, var(--grey26, #262626) 30.39%, var(--cads-grey, #555454) 100%);
    background: linear-gradient(180deg, var(--grey26, #262626) 30.39%, var(--cads-grey, #555454) 100%);
    color: var(--pure-white, #fff);
    overflow: hidden;
    padding-top: 4rem
}

@media screen and (min-width: 992px) {
    header {
        padding-top: 5.625rem
    }
}

.container {
    width: 100%;
    margin: auto;
    padding: 0 1.5rem
}

@media screen and (min-width: 992px) {
    .container {
        width: calc(768px + 3rem)
    }
}

@media screen and (min-width: 1220px) {
    .container {
        width: calc(1170px + 3rem)
    }
}

.navbar_wrapper {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 500;
    background-color: var(--grey26, #262626)
}

.navbar_wrapper .container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 4rem;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

@media screen and (min-width: 992px) {
    .navbar_wrapper .container {
        height: 5.625rem
    }
}

.navbar_wrapper .menu-toggle {
    display: none
}

@media screen and (max-width: 991px) {
    .navbar_wrapper .menu-toggle {
        background: none;
        border: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        padding: 0;
        margin: 0;
        width: 26px;
        height: 26px;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        position: relative;
        z-index: 800
    }
}

.navbar_wrapper .menu-toggle svg path:nth-child(1) {
    -webkit-transition: 150ms linear transform;
    -o-transition: 150ms linear transform;
    transition: 150ms linear transform
}

.navbar_wrapper .menu-toggle svg path:nth-child(2) {
    -webkit-transition: 150ms linear opacity;
    -o-transition: 150ms linear opacity;
    transition: 150ms linear opacity;
    opacity: 1
}

.navbar_wrapper .menu-toggle svg path:nth-child(3) {
    -webkit-transition: 150ms linear transform;
    -o-transition: 150ms linear transform;
    transition: 150ms linear transform
}

.navbar_wrapper .menu-toggle.menu-opened svg path:nth-child(1) {
    -webkit-transform: translateX(6px) translateY(-1px) rotate(45deg);
    -ms-transform: translateX(6px) translateY(-1px) rotate(45deg);
    transform: translateX(6px) translateY(-1px) rotate(45deg)
}

.navbar_wrapper .menu-toggle.menu-opened svg path:nth-child(2) {
    opacity: 0
}

.navbar_wrapper .menu-toggle.menu-opened svg path:nth-child(3) {
    -webkit-transform: translateY(6px) translateX(-12px) rotate(-45deg);
    -ms-transform: translateY(6px) translateX(-12px) rotate(-45deg);
    transform: translateY(6px) translateX(-12px) rotate(-45deg)
}

.navbar_wrapper ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    gap: 2rem
}

@media screen and (max-width: 991px) {
    .navbar_wrapper ul {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        pointer-events: none;
        opacity: 0;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        z-index: 500;
        padding: 7rem 1.5rem 4rem;
        height: 4rem
    }
}

@media screen and (max-width: 991px) and (orientation: landscape) {
    .navbar_wrapper ul {
        padding-top: 4rem;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
}

@media screen and (max-width: 991px) {
    .navbar_wrapper ul li {
        position: relative;
        z-index: 50;
        opacity: 0;
        -webkit-transform: translateY(2rem);
        -ms-transform: translateY(2rem);
        transform: translateY(2rem)
    }

    .navbar_wrapper ul::before {
        content: '';
        display: block;
        position: absolute;
        top: 2rem;
        right: 3rem;
        width: 480vw;
        height: 480vw;
        background: #e02620;
        border-radius: 50%;
        z-index: 10;
        -webkit-transform: translateX(50%) translateY(-50%) scale(0);
        -ms-transform: translateX(50%) translateY(-50%) scale(0);
        transform: translateX(50%) translateY(-50%) scale(0);
        -webkit-transition: 250ms ease-in-out transform;
        -o-transition: 250ms ease-in-out transform;
        transition: 250ms ease-in-out transform;
        -webkit-transform-origin: center;
        -ms-transform-origin: center;
        transform-origin: center
    }

    .navbar_wrapper ul::after {
        content: '';
        display: block;
        background-image: url('data:image/svg+xml,<svg width="436" height="313" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23a)" stroke="%23fff" stroke-miterlimit="10"><path d="m125 123.9 40.7 52.8 30.7-110.3-46.1-63.7L125 124Z"/><path d="m121.6 229.8 71.8-17 35.7-101-67.8 5.3c-11.3.9-29.3 6-40.2.2-10.4-5.4-13.5-25.6-13-35.6.6-8 6.7-10.5 13.9-11.4 24.4-3.1 49.8-2.6 74.4-3.9l-30.7 110.3c-18 3.7-36.3 6.5-54 11.2-4.8 1.3-9.4 2.5-11 8-2.1 7 3.3 23.1 7.3 28.7 3.2 4.4 8.3 6.4 13.6 5.2Z"/><path d="m193.4 212.8 48.1 62.5 47-81.6-59.4-82-35.7 101.1Z"/><path d="M29.7 256.5c-5.6-26.2-18.5-58.7-6.7-85a70 70 0 0 1 41.5-36.3c19.2-6.6 40.7-8 60.6-11.3L150.3 2.7C102 3.5 1-3.3.5 70.8c-.2 22.3.9 46.7 4.4 68.8a78 78 0 0 0 20.4 40C50 206.4 88.4 218 124 215c54.9-4.6 109.7-14.1 164.3-21.3l-46.9 81.6-72.7 21.1c-17 5-34.5 11.7-52.2 14.2A82.2 82.2 0 0 1 49.1 290a67.6 67.6 0 0 1-19.4-33.4Z"/><path d="M4.4 135C2.7 113.3-.3 90.4.5 68.5a55.5 55.5 0 0 1 11.9-31.6c15.4-20 41.2-30 65.7-32.5 23.8-2.4 48.2-1.2 72.2-1.6l46 63.7-69 3.6c-7.2.4-16.8.6-19 9.1-1.9 7.2 2.7 19.1 4.4 26 1.1 4.3 1.9 7.5 5.6 10.5 8.4 6.8 22.3 3.1 32 2.4l78.8-6.3 59.3 82c-52.7 6.9-105.4 14.5-158.3 20.7-36.5 4.2-75.7-5.6-102.3-32A78.1 78.1 0 0 1 4.3 135Z"/><path d="M29.3 254.6a71.5 71.5 0 0 0 44.7 51c28.3 11.3 54.4 2.5 82.2-5.5l85.3-24.8-48-62.5-59 14c-6.9 1.6-16.3 5.8-23 1.3-7-4.7-11-21.2-11-28.5 0-5.8 2.6-8.7 7.8-11 17.1-7 39.2-8.1 57.4-12L125 124c-41.5 7-107 12.8-107 70 0 20 7.2 41 11.2 60.7Z"/><path d="M284.7 190.5 193 202.2c-41.7 5.4-85.7 16.5-126.3.3C36.7 190.6 9.4 165 7 131.1 5.7 108.6.4 83.4 3.8 60.9c10-65.1 99.5-57.3 145.4-58m135.5 187.6V191m0-.6-56.2-77.9m56.3 78.5Zm-56.3-78.5-.1.4.2-.3-.2.3v-.4Zm0 0L161 118c-11.9.9-29.8 5.8-41.3-.2-11.5-6-14.3-25.6-14.2-37 .1-9.2 6.8-12.8 15.3-14 23.6-3 48.2-2.3 72-3.5m0 0v.3m0-.3L149.1 2.8m43.6 60.8ZM149.2 2.8v.5m0-.5v.5m0 0v.1h.4"/><path d="M107.3 73.5c-5.3 8 .7 26.5 3.5 34.1 3 7.9 10 12 18.3 12.6 14.8 1.2 31-2.2 45.7-3.3l53.7-4.3 56.2 77.9c-51.3 6.6-102.6 13.8-154 19.7-33.6 3.9-68.8-3.8-95-26C3.4 156.5 6.3 118.7 3.8 79.5c-1.6-26 7.7-46.7 30.4-60.7 33.7-21 77.3-15.5 115-16l43.6 60.4-61.8 3c-8.2.5-18.3-.4-23.7 7.2ZM227 106.7l121.4 137.7 86.1-69.8L281.3.6l-54.4 106.1Z"/><path d="m348.4 244.4-80 23.2 57.1-78.7 109-14.3-86.1 69.8ZM150.5 119.6l76.4-12.9L281.3.7l-98.2 1.5-32.6 117.4Z"/><path d="m268.4 267.6-118-148L183.2 2.2 325.5 189l-57.1 78.7Z"/><path d="M325.5 188.9 183.1 2.2 281.3.7l153.2 174-109 14.2ZM150.5 119.6l117.9 148 80-23.2-121.5-137.7-76.4 13Z"/><path d="M187.4 2.2 281 .8l150.2 170.5-103.8 13.3-140-182.4Z"/><path d="M327.4 184.6 187.4 2.2l-.1.3-.3.2c-.8.3-1.6.3-2.4 0a4 4 0 0 0 2.3 0l.3-.2.2-.3L281 .8m46.4 183.8Zm0 0 103.8-13.3m0 0-.2.3v.3-.3l.2-.3Zm0 0L281 .8m0 0-.2.6h.1l.1-.6ZM5 139.6l15.4 77.9"/></g><defs><clipPath id="a"><path fill="%23fff" d="M0 0h436v313H0z"/></clipPath></defs></svg>');
        width: 436px;
        height: 313px;
        position: absolute;
        left: 32px;
        bottom: 48px;
        z-index: 200;
        opacity: 0;
        -webkit-transition: opacity 500ms linear 250ms;
        -o-transition: opacity 500ms linear 250ms;
        transition: opacity 500ms linear 250ms;
        pointer-events: none;
        z-index: 15
    }
}

@media screen and (max-width: 991px) and (orientation: landscape) {
    .navbar_wrapper ul::after {
        left: unset;
        right: 32px;
        bottom: 0
    }
}

@media screen and (max-width: 991px) {
    @keyframes linksFadeIn {
        0% {
            opacity: 0;
            -webkit-transform: translateY(2rem);
            transform: translateY(2rem)
        }

        100% {
            opacity: 1;
            -webkit-transform: translateY(0rem);
            transform: translateY(0rem)
        }
    }

    .navbar_wrapper ul.menu-visible {
        height: 100%;
        pointer-events: all;
        opacity: 1
    }

    .navbar_wrapper ul.menu-visible::before {
        -webkit-transform: translateX(50%) translateY(-50%) scale(1);
        -ms-transform: translateX(50%) translateY(-50%) scale(1);
        transform: translateX(50%) translateY(-50%) scale(1)
    }

    .navbar_wrapper ul.menu-visible::after {
        opacity: 0.25
    }

    .navbar_wrapper ul.menu-visible li:nth-child(1) {
        -webkit-animation: linksFadeIn 250ms ease-in-out 0ms 1 normal forwards;
        animation: linksFadeIn 250ms ease-in-out 0ms 1 normal forwards
    }

    .navbar_wrapper ul.menu-visible li:nth-child(2) {
        -webkit-animation: linksFadeIn 250ms ease-in-out 125ms 1 normal forwards;
        animation: linksFadeIn 250ms ease-in-out 125ms 1 normal forwards
    }

    .navbar_wrapper ul.menu-visible li:nth-child(3) {
        -webkit-animation: linksFadeIn 250ms ease-in-out 250ms 1 normal forwards;
        animation: linksFadeIn 250ms ease-in-out 250ms 1 normal forwards
    }

    .navbar_wrapper ul.menu-visible li:nth-child(4) {
        -webkit-animation: linksFadeIn 250ms ease-in-out 375ms 1 normal forwards;
        animation: linksFadeIn 250ms ease-in-out 375ms 1 normal forwards
    }
}

.navbar_wrapper ul li {
    margin: 0;
    padding: 0
}

.navbar_wrapper ul li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    line-height: 1;
    color: var(--pure-white, #fff);
    text-decoration: none;
    padding: 0 0.5rem;
    font-family: "Mundial", sans-serif;
    font-size: 1.5rem;
    height: 3rem;
    font-weight: 600;
    letter-spacing: -0.05em;
    position: relative
}

@media screen and (min-width: 992px) {
    .navbar_wrapper ul li a {
        font-size: 1.25rem;
        height: 2.25rem
    }
}

.navbar_wrapper ul li a::after {
    content: "";
    display: block;
    position: absolute;
    height: 3px;
    width: 100%;
    left: 0;
    bottom: -3px;
    background: var(--cads_red, #E30613);
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transition: 150ms ease-in-out transform;
    -o-transition: 150ms ease-in-out transform;
    transition: 150ms ease-in-out transform
}

.navbar_wrapper ul li a:hover::after {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1)
}

.navbar_logo_wrapper {
    display: block
}

.navbar_logo {
    display: block;
    height: 1.75rem;
    width: auto;
    position: relative;
    z-index: 1000
}

@media screen and (min-width: 992px) {
    .navbar_logo {
        height: 2rem
    }
}

.navbar_logo.logo-color-change path {
    -webkit-transition: 100ms ease-in-out fill;
    -o-transition: 100ms ease-in-out fill;
    transition: 100ms ease-in-out fill;
    fill: white
}

.hero_wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2rem;
    position: relative;
    padding: 2rem 0
}

@media screen and (min-width: 992px) {
    .hero_wrapper {
        padding: 6rem 0;
        gap: 3rem
    }
}

@media screen and (min-width: 1220px) {
    .hero_wrapper {
        padding: 10rem
    }
}

.hero_wrapper p {
    position: relative;
    z-index: 10;
    margin-bottom: calc(0em - var(--paragraph-margin-helper, 0.25em))
}

@media screen and (min-width: 992px) {
    .hero_wrapper p {
        max-width: 62ch
    }
}

.title_wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative;
    z-index: 10
}

.title_wrapper h1 {
    font-size: 2.25rem;
    letter-spacing: -0.05em;
    line-height: 0.85;
    margin-top: -0.175em;
    margin-bottom: calc(1.5rem - 0.075em);
    font-weight: 100;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative;
    left: -0.1em
}

@media screen and (min-width: 992px) {
    .title_wrapper h1 {
        margin-bottom: calc(2rem - 0.075em)
    }
}

@media screen and (min-width: 1220px) {
    .title_wrapper h1 {
        margin-bottom: calc(3rem - 0.075em)
    }
}

.title_wrapper h1 strong {
    font-size: .9em;
    white-space: nowrap;
    position: relative;
    left: -0.1em;
    color: var(--cads-red, #E30613);
    font-weight: 900
}

.title_wrapper h2 {
    font-size: 1.85rem;
    line-height: 1;
    margin-top: -0.25em;
    margin-bottom: -0.075em;
    margin-left: -0.075em;
    max-width: 15ch
}

.title_wrapper .title_h2_italic {
    font-weight: 100;
    font-style: italic
}

.title_wrapper .title_h2_bold {
    font-weight: 600
}

@media screen and (min-width: 400px) {
    .title_wrapper h1 {
        font-size: 2.5rem
    }

    .title_wrapper h2 {
        font-size: 2rem
    }
}

@media screen and (min-width: 992px) {
    .title_wrapper h1 {
        font-size: 4rem
    }

    .title_wrapper h2 {
        font-size: 3rem
    }
}

@media screen and (min-width: 1220px) {
    .title_wrapper h1 {
        font-size: 6rem
    }

    .title_wrapper h2 {
        font-size: 3rem
    }
}

.hero_logo-lines {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    opacity: 0.25;
    position: absolute;
    z-index: 0
}

@media screen and (max-width: 991px) {
    .hero_logo-lines {
        top: 0;
        left: -70px;
        width: auto;
        height: 180px;
        opacity: 0.5
    }
}

@media screen and (min-width: 992px) {
    .hero_logo-lines {
        top: 50%;
        left: 0;
        -webkit-transform: translateY(-50%) translateX(-240px);
        -ms-transform: translateY(-50%) translateX(-240px);
        transform: translateY(-50%) translateX(-240px);
        width: auto;
        height: 460px
    }
}

@media screen and (min-width: 1220px) {
    .hero_logo-lines {
        -webkit-transform: translateY(-50%) translateX(-240px);
        -ms-transform: translateY(-50%) translateX(-240px);
        transform: translateY(-50%) translateX(-240px);
        width: auto;
        height: 583px
    }
}

.hero_shape-line {
    position: absolute;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    left: 0;
    top: 0;
    width: auto;
    height: 88px;
    -webkit-transform: translateY(-7px) translateX(235px);
    -ms-transform: translateY(-7px) translateX(235px);
    transform: translateY(-7px) translateX(235px)
}

.hero_shape-line path:not(#hero-shape-line) {
    stroke-dasharray: 8px 8px
}

@media screen and (min-width: 992px) {
    .hero_shape-line {
        left: unset;
        right: 0;
        -webkit-transform: translateY(-22px) translateX(-96px);
        -ms-transform: translateY(-22px) translateX(-96px);
        transform: translateY(-22px) translateX(-96px);
        height: 275px
    }

    .hero_shape-line path:not(#hero-shape-line) {
        stroke-dasharray: 16px 16px
    }
}

@media screen and (min-width: 1220px) {
    .hero_shape-line {
        -webkit-transform: translateY(-80px) translateX(55px);
        -ms-transform: translateY(-80px) translateX(55px);
        transform: translateY(-80px) translateX(55px);
        height: 459px
    }
}

.section_wrapper {
    padding: 2rem 0
}

@media screen and (min-width: 992px) {
    .section_wrapper {
        padding: 5.625rem 0
    }
}

.section_wrapper h1 {
    color: var(--cads-red, #E30613);
    margin: -0.25em 0 calc(2rem - 0.075em) 0;
    position: relative;
    -webkit-transform: translateX(-0.1em);
    -ms-transform: translateX(-0.1em);
    transform: translateX(-0.1em)
}

.section_wrapper h1 span {
    display: block
}

@media screen and (min-width: 992px) {
    .section_wrapper h1::before {
        content: attr(data-title);
        color: var(--cads-grey, #555454);
        opacity: 0.1;
        position: absolute;
        z-index: -1;
        top: -0.3em;
        left: -0.2em;
        line-height: 1;
        font-size: 6rem;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        pointer-events: none;
        white-space: nowrap;
        -webkit-filter: blur(3px);
        filter: blur(3px)
    }
}

@media screen and (min-width: 1220px) {
    .section_wrapper h1::before {
        font-size: 12.25rem;
        top: -0.4125em;
        left: -0.275em
    }
}

.section_wrapper p {
    color: var(--cads-grey, #555454)
}

.card {
    border-radius: var(--radius-sm, 0.75rem);
    padding: 1.5rem;
    background: var(--pure_white, #fff);
    -webkit-box-shadow: 0px 2.317px 1.854px 0px rgba(0, 0, 0, 0.02), 0px 5.388px 4.31px 0px rgba(0, 0, 0, 0.03), 0px 9.675px 7.74px 0px rgba(0, 0, 0, 0.03), 0px 16.057px 12.846px 0px rgba(0, 0, 0, 0.04), 0px 26.453px 21.163px 0px rgba(0, 0, 0, 0.04), 0px 46.233px 36.986px 0px rgba(0, 0, 0, 0.05), 0px 100px 80px 0px rgba(0, 0, 0, 0.07);
    box-shadow: 0px 2.317px 1.854px 0px rgba(0, 0, 0, 0.02), 0px 5.388px 4.31px 0px rgba(0, 0, 0, 0.03), 0px 9.675px 7.74px 0px rgba(0, 0, 0, 0.03), 0px 16.057px 12.846px 0px rgba(0, 0, 0, 0.04), 0px 26.453px 21.163px 0px rgba(0, 0, 0, 0.04), 0px 46.233px 36.986px 0px rgba(0, 0, 0, 0.05), 0px 100px 80px 0px rgba(0, 0, 0, 0.07);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: var(--mobile_padding_body, 1.5rem);
    -webkit-box-flex: 1;
    -ms-flex: 1 0 0px;
    flex: 1 0 0;
    -ms-flex-item-align: stretch;
    align-self: stretch
}

@media screen and (min-width: 992px) {
    .card {
        border-radius: var(--radius-md, 1rem);
        padding: 2rem
    }
}

.card h2 {
    color: var(--cads-grey, #555454);
    margin-bottom: calc(0em - 0.075em)
}

.card p {
    color: var(--cads-grey, #555454);
    font-size: 1rem
}

#main-section-story .container,
#main-section-mission .container {
    position: relative
}

@media screen and (min-width: 992px) {

    #main-section-story .container .section_inner h1,
    #main-section-story .container .section_inner p,
    #main-section-mission .container .section_inner h1,
    #main-section-mission .container .section_inner p {
        width: 600px;
        padding-right: 107px
    }
}

@media screen and (min-width: 1220px) {

    #main-section-story .container .section_inner,
    #main-section-mission .container .section_inner {
        padding-left: 10rem;
        padding-right: 10rem
    }
}

#main-section-story .section_story-mission-connector-1-md,
#main-section-story .section_story-mission-connector-2-md,
#main-section-mission .section_story-mission-connector-1-md,
#main-section-mission .section_story-mission-connector-2-md {
    display: none
}

@media screen and (min-width: 992px) and (max-width: 1219px) {

    #main-section-story .section_story-mission-connector-1-md,
    #main-section-story .section_story-mission-connector-2-md,
    #main-section-mission .section_story-mission-connector-1-md,
    #main-section-mission .section_story-mission-connector-2-md {
        display: block;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        pointer-events: none;
        position: absolute;
        z-index: 500
    }
}

@media screen and (min-width: 992px) and (max-width: 1219px) {

    #main-section-story .section_story-mission-connector-1-md,
    #main-section-mission .section_story-mission-connector-1-md {
        top: 1.5rem;
        left: calc(0rem - 5rem)
    }

    #main-section-story .section_story-mission-connector-1-md #path-1-md-circle-1,
    #main-section-story .section_story-mission-connector-1-md #path-1-md-circle-2,
    #main-section-mission .section_story-mission-connector-1-md #path-1-md-circle-1,
    #main-section-mission .section_story-mission-connector-1-md #path-1-md-circle-2 {
        transform-box: fill-box;
        -webkit-transform-origin: center;
        -ms-transform-origin: center;
        transform-origin: center
    }

    #main-section-story .section_story-mission-connector-2-md,
    #main-section-mission .section_story-mission-connector-2-md {
        top: -3rem;
        left: -15rem
    }

    #main-section-story .section_story-mission-connector-2-md #path-2-md-circle-1,
    #main-section-story .section_story-mission-connector-2-md #path-2-md-circle-2,
    #main-section-mission .section_story-mission-connector-2-md #path-2-md-circle-1,
    #main-section-mission .section_story-mission-connector-2-md #path-2-md-circle-2 {
        transform-box: fill-box;
        -webkit-transform-origin: center;
        -ms-transform-origin: center;
        transform-origin: center
    }
}

#main-section-story .section_story-mission-connector-1-lg,
#main-section-story .section_story-mission-connector-2-lg,
#main-section-mission .section_story-mission-connector-1-lg,
#main-section-mission .section_story-mission-connector-2-lg {
    display: none
}

@media screen and (min-width: 1220px) {

    #main-section-story .section_story-mission-connector-1-lg,
    #main-section-story .section_story-mission-connector-2-lg,
    #main-section-mission .section_story-mission-connector-1-lg,
    #main-section-mission .section_story-mission-connector-2-lg {
        display: block;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        pointer-events: none;
        position: absolute;
        z-index: 500
    }
}

@media screen and (min-width: 1220px) {

    #main-section-story .section_story-mission-connector-1-lg,
    #main-section-mission .section_story-mission-connector-1-lg {
        top: 2.5rem;
        left: calc(10rem - 4.8rem)
    }

    #main-section-story .section_story-mission-connector-1-lg #path-1-circle-1,
    #main-section-story .section_story-mission-connector-1-lg #path-1-circle-2,
    #main-section-mission .section_story-mission-connector-1-lg #path-1-circle-1,
    #main-section-mission .section_story-mission-connector-1-lg #path-1-circle-2 {
        transform-box: fill-box;
        -webkit-transform-origin: center;
        -ms-transform-origin: center;
        transform-origin: center
    }

    #main-section-story .section_story-mission-connector-2-lg,
    #main-section-mission .section_story-mission-connector-2-lg {
        top: -4rem;
        left: 0
    }

    #main-section-story .section_story-mission-connector-2-lg #path-2-circle-1,
    #main-section-story .section_story-mission-connector-2-lg #path-2-circle-2,
    #main-section-mission .section_story-mission-connector-2-lg #path-2-circle-1,
    #main-section-mission .section_story-mission-connector-2-lg #path-2-circle-2 {
        transform-box: fill-box;
        -webkit-transform-origin: center;
        -ms-transform-origin: center;
        transform-origin: center
    }
}

#main-section-story {
    position: relative;
    z-index: 100;
    scroll-margin-top: 4rem
}

@media screen and (min-width: 992px) {
    #main-section-story {
        scroll-margin-top: 5.625rem
    }
}

#main-section-story #section_story-image-container {
    display: none
}

@media screen and (min-width: 992px) {
    #main-section-story #section_story-image-container {
        display: block;
        position: absolute;
        width: 344px;
        height: auto;
        top: -152px;
        right: -76px
    }
}

@media screen and (min-width: 1220px) {
    #main-section-story #section_story-image-container {
        width: 481px;
        top: -182px;
        right: 38px
    }
}

#main-section-mission {
    position: relative;
    z-index: 200
}

#main-section-mission #section_mission-image-container {
    display: none
}

@media screen and (min-width: 992px) {
    #main-section-mission #section_mission-image-container {
        display: block;
        position: absolute;
        width: 350px;
        height: auto;
        top: -82px;
        left: -195px
    }
}

@media screen and (min-width: 1220px) {
    #main-section-mission #section_mission-image-container {
        width: 370px;
        top: -117px;
        left: 47px
    }
}

@media screen and (min-width: 992px) {
    #main-section-mission .container .section_inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end
    }
}

#main-section-niche {
    overflow: hidden;
    background: -o-radial-gradient(0% 0%, 246.22% 141.42%, #fff 0%, #F4F4F4 100%);
    background: radial-gradient(246.22% 141.42% at 0% 0%, #fff 0%, #F4F4F4 100%);
    background-blend-mode: darken;
    -webkit-box-shadow: 0px 0px 160px 0px rgba(0, 0, 0, 0.1) inset;
    box-shadow: 0px 0px 160px 0px rgba(0, 0, 0, 0.1) inset;
    position: relative
}

#main-section-niche .section_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

@media screen and (min-width: 992px) {
    #main-section-niche .section_inner {
        gap: 3rem
    }
}

#main-section-niche .section_niche-bg {
    position: absolute;
    opacity: 0.1;
    right: -46px;
    width: auto;
    height: 164px;
    top: 20px
}

@media screen and (min-width: 992px) {
    #main-section-niche .section_niche-bg {
        left: calc(50% - 384px - 544px);
        width: auto;
        height: calc(100% - 230px);
        top: 115px
    }
}

@media screen and (min-width: 1220px) {
    #main-section-niche .section_niche-bg {
        left: calc(50% - 585px - 340px);
        width: auto;
        height: calc(100% - 70px);
        top: 35px
    }
}

@media screen and (min-width: 992px) {
    #main-section-niche h1 {
        margin-bottom: calc(0em - 0.075em);
        -ms-flex-item-align: end;
        align-self: flex-end
    }
}

#main-section-niche .section_niche-grid {
    position: relative;
    z-index: 50;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    grid-row-gap: 1.5rem
}

@media screen and (min-width: 992px) {
    #main-section-niche .section_niche-grid {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto;
        grid-column-gap: 2rem;
        grid-row-gap: 2rem
    }
}

@media screen and (min-width: 1220px) {
    #main-section-niche .section_niche-grid {
        grid-template-columns: repeat(4, 1fr);
        grid-template-rows: repeat(2, 1fr)
    }

    #main-section-niche .section_niche-grid .card-1 {
        grid-area: 1 / 1 / 2 / 3
    }

    #main-section-niche .section_niche-grid .card-2 {
        grid-area: 2 / 1 / 3 / 3
    }

    #main-section-niche .section_niche-grid .card-3 {
        grid-area: 1 / 3 / 3 / 4
    }

    #main-section-niche .section_niche-grid .card-4 {
        grid-area: 1 / 4 / 3 / 5
    }
}

#main-section-services {
    scroll-margin-top: 4rem
}

@media screen and (min-width: 992px) {
    #main-section-services {
        scroll-margin-top: 5.625rem
    }
}

#main-section-services #section_services-image-container {
    display: none
}

@media screen and (min-width: 992px) {
    #main-section-services #section_services-image-container {
        width: 380px;
        height: auto;
        display: block;
        position: absolute;
        top: -39px;
        right: -251px
    }
}

@media screen and (min-width: 1220px) {
    #main-section-services #section_services-image-container {
        width: 451px;
        top: -39px;
        right: -20px
    }
}

#main-section-services #section_services-image-container #services-image-photo {
    transform-box: fill-box;
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center
}

#main-section-services #section_services-image-container #services-image-shape-grey {
    transform-box: fill-box;
    -webkit-transform-origin: top right;
    -ms-transform-origin: top right;
    transform-origin: top right
}

#main-section-services #section_services-image-container #services-image-shape-red {
    transform-box: fill-box;
    -webkit-transform-origin: bottom left;
    -ms-transform-origin: bottom left;
    transform-origin: bottom left
}

#main-section-services h1+p {
    max-width: 46ch;
    font-size: 1.125rem
}

#main-section-services .section_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative
}

#main-section-services h2 {
    color: var(--cads-grey, #555454);
    gap: 0.5rem;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-bottom: calc(0em - 0.2em)
}

@media screen and (min-width: 992px) {
    #main-section-services h2 {
        gap: 1rem;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 256px;
        flex: 0 0 256px
    }
}

#main-section-services h2::before {
    content: '';
    display: block;
    height: 1.7rem;
    width: 13px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 13px;
    flex: 0 0 13px;
    background-image: url("data:image/svg+xml,%3Csvg width='13' height='16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7.1 0H.3C.1 0 0 .2 0 .4l4.7 15.2c0 .2.2.4.5.4H12c.2 0 .3-.2.3-.4L7.6.4c0-.2-.2-.4-.5-.4Z' fill='%23E30613'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: left center
}

#main-section-services p {
    color: var(--cads-grey, #555454);
    font-size: 1rem
}

#main-section-services .section_services {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-top: 2rem
}

@media screen and (min-width: 992px) {
    #main-section-services .section_services {
        width: 600px;
        margin-top: 3rem
    }
}

@media screen and (min-width: 1220px) {
    #main-section-services .section_services {
        width: 660px
    }
}

#main-section-services .section_services-service {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 1.25rem
}

@media screen and (min-width: 992px) {
    #main-section-services .section_services-service {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        gap: 2rem
    }
}

#main-section-services .section_services-service:not(:last-of-type) {
    padding-bottom: 1.5rem;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid var(--greyee, #eee)
}

@media screen and (min-width: 992px) {
    #main-section-services .section_services-service:not(:last-of-type) {
        padding-bottom: 2rem;
        margin-bottom: 2rem
    }
}

@media screen and (max-width: 991px) {

    #main-section-story h1,
    #main-section-mission h1,
    #main-section-services h1 {
        height: 10rem;
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        padding: 1.5rem 1rem;
        background: #bebebe;
        border-radius: var(--radius-sm, 0.75rem);
        color: var(--pure-white, #fff);
        background-position: center;
        background-size: cover;
        background-repeat: no-repeat;
        margin: 0 0 2rem;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none
    }

    #main-section-story h1::before,
    #main-section-mission h1::before,
    #main-section-services h1::before {
        content: '';
        display: block;
        position: absolute;
        top: 50%;
        left: 0;
        right: 0;
        bottom: 0;
        border-radius: 0px 0px var(--radius-sm, 0.75rem) var(--radius-sm, 0.75rem);
        background: -webkit-gradient(linear, left bottom, left top, from(#000), to(rgba(0, 0, 0, 0)));
        background: -o-linear-gradient(bottom, #000 0%, rgba(0, 0, 0, 0) 100%);
        background: linear-gradient(0deg, #000 0%, rgba(0, 0, 0, 0) 100%);
        z-index: 10
    }

    #main-section-story h1::after,
    #main-section-mission h1::after,
    #main-section-services h1::after {
        content: '';
        display: block;
        position: absolute;
        z-index: 30;
        top: -0.75rem;
        right: 0.75rem;
        width: 44px;
        height: 66px;
        background-image: url("data:image/svg+xml,%3Csvg width='44' height='66' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M19.5 23.8H1.8c-.6 0-1 .6-.8 1.1l12 40c.2.7.8 1.1 1.4 1.1h17.8c.5 0 1-.5.8-1L20.9 24.7c-.2-.6-.8-1-1.4-1Z' fill='%23fff'/%3E%3Cpath d='M25 12H7.3c-.6 0-1 .5-.8 1l12 40c.2.7.8 1 1.4 1h17.8c.5 0 1-.5.8-1L26.4 13c-.2-.7-.8-1-1.4-1Z' fill='%23555454'/%3E%3Cpath d='M30.5 0H12.8c-.6 0-1 .5-.8 1l12 40.2c.2.6.8 1 1.4 1h17.8c.5 0 1-.6.8-1.1L31.9 1C31.7.3 31 0 30.5 0Z' fill='%23E30613'/%3E%3C/svg%3E")
    }

    #main-section-story h1 span,
    #main-section-mission h1 span,
    #main-section-services h1 span {
        position: relative;
        z-index: 15
    }

    #main-section-story {
        border-bottom: 1px solid var(--greyee, #eee)
    }

    #main-section-story h1 {
        background-image: url("../images/story.jpg")
    }

    #main-section-mission h1 {
        background-image: url("../images/mission.jpg")
    }

    #main-section-services h1 {
        background-image: url("../images/services.jpg")
    }
}

#main-section-verticals {
    scroll-margin-top: 4rem
}

@media screen and (min-width: 992px) {
    #main-section-verticals {
        scroll-margin-top: 5.625rem
    }
}

@media screen and (max-width: 991px) {
    #main-section-verticals h1 {
        margin-bottom: calc(1.25rem - 0.075em)
    }
}

#main-section-verticals h1+p {
    max-width: 46ch;
    font-size: 1.125rem
}

#main-section-verticals .section_verticals {
    display: grid;
    margin-top: 2rem;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
    grid-column-gap: 2rem;
    grid-row-gap: 2rem
}

@media screen and (min-width: 992px) {
    #main-section-verticals .section_verticals {
        margin-top: 3rem;
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: 1fr;
        grid-column-gap: 3rem;
        grid-row-gap: 3rem
    }
}

@media screen and (min-width: 1220px) {
    #main-section-verticals .section_verticals {
        grid-template-columns: repeat(3, 1fr)
    }
}

#main-section-verticals .section_verticals .section_verticals-vertical {
    position: relative
}

#main-section-verticals .section_verticals .section_verticals-vertical h2 {
    color: var(--cads-grey, #555454);
    font-size: 1.5rem;
    margin-bottom: 1.25rem
}

@media screen and (min-width: 992px) {
    #main-section-verticals .section_verticals .section_verticals-vertical h2 {
        margin-bottom: 1.5rem
    }
}

@media screen and (min-width: 1220px) {
    #main-section-verticals .section_verticals .section_verticals-vertical h2 {
        font-size: 2rem
    }
}

#main-section-verticals .section_verticals .section_verticals-vertical p {
    color: var(--cads-grey, #555454);
    font-size: 1rem
}

footer #footer-main {
    scroll-margin-top: 4rem;
    background: url("../images/footer_bg.png") var(--cads_grey, #555454);
    -webkit-box-shadow: 0px 0px 160px 0px rgba(0, 0, 0, 0.25) inset;
    box-shadow: 0px 0px 160px 0px rgba(0, 0, 0, 0.25) inset;
    padding: 2rem 0;
    color: var(--pure-white, #fff)
}

@media screen and (min-width: 992px) {
    footer #footer-main {
        scroll-margin-top: 5.625rem
    }
}

@media screen and (min-width: 992px) {
    footer #footer-main {
        padding: 5.625rem 0
    }
}

footer #footer-main #footer-main-grid {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(2, auto);
    grid-column-gap: 2rem;
    grid-row-gap: 2rem
}

@media screen and (min-width: 992px) {
    footer #footer-main #footer-main-grid {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: 1fr;
        grid-column-gap: 3rem;
        grid-row-gap: 3rem
    }
}

@media screen and (min-width: 1220px) {
    footer #footer-main #footer-main-grid {
        grid-template-columns: repeat(3, 1fr);
        grid-template-rows: 1fr;
        grid-column-gap: 2rem;
        grid-row-gap: 2rem
    }
}

footer #footer-main #footer-text {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

@media screen and (min-width: 992px) {
    footer #footer-main #footer-text {
        grid-area: 1 / 1 / 2 / 2
    }
}

@media screen and (min-width: 1220px) {
    footer #footer-main #footer-text {
        grid-area: 1 / 1 / 2 / 3
    }
}

footer #footer-main #footer-text h1 {
    font-weight: 600;
    max-width: 20ch;
    font-size: 1.5rem
}

@media screen and (max-width: 991px) {
    footer #footer-main #footer-text h1 {
        margin-bottom: calc(1.25rem - 0.075em)
    }
}

@media screen and (min-width: 992px) {
    footer #footer-main #footer-text h1 {
        font-size: 2rem
    }
}

@media screen and (min-width: 1220px) {
    footer #footer-main #footer-text h1 {
        font-size: 3rem
    }
}

footer #footer-main #footer-text h2 {
    font-weight: 300;
    letter-spacing: 0;
    max-width: 32ch;
    line-height: 1.2;
    margin-bottom: calc(0em - 0.075em);
    font-size: 1.25rem
}

@media screen and (min-width: 992px) {
    footer #footer-main #footer-text h2 {
        font-size: 1.5rem
    }
}

footer #footer-main #footer-contact-card {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 1.5rem;
    border-radius: var(--radius-sm, 0.75rem);
    border-top: 1px solid rgba(255, 255, 255, 0.25);
    background: rgba(85, 84, 84, 0.1);
    -webkit-box-shadow: 0px 0px 5px 0px rgba(255, 255, 255, 0.1) inset, 0px 0px 100px 0px rgba(255, 255, 255, 0.05) inset, 0px 4px 4px 0px rgba(0, 0, 0, 0.25), 0px 100px 80px 0px rgba(0, 0, 0, 0.07), 0px 46.233px 36.986px 0px rgba(0, 0, 0, 0.05), 0px 26.453px 21.163px 0px rgba(0, 0, 0, 0.04), 0px 16.057px 12.846px 0px rgba(0, 0, 0, 0.04), 0px 9.675px 7.74px 0px rgba(0, 0, 0, 0.03), 0px 5.388px 4.31px 0px rgba(0, 0, 0, 0.03);
    box-shadow: 0px 0px 5px 0px rgba(255, 255, 255, 0.1) inset, 0px 0px 100px 0px rgba(255, 255, 255, 0.05) inset, 0px 4px 4px 0px rgba(0, 0, 0, 0.25), 0px 100px 80px 0px rgba(0, 0, 0, 0.07), 0px 46.233px 36.986px 0px rgba(0, 0, 0, 0.05), 0px 26.453px 21.163px 0px rgba(0, 0, 0, 0.04), 0px 16.057px 12.846px 0px rgba(0, 0, 0, 0.04), 0px 9.675px 7.74px 0px rgba(0, 0, 0, 0.03), 0px 5.388px 4.31px 0px rgba(0, 0, 0, 0.03);
    -webkit-backdrop-filter: blur(2px);
    backdrop-filter: blur(2px)
}

@media screen and (min-width: 992px) {
    footer #footer-main #footer-contact-card {
        padding: 2rem;
        grid-area: 1 / 2 / 2 / 3
    }
}

@media screen and (min-width: 1220px) {
    footer #footer-main #footer-contact-card {
        grid-area: 1 / 3 / 2 / 4
    }
}

@media screen and (min-width: 992px) {
    footer #footer-main #footer-contact-card {
        border-radius: var(--radius-md, 1rem)
    }
}

footer #footer-main #footer-contact-card #footer-contact-text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    font-size: 0.875rem;
    line-height: 1.25;
    gap: 0.5rem
}

footer #footer-main #footer-contact-card #footer-contact-text b {
    font-size: 1rem
}

@media screen and (min-width: 992px) {
    footer #footer-main #footer-contact-card #footer-contact-text {
        gap: 0.875rem
    }
}

footer #footer-main #footer-contact-card #footer-contact-links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1rem
}

@media screen and (min-width: 992px) {
    footer #footer-main #footer-contact-card #footer-contact-links {
        gap: 1.5rem
    }
}

footer #footer-main #footer-contact-card #footer-contact-links a svg {
    display: block
}

footer #footer-main #footer-logo-lines {
    position: absolute;
    left: 12rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: auto;
    height: calc(100% + 2rem)
}

footer #footer-main #footer-logo-lines path {
    stroke-dasharray: 8px 8px
}

@media screen and (max-width: 360px) {
    footer #footer-main #footer-logo-lines {
        left: unset;
        right: 0
    }
}

@media screen and (min-width: 992px) {
    footer #footer-main #footer-logo-lines {
        height: 308px;
        left: 83px
    }

    footer #footer-main #footer-logo-lines path {
        stroke-dasharray: 16px 16px
    }
}

@media screen and (min-width: 1220px) {
    footer #footer-main #footer-logo-lines {
        left: 343px
    }
}

footer #footer-copyright .container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-top: 2rem;
    padding-bottom: 2rem;
    gap: 1rem
}

footer #footer-copyright p {
    font-size: 0.875rem
}