@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.13.1/font/bootstrap-icons.min.css");

@font-face {
    font-family: "GT Eesti Display Light";
    src: url("GT-Eesti-Display-Light.woff") format("woff");
}
@font-face {
    font-family: "GT Eesti Display Light Italic";
    src: url("GT-Eesti-Display-Light-Italic.woff") format("woff");
}
@font-face {
    font-family: "GT Eesti Display Medium";
    src: url("GT-Eesti-Display-Medium.woff") format("woff");
}
@font-face {
    font-family: "GT Eesti Display Bold";
    src: url("GT-Eesti-Display-Bold.woff") format("woff");
}
@font-face {
    font-family: "Jaakko";
    src: url("aa_jaakko-webfont.woff") format("woff");
}

:root {
    --brand-color-1: var(--portalThemeColor1);
    --brand-color-2: var(--portalThemeColor2);
    --brand-color-3: var(--portalThemeColor3);
    --brand-color-4: var(--portalThemeColor4);
    --brand-color-5: var(--portalThemeColor5);
    --brand-color-6: var(--portalThemeColor6);
    --brand-color-7: var(--portalThemeColor7);
    --brand-color-8: var(--portalThemeColor8);
    --brand-color-9: var(--portalThemeColor9);
    --brand-color-beige: var(--portalThemeColor10);
    --brand-color-hiekka: var(--portalThemeColor11);
    --brand-color-roosa: var(--portalThemeColor12);
    --brand-color-tuhka: rgba(230, 227, 223, 1);
    --brand-color-tuhka-50: #F3F1EF;
    --font-family-default: "GT Eesti Display Light";
    --font-family-paragraph: "GT Eesti Display Light";
    --font-family-title: "GT Eesti Display Bold";
    --font-family-h1: "GT Eesti Display Bold";
    --font-family-h2: "GT Eesti Display Bold";
    --font-family-h3: "GT Eesti Display Medium";
    --font-family-h4: "Jaakko";
    --font-family-h5: "GT Eesti Display Medium";
    --font-family-h6: "GT Eesti Display Medium";
    --font-family-nav: "GT Eesti Display Medium";
    /* --font-family-button: "GT Eesti Display Bold"; */
    --font-family-button: "GT Eesti Display Medium"; /*LISÄTTY - ELINA - vaihdettu hieman ohuempaan fonttiin*/
    --font-weight-light: 300;
    --font-weight-medium: 500;
    --font-weight-bold: 700;
    --font-line-height-default: 26px;
    --font-line-height-h1: 100%;
    --font-line-height-h2: 100%;
    --font-line-height-h3: 100%;
    --font-line-height-h4: 1.75rem;
    --font-line-height-h5: 1.75rem;
    --font-line-height-h6: 100%;
    --margin-y-body-default: 24px;
    --margin-y-h1: 64px;
    --margin-y-h2: 56px;
    --margin-y-h3: 40px;
    --margin-y-h4: 40px;
    --margin-y-h5: 40px;
    --margin-y-h6: 24px;
    --container-margin-y-default: 24px;
    --container-margin-y-xsmall: 8px;
    --container-margin-y-small: 16px;
    --container-margin-y-medium: 32px;
    --container-margin-y-large: 56px;
    --container-margin-y-xlarge: 64px;
    --container-margin-x: 1rem;
    --container-margin-x-xsmall: .75rem;
    --container-margin-x-small: 1rem;
    --container-margin-x-medium: 32px;
    --container-padding-y-xsmall: .75rem;
    --container-padding-y-small: 1rem;
    --container-padding-y-medium: 32px;
    --container-padding-y-large: 56px;
    --container-padding-y-xlarge: 64px;
    --container-padding-x: 1rem;
    --container-padding-x-xsmall: .75rem;
    --container-padding-x-small: 1rem;
    --container-padding-x-medium: 32px;
    --container-padding-x-large: 56px;
    --container-padding-x-xlarge: 64px;
}

html,
body {
    width: 100% !important;
}

body {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    height: auto !important;
}

h1:not(.siteTitle) {
    font-family: var(--font-family-h1) !important;
    font-weight: var(--font-weight-bold) !important;
    line-height: var(--font-line-height-h1);
    margin-bottom: 0 !important;
}

h1:not(.siteTitle):not(.columnBlockLayout h1:first-of-type) {
    margin-top: var(--margin-y-h1);
}

.columnBlockLayout h1:first-of-type {
    margin-top: 0 !important;
}

h2, .h2 {
    font-family: var(--font-family-h2) !important;
    font-weight: var(--font-weight-bold) !important;
    line-height: var(--font-line-height-h2);
    margin-bottom: 0 !important;
}

h2:not(.dg-sidebar-nav-heading > h2):not(.ppFlexContainer h2:first-child), 
.h2:not(.dg-sidebar-nav-heading > .h2):not(.ppFlexContainer .h2:first-child) {
    margin-top: var(--margin-y-h2);
}

.dg-sidebar-nav-heading > h2, 
.dg-sidebar-nav-heading > .h2,
.ppFlexContainer h2:first-child,
.ppFlexContainer + .h2:first-child {
    margin-top: 0;
}

h3, .h3 {
    font-family: var(--font-family-h3) !important;
    font-weight: var(--font-weight-medium) !important;
    line-height: var(--font-line-height-h3);
    /* margin-top: var(--margin-y-h3) !important;; */ /*KOMMENTOIN KOKEEKSI POIS - ELINA*/
    margin-bottom: 0 !important;
}

h4, .h4 {
    font-family: var(--font-family-h4) !important;
    font-weight: var(--font-weight-medium) !important;
    /* line-height: var(--font-line-height-h4); */
    line-height: 3rem; /*LISÄTTY - ELINA*/
    margin-bottom: 0 !important;
}

h4:not(.dg-footer-services h4):not(.dg-footer-contact h4):not(.dg-card-list h4), .h4 {
    margin-top: var(--margin-y-h4) !important;
}

h5, .h5 {
    font-family: var(--font-family-h5) !important;
    font-weight: var(--font-weight-medium) !important;
    line-height: var(--font-line-height-h5);
    margin-top: 32px !important;
    margin-bottom: 32px !important;
}

h5 + h1,
h5 + h2,
h5 + h3,
h5 + h4,
h5 + h5,
h5 + h6 {
    margin-top: 0 !important;
}

h6, .h6 {
    font-family: var(--font-family-h6) !important;
    font-weight: var(--font-weight-bold) !important;
    line-height: var(--font-line-height-h6);
    margin-top: var(--margin-y-h6) !important;
    margin-bottom: 0 !important;
}

p {
    font-family: var(--font-family-paragraph) !important;
    line-height: var(--font-line-height-default);
    margin-top: var(--margin-y-body-default);
    margin-bottom: 0;
}

/*
p:not(:first-of-type) {
    margin-top: var(--margin-y-body-default);
}*/

h1 + p {
    margin-top: var(--margin-y-body-default);
}

h2 + p,
h2 + .ppFlexContainer {
    margin-top: var(--container-margin-y-small);
}

h2 + .entitylist {
    margin-top: 8px;
}

h5 + p {
    margin-top: 0;
}

p > a {
    font-family: var(--font-family-paragraph) !important;
    text-decoration: underline;
}

p + ul, .dg-inline-list {
    margin-top: var(--margin-y-body-default);
    margin-bottom: 0 !important;
}

p:has(+.btn) {
    margin-bottom: 10px;
}

/* LISÄTTY - ELINA - lisätty inpyt typet*/
button, .btn, .button1, .button2, input[type="submit"], input[type="button"] {
    font-family: var(--font-family-button) !important;
    font-weight: var(--font-weight-medium);
}

/* LISÄTTY - ELINA */
li {
    font-family: var(--font-family-paragraph);
    line-height: var(--font-line-height-default);
    color: var(--portalThemeOnColor10);
}

.ppFlexContainer > p,
.ppFlexContainer > h1,
.ppFlexContainer > h2,
.ppFlexContainer > h3,
.ppFlexContainer > h4,
.ppFlexContainer > h5,
.ppFlexContainer > h6,
.ppFlexContainer > img {
    width: 100%;
}

.columnBlockLayout {
    margin-top: var(--container-margin-y-xlarge);
    margin-bottom: var(--container-margin-y-xlarge);
    box-sizing: border-box;
}

.dg-container .button2,
.dg-container .btn-secondary,
.dg-container .button1,
.dg-container .btn-primary {
    font-style: normal;
    -webkit-transition: .3s ease-in;
    -o-transition: .3s ease-in;
    transition: .3s ease-in;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: var(--container-padding-y-small) var(--container-padding-x-xsmall);
    text-align: center;
    font-size: 14px;
    line-height: 16px;
    text-decoration: none;
    border-style: none;
    width: fit-content;
    border-radius: 3px;
    margin: var(--container-margin-y-small) auto ;
    min-width: 200px;
    max-width: 300px;
}

/*LISÄTTY - ELINA - jotta painikkeet rivittyisivät*/
.ppFlexContainer .button1, .ppFlexContainer .button2 {
    white-space: unset !important;
}

/*LISÄTTY - ELINA - sivun sisältöosa kapeammaksi*/

@media (min-width: 1400px) {
    .row.sectionBlockLayout > .container {
        max-width: 1140px !important;
    }
}

@media (min-width: 1200px) {
    .row.sectionBlockLayout > .container {
        max-width: 1140px !important;
    }
}

/*LISÄTTY - ELINA - Navbar kapeammaksi*/

@media (min-width: 1400px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 1255px;
    }
}

@media (min-width: 1200px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 1255px;
    }
}

a.anchor-inherit-styles,
.description a {
    color: var(--portalThemeColor4) !important;
    font-weight: var(--font-weight-light);
}
p a.anchor-inherit-styles:hover,
p.description a:hover {
    text-decoration: none !important;
}

.description a {
    font-size: 14px;
}

.dg-card-section a.anchor-inherit-styles {
    color: #44464d !important;
}
