@font-face {
    font-family: 'Dosis-Extra-light';
    src: url('fonts/Dosis-VariableFont_wght.ttf') format('truetype');
    font-weight: 200;
}
@font-face {
    font-family: 'Dosis-light';
    src: url('fonts/Dosis-VariableFont_wght.ttf') format('truetype');
    font-weight: 300;
}
@font-face {
    font-family: 'Dosis-Regular';
    src: url('fonts/Dosis-VariableFont_wght.ttf') format('truetype');
    font-weight: 400;
}
@font-face {
    font-family: 'Dosis-Medium';
    src: url('fonts/Dosis-VariableFont_wght.ttf') format('truetype');
    font-weight: 500;
}
@font-face {
    font-family: 'Dosis-Semi-bold';
    src: url('fonts/Dosis-VariableFont_wght.ttf') format('truetype');
    font-weight: 600;
}
@font-face {
    font-family: 'Dosis-Bold';
    src: url('fonts/Dosis-VariableFont_wght.ttf') format('truetype');
    font-weight: 700;
}
@font-face {
    font-family: 'Dosis-Extra-bold';
    src: url('fonts/Dosis-VariableFont_wght.ttf') format('truetype');
    font-weight: 800;
}
@font-face {
    font-family: 'Montserrat';
    src: url('fonts/Montserrat-Regular.ttf') format('truetype');
}
@font-face {
    font-family: 'Montserrat-Bold';
    src: url('fonts/Montserrat-Bold.ttf') format('truetype');
}
@font-face {
    font-family: 'Montserrat-Thin';
    src: url('fonts/Montserrat-Thin.ttf') format('truetype');
}
@font-face {
    font-family: 'Damion-Regular';
    src: url('fonts/Damion-Regular.ttf') format('truetype');
}
@font-face {
    font-family: 'NanumPenScript-Regular';
    src: url('fonts/NanumPenScript-Regular.ttf') format('truetype');
}
@font-face {
    font-family: 'CoveredByYourGrace-Regular';
    src: url('fonts/CoveredByYourGrace-Regular.ttf') format('truetype');
}
@font-face {
    font-family: 'GiveYouGlory-Regular';
    src: url('fonts/GiveYouGlory-Regular.ttf') format('truetype');
}
@font-face {
    font-family: 'GrapeNuts-Regular';
    src: url('fonts/GrapeNuts-Regular.ttf') format('truetype');
}
@font-face {
    font-family: 'OvertheRainbow-Regular';
    src: url('fonts/OvertheRainbow-Regular.ttf') format('truetype');
}
@font-face {
    font-family: 'WaitingfortheSunrise-Regular';
    src: url('fonts/WaitingfortheSunrise-Regular.ttf') format('truetype');
}

body {
    font-family: 'Dosis-Regular', Arial, sans-serif;
    font-size: 24px;
    line-height: 1.4;
    letter-spacing: 0.04em;
    margin: 0;
    background-color: #002868;
    --margin: 15%;
    --logo-proporton: calc(799.8 / 689.5);
}

/* Telefon */
@media (max-width: 800px) {
    body {
        --margin: 40px;
    }
}

a.knapp, button, input[type=submit] {
    display: inline-block;
    font-family: 'Dosis-Semi-bold', Arial, sans-serif;
    font-size: 14px;
    line-height: 1.5;
    letter-spacing: 0.09em;
    text-decoration: none;
    color: #ce1126;
    background-color: #fff;
    border: 1px solid #ce1126;
    border-radius: 500px;
    padding: 6px 16px;
    white-space: nowrap;
    cursor: pointer;
}

hr {
    border: none;
    border-top: solid 2px #ce1126;
    --margin-u: 15px;
    --margin-n: 20px;
    margin: var(--margin-u) 0 var(--margin-n) 0;
    width: 60px;
}
.red-bg hr {
    border-color: #002868;
}
/* Telefon */
@media (max-width: 800px) {
    br.not-mobile {
        display: none;
    }
}

a#logo {
    width: 12%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
}
a#logo img {
    object-position: bottom;
    object-fit: cover;
}

/* Surfplatta */
@media (max-width: 1200px) {
    a#logo {
        width: 12.5%;
    }
}
/* Telefon */
@media (max-width: 800px) {
    a#logo {
        width: 30%;
        position: absolute;
    }
}
nav#menu {
    position: fixed;
    box-sizing: border-box;
    z-index: 10;
    background-color: #002868;
    right: -60%;
    margin: 0;
    height: 100vh;
    width: 60%;
    padding-left: var(--margin);
    transition: right 0.5s;
}
nav#menu.open {
    right: 0;
}
nav#menu > nav#menulist {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
nav#menu > nav#menulist > nav a {
    display: flex;
    flex-direction: column;
}
nav#menu > nav#menulist a {
    font-family: 'Dosis-Semi-bold', Arial, sans-serif;
    font-size: 32px;
    color: #fff;
    text-decoration: none;
    letter-spacing: 0.04em;
    padding: 10px 0;
}
nav#menu > nav#menulist > nav a {
    font-size: 20px;
}
nav#menu > nav#menulist a.selected {
    font-family: 'Dosis-Extra-bold', Arial, sans-serif;
    color: #ce1126;
}
/* Telefon */
@media (max-width: 800px) {
    nav#menu {
        right: -100%;
        width: 100%;
    }
}

nav#menu > button#menubutton {
    position: fixed;
    width: 120px;
    height: 55px;
    top: calc(50vh - 55px/2);
    right: 0;
    padding: 0;
    cursor: pointer;
    border: none;
    border-radius: 25% 0 0 25% / 50% 0 0 50%;
    background-color: #ce1126;
    transition: background-color 0.2s;
    color: white;
    font-size: 21px;
    text-transform: uppercase;
    font-family: Dosis-semi-bold;
    letter-spacing: 0.09em;
    background-position-x: 10px;
}
nav#menu.open > button#menubutton {
    background-color: transparent;
    color: transparent;
    background-image: url('bilder/meny_kryss.svg');
    background-size: contain;
}
/* Telefon */
@media (max-width: 800px) {
    nav#menu > button#menubutton {
        top: 0;
        border-radius: 0 0 0 25% / 0 0 0 50%;
        width: 80px;
        height: 40px;
        font-size: 14px;
    }
}

div#scroll {
    position: -webkit-sticky;
    position: sticky;
    bottom: 0;
    width: max-content;
    height: 0;
    margin: auto;
    transform: translateY(-100%);
	cursor: pointer;
    display: flex;
    justify-content: center;
}
div#scroll div {
    position: absolute;
    bottom: 0;
    width: max-content;
}
div#scroll h6 {
    font-family: 'Dosis-Semi-bold', Arial, sans-serif;
    font-style: normal;
    text-align: center;
    font-size: 13px;
    letter-spacing: 0.14em;
    margin: 0 0 15px 0;
    color: #fff;
}
div#scroll img {
    width: 12px;
    display: block;
    margin: auto;
    margin-bottom: 40px;
}

/* Telefon */
@media (max-width: 800px) {
    div#scroll {
        cursor: unset;
    }
}

.gap p {
    display: flex;
    flex-direction: column;
    gap: 10vw;
    align-items: center;
    margin-top: 0px;
	margin-bottom: 120px;
    img {
        width: 50%;
      }
}

/* Surfplatta */
@media (max-width: 1200px) {
    .gap p {
        gap: 18vw;
        img {
            width: 75%;
          }
    }
}

/* Telefon */
@media (max-width: 800px) {
    .gap p {
        gap: 20vw;
        margin-top: -60px;
		margin-bottom: 40px;
        img {
            width: 90%;
          }
    }
}

.gap-bottom p {
    padding-bottom: 25px;
}

/* Telefon */
@media (max-width: 800px) {
    .gap-bottom p {
        padding-bottom: 0px;
    }
}

section {
    width: 100%;
    padding: 75px var(--margin);
    box-sizing: border-box;
    background-position: top;
    background-size: cover;
    background-repeat: no-repeat;
    color: white;
}

section h2,
section p {
    margin: 0;
}
section h2 {
    line-height: 1;
}
section a.knapp,
section button,
section input[type=submit] {
    margin-top: 20px;
}
section a.knapp:first-of-type,
section button:first-of-type,
section input[type=submit]:first-of-type {
    margin-top: 30px;
}

section article p:not(:first-child):not(:last-of-type) {
    margin: 20px 0;
}
section article nav {
    display: flex;
    flex-direction: column;
}
section article nav > * {
    width: max-content;
}

section.head {
    height: 100vh;
    background-attachment: fixed;
}
@supports (-webkit-touch-callout: none) {
    section.head {
        background-attachment: initial;
    }
}

section.head.no-text {
    height: 40vh;
}

section.head header {
    position: absolute;
    bottom: 150px;
    margin-right: var(--margin);
}

section.head header h1 {
    font-family: 'Dosis-Bold', Arial, sans-serif;
    font-size: 50px;
    line-height: 1.1;
    letter-spacing: 0.03em;
    margin: 0;
}

section.head header p {
    font-family: 'Dosis-Semi-bold', Arial, sans-serif;
    font-style: normal;
    font-size: 24px;
    line-height: 1.4;
    letter-spacing: 0.04em;
    margin: 0;
}
/* Telefon */
@media (max-width: 800px) {
    section.head header h1 {
        font-size: 30px;
    }
}

section.split-2 {
    display: grid;
    grid-template-areas: 'left right';
    grid-template-columns: 3fr 2fr;
    gap: 20px;
}

section.split-2.right-large,
section.split-2.to-the-left {
    grid-template-columns: 2fr 3fr;
}

section.split-2.to-the-left > * {
    grid-area: left;
}

section.split-2.to-the-right > * {
    grid-area: right;
}

section.split-2 h2 {
    font-family: 'Dosis-Bold', Arial, sans-serif;
    font-size: 30px;
}

/* Surfplatta */
@media (max-width: 1200px) {
    section.split-2 {
        grid-template-columns: 3fr 4fr;
    }
    section.split-2.right-large,
    section.split-2.to-the-left {
        grid-template-columns: 4fr 3fr;
    }
}
/* Telefon */
@media (max-width: 800px) {
    section.split-2 {
        grid-template-columns: 1fr;
        gap: 0;
        grid-template-areas:
                            "left"
                            "right";
    }
    section.split-2.right-large,
    section.split-2.to-the-left {
        grid-template-columns: 1fr;
    }
}

section.image-background {
    min-height: 700px;
    align-content: center;
}
section.image-background > * {
    height: max-content;
}
section.image-background a.knapp,
section.image-background button,
section.image-background input[type=submit] {
    background: none;
    color: white;
    border-color: white;
}
/* Telefon */
@media (max-width: 800px) {
    section.image-background {
        align-content: end;
    }
}

section.button-no-top-padding {
    padding-top: 0;
}
section.button-no-top-padding > a.knapp,
section.button-no-top-padding > button,
section.button-no-top-padding > input[type=submit] {
    margin-top: 0;
}

section.white-bg {
    background-color: white;
    color: black;
    grid-template-columns: 1fr 2fr;
}
section.white-bg > :nth-child(1) {
    grid-area: left;
    padding-right: 20px;
}
section.white-bg > :nth-child(2) {
    grid-area: right;
}
section.white-bg h2 {
    font-family: 'Dosis-Bold', Arial, sans-serif;
    color: #002868;
}
/* Surfplatta */
@media (max-width: 1200px) {
    section.white-bg {
        grid-template-columns: 3fr 4fr;
    }
}
/* Telefon */
@media (max-width: 800px) {
    section.white-bg {
        grid-template-columns: 1fr;
    }
}

section.red-bg {
    background-color: #ce1126;
    color: white;
    grid-template-columns: 1fr 2fr;
}
section.red-bg > :nth-child(1) {
    grid-area: left;
    padding-right: 20px;
}
section.red-bg > :nth-child(2) {
    grid-area: right;
}
section.red-bg h2 {
    font-family: 'Dosis-Bold', Arial, sans-serif;
    font-size: 30px;
    color: #ffffff;
}
/* Surfplatta */
@media (max-width: 1200px) {
    section.red-bg {
        grid-template-columns: 3fr 4fr;
    }
}
/* Telefon */
@media (max-width: 800px) {
    section.red-bg {
        grid-template-columns: 1fr;
    }
}

section.blog {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 40px;
    background-color: white;
    color: black;
    padding-top: 0;
}
section.blog > a {
    color: inherit;
    text-decoration: inherit;
    border: 2px solid #ce1126;
    border-radius: 8px;
    padding: 40px;
}
section.blog > a > article h3 {
    color: #002868;
    font-family: 'Dosis-Bold', Arial, sans-serif;
    margin: 0;
    line-height: 1;
}
section.blog > a > article h4 {
    color: #ce1126;
    font-family: 'Dosis-Semi-Bold', Arial, sans-serif;
    margin: 0;
    font-size: 18px;
}
section.blog > a > article p {
    margin: 20px 0;
}

/* Surfplatta */
@media (max-width: 1200px) {
    section.blog {
        grid-template-columns: 1fr;
    }
}

section.document {
    padding-top: 175px;
}
section.document.no-header {
    padding-top: 100px;
}
section.document header h1 {
    font-family: 'Dosis-Bold', Arial, sans-serif;
    color: #002868;
    font-size: 60px;
    margin-top: 0;
    margin-bottom: 15px;
    line-height: 1;
}
section.document p {
    margin: 0 0;
    margin-bottom: 40px;
}
section.document p.preamble {
    font-family: 'Dosis-Semi-bold', Arial, sans-serif;
    font-size: 28px;
    color: #002868;
}
section.document header h2 {
    font-family: 'Dosis-Bold', Arial, sans-serif;
    font-size: 30px;
    color: #002868;
}
section.document a {
    color: #ce1126;
}
/* section.document form {
    display: flex;
    flex-direction: column;
} */
/* Telefon */
@media (max-width: 800px) {
    section.document:not(.no-header) {
        padding-top: calc(30vw * var(--logo-proporton) + 40px);
    }
	section.document header h1 {
    font-family: 'Dosis-Bold', Arial, sans-serif;
    color: #002868;
    font-size: 36px;
    margin-top: 0;
    margin-bottom: 15px;
    line-height: 1;
	}
}

section.blogpost a.knapp,
section.blogpost button,
section.blogpost input[type=submit] {
    margin-top: 40px;
    margin-bottom: 30px;
}
section.blogpost h4 {
    color: #ce1126;
    font-family: 'Dosis-Semi-Bold', Arial, sans-serif;
    margin: 0;
    margin-bottom: 40px;
    font-size: 24px;
}
section.blogpost blockquote {
    color: #ce1126;
    font-style: italic;
}
section.blogpost blockquote cite::before {
    content: '\A';
    white-space: pre;
    font-style: normal;
}
section.blogpost blockquote cite {
    font-style: normal;
}

form {
    display: flex;
    flex-direction: column;
}
form label:not(:first-of-type) {
    margin-top: 40px;
}
form label {
    font-family: 'Dosis-Semi-bold', Arial, sans-serif;
}
form > div {
    display: flex;
    margin: 20px 0;
}
form > div > select {
    margin-left: 10px;
}
form input::-webkit-outer-spin-button,
form input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
form input[type=number] {
    margin-left: 10px;
    width: 50px;
}
form ::placeholder {
    color: #fff;
    opacity: 0.4;
}
form input:not([type=submit]),
form textarea {
    background: none;
    padding: 5px 0;
    font-family: inherit;
    font-size: 18px;
    color: white;
    border: none;
    border-bottom: 1px solid white;
}
form textarea {
    height: 100px;
    resize: none;
}
form input[type=submit] {
    background: none;
    color: white;
    width: max-content;
}

form div.checkbox {
    display: initial;
}
form div.checkbox input[type="checkbox"] {
    padding-right: 10px;
    height: 1em;
    width: 1em;
}

section.document form p {
    margin-top: 40px;
}

form.white-bg label {
    font-family: 'Dosis-Regular', Arial, sans-serif;
}
form.white-bg input:not([type=submit]),
form.white-bg textarea {
    border-bottom: 1px solid #002868;
}
form.white-bg input,
form.white-bg textarea {
    color: black;
}
form.white-bg input[type=submit] {
    background: none;
    color: #ce1126;
    width: max-content;
}
form.white-bg ::placeholder {
    color: #000;
    opacity: 0.3;
}

div.icon-text {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 30px;
    color: #ce1126;
    font-family: 'Dosis-Semi-bold', Arial, sans-serif;
}
.red-bg div.icon-text > div {
    color: #002868;
}

div.icon-text > div > img:first-child {
    width: 25px;
    margin-right: 10px;
}

.img-styled {
    box-shadow: 5px 5px 30px 1px rgba(0,0,0,0.5);
    border-width: 3px;
    border-radius: 10px;
    border-style: solid;
    border-color: #ce1126;
}

iframe.video {
    width: 100%;
    aspect-ratio: 16 / 9;
    background-size: cover;
    box-shadow: 5px 5px 30px 1px rgba(0,0,0,0.5);
    border-width: 3px;
    border-radius: 10px;
    border-style: solid;
    border-color: #ce1126;
    background-image: url('Bilder/video_laddar.svg');
}

iframe.video-large {
    width: 80%;
}

footer {
    background-image: url('bilder/Bg_Sidfot.jpg');
    background-position: top;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    padding: 140px var(--margin) 50px var(--margin);
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: start;
    gap: 20px;
    font-weight: normal;
}
footer * {
    margin: 0;
}
footer > img {
    width: 100px;
}
footer > h3 {
    margin-top: 10px;
    font-family: 'Dosis-Bold', Arial, sans-serif;
    font-size: 24px;
    letter-spacing: 0.06em;
}
footer nav {
    display: flex;
    gap: 20px;
}
footer nav img {
    height: 50px;
}
footer h6 {
    margin-top: 50px;
    font-family: 'Dosis-Semi-bold', Arial, sans-serif;
    font-size: 13px;
    letter-spacing: 0.08em;
}
footer h6 span {
    margin-right: 10px;
}
footer h6 a {
    display: inline-block;
    margin-top: 5px;
    color: inherit;
    text-decoration: inherit;
    white-space: nowrap;
}

.bg-img-start/*:lang(sv)*/ {
    background-image: url('bilder/Bg_Startsidan_Topp.jpg');
}
.bg-img-start-jul {
    background-image: url('bilder/Bg_Startsidan_Topp_Jul.jpg');
}
.bg-img-member {
    background-image: url('bilder/Bg_Bli_medlem.jpg');
}
.bg-img-give {
    background-image: url('bilder/Bg_Ge_gava.jpg');
}
.bg-img-contact-us {
    background-image: url('bilder/Bg_Kontakta_oss.jpg');
}
.bg-img-what-we-do {
    background-image: url('bilder/Bg_Vad_vi_gor_Topp.jpg');
}
.bg-img-what-we-do-01 {
    background-image: url('bilder/Bg_Vad_vi_gor_01.jpg');
}
.bg-img-what-we-do-02 {
    background-image: url('bilder/Bg_Vad_vi_gor_02.jpg');
}
.bg-img-what-we-do-03 {
    background-image: url('bilder/Bg_Vad_vi_gor_03.jpg');
}
.bg-img-what-we-do-04 {
    background-image: url('bilder/Bg_Vad_vi_gor_04.jpg');
}
.bg-img-support-us {
    background-image: url('bilder/Bg_Stod_oss_Topp.jpg');
}
.bg-img-blog {
    background-image: url('bilder/Bg_Artiklar_Topp.jpg');
}
.bg-img-about-us {
    background-image: url('bilder/Bg_Om_oss_Topp.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    background-color: #002868;
}
.bg-img-poesi {
    background-image: url('bilder/Bg_Poesi_Topp.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    background-color: #002868;
}
.bg-img-contact {
    background-image: url('bilder/Bg_Kontakt_Topp.jpg');
}
.bg-img-contact-form {
    background-image: url('bilder/Bg_Kontaktformular.jpg');
}
.bg-img-hand-of-hope {
    background-image: url('bilder/Bg_Hands_of_Hope_Topp.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    background-color: #002868;
}

/* Surfplatta */
@media (max-width: 1200px) {
    .bg-img-what-we-do-01 {
        background-image: url('bilder/Bg_Vad_vi_gor_01_Tablet.jpg');
    }
    .bg-img-what-we-do-02 {
        background-image: url('bilder/Bg_Vad_vi_gor_02_Tablet.jpg');
    }
    .bg-img-what-we-do-03 {
        background-image: url('bilder/Bg_Vad_vi_gor_03_Tablet.jpg');
    }
    .bg-img-what-we-do-04 {
        background-image: url('bilder/Bg_Vad_vi_gor_04_Tablet.jpg');
    }
}
/* Telefon */
@media (max-width: 800px) {
    .bg-img-start {
        background-image: url('bilder/Bg_Startsidan_Topp_Mobile.jpg');
    }
    .bg-img-start-jul {
        background-image: url('bilder/Bg_Startsidan_Topp_Jul_Mobile.jpg');
    }
    .bg-img-member {
        background-image: url('bilder/Bg_Bli_medlem_Mobile.jpg');
    }
    .bg-img-give {
        background-image: url('bilder/Bg_Ge_gava_Mobile.jpg');
    }
    .bg-img-contact-us {
        background-image: url('bilder/Bg_Kontakta_oss_Mobile.jpg');
    }
    .bg-img-what-we-do {
        background-image: url('bilder/Bg_Vad_vi_gor_Topp_Mobile.jpg');
    }
    .bg-img-what-we-do-01 {
        background-image: url('bilder/Bg_Vad_vi_gor_01_Mobile.jpg');
    }
    .bg-img-what-we-do-02 {
        background-image: url('bilder/Bg_Vad_vi_gor_02_Mobile.jpg');
    }
    .bg-img-what-we-do-03 {
        background-image: url('bilder/Bg_Vad_vi_gor_03_Mobile.jpg');
    }
    .bg-img-what-we-do-04 {
        background-image: url('bilder/Bg_Vad_vi_gor_04_Mobile.jpg');
    }
    .bg-img-support-us {
        background-image: url('bilder/Bg_Stod_oss_Topp_Mobile.jpg');
    }
    .bg-img-blog {
        background-image: url('bilder/Bg_Artiklar_Topp_Mobile.jpg');
    }
    .bg-img-about-us {
        background-image: url('bilder/Bg_Om_oss_Topp_Mobile.jpg');
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
        background-attachment: fixed;
        background-color: #002868;
    }
    .bg-img-contact {
        background-image: url('bilder/Bg_Kontakt_Topp_Mobile.jpg');
    }
    .bg-img-contact-form {
        background-image: url('bilder/Bg_Kontaktformular_Mobile.jpg');
    }
    .bg-img-hand-of-hope {
        background-image: url('bilder/Bg_Hands_of_Hope_Mobile.jpg');
    }
}

/* Fel */
section.formsvar-special {
    width: 100vw;
    height: 100vh;
    background-image: url('bilder/Bg_Fel.jpg');
    background-position: top;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
}
section.formsvar-special header {
    position: absolute;
    padding-right: 40px;
    top: 120px;
}
section.formsvar-special.fel header img {
    width: 70px;
    margin-bottom: 50px;
}
section.formsvar-special header h1 {
    font-family: 'Dosis-Bold', Arial, sans-serif;
    color: #ffffff;
    font-size: 50px;
    margin-top: 0;
    margin-bottom: 15px;
    line-height: 1;
}
section.formsvar-special a.knapp,
section.formsvar-special button,
section.formsvar-special input[type=submit] {
    background: none;
    color: white;
    border-color: white;
}

