/* =========================================================
   Vår historie — alle selektorer scoped under .var-historie
   ========================================================= */

.var-historie {
    background: #fff !important;
    padding: 48px 0 96px !important;
}

.var-historie .var-historie__inner {
    max-width: 1240px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

.var-historie h2.var-historie__heading,
.var-historie .var-historie__heading {
    font-family: 'Nunito', sans-serif !important;
    font-weight: 700 !important;
    font-style: normal !important;
    font-size: 40px !important;
    line-height: 100% !important;
    letter-spacing: 0 !important;
    color: #001918 !important;
    text-align: center !important;
    margin: 0 0 40px !important;
    padding: 0 !important;
}

.var-historie .var-historie__intro {
    max-width: 1031px !important;
    margin: 0 auto 96px !important;
    padding: 0 !important;
    text-align: center !important;
}

.var-historie .var-historie__intro,
.var-historie .var-historie__intro p {
    font-family: 'Nunito Sans', sans-serif !important;
    font-weight: 400 !important;
    font-style: normal !important;
    font-size: 18px !important;
    line-height: 24.6px !important;
    letter-spacing: 0 !important;
    color: #001918 !important;
    text-align: center !important;
}

.var-historie .var-historie__intro p {
    margin: 0 0 12px !important;
    padding: 0 !important;
}

.var-historie .var-historie__intro p:last-child {
    margin-bottom: 0 !important;
}

.var-historie .var-historie__grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    align-items: stretch !important;
}

.var-historie .var-historie__box {
    border-radius: 0 !important;
    padding: 40px !important;
    color: #FBFCFC !important;
    position: relative !important;
    overflow: hidden !important;
    min-height: 280px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    margin: 0 !important;
}

/* Type styling */
.var-historie .var-historie__box--text {
    background: #006179 !important;
    justify-content: flex-start !important;
    padding: 93px 72px !important;
}

.var-historie .var-historie__box--quote {
    background: #fff !important;
    justify-content: center !important;
    padding: 80px 110px !important;
}

.var-historie .var-historie__box--image {
    background: #006179 !important;
    padding: 0 !important;
    align-self: stretch !important;
}

/* Position overrides — used when grid auto-flow needs to skip cells */
.var-historie .var-historie__box--pos-left {
    grid-column-start: 1 !important;
}

.var-historie .var-historie__box--pos-right {
    grid-column-start: 2 !important;
}

.var-historie .var-historie__box--full {
    grid-column: 1 / -1 !important;
}

/* Image (or <picture> wrapper from WebP plugins) fills its container */
.var-historie .var-historie__box-bg {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    overflow: hidden !important;
}

.var-historie .var-historie__box-bg,
.var-historie .var-historie__box-bg img {
    object-fit: cover !important;
    object-position: center !important;
    max-width: none !important;
}

.var-historie .var-historie__box-bg img {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    display: block !important;
}

/* Box title */
.var-historie h3.var-historie__box-title,
.var-historie .var-historie__box-title {
    font-family: 'Nunito', sans-serif !important;
    font-weight: 700 !important;
    font-style: normal !important;
    font-size: 38px !important;
    line-height: 43.5px !important;
    letter-spacing: 0 !important;
    color: #FBFCFC !important;
    text-align: left !important;
    margin: 0 0 42px !important;
    padding: 0 !important;
}

/* Box body text */
.var-historie .var-historie__box-text,
.var-historie .var-historie__box-text p {
    font-family: 'Nunito Sans', sans-serif !important;
    font-weight: 400 !important;
    font-style: normal !important;
    font-size: 18px !important;
    line-height: 24.6px !important;
    letter-spacing: 0 !important;
    color: #FBFCFC !important;
    text-align: left !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
}

.var-historie .var-historie__box-text p:last-child {
    margin-bottom: 0 !important;
}

/* Quote — italic, larger, centered visual emphasis */
.var-historie blockquote.var-historie__box-quote,
.var-historie .var-historie__box-quote {
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    quotes: "«" "»" !important;
    text-align: center !important;
}

.var-historie .var-historie__box-quote,
.var-historie .var-historie__box-quote p {
    font-family: 'Nunito Sans', sans-serif !important;
    font-style: italic !important;
    font-weight: 700 !important;
    font-size: 40px !important;
    line-height: 54.6px !important;
    letter-spacing: 0 !important;
    color: #006179 !important;
    text-align: center !important;
}

.var-historie .var-historie__box-quote p {
    margin: 0 !important;
    padding: 0 !important;
}

.var-historie .var-historie__box-quote p:first-child::before {
    content: open-quote;
}

.var-historie .var-historie__box-quote p:last-child::after {
    content: close-quote;
}

/* Fallback for non-wysiwyg or inline text content */
.var-historie .var-historie__box-quote:not(:has(p))::before {
    content: open-quote;
}

.var-historie .var-historie__box-quote:not(:has(p))::after {
    content: close-quote;
}

@media (max-width: 768px) {
    .var-historie {
        padding: 0 !important;
    }

    /* Inner: drop side padding and max-width so boxes go edge-to-edge.
       Heading and intro get their own side padding instead. */
    .var-historie .var-historie__inner {
        padding: 0 !important;
        max-width: 100% !important;
    }

    .var-historie h2.var-historie__heading,
    .var-historie .var-historie__heading {
        font-family: 'Nunito', sans-serif !important;
        font-weight: 700 !important;
        font-size: 30px !important;
        line-height: 40.9px !important;
        letter-spacing: 0 !important;
        text-align: center !important;
        padding: 0 24px !important;
    }

    .var-historie .var-historie__intro {
        padding: 0 24px !important;
    }

    .var-historie .var-historie__grid {
        grid-template-columns: 1fr !important;
        gap: 0 !important;
    }

    .var-historie .var-historie__box {
        min-height: 0 !important;
    }

    .var-historie .var-historie__box--full,
    .var-historie .var-historie__box--pos-left,
    .var-historie .var-historie__box--pos-right {
        grid-column: auto !important;
    }

    /* Text-type box */
    .var-historie .var-historie__box--text {
        padding: 56px 50px !important;
    }

    .var-historie h3.var-historie__box-title,
    .var-historie .var-historie__box-title {
        font-family: 'Nunito', sans-serif !important;
        font-weight: 700 !important;
        font-size: 23px !important;
        line-height: 29.3px !important;
        letter-spacing: 0 !important;
    }

    .var-historie .var-historie__box-text,
    .var-historie .var-historie__box-text p {
        font-family: 'Nunito Sans', sans-serif !important;
        font-weight: 400 !important;
        font-size: 16px !important;
        line-height: 21.8px !important;
        letter-spacing: 0 !important;
    }

    /* Quote-type box */
    .var-historie .var-historie__box--quote {
        padding: 159px 50px !important;
    }

    .var-historie blockquote.var-historie__box-quote,
    .var-historie .var-historie__box-quote,
    .var-historie .var-historie__box-quote p {
        font-family: 'Nunito Sans', sans-serif !important;
        font-style: italic !important;
        font-weight: 700 !important;
        font-size: 28px !important;
        line-height: 38.2px !important;
        letter-spacing: 0 !important;
        text-align: center !important;
    }

    /* Image-type box */
    .var-historie .var-historie__box--image {
        min-height: 471px !important;
    }
}
