@charset "UTF-8";
@font-face {
    font-family: Roboto;
    src: url(font/Roboto-Regular.ttf);
    font-weight: 400;
    font-display: swap
}

@font-face {
    font-family: Roboto;
    src: url(font/Roboto-Medium.ttf);
    font-weight: 500;
    font-display: swap
}

@font-face {
    font-family: Roboto;
    src: url(font/Roboto-Bold.ttf);
    font-weight: 700;
    font-display: swap
}

html {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-family: Roboto, sans-serif;
    font-weight: 400;
    font-style: normal
}

body {
    font-size: 16px;
    margin: 0;
    padding: 0;
    font-family: Roboto, Arial, Helvetica, sans-serif
}

a {
    color: #000;
    text-decoration: none;
    cursor: pointer;
    -webkit-transition: .2s ease;
    transition: .2s ease;
    outline: 0
}

p {
    line-height: 1.6rem;
    padding: 0;
    margin: 0
}

.heading {
    font-weight: 700;
    margin: 0;
    padding: 0;
    font-size: 4rem;
    line-height: 5rem;
    width: 100%
}

.heading-sub {
    display: block
}

.heading-1_home {
    color: #fff;
    font-size: 4.8rem;
    line-height: 1.2;
    margin-top: 7rem
}

.heading-2 {
    padding-top: 3rem;
    padding-bottom: 1.25rem
}

.heading-3 {
    position: relative;
    margin-bottom: 2rem;
    padding: .5rem 0;
}

.heading-3:after {
    background: #000;
    content: "";
    position: absolute;
    height: 1px;
    width: 130px;
    left: 0;
    top: 100%;
}

.heading-small {
    font-size: .875rem;
    font-weight: 700;
    line-height: 1.1rem;
    margin-bottom: 1.635rem
}

.heading-img {
    padding-top: 4rem
}
.heading-data {
    font-size: 1.15rem;
    line-height: 1.2;
}
.span-block {
    display: block
}

.span-bold {
    font-weight: 700
}

.resp-break {
    display: initial;
    font-weight: 700
}

.header {
    padding: 26px;
    position: relative;
    height: 100vh;
    background: #000 url("img/hero-desktop.webp") center no-repeat;
    border: 20px solid #fff;
}

.header .error-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    flex-flow: column;
    color: #fff
}

.header .error-wrap .logo-wrap .svg-fill {
    fill: #fff
}

.header .error-wrap .nav-main-list_li {
    padding-left: 0
}

.header .content {
    padding-top: 0;
    padding-bottom: 0
}

.header .content.open {
    padding: 1.5rem
}

.header-main {
    height: 100%;
    position: relative;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat
}

.header-home .content {
    padding: 1.5rem 2.5rem;
}

.header-bg {
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: -100;
    left: 0;
    top: 0;
    background: url('img/hero-desktop.webp');
    overflow: hidden;
    display: none;
}

.header-main_arrow {
    display: none
}

.header-con {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap
}

.header-con_link {
    width: 100%;
    justify-content: space-between;
    display: flex;
    padding: 0;
    margin-bottom: 6rem
}

.header-con_link a {
    color: #fff;
    font-weight: bold;
    position: relative;
    padding: .82rem 0;
}

.header-con_link a:before, .header-con_link a:after {
    background: #fff;
    content: "";
    position: absolute;
    height: 2px;
    width: 130px;
    left: 0;
    top: 100%;
}

.header-con_link a:after {
    width: 0;
    transition: all .45s;
}

.header-con_link a:hover:after {
    width: 130px;
}

.header-con_link a:hover:before {
    display: none;
}

.header-diff {
    background: none;
    height: auto;
    border: none;
    color: #000;
}
.header-diff .nav-main-wrap {
    padding-top: 2rem;
}

.header-diff * {
    color: #000;
}
.header-diff .nav-main-list_li a {
    color: #000;
}
.header-diff .nav-main-list_li a::after {
    background: #000;
}
.header-diff .nav-main-wrap .logo-wrap svg {
    fill: #000;
}
.header-text {
    font-size: 1.3rem;
    max-width: 800px;
    width: 100%;
    padding-bottom: 3rem
}

.content {
    max-width: 1290px;
    margin: auto;
    padding: 1.5rem 3.5rem
}

.content-pad {
    padding-top: 6rem;
    padding-bottom: 8rem
}

.logo-wrap {
    width: 100%;
    max-width: 90px;
    height: auto;
    display: block
}

.txt {
    margin: 0;
    padding: 0;
    padding-bottom: .635rem
}

.txt-grey {
    color: #606060;
    line-height: 1.1rem;
    font-size: .875rem;
    padding-bottom: .635rem
}

.txt-grey.pad {
    padding-top: 1rem
}

.txt-grey b {
    font-weight: bold;
}

.txt-black {
    color: #000
}

.txt-bold {
    font-weight: 700
}

.txt-highlight {
    font-size: 1.4rem;
    line-height: 1.8rem;
    padding-bottom: 1rem;
    padding-top: .265rem
}

.txt-white {
    color: #fff
}

.txt-small {
    font-size: .9rem;
    color: #b3b3b3
}

.txt-link {
    display: block;
    color: #606060;
    padding: .2rem 0;
    margin: .2rem 0;
}

.link-grey {
    color: #b3b3b3;
    line-height: 1.1rem;
    font-size: .875rem;
    display: block;
    -webkit-transition: .2s ease-out;
    transition: .2s ease-out
}

.link-grey:hover {
    color: #000
}

.link-basic {
    color: #606060;
    -webkit-transition: .2s ease-out;
    transition: .2s ease-out
}

.link-basic:hover {
    color: #000
}

.link-basic-2 {
    color: #606060;
    -webkit-transition: .2s ease-out;
    transition: .2s ease-out;
    text-decoration: underline
}

.link-basic-2:hover {
    color: #000
}

.link-highlight {
    position: relative
}

.link-highlight::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 0;
    height: 1px;
    background: #000;
    -webkit-transition: .4s ease-out;
    transition: .4s ease-out
}

.link-highlight:hover::after {
    width: 100%
}

.link-highlight.white {
    color: #fff
}

.link-highlight.white::after {
    content: "";
    height: 1px;
    background: #fff
}

.link-back {
    font-weight: 700;
    padding-right: 2rem;
    position: relative
}

.link-back:after {
    height: 2px
}

.link-back:hover::after {
    width: 128px
}

.link-back:hover::before {
    display: none
}

.img-wrap {
    overflow: hidden
}

.img-wrap img {
    width: 100%;
    height: auto
}

.img-wrap-logo {
    width: auto;
    height: 25px;
    margin-bottom: 2rem
}

.img-wrap-logo img {
    height: 100%;
    width: initial
}

.img-wrap-topic {
    width: 100%
}

.flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap
}

.flex-wrap {
    flex-flow: row wrap !important
}

.flex-item_20 {
    width: 25%
}

.flex-item_30 {
    width: 30%
}

.flex-item_50 {
    width: 50%
}

.flex-item_70 {
    width: 70%
}

.flex-item_80 {
    width: 75%
}

.flex-item_100 {
    width: 100%
}

.flex-space {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.flex-space-vert {
    -ms-flex-line-pack: justify;
    align-content: space-between
}

.topic {
    padding-bottom: 15rem
}

.topic:last-of-type {
    padding-bottom: 0
}

.topic-end {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row;
    flex-flow: row
}

.topic-nine {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.topic-nine .flex-item_30 {
    width: 30%;
    padding-bottom: 5rem
}

.topic-nine .flex-item_30.nopad {
    padding-bottom: 0
}

.topic-nine .heading-3 {
    font-size: 2rem;
    line-height: 2.4rem;
    padding-top: 0
}

.topic-nine .heading-3:after {
    display: none
}

.topic .flex-space-vert {
    min-height: 115px
}

.topic_last-row {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.topic-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    width: 45%
}

.topic-box-wrap {
    width: 100%;
    max-width: 1000px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.topic-box_last {
    padding-top: 12.5rem
}

.topic-box_last .topic-text:last-child {
    padding-bottom: 0
}

.topic-box-full {
    width: 100%
}

.topic-text {
    max-width: 380px;
    padding-bottom: 6.25rem;
    padding-top: 3rem;
    width: 100%
}

.topic-text.dif {
    padding-bottom: 0
}

.topic-text.last {
    padding-bottom: 0
}

.topic-text .txt-grey:last-child {
    padding-bottom: 0
}

.topic-site {
    max-width: 175px;
    width: 100%;
    padding-top: 3rem
}

.topic-site .button {
    margin-top: 1rem;
    display: block
}

.topic-dif .topic-end {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row;
    flex-flow: row
}

.topic-dif .topic-box_first {
    width: 45%
}

.topic-dif .topic-box_last {
    width: 55%;
    padding-left: 100px
}

.main {
    margin: auto;
    padding-top: 10rem;
    padding-bottom: 8rem
}

.main-pt1 {
    padding-bottom: 0
}

.main-pt2 {
    padding-top: 0;
    padding-bottom: 7.5rem
}

.main-404 {
    padding-top: 5rem
}

.main-home .flex-item_20 {
    width: 20%
}

.main-home .flex-item_80 {
    width: 80%
}

.main-dif {
    padding-top: 3.5rem
}

.pad-top_1 {
    padding-top: 2rem
}

.mar-top {
    margin-top: 12rem
}

.pad-top {
    padding-top: .3rem
}

.marg-bot {
    margin-top: 2rem
}

.form {
    max-width: 380px;
    width: 100%;
    margin-top: 5rem
}

.form #formbuilder_captcha_element, .form-error {
    width: 100%;
    display: block;
    margin-top: -15px;
    margin-bottom: 20px;
    font-size: .8rem;
    color:#a25454
}
#formbuilder_error_privacypolicy {
    margin-top: 5px;
}
.form-success {
    top: -35px;
    left: 0;
    font-size: 1rem;
    z-index: 10;
    font-weight: 700;
    width: 100%;
    position: absolute
}

.form-checkbox:checked:before {
    background: url(img/check.svg);
    position: absolute;
    margin: auto;
    width: 10px;
    height: 10px;
    content: "";
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    outline: 0;
    cursor: pointer;
    background-repeat: no-repeat
}

.form-checkbox {
    -webkit-appearance: none;
    border: 1px solid #6B6B6B;
    width: 24px;
    height: 24px;
    margin: auto;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    cursor: pointer;
    outline: 0;
    padding: .5rem
}

.form-checkbox-wrap {
    margin-bottom: 1rem;
    margin-top: 1rem
}

.form-checkbox-label {
    color: #6B6B6B;
    display: block;
    cursor: pointer;
    font-size: .8rem;
    position: relative;
    padding-left: 2.3rem
}

.form-checkbox-label a {
    color: #000;
    text-decoration: underline;
}

.form-checkbox-label a:hover {
    color: #6B6B6B
}

.form-input, .form-text {
    transition: .2s width;
    padding: .5rem 0;
    border: none;
    font-size: 1rem;
    outline: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    border-radius: 0
}

.form-input:focus, .form-input:hover, .form-text:focus, .form-text:hover {
    outline: 0
}

.form-input::-webkit-input-placeholder, .form-text::-webkit-input-placeholder {
    font-size: .875rem;
    color: #6B6B6B
}

.form-input::-moz-placeholder, .form-text::-moz-placeholder {
    font-size: .875rem;
    color: #6B6B6B
}

.form-input:-ms-input-placeholder, .form-text:-ms-input-placeholder {
    font-size: .875rem;
    color: #6B6B6B
}

.form-input::-ms-input-placeholder, .form-text::-ms-input-placeholder {
    font-size: .875rem;
    color: #6B6B6B
}

.form-input::placeholder, .form-text::placeholder {
    font-size: .875rem;
    color: #6B6B6B
}

.form-input {
    width: 100%;
    margin-bottom: 1.2rem
}

.form-captcha {
    margin-bottom: 1.5rem;
    margin-top: 1rem
}

.form-text {
    width: 100%;
    border-radius: 0;
    height: 80px;
    resize: none;
    overflow: auto;
    max-height: 80px;
    min-height: 80px;
    outline: 0
}

.form-text::-webkit-input-placeholder {
    font-size: .875rem;
    color: #6B6B6B
}

.form-text::-moz-placeholder {
    font-size: .875rem;
    color: #6B6B6B
}

.form-text:-ms-input-placeholder {
    font-size: .875rem;
    color: #6B6B6B
}

.form-text::-ms-input-placeholder {
    font-size: .875rem;
    color: #6B6B6B
}

.form-text::placeholder {
    font-size: .875rem;
    color: #6B6B6B
}

.form-label {
    font-weight: 500;
    position: relative;
    display: block;
    width: 100%;
    color: #6B6B6B;
}

#formbuilder_error_message {
    margin-top: 0;
}

.form-label:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: -3px;
    width: 100%;
    height: 1px;
    background: #b3b3b3;
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out
}

.form-label:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -3px;
    width: 0;
    height: 1px;
    background: #000;
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out
}

.form-label:hover::after {
    width: 100%
}

.form-label:focus-within:after {
    content: "";
    width: 100%
}

.form-button_submit {
    cursor: pointer;
    border: none;
    outline: 0;
    background-color: #000;
    color: #fff;
    font-weight: 500;
    padding: 13px 20px;
    font-size: 14px;
    margin-top: .5rem;
    transition: .2s ease;
    align-self: center;
    text-align: center
}

.form-button_submit:hover {
    background: #3e3e3e
}

.form-row-100 {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative
}

.form-row-50 {
    width: 47%
}

.form-row-wrap {
    width: 100%;
    position: relative
}

.form-row-label {
    width: 100%
}

.footer {
    color: #b3b3b3;
    font-size: 14px;
    border-top: 1px solid #b3b3b3;
    padding-top: 4rem;
    padding-bottom: 4rem;
    line-height: 1.15
}

.footer .content {
    padding-top: 0;
    padding-bottom: 0;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-right: 200px
}

.footer-bottom {
    position: absolute;
    bottom: 0;
    width: 100%
}

.footer .logo-wrap {
    padding-bottom: 1.5rem
}

.footer .logo-wrap .svg-fill path, .footer .logo-wrap .svg-fill polygon {
    fill: #000
}

.footer .txt-grey {
    list-style: none;
    padding: 0 0 .75rem 0;
    color: #606060;
    font-size: 14px;
    line-height: 1.1
}

.footer .txt-grey.short {
    max-width: 300px;
    width: 100%
}

.footer-ul {
    list-style: none;
    padding: 0;
    margin: 0
}

.footer-ul a, .footer-ul li {
    color: #606060;
    font-weight: 700;
    margin-bottom: .8rem;
    font-size: .75rem
}

.footer-ul a:hover, .footer-ul li:hover {
    color: #606060
}

.footer .link-grey {
    color: #606060;
    font-weight: 400;
    text-decoration: none;
    font-size: .75rem;
    margin: 0;
    padding: 0
}

.footer .link-grey:hover {
    color: #606060
}

.footer .link-basic {
    color: #606060
}

.footer .link-basic:hover {
    color: #606060
}

.display-none {
    display: none
}

.data .data-text {
    padding-bottom: 1rem
}
.data .txt-link{
    color: #000;
    position: relative;
    top: -5px;
}
.data .data-text h2 {
    font-size: 1.3rem;
    padding-bottom: .3rem;
    color: #606060;
    margin-bottom: 0;
    font-weight: 700;
    margin-top: 0
}

.data .data-text h3 {
    color: #606060;
    font-size: 1.1rem;
    margin: 0;
    padding: .5rem 0
}

.data .data-text-ul {
    color: #606060;
    line-height: 1.1rem;
    font-size: .875rem;
    padding-bottom: .635rem;
    padding-left: 1rem
}

.data .data-text.last {
    padding-bottom: 0
}

.data button {
    cursor: pointer;
    border: none;
    outline: 0;
    background-color: #000;
    color: #fff;
    padding: 13px 20px;
    margin-left: 0 !important;
    font-size: 16px;
    -webkit-transition: .2s ease;
    transition: .2s ease
}

.data-button-top {
    display: block;
}

.data button:hover {
    background: #3e3e3e
}

.data-button-top {
    margin-left: 1rem !important;
    margin-top: 1rem !important;
    cursor: pointer
}

.button {
    width: fit-content;
    display: block;
    line-height: 1;
    cursor: pointer;
    outline: 0;
    background-color: #000;
    color: #fff;
    padding: 13px 20px;
    margin-left: 0 !important;
    font-size: 14px;
    -webkit-transition: .2s ease;
    transition: .2s ease;
    vertical-align: middle;
    align-self: center;
    border: 1px solid #000
}

.button:hover {
    background: #3e3e3e;
    border: 1px solid #3e3e3e
}

.button.sek {
    font-size: 14px;
    color: #000;
    border: 1px solid #000;
    background-color: initial
}

.button.sek:hover {
    border: 1px solid #606060;
    color: #606060
}

.button.top {
    margin-top: 1.5rem
}

.project {
    width: 100%;
    max-width: 30%;
    margin-bottom: 5rem
}

.project-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.project .img-wrap {
    margin-bottom: 2rem
}

.project:nth-last-child(-n+3) {
    margin-bottom: 0
}

.box-order-wrap {
    display: grid;
    grid-template-columns:.9fr 1.1fr;
    grid-template-rows:auto .9fr;
    gap: 0 0;
    grid-template-areas:"box-order-1 box-order-2" "box-order-3 box-order-2"  "box-order-3 box-order-4";
    justify-items: end;
    max-width: 1000px
}

.box-order-1 {
    grid-area: box-order-1;
    width: 100%
}

.box-order-2 {
    grid-area: box-order-2;
    padding: 12.5rem 0 15px 100px;
    width: 100%
}
.box-order-small {
    grid-area: inherit;
}
.box-order-3 {
    grid-area: box-order-3;
    width: 100%
}
.box-order-4 {
    grid-area: box-order-4;
    width: 100%
}
.m-width {
    max-width: 450px;
    margin: 0 0 0 auto;
    display: block;
}
.grecaptcha-badge {
    opacity: 0;
    width: 0 !important
}

.port .project {
    width: 30%;
    margin-bottom: 4rem
}

.port .project .img-wrap {
    margin-bottom: 0;
    height: 100%;
    max-height: 530px
}

.port .project .img-wrap img {
    -o-object-fit: cover;
    object-fit: cover
}

.port .project .img-wrap video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.port-mov {
    width: 100%;
    height: 100%;
    background: url(img/portfolio/LRD.mp4) center no-repeat;
    background-size: cover;
    -o-object-fit: cover;
    object-fit: cover
}

.cm-btn.cm-btn-success {
    font-size: 13px !important;
    padding: 13px 20px !important;
    border: 1px solid #000 !important
}

.cm-link.cn-learn-more {
    color: #000 !important;
    border: 1px solid #000;
    background-color: initial;
    font-size: 13px !important;
    padding: 13px 20px
}

.cross span {
    position: absolute;
    bottom: 0
}

.fixed {
    position: fixed;
    left: 0;
    right: 0
}

.cross {
    position: absolute;
    z-index: 2;
    cursor: pointer;
    right: 1rem;
    top: 1.1rem;
    width: 17px;
    height: 17px
}

.cross span {
    display: block;
    background: #bfbfbf;
    border-radius: 10px;
    height: 3px;
    width: 100%;
    top: 7px;
    left: 0;
    right: 0
}

.cross span:first-child {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.cross span:nth-child(2) {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.mwidth {
    width: 100%;
    max-width: 930px;
    margin: 3rem 0 0 auto
}

.nav-sub {
    font-size: .9rem;
    color: #aaa
}

.nav-sub a {
    color: #aaa
}

.nav-sub a:hover {
    color: #606060
}

.nav-main-list_li a.link-switch {
    padding-left: 2rem;
    position: relative
}

.nav-main-list_li a.link-switch:before {
    content: "|";
    position: absolute;
    left: 0
}

.nav-main-list_li a.link-switch:after {
    left: 2rem
}

.nav-main-list_li a.link-switch:hover:after {
    left: 2rem;
    width: 17px
}

.career-buttons {
    margin-top: 1.5rem
}

.career-buttons .button.sek {
    font-size: 14px;
    margin-left: .7rem !important
}

.heading-sub.heading-3 {
    font-size: 3rem;
    line-height: 1.2
}

.book-now {
    background: 0 0;
    border: none;
    cursor: pointer;
    padding: 0;
    color: #a6a6a6;
    margin-top: 1.5rem;
    text-decoration: underline
}

.nav-main {
    overflow: hidden;
    width: 100%;
    z-index: 15;
    top: 0;
    left: 0;
    right: 0;
    -webkit-transition: .5s ease;
    transition: .5s ease;
    position: absolute
}

.nav-main-wrap {
    padding: 6rem 3.5rem 0;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    margin: auto;
    z-index: 5;
    max-width: 1290px;
    -webkit-transition: .2s ease;
    transition: .2s ease
}

.nav-main-wrap .logo-wrap {
    z-index: 10;
    height: 30px
}

.nav-main-wrap .logo-wrap svg {
    fill: #fff;
    vertical-align: -webkit-baseline-middle
}

.nav-main-all {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row;
    flex-flow: row
}

.nav-main-list {
    margin: 0;
    padding: 0;
    list-style: none
}

.nav-main-list_li {
    padding-left: 2rem
}

.nav-main-list_li a {
    color: #fff;
    font-weight: 500;
    font-size: .95rem;
    position: relative
}

.nav-main-list_li a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -3px;
    width: 0;
    height: 1px;
    background: #fff;
    -webkit-transition: .4s ease-out;
    transition: .4s ease-out
}

.nav-main-list_li a:hover::after {
    width: 100%
}

.nav-main.fixed {
    background: #fff;
    position: fixed;
    -webkit-transition: .5s ease;
    transition: .5s ease
}

.nav-main.fixed.is-hidden {
    opacity: 0;
}

.nav-main.fixed.is-visible {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    -webkit-transition: -webkit-transform .2s, background .3s, color .3s
}

.nav-main.fixed .nav-main-wrap {
    padding-top: 1.375rem;
    padding-bottom: 1.375rem;
    -webkit-transition: .5s ease;
    transition: .5s ease
}

.nav-main.fixed .nav-main-wrap .logo-wrap {
    -webkit-transition: .5s ease;
    transition: .5s ease
}

.nav-main.fixed .nav-main-wrap .logo-wrap svg {
    fill: #000
}

.nav-main.fixed .nav-main-wrap .nav-main-list_li {
    color: #000
}

.nav-main.fixed .nav-main-wrap .nav-main-list_li a {
    color: #000
}

.nav-main.fixed .nav-main-wrap .nav-main-list_li a::after {
    content: "";
    background: #000
}

.nav-main.fixed .burger-span {
    background: #000
}

.nav-main .burger {
    width: 16px;
    position: relative;
    cursor: pointer;
    display: none
}

.nav-main .burger-span {
    width: 100%;
    height: 1px;
    background: #fff;
    margin: 4px auto;
    display: block;
    -webkit-transition: .2s ease;
    transition: .2s ease
}

.desc {
    position: relative;
    font-weight: 500;
    padding: .5rem 0;
}

.desc:after {
    background: #000;
    content: "";
    position: absolute;
    height: 2px;
    width: 130px;
    left: 0;
    top: 100%;
}

.flex-images {
    display: flex;
    width: 100%;
    flex-flow: row wrap;
    justify-content: space-between;
}

.flex-images_content {
    width: 30%;
}

.flex-images_content img {
    margin-bottom: 2rem;
    max-height: 900px;
    width: 100%;
    height: auto;
    object-fit: cover;
}

.site-text-ul {
    color: #606060;
    line-height: 1.1rem;
    font-size: .875rem;
    padding-bottom: .635rem;
}

.header-con_white-text {
    margin-bottom: 5rem;
    margin-top: 2rem;
    max-width: 480px;
    color: #fff;
}
.header-con_white-text a {
    color: #fff;
    text-decoration: underline;
    font-weight: 500;
}
.header-con_white-text p {
    margin: 1rem 0;
}
@media (max-width: 1200px) {
    .resp-break {
        display: block
    }

    .resp-break:after {
        content: "-"
    }

    .header {
        padding: initial
    }

    .nav-main-wrap {
        padding: 6rem 1.87rem 0;
        max-width: 970px
    }

    .content {
        padding-right: 1.87rem;
        padding-left: 1.87rem;
        max-width: 970px
    }

    .lp-grid {
        min-height: calc(970px - 3.74rem)
    }

    .topic-box-wrap {
        max-width: 100%
    }

    .topic-box-wrap .topic-box {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start
    }

    .topic-nine .flex-item_30 {
        width: 28%
    }

    .topic-nine .flex-item_30.nopad {
        padding-bottom: 4rem
    }

    .topic-dif .topic-end {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap
    }

    .topic-end {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap
    }

    .heading-1 {
        font-size: 3rem;
        line-height: 4rem
    }

    .heading-1_home {
        font-size: 4.5rem;
        line-height: 1.05
    }

    .topic-site {
        max-width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-flow: column;
        flex-flow: column;
        -ms-flex-line-pack: end;
        align-content: flex-end;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end
    }

    .topic-site .txt-grey {
        width: 100%
    }

    .footer .content {
        padding: 0 1.87rem;
    }
}

@media (max-width: 991px) {
    .box-order-wrap {
        display: grid;
        grid-template-columns:.9fr 1.1fr;
        /*grid-template-rows:.1fr .1fr;*/
        gap: 0 0;
        grid-template-areas:"box-order-1 box-order-2" "box-order-3 box-order-2";
        justify-items: end
    }

    .box-order-2 {
        padding-left: 50px
    }

    .topic-site {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    .topic-site .txt-grey {
        max-width: 100%
    }

    .heading-2 {
        font-size: 3rem;
        line-height: 3.8rem
    }

    .content, .nav-main-wrap {
        max-width: 750px
    }

    .lp-grid {
        min-height: calc(750px - 3.74rem)
    }

    .lp .label-2, .lp .pic-1 .label-2, .lp .pic-3 .label-2, .lp .pic-4 .label-2 {
        bottom: 1rem;
        right: 1rem;
        font-size: .9rem;
        padding: .5rem 1rem
    }

    .lp .pic-1 .label {
        top: 10%
    }

    .lp .pic-1 .label-2 {
        top: initial
    }

    .data p a {
        word-break: break-all
    }

    .topic-box-wrap {
        max-width: 100%
    }

    .topic-nine .flex-item_30 {
        width: 27%
    }

    .topic-dif .topic-box_last {
        padding-left: 50px
    }

    .footer .contact-det {
        display: none
    }

    .footer .content {
        -webkit-box-pack: initial;
        -ms-flex-pack: initial;
        justify-content: initial
    }

    .footer-part_w40 {
        width: 29%;
        padding-bottom: .6rem;
        padding-top: .6rem
    }

    .footer-part .txt-grey {
        padding-bottom: .625rem
    }

    .footer-part .txt-grey.short {
        max-width: initial;
        width: 100%
    }

    .footer-part:last-of-type {
        width: 100%
    }

    .header .content {
        -ms-flex-line-pack: center;
        align-content: center
    }

    .header .heading-1_home {
        color: #fff;
        margin-top: 0;
        margin-bottom: 10rem;
    }

    .content.header-con {
        padding-bottom: 6rem;
        padding-top: 15rem;
    }

    .mwidth .txt-grey {
        margin-bottom: 4rem
    }

    .header {
        border: none;
    }

    .topic {
        padding-bottom: 10rem;
    }
}

@media (max-width: 991px) and (min-width: 768px) {
    .career-buttons {
        display: block
    }

    .career-buttons .button {
        width: 100%;
        text-align: center;
        max-width: 200px
    }

    .career-buttons .button.sek {
        margin-left: 0 !important;
        margin-top: .6rem
    }
}

@media (max-width: 960px) {
    .nav-main-wrap {
        padding: 3rem 1.87rem 0
    }
}

@media (max-width: 767px) {
    .content, .nav-main-wrap {
        max-width: initial
    }

    .footer-part_w40 {
        width: 29%;
        padding-bottom: 2rem;
        padding-top: 2rem
    }

    .nav-main-wrap {
        padding: 4rem 1.87rem 0
    }

    .main {
        padding-top: 3rem;
        overflow: hidden;
        padding-bottom:0
    }

    .heading-1 {
        font-size: 1.9rem;
        line-height: 2rem
    }

    .heading-2 {
        padding-top: 2.125rem;
        font-size: 1.8rem;
        line-height: 2rem
    }

    .box-order-wrap {
        display: grid;
        grid-template-columns:1fr;
        grid-template-rows:auto auto auto;
        gap: 0 0;
        grid-template-areas:"box-order-1" "box-order-2" "box-order-3";
        justify-items: end
    }

    .box-order-2 {
        padding: 0
    }

    .img-wrap-topic, .port .project, .project .img-wrap {
        overflow: initial
    }

    .form {
        max-width: initial
    }

    .header .heading-1_home {
        margin-top: 0
    }

    .topic-text.dif {
        padding-bottom: 3.75rem
    }

    .header.header-home {
        height: initial;
        padding: 26px
    }

    .header.header-home .header-main {
        height: initial;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        flex-flow: column;
        margin-top: 8rem
    }

    .header-con_link {
        display: none;
    }

    .header-con_mid {
        width: 100%;
    }

    .header.header-home .header-main .header-bg {
        position: relative;
        width: 100%;
        height: 350px;
        overflow: hidden;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2
    }

    .header.header-home .header-main .header-con {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        -ms-flex-line-pack: start;
        align-content: flex-start;
        margin: 0;
        padding: 0
    }

    .header.header-home .header-main .header-con .heading-1_home {
        color: #000;
        padding-bottom: 2.375rem;
        margin: 1rem 0 0;
    }

    .topic-text {
        max-width: none;
    }

    .topic-box {
        width: 100%;
    }

    .topic-nine .flex-item_30 {
        width: calc(50% - 1.5rem);
    }

    .header-con_link a {
        width: 130px;
        color: #000;
        margin-right: 2rem;
    }

    .header-con_link a:before, .header-con_link a:after {
        background: #000;
    }

    .main content home main-diffmain content home main-diffhome.main {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-flow: column;
        flex-flow: column
    }

    .nav-main-wrap .logo-wrap svg {
        fill: #000
    }

    .nav-main .burger-span {
        background: #000
    }

    .nav-main-wrap .nav-main-list_li a {
        color: #000
    }

    .header-con_white-text {
        margin-bottom: 3rem;
        margin-top: 0;
        color: #000;
        max-width: none;
    }
    .header-con_white-text a {
        color: #000;}
    .header-con_white-text p:first-child {
        margin-top: 0;
    }

    .resp-break {
        display: initial
    }

    .resp-break:after {
        content: ""
    }

    .heading-sub.heading-3 {
        font-size: 1.8rem;
        line-height: 1.2
    }

    .topic {
        padding-bottom: 6rem;
    }

    .flex-images_content {
        width: 100%;
        margin-top: 6rem;
    }

    .flex-images_content:first-child {
        margin-top: 0;
    }

    .header.header-home {
        background: none;
        border: none;
    }

    .main-diff {
        padding-top: 8rem;
    }
}

@media (max-width: 665px) {
    .form-row-50 {
        width: 100%
    }

    .nav-main {
        overflow: initial
    }

    .nav-main.fixed .nav-main {
        background: 0 0
    }

    .nav-main.fixed .nav-main-all {
        top: 75px
    }

    .nav-main-all {
        max-height: 0;
        overflow: hidden;
        position: absolute;
        width: 100%;
        left: 0;
        right: 0;
        background-color: #fff;
        z-index: 3;
        padding: 0;
        margin: 0;
        top: 117px;
        -webkit-transition: .2s ease;
        transition: .2s ease;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap
    }

    .nav-main .burger {
        display: block
    }

    .nav-main-list {
        padding: 1.375rem 0 1.375rem;
        width: 100%
    }

    .nav-main-list:nth-child(2) {
        padding-top: 0
    }

    .nav-main-list_li {
        padding-left: 1.875rem;
        width: 100%
    }

    .nav-main-list-extra {
        margin: 0
    }

    .nav-main.open {
        background: #fff
    }

    .nav-main.open .nav-main-wrap {
        border-bottom: solid 1px #e6e6e6;
        margin-bottom: 1.375rem;
        padding-bottom: 1.375rem
    }

    .nav-main.open .nav-main-all {
        max-height: 250px
    }

    .nav-main.open .logo-wrap svg {
        fill: #000
    }

    .nav-main.open .burger {
        position: relative
    }

    .nav-main.open .burger-span {
        background: #000;
        position: absolute
    }

    .nav-main.open .burger-span:nth-child(1) {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        top: -2px
    }

    .nav-main.open .burger-span:nth-child(2) {
        opacity: 0
    }

    .nav-main.open .burger-span:nth-child(3) {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        top: -2px
    }

    .nav-main .nav-main-list_li a {
        color: #000;
        padding: .5rem 0;
        display: block;
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content
    }

    .nav-main .nav-main-list_li a:after {
        bottom: 0
    }

    .footer .content {
        padding-right: 1.87rem
    }

    .header-main_arrow {
        display: block;
        width: 16px;
        height: 16px;
        border-bottom: 3px solid #fff;
        border-left: 3px solid #fff;
        bottom: 140px;
        position: absolute;
        left: 0;
        right: 0;
        margin: auto;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg)
    }

    .header.header-home .header-main .header-bg {
        height: 250px;
    }


    #domain-logo-ayo img {
        max-height: 40px
    }

    .nav-main-list_li a.link-switch {
        margin-top: .8rem;
        border-top: 1px solid #e6e6e6;
        width: 100%;
        padding-top: .8rem;
        color: #656565
    }

    .nav-main-list_li a.link-switch:before {
        display: none
    }

    .nav-main-list_li a.link-switch:after {
        left: 0
    }

    .nav-main-list_li a.link-switch:hover:after {
        left: 0;
        width: 100%
    }
}

@media (max-width: 580px) {
    .topic-nine .flex-item_30 {
        width: 100%;
        padding-bottom: 2rem;
    }

    .topic .flex-space-vert {
        min-height: 1px;
    }

    .topic-nine .heading-3 {
        margin-bottom: .5rem;
        font-size: 1.8rem;
    }
    .footer-ul {
        min-width: 110px;
    }
    .footer-part_w40 {
        width: auto;
    }
}

@media (max-width: 450px) {
    .header.header-home .header-main .header-bg {
        height: 200px
    }
}

@media (max-width: 380px) {
    .header.header-home .header-main .header-bg {
        height: 200px
    }
}

@media (max-height: 450px) {
    .header-home .header-con .heading-1_home {
        margin-top: 160px
    }
}