/**
 * @file
 * Subtheme specific CSS.
 */

@font-face {
    font-family: "Material Icons";
    src: url("../fonts/MaterialIconsRound-Regular.otf") format("opentype");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "DM Sans";
    src: url("../fonts/DMSans_18pt-Regular.ttf") format("truetype");
    font-weight: normal;
    font-display: swap;
}

@font-face {
    font-family: "DM Sans";
    src: url("../fonts/DMSans_18pt-Bold.ttf") format("truetype");
    font-weight: bold;
    font-display: swap;
}

@font-face {
    font-family: "DM Sans";
    src: url("../fonts/DMSans_18pt-SemiBold.ttf") format("truetype");
    font-weight: bolder;
    font-display: swap;
}

@font-face {
    font-family: "DM Sans";
    src: url("../fonts/DMSans_18pt-Light.ttf") format("truetype");
    font-weight: lighter;
    font-display: swap;
}

@font-face {
    font-family: "Material Symbols Outlined";
    font-style: normal;
    src: url("../fonts/MaterialSymbolsOutlined.woff2") format("woff2");
    font-weight: 200;
    font-display: swap;
}


/*body ja elementit*/
.container,
.container-lg,
.container-md,
.container-sm,
.container-xl,
.container-xxl {
    max-width: 1500px;
}

body {
    background: #fff !important;
}

body .dialog-off-canvas-main-canvas,
body .node__content {
    font-family: "DM Sans", sans-serif, Arial;
    color: #222222;
    font-size: 1.1em !important;
    hyphens: auto;
}

body p {
    color: #222222;
    font-size: 1.1em;
}

body h1 {
    color: #1F2D40;
    font-weight: bold;
    font-size: 50px;
}

body h2 {
    color: #1F2D40;
    font-weight: bold;
    font-size: 36px;
}

body h3 {
    color: #1F2D40;
    font-weight: bold;
    font-size: 26px;
}

body h4 {
    color: #1F2D40;
    font-weight: bold;
    font-size: 22px;
}

body h5 {
    color: #1F2D40;
    font-weight: bold;
    font-size: 20px;
}

body h6 {
    color: #1F2D40;
    font-weight: bold;
    font-size: 18px;
}

body a:hover,
body a:focus,
a.nav-link:hover,
a.nav-link:focus {
    color: #1b89bb;
}

body a,
a.nav-link {
    color: #222222;
    text-decoration: underline;
}

a[href="#main-content"] {
    color: #222222 !important;
    text-decoration: underline;
}

h1.title {
    font-weight: bold;
}

img {
    max-width: 100%;
    height: auto;
}

.node--unpublished {
    background-color: #dff0ff;
}

nav.tabs,
.block-system-main-block {
    margin: 20px 0px;
}

.field--label-inline .field__label,
.field--label-above .field__label {
    font-weight: bold;
}

.node--type-page .field--name-field-artikkelikuva {
    margin: 0px;
    width: 100%;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(0, calc(33.33% - 15px)));
    gap: 20px;
    justify-content: center;
}

.node--type-laskeutumis-sivu .field--name-field-artikkelikuva,
.node--type-laskeutumis-sivu .field--name-field-image {
    margin: 0px;
    width: 100%;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(0, calc(25% - 15px)));
    gap: 20px;
    justify-content: center;
}

a.colorbox {
    display: block;
}

a.colorbox:hover,
a.colorbox:focus {
    border-color: #86b7fe;
    box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);
    background-color: #e8f1f2;
}

a.colorbox img {
    margin: 0px;
}

a.linkbox {
    display: block;
    width: fit-content;
    border-radius: 5px;
    padding: 15px 75px;
    margin: 15px 0px;
    background-color: #1F2D40;
    font-weight: bold;
    color: #B8D7DB;
    text-decoration: none;
    transition: background-color 0.3s;
}

.more-link a {
    display: block;
    width: fit-content;
    border-radius: 5px;
    padding: 15px 35px;
    margin: 15px 0px;
    background-color: #1F2D40;
    font-weight: bold;
    color: #B8D7DB;
    text-decoration: none;
    transition: background-color 0.3s;
}

.more-link {
    display: flex;
    justify-content: right;
}

.pager {
    display: flex;
    justify-content: center;
    padding: 0px;
    list-style: none;
    margin: 0px;
    gap: 10px;
}

#quicktabs-etusivun_valilehdet .quicktabs-tabs a {
    display: block;
    width: fit-content;
    border-radius: 5px;
    padding: 15px 35px;
    margin: 5px 0px;
    background-color: #1F2D40;
    font-weight: bold;
    color: #B8D7DB;
    text-decoration: none;
    transition: background-color 0.3s;
    width: 100%;
    text-align: center;
}

.flex-wrap {
    gap: 5px;
}

a.linkbox:hover,
a.linkbox:focus,
.more-link a:hover,
.more-link a:focus,
#quicktabs-etusivun_valilehdet .quicktabs-tabs a:hover,
#quicktabs-etusivun_valilehdet .quicktabs-tabs a:focus-visible {
    color: #fff !important;
    background-color: #575757 !important;
}

a.linkbox-2,
a.button {
    display: block;
    width: fit-content;
    border-radius: 5px;
    padding: 15px 75px;
    margin: 15px 0px;
    background-color: #1b89bb;
    font-weight: bold;
    color: #fff;
    text-decoration: none;
    transition: background-color 0.3s;
}

a.linkbox-2:hover,
a.linkbox-2:focus,
a.button:hover,
a.button:focus {
    color: #fff !important;
    background-color: #d96e45 !important;
}

.btn-primary {
    background-color: #202939 !important;
    color: #B8D7DB;
    font-weight: bold;
}

.btn-primary:hover,
.btn-primary:focus {
    color: #fff !important;
    background-color: #575757 !important;
}

.btn-secondary {
    background-color: #1b89bb !important;
    color: #fff !important;
    font-weight: bold;
}

.btn-secondary:hover,
.btn-secondary:focus {
    color: #fff !important;
    background-color: #d96e45 !important;
}

.btn {
    border: none;
    border-radius: 5px;
    padding: 15px 25px;
    transition: background-color 0.3s;
}

.page-link {
    border-radius: 5px !important;
    border: none !important;
    background-color: #202939 !important;
    color: #B8D7DB !important;
    font-weight: bold;
    margin: 2px !important;
    padding: 10px 16px;
}

.page-item:first-child .page-link {
    margin-left: 0px !important;
}

.page-item:last-child .page-link {
    margin-right: 0px !important;
}

.page-item.active .page-link {
    background-color: #f5f5f5 !important;
    color: #222222 !important;
}

.page-link:hover,
.page-link:focus {
    color: #fff !important;
    background-color: #575757 !important;
}

.dialog-off-canvas-main-canvas .form-control,
.dialog-off-canvas-main-canvas .form-select {
    border: 1px solid #ddd;
    border-radius: 5px;
    padding: 15px;
    height: 54px !important;
}

.dialog-off-canvas-main-canvas .form-check-input[type="checkbox"] {
    border-radius: 0px;
}

.dialog-off-canvas-main-canvas .form-check-input:checked {
    background-color: #222222;
    border-color: #222222;
}

.dialog-off-canvas-main-canvas .form-check-input {
    width: 1.2em;
    height: 1.2em;
}

.dialog-off-canvas-main-canvas textarea.form-control {
    min-height: 110px;
}

.dialog-off-canvas-main-canvas details {
    background-color: #e8f1f2;
}

.dialog-off-canvas-main-canvas summary {
    background-color: #f8f7f3;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 5px;
}

.dialog-off-canvas-main-canvas .details-wrapper {
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 5px;
}

a.social {
    background-color: transparent;
    background-size: 35px;
    background-repeat: no-repeat;
    background-position: center;
    border-radius: 50%;
    display: inline-block;
    margin: 0px 5px;
    height: 60px;
    width: 60px;
    font-size: 0px !important;
    padding-left: 55px;
    /*border: 3px solid #fff;*/
}

a.social:hover,
a.social:focus {
    background-color: #d96e45;
}

a.instagram {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="white" class="bi bi-instagram" viewBox="0 0 16 16"><path d="M8 0C5.829 0 5.556.01 4.703.048 3.85.088 3.269.222 2.76.42a3.9 3.9 0 0 0-1.417.923A3.9 3.9 0 0 0 .42 2.76C.222 3.268.087 3.85.048 4.7.01 5.555 0 5.827 0 8.001c0 2.172.01 2.444.048 3.297.04.852.174 1.433.372 1.942.205.526.478.972.923 1.417.444.445.89.719 1.416.923.51.198 1.09.333 1.942.372C5.555 15.99 5.827 16 8 16s2.444-.01 3.298-.048c.851-.04 1.434-.174 1.943-.372a3.9 3.9 0 0 0 1.416-.923c.445-.445.718-.891.923-1.417.197-.509.332-1.09.372-1.942C15.99 10.445 16 10.173 16 8s-.01-2.445-.048-3.299c-.04-.851-.175-1.433-.372-1.941a3.9 3.9 0 0 0-.923-1.417A3.9 3.9 0 0 0 13.24.42c-.51-.198-1.092-.333-1.943-.372C10.443.01 10.172 0 7.998 0zm-.717 1.442h.718c2.136 0 2.389.007 3.232.046.78.035 1.204.166 1.486.275.373.145.64.319.92.599s.453.546.598.92c.11.281.24.705.275 1.485.039.843.047 1.096.047 3.231s-.008 2.389-.047 3.232c-.035.78-.166 1.203-.275 1.485a2.5 2.5 0 0 1-.599.919c-.28.28-.546.453-.92.598-.28.11-.704.24-1.485.276-.843.038-1.096.047-3.232.047s-2.39-.009-3.233-.047c-.78-.036-1.203-.166-1.485-.276a2.5 2.5 0 0 1-.92-.598 2.5 2.5 0 0 1-.6-.92c-.109-.281-.24-.705-.275-1.485-.038-.843-.046-1.096-.046-3.233s.008-2.388.046-3.231c.036-.78.166-1.204.276-1.486.145-.373.319-.64.599-.92s.546-.453.92-.598c.282-.11.705-.24 1.485-.276.738-.034 1.024-.044 2.515-.045zm4.988 1.328a.96.96 0 1 0 0 1.92.96.96 0 0 0 0-1.92m-4.27 1.122a4.109 4.109 0 1 0 0 8.217 4.109 4.109 0 0 0 0-8.217m0 1.441a2.667 2.667 0 1 1 0 5.334 2.667 2.667 0 0 1 0-5.334"/></svg>');
}

a.facebook {
    background-image: url("data:image/svg+xml,<svg viewBox='0 0 264 512' width='16' height='16' fill='white' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' d='M76.7 512V283H0v-91h76.7v-71.7C76.7 42.4 124.3 0 193.8 0c33.3 0 61.9 2.5 70.2 3.6V85h-48.2c-37.8 0-45.1 18-45.1 44.3V192H256l-11.7 91h-73.6v229' clip-rule='evenodd'/></svg>");
}

a.twitter-x {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="white" class="bi bi-twitter-x" viewBox="0 0 16 16"><path d="M12.6.75h2.454l-5.36 6.142L16 15.25h-4.937l-3.867-5.07-4.425 5.07H.316l5.733-6.57L0 .75h5.063l3.495 4.633L12.601.75Zm-.86 13.028h1.36L4.323 2.145H2.865z"/></svg>');
}

a.youtube {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="white" class="bi bi-youtube" viewBox="0 0 16 16"><path d="M8.051 1.999h.089c.822.003 4.987.033 6.11.335a2.01 2.01 0 0 1 1.415 1.42c.101.38.172.883.22 1.402l.01.104.022.26.008.104c.065.914.073 1.77.074 1.957v.075c-.001.194-.01 1.108-.082 2.06l-.008.105-.009.104c-.05.572-.124 1.14-.235 1.558a2.01 2.01 0 0 1-1.415 1.42c-1.16.312-5.569.334-6.18.335h-.142c-.309 0-1.587-.006-2.927-.052l-.17-.006-.087-.004-.171-.007-.171-.007c-1.11-.049-2.167-.128-2.654-.26a2.01 2.01 0 0 1-1.415-1.419c-.111-.417-.185-.986-.235-1.558L.09 9.82l-.008-.104A31 31 0 0 1 0 7.68v-.123c.002-.215.01-.958.064-1.778l.007-.103.003-.052.008-.104.022-.26.01-.104c.048-.519.119-1.023.22-1.402a2.01 2.01 0 0 1 1.415-1.42c.487-.13 1.544-.21 2.654-.26l.17-.007.172-.006.086-.003.171-.007A100 100 0 0 1 7.858 2zM6.4 5.209v4.818l4.157-2.408z"/></svg>');
}



/*ylatunniste*/

header a:focus,
header a:hover {
    border-color: #86b7fe;
    box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);
    color: initial;
    text-decoration: underline;
}

header #navbar-top {
    background-color: #fff;
    padding: 0px 15px !important;
    max-width: 1500px;
    margin: auto;
}

header #navbar-top a,
header #navbar-top p,
#navbar-main p {
    font-size: 1.0em;
    margin-bottom: 0px;
}

header #navbar-main {
    background-color: #1F2D40;
    padding: 0px;
    margin: auto;
}

.featured-top__inner {
    max-width: 100% !important;
    padding: 0px;
}

.region-header-featured {
    width: 100%;
    margin: 0px;
}

.block-views-exposed-filter-blockhaku-page-1 {
    display: none;
    width: 100%;
    padding: 0px 20px;
    padding-top: 20px;
    max-width: 1500px;
    margin: auto;
}

.block-views-exposed-filter-blockhaku-page-1 .content {
    float: right;
}

.block-views-exposed-filter-blockhaku-page-1 .flex-wrap {
    display: flex;
    justify-content: center;
    align-items: end;
}

.block-views-exposed-filter-blockhaku-page-1 .form-submit,
.block-views-exposed-filter-blockhaku-page-1 .haku-sulje {
    font-size: 0px;
    padding: 13px;
}

.block-views-exposed-filter-blockhaku-page-1 .form-submit:before {
    font-family: 'Material Icons';
    content: '\e8b6';
    font-size: 26px;
    line-height: 1;
}

.block-views-exposed-filter-blockhaku-page-1 .haku-sulje:before {
    font-family: 'Material Icons';
    content: '\e5cd';
    font-size: 26px;
    line-height: 1;
}

.region-top-header-form .block-views-exposed-filter-blockhaku-page-1 .form-control {
    height: 40px !important;
    max-width: 220px;
}

.region-top-header-form .block-views-exposed-filter-blockhaku-page-1 .form-submit {
    padding: 7px;
}

.region-top-header-form .block-views-exposed-filter-blockhaku-page-1 .haku-sulje {
    display: none;
}

.region-top-header-form .block-views-exposed-filter-blockhaku-page-1 .form-actions,
.region-top-header-form .block-views-exposed-filter-blockhaku-page-1 .form-type-search-api-autocomplete {
    margin-bottom: 0px !important;
}

.region-top-header-form .block-views-exposed-filter-blockhaku-page-1 {
    padding-top: 0px;
    padding-right: calc(var(--bs-gutter-x) * .5);
    padding-left: calc(var(--bs-gutter-x) * .5);
}

.region-top-header-form {
    align-items: center;
}

.tbm-collapse .region-top-header-form {
    justify-content: end;
    padding: 20px 20px;
    background-color: #e8f1f2;
    max-width: 100%;
    margin: 0px;
}

.tbm-collapse .region-top-header-form .block-language {
    padding: 0px;
}

.region-top-header-form .block,
.region-top-header-form .block .content,
.region-top-header-form .block .content .clearfix {
    display: flex;
    width: fit-content;
    height: 100%;
    align-items: center;
}

.region-top-header-form a {
    text-decoration: none;
}

.navbar-brand {
    margin-top: 5px !important;
    margin-bottom: 5px !important;
    padding-top: 0px;
    padding-bottom: 0px;
}

.navbar-brand img {
    max-height: 90px;
}

.block-text-resize-block h2 {
    font-size: 1.0em;
    font-weight: normal;
    margin: 0px;
    margin-right: 10px;
    margin-bottom: 0px;
}

#text_resize_decrease {
    margin: 1px !important;
    background: none !important;
    height: auto !important;
    width: 20px !important;
    font-size: 0px !important;
    margin-bottom: 0xp !important;
}

#text_resize_decrease::before {
    font-family: 'Material Icons';
    content: '\e15b';
    display: block;
    font-size: 18px !important;
    text-indent: 0px;
}

#text_resize_reset {
    margin: 1px !important;
    margin-left: 7px !important;
    background: none !important;
    height: auto !important;
    width: 20px !important;
    font-size: 0px !important;
    margin-bottom: 0px !important;
}

#text_resize_reset::before {
    font-family: 'Material Icons';
    content: '\e042';
    display: block;
    font-size: 18px !important;
    text-indent: 0px;
}

#text_resize_increase {
    margin: 1px !important;
    margin-left: 7px !important;
    background: none !important;
    height: auto !important;
    width: 20px !important;
    font-size: 0px !important;
    margin-bottom: 0px !important;
}

#text_resize_increase::before {
    font-family: 'Material Icons';
    content: '\e145';
    display: block;
    font-size: 18px !important;
    text-indent: 0px;
}

.block-language .links {
    margin-bottom: 0px;
}

.block-language .nav-link {
    padding: 0px 12px;
    border-right: 1px solid #ddd;
}

.block-language .nav-link:last-child {
    border: none;
}

#block-pyhajoki-barrio-hairiotiedote {
    padding: 20px 10px 0px 10px;
    text-align: center;
    background-color: #d96e45;
}

#block-pyhajoki-barrio-hairiotiedote .content,
#block-pyhajoki-barrio-hairiotiedote .content a,
#block-pyhajoki-barrio-hairiotiedote .content p {
    color: #fff;
    font-size: 1.0em;
}

.region-featured-top {
    margin: 0px;
}


/*alueet*/

.layout--twocol-section--33-67 .layout__region--first,
.layout--threecol-section--25-50-25 .layout__region--first {
    padding-right: 40px;
}

.layout--twocol-section--33-67 .layout__region--third,
.layout--threecol-section--25-50-25 .layout__region--third,
.layout--twocol-section--67-33 .layout__region--second {
    padding-left: 40px;
}

.node--type-page .layout--onecol .block-views-blockajankohtaista-block-13 {
    display: none;
}

.block-layout-builder .content {
    display: flex;
}

.layout__region .block {
    padding: 30px 0px;
}

.col-md-6 {
    width: 100% !important;
}

.field--name-field-ingressi {
    font-style: italic;
}

body:not(.user-logged-in) .field--name-status {
    display: none;
}

.field--name-body h1,
h1.title {
    font-size: 55px;
}

.field--name-body h2 {
    font-size: 48px;
}

.field--name-body h3 {
    font-size: 32px;
}

.field--name-body h4 {
    font-size: 27px;
}

.field--name-body h5 {
    font-size: 25px;
}

.field--name-body h6 {
    font-size: 22px;
}

.field--name-field-oikea-palsta {
    background-color: #e6eff0;
    padding: 25px;
}

.field--name-field-vasen-sisalto-toinen {
    background-color: #f8f7f3;
    padding: 25px;
}

.field--name-field-oikea-palsta p,
.field--name-field-vasen-sisalto-toinen p {
    font-size: 1.1em;
}

.field--name-field-oikea-palsta a,
.field--name-field-vasen-sisalto-toinen a {
    font-size: 26px;
}

.field--name-field-oikea-palsta h1,
.field--name-field-oikea-palsta h2,
.field--name-field-oikea-palsta h3,
.field--name-field-oikea-palsta h4,
.field--name-field-oikea-palsta h5,
.field--name-field-oikea-palsta h6,
.field--name-field-vasen-sisalto-toinen h1,
.field--name-field-vasen-sisalto-toinen h2,
.field--name-field-vasen-sisalto-toinen h3,
.field--name-field-vasen-sisalto-toinen h4,
.field--name-field-vasen-sisalto-toinen h5,
.field--name-field-vasen-sisalto-toinen h6 {
    border-bottom: 3px solid #ddd;
    margin: 10px -25px 20px -25px;
    padding: 10px 25px;
    font-weight: bold;
    color: #222222;
}

.region-featured-top .block-views-blocktuotekuvat-block-2 {
    padding: 0px;
    display: none;
}

.block-views-blocktuotekuvat-block-2 img {
    min-height: 270px;
    max-height: 600px;
    object-fit: cover;
}



/*megamenu*/
.block-tb-megamenu {
    margin: auto;
    max-width: 1200px;
    padding: 0px 12px;
}

.tbm {
    background-color: transparent;
}

.tbm-nav {
    justify-content: center;
    width: 100%;
}

.tbm-item.level-1>.tbm-link-container {
    max-width: 300px;
    min-width: 120px;
}

.tbm-submenu-toggle-icon {
    background-color: transparent;
    margin-left: 10px;
}

.tbm-link:not(.level-1)>.tbm-submenu-toggle-icon {
    display: none;
}

.tbm-submenu-toggle-icon::before {
    display: inline-block;
    font-family: 'Material Icons';
    content: '\e5e1';
    font-size: 20px;
    transform: rotate(90deg);
    border: none;
    transition: 0.3s transform;
}

.tbm-link.level-1:hover .tbm-submenu-toggle-icon::before,
.tbm-link.level-1:focus .tbm-submenu-toggle-icon::before {
    text-decoration: none !important;
}

.open .tbm-submenu-toggle-icon::before {
    transform: rotate(-90deg);
}

.tbm-item--has-flyout .tbm-submenu-toggle::before {
    display: none;
}

.tbm-item--has-flyout .tbm-submenu-toggle-icon::before {
    border: none;
}

.tbm-item--has-flyout .tbm-submenu-toggle::after {
    display: inline-block;
    font-family: 'Material Icons';
    content: '\f1df';
    font-size: 20px;
    color: #d96e45 !important;
    border: none;
    transition: 0.3s margin;
}

.tbm-item--has-flyout.open>div>.tbm-submenu-toggle::after {
    margin-left: 20px;
}

.tbm-submenu-toggle-icon:hover,
.tbm-submenu-toggle-icon:focus {
    background-color: transparent;
}

.tbm-item.level-1>.tbm-link-container .tbm-submenu-toggle-icon::before {
    color: #fff;
}

.tbm-link.level-1 {
    color: #fff;
    text-align: center;
    text-wrap: balance;
    background-color: #1f2d40;
    border: none;
    flex-wrap: nowrap;
}

.tbm-link.level-1:hover,
.tbm-link.level-1:focus {
    background-color: transparent;
}

.tbm-item.level-1 {
    border: none;
    max-width: 300px;
}

.tbm-has-width {
    border: 2px solid #fff;
    overflow: clip !important;
    animation: show 0.3s ease-in;
}

.tbm-submenu {
    padding: 0px;
    background: #fbfbfb;
}

.tbm-item.level-2 .tbm-submenu {
    box-shadow: none;
    animation: show 0.3s ease-in;
}

@keyframes show {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

.tbm-item--has-flyout>.tbm-submenu {
    left: calc(100%);
    margin: 0px !important;
}

.tbm-column {
    width: 391px;
    max-width: 100%;
}

.tbm-submenu .tbm-submenu {
    border: none !important;
}

.tbm-link.active-trail {
    font-weight: bold;
}

.tbm-link {
    text-decoration: none;
}

.tbm-link:hover,
.tbm-link:focus {
    text-decoration: underline;
    border-color: none;
    box-shadow: none;
}

.tbm-subnav>.tbm-item>.tbm-link-container>.tbm-link {
    color: #1F2D40;
    padding: 15px 20px;
}

.tbm-subnav>.tbm-item>.tbm-link-container>.tbm-link:hover,
.tbm-subnav>.tbm-item>.tbm-link-container>.tbm-link:focus {
    color: #000;
}

.tbm-subnav>.tbm-item>.tbm-link-container:hover,
.tbm-subnav>.tbm-item>.tbm-link-container:focus {
    background-color: #e8f1f2;
    text-decoration: underline;
}

.tbm-subnav>.tbm-item.open>.tbm-link-container {
    /*background-color: #e8f1f2a6;*/
}

.tbm-submenu-toggle-icon>span {
    color: #fff;
}

.tbm-button {
    display: none;
    font-size: 0px;
}

/*mobiili megamenu*/
.tbm--mobile .tbm-column,
.tbm--mobile .tbm-item.level-1>.tbm-link-container,
.tbm--mobile .tbm-item.level-1 {
    max-width: 100%;
    width: 100%;
}

.tbm--mobile .tbm-link.level-1 {
    color: #291F1E;
    background-color: #f5f5f5;
}

.tbm--mobile .tbm-subnav>.tbm-item {
    padding: 0px;
}

.tbm--mobile .tbm-collapse {
    margin-left: calc(-1 * var(--bs-gutter-x) * .5);
    width: 100vw;
    background-color: #f5f5f5;
    padding: 0px;
    border-top: 5px solid rgba(0, 0, 0, 0.2);
    border-bottom: 4px solid rgba(0, 0, 0, 0.2);
}

.tbm--mobile .tbm-submenu-toggle-icon::before {
    transform: rotate(0deg) !important;
    color: #fff;
}

.tbm--mobile .open>.tbm-link-container .tbm-submenu-toggle-icon::before {
    transform: rotate(90deg) !important;
}

.tbm--mobile .tbm-item.level-2.open,
.tbm--mobile .tbm-item.level-2.open>.tbm-submenu,
.tbm--mobile .tbm-item.level-3.open,
.tbm--mobile .tbm-item.level-3.open>.tbm-submenu {
    background-color: transparent;
}

.tbm--mobile .tbm-more-links {
    margin: 0px;
    padding: 10px;
}

.tbm--mobile .tbm-subnav {
    margin-left: 0px !important;
}

.tbm--mobile .tbm-item.level-2>.tbm-link-container>.tbm-link {
    margin-left: 1rem;
}

.tbm--mobile .tbm-item.level-3>.tbm-link-container>.tbm-link {
    margin-left: 2rem;
}

.tbm--mobile .tbm-item.level-4>.tbm-link-container>.tbm-link {
    margin-left: 3rem;
}

.tbm--mobile .open>.tbm-link-container .tbm-submenu-toggle-icon {
    background-color: #d96e45 !important;
}

.tbm--mobile .tbm-submenu-toggle-icon {
    display: inline-block;
    background-color: #1f2d40 !important;
    margin-left: auto;
    margin-top: -16px;
    margin-bottom: -16px;
    margin-right: -20px;
    width: 56px;
    min-height: calc(100% + 32px);
    border-left: 1px solid rgba(0, 0, 0, 0.2);
    padding: 16px 0px;
    font-weight: normal;
}

.tbm--mobile .tbm-item--has-flyout .tbm-submenu-toggle::after {
    content: '\e5e1';
    color: #fff !important;
    transition: 0.3s transform;
}

.tbm--mobile .tbm-item--has-flyout.open>div>.tbm-submenu-toggle::after {
    margin: 0px;
    transform: rotate(90deg);
}

.tbm--mobile .tbm-submenu-toggle {
    background-color: #1f2d40 !important;
}

.tbm--mobile .tbm-item--has-flyout.open>div>.tbm-submenu-toggle {
    background-color: #d96e45 !important;
}

.tbm--mobile .tbm-link.active-trail {
    font-weight: bold;
}

.tbm--mobile .tbm-button {
    position: absolute;
    right: 0px;
    bottom: 0px;
    background-color: transparent;
    border-radius: 0px;
    border: none;
    display: block;
    margin-right: 15px;
}

.tbm--mobile .tbm-subnav .tbm-subnav .tbm-item:first-child {
    border-top: 1px solid rgba(0, 0, 0, 0.2);
}

.tbm--mobile .tbm-item:last-child {
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

.tbm--mobile .tbm-more-links .tbm-item {
    border: none !important;
}

.tbm--mobile .tbm-more-links .tbm-link-container {
    margin-left: 0px !important;
}

.tbm--mobile .tbm-button .tbm-button-container {
    background-color: transparent;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="black" class="bi bi-list" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M2.5 12a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5"/></svg>');
    background-position: center;
    background-repeat: no-repeat;
    background-size: 40px;
    transition: transform 0.3s;
    transform: rotate(0deg);
    width: 57px;
    height: 57px;
    display: block;
    margin: 0px;
}

.tbm--mobile .tbm-button[aria-expanded="true"] .tbm-button-container {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="black" class="bi bi-x" viewBox="0 0 16 16"><path d="M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708"/></svg>');
    transform: rotate(180deg);
}

.tbm--mobile .tbm-button-container span {
    display: none;
}

.tbm--mobile .tbm-center>.tbm-submenu {
    transform: none;
}

.tbm--mobile .tbm-more-links .tbm-column-inner>ul.level-1 {
    max-width: 100%;
}

.tbm--mobile .tbm-more-links .tbm-column-inner>ul.level-2 {
    max-width: 100%;
}

.tbm--mobile .tbm-subnav .tbm-submenu-toggle-icon::before {
    font-family: 'Material Icons';
    content: '\e5e1';
    transform: translateY(-50%) translateX(-50%) rotate(-90deg);
    border: none;
    color: #fff !important;
    font-size: inherit;
}


/*sivuvalikko*/
.block-menu.menu--main .dropdown-menu {
    position: relative !important;
    z-index: 0;
    top: 0px !important;
    left: 0px !important;
    transform: none !important;
    padding: 0px;
    border: none;
    border-radius: 0px;
}

.block-menu.menu--main .dropdown-menu.show {
    display: none;
}

.block-menu.menu--main .menu-item--expanded.active a.active-trail {
    font-weight: bold;
}

.block-menu.menu--main .dropdown-item,
.block-menu.menu--main .dropdown-item.active {
    padding: 0px;
    background-color: transparent;
    color: #222222 !important;
}

.block-menu.menu--main .nav-item .dropdown-item a.active {
    color: #222222 !important;
}

.block-menu.menu--main .nav-item a.is-active {
    color: #222222 !important;
    background-color: #e6eff0;
    font-weight: normal !important;
}


.block-menu.menu--main a.nav-link,
.block-menu.menu--main .dropdown-item a {
    display: block;
    padding: 15px 15px;
    font-size: 1.0em !important;
    color: #222222 !important;
    transition: background-color 0.3s;
    text-decoration: none;
    border-top: 1px solid #ddd;
    white-space: normal;
}

.block-menu.menu--main a.nav-link:focus,
.block-menu.menu--main a.nav-link:hover,
.block-menu.menu--main .dropdown-item a:focus,
.block-menu.menu--main .dropdown-item a:hover {
    background-color: #f5f5f5 !important;
    text-decoration: underline !important;
}

.block-menu.menu--main .dropdown-menu .dropdown-item a {
    padding: 15px 30px;
}

.block-menu.menu--main .dropdown-menu .dropdown-menu .dropdown-item a {
    padding: 15px 45px;
}

.block-menu.menu--main .dropdown-menu .dropdown-menu .dropdown-menu .dropdown-item a {
    padding: 15px 60px;
}

.block-menu.menu--main .dropdown-menu .dropdown-menu .dropdown-menu .dropdown-menu .dropdown-item a {
    padding: 15px 75px;
}

.block-menu.menu--main .dropdown-toggle::after {
    font-family: 'Material Icons';
    content: '\e5cf';
    display: block;
    transition: transform 0.3s;
    transform: rotate(0deg);
    border: none;
    margin: 0px;
    float: right;
}

.block-menu.menu--main .nav-link-expanded.dropdown-toggle::after {
    transform: rotate(180deg);
}

.block-menu.menu--main h2 {
    font-weight: bold;
}



/*kuvalinkit*/
.block-field-blocknodelaskeutumis-sivufield-kuvalinkit {
    padding-top: 0px !important;
}

.field--name-field-kuvalinkit {
    display: flex;
    flex-wrap: wrap;
    padding: 0px;
    max-width: 1100px;
    margin: auto;
}

.field--name-field-kuvalinkit .field__item {
    display: flex;
    flex-wrap: wrap;
    min-width: min-content;
    flex: 1;
    height: min-content;
    justify-content: center;
}

.field--name-field-kuvalinkit .field__item a {
    position: relative;
    z-index: 1;
    display: block;
    padding-top: 90px;
    text-align: center;
    font-weight: bold;
    text-decoration: none;
    width: 100%;
    font-size: 24px;
    margin: 10px;
}

.field--name-field-kuvalinkit .field__item a:hover,
.field--name-field-kuvalinkit .field__item a:focus {
    border-color: #86b7fe;
    box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);
    color: initial;
    text-decoration: underline;
}

.field--name-field-kuvalinkit .field--name-field-linkkikuva {
    position: relative;
    top: 0px;
    height: 0px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0px !important;
}

.field--name-field-kuvalinkit .field--name-field-linkkikuva img {
    width: auto;
    max-height: 60px;
    margin-top: 30px;
}


/*linkit*/
.field--name-field-linkit {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin: 0px -10px;
}

.field--name-field-linkit .field__item {
    flex: 0 1 33.33%;
    padding: 10px;
}

.field--name-field-linkit .field__item a {
    display: block;
    width: 100%;
    background-color: #f8f7f3;
    font-weight: bold;
    text-decoration: none;
    padding: 20px;
}

.field--name-field-linkit .field__item a::after {
    display: block;
    width: fit-content;
    transition: padding 0.3s;
    font-family: 'Material Icons';
    content: '\f1df';
    font-size: 30px;
    color: #d96e45;
    float: right;
    padding-right: 20px;
    line-height: 1;
}

.field--name-field-linkit .field__item a:hover::after,
.field--name-field-linkit .field__item a:focus::after {
    padding-right: 0px;
}

.field--name-field-linkit .field__item a:hover,
.field--name-field-linkit .field__item a:focus {
    border-color: #86b7fe;
    box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);
    background-color: #e8f1f2;
    color: #222222 !important;
}


/*murupolku*/
.breadcrumb {
    margin: 20px 0px;
}

.breadcrumb-item {
    display: flex;
    height: inherit;
    align-items: center;
    color: #222222;
    font-size: 1.0em;
}

.breadcrumb-item a {
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.breadcrumb-item a:hover,
.breadcrumb-item a:focus {
    border-color: #86b7fe;
    box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);
}

.breadcrumb-item:first-child a {
    font-size: 0px;
}

.breadcrumb-item:first-child a::before {
    content: '';
    display: block;
    height: 25px;
    width: 25px;
    background-image: url('../images/icon_home.png');
    background-size: 20px;
    background-repeat: no-repeat;
    background-position: center;
}

.breadcrumb-item.active {
    color: #000;
}

.breadcrumb-item+.breadcrumb-item::before {
    font-family: 'Material Icons';
    content: '\e5cc';
}

/*flexslider*/

.layout .flexslider {
    margin: 0px;
}

.layout .flexslider img {
    margin: 60px 0px;
}

.flex-caption {
    display: flex;
    position: absolute;
    bottom: 0px;
    height: 100%;
    max-width: 550px;
    margin-left: 60px;
}

.flex-caption-content-inner {
    display: block;
    width: 100%;
    height: fit-content;
    margin: auto;
    padding: 30px;
    background-color: rgba(27, 137, 187, 0.9);
    color: #fff;
    font-weight: bold;
}

.flex-caption p {
    color: #fff;
    font-size: 20px;
}

.flex-caption a {
    color: #fff;

}

.flex-caption a:hover {
    color: #fff !important;
    text-decoration: underline;
}

.flex-caption h2 {
    font-size: 45px;
}

.flex-caption h1,
.flex-caption h2,
.flex-caption h3,
.flex-caption h4,
.flex-caption h5,
.flex-caption h6 {
    font-weight: bold;
    color: #fff;
}

.flex-control-nav {
    bottom: 0px;
}

.flex-control-paging li a {
    border-radius: 0px;
    box-shadow: 0px 0px 2px #000;
    background: rgba(255, 255, 255, 0.6);
}

.flex-control-paging li a.flex-active {
    background: rgb(255, 255, 255);
}

.flex-direction-nav a::before {
    display: flex;
}

.flex-direction-nav a.flex-prev::before {
    font-size: 0px;
    width: 35px;
    height: 35px;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="DarkSlateGray" class="bi bi-chevron-left" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z"/></svg>');
    background-size: 30px;
    background-position: center;
    background-repeat: no-repeat;
    background-color: #fff;
    border: 0px solid #000;
    border-radius: 0px;
    box-shadow: 0px 0px 2px #000;
}

.flex-direction-nav a.flex-next::before {
    font-size: 0px;
    width: 35px;
    height: 35px;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="DarkSlateGray" class="bi bi-chevron-right" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z"/></svg>');
    background-size: 30px;
    background-position: center;
    background-repeat: no-repeat;
    background-color: #fff;
    border: 0px solid #000;
    border-radius: 0px;
    box-shadow: 0px 0px 2px #000;
}

.flexslider {
    border: none !important;
}

.featured-top .block-views-blockdiaesitys-block-2 {
    display: none;
}

.layout__region .block-views-blockdiaesitys-block-2 {
    padding: 0px;
}

/*nostot*/
.view-id-nostot.view-display-id-block_3 .view-content {
    display: flex;
    flex-wrap: wrap;
}

.view-id-nostot.view-display-id-block_3 .views-row {
    display: block;
    flex: 0 1 25%;
    padding: 0px;
}

.nosto-item-small {
    display: flex;
    flex-wrap: wrap;
    margin: 10px;
    text-decoration: none;
    background-color: transparent;
    transition: background-color 0.3s;
    color: #222222 !important;
}

.nosto-item-small:hover,
.nosto-item-small:focus {
    border-color: #86b7fe;
    box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);
    background-color: #e8f1f2;
    color: #222222 !important;
}

.nosto-item-small .nosto-image {
    width: 100%;
    height: 220px;
}

.nosto-item-small .nosto-image img {
    object-fit: cover;
    height: 100%;
    min-width: 100%;
}

.nosto-item-small .nosto-text {
    width: 100%;
    padding: 20px;
    font-size: 18px;
}

.nosto-item-small .nosto-text h2 {
    font-size: 26px;
}

.nosto-item-small .nosto-text::after {
    display: block;
    width: 100%;
    transition: padding 0.3s;
    font-family: 'Material Icons';
    content: '\f1df';
    font-size: 30px;
    color: #d96e45;
    line-height: 1;
    font-weight: normal;
}

.nosto-item-small:hover .nosto-text::after,
.nosto-item-small:focus .nosto-text::after {
    padding-left: 40px;
}


.nosto-item {
    display: flex;
    margin: 10px 0px;
}

.nosto-item h3 {
    font-size: 36px;
}

.nosto-item .nosto-image {
    width: 50%;
    padding-right: 10px;
    height: 450px;
}

.nosto-item .nosto-image img {
    object-fit: cover;
    height: 100%;
    min-width: 100%;
}

.nosto-item .nosto-text-2 {
    width: 50%;
    padding-right: 10px;
}

.nosto-item .nosto-text-2-inner {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    padding: 30px;
    height: 100%;
    background-color: #1f2d40;
    color: #fff;
    position: relative;
}

.nosto-item .nosto-text-2-inner>* {
    color: #fff;
}

.nosto-item .nosto-text-2-inner iframe,
.nosto-item .nosto-text-2-inner .cookies-fallback--wrap {
    max-width: calc(100% + 60px);
    min-width: calc(100% + 60px);
    max-height: 100%;
    height: inherit;
    aspect-ratio: 16/9;
    position: relative;
    left: -30px;
    top: 10px;
}

.nosto-item .nosto-text {
    width: 50%;
    padding-left: 10px;
}

.nosto-item .nosto-text-inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 30px;
    background-color: #f8f7f3;
    height: 100%;
}

.no-nosto-image .nosto-text {
    width: 100%;
    padding: 0px;
}

.nosto-item .nosto-text-inner-first {
    width: 100%;
}

.nosto-item .nosto-text-inner-last {
    width: 100%;
}

.no-nosto-image .nosto-text-inner-first {
    width: 50%;
}

.no-nosto-image .nosto-text-inner-last {
    width: 50%;
}

.no-nosto-image .nosto-text-inner-last a.linkbox {
    margin: auto;
}

.block-views-blocknostot-block-4 .views-row:nth-child(even) .no-nosto-image .nosto-text-inner-first {
    order: 1;
}

.block-views-blocknostot-block-4 .views-row:nth-child(even) .nosto-item .nosto-image,
.block-views-blocknostot-block-4 .views-row:nth-child(even) .nosto-item .nosto-text-2 {
    order: 1;
    padding-right: 0px;
    padding-left: 10px;
}

.block-views-blocknostot-block-4 .views-row:nth-child(even) .nosto-item .nosto-text {
    padding-right: 10px;
    padding-left: 0px;
}

/*ajankohtaista*/
.block-views-blockajankohtaista-block-12 .view-content,
.block-views-blockajankohtaista-block-17 .view-content {
    display: flex;
    flex-wrap: wrap;
}

.block-views-blockajankohtaista-block-12 .views-row,
.block-views-blockajankohtaista-block-17 .views-row {
    display: block;
    flex: 0 1 25%;
    padding: 0px;
    width: 25%;
}

.layout__region--second .block-views-blockajankohtaista-block-12 .views-row,
.layout__region--second .block-views-blockajankohtaista-block-17 .views-row {
    flex: 0 1 100%;
}

.news-item {
    display: flex;
    flex-wrap: wrap;
    margin: 10px;
    text-decoration: none;
    background-color: transparent;
    transition: background-color 0.3s;
    color: #222222 !important;
}

.news-item:hover,
.news-item:focus {
    border-color: #86b7fe;
    box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);
    background-color: #e8f1f2;
    color: #222222 !important;
}

.news-image {
    width: 100%;
    height: 220px;
}

.news-image img {
    object-fit: cover;
    height: 100%;
    min-width: 100%;
}

.news-text {
    width: 100%;
    padding: 20px;
    font-size: 18px;
}

.block-views-blockajankohtaista-block-16 .news-item {
    background-color: #f8f7f3;
    margin-top: 20px;
    margin-bottom: 20px;
}

.block-views-blockajankohtaista-block-16 .news-text {
    width: 50%;
}

.block-views-blockajankohtaista-block-16 .news-image {
    width: 50%;
    height: 350px;
}

.block-views-blockajankohtaista-block-16 .views-row:nth-child(odd) .news-image {
    order: 1;
}

.news-text h3 {
    font-size: 26px;
}

.news-text time {
    font-size: 20px;
    font-weight: bold;
}

.news-text::after {
    display: block;
    width: 100%;
    transition: padding 0.3s;
    font-family: 'Material Icons';
    content: '\f1df';
    font-size: 30px;
    color: #d96e45;
    line-height: 1;
}

.news-item:hover .news-text::after,
.news-item:focus .news-text::after {
    padding-left: 40px;
}

.block-views-blockajankohtaista-block-13 .view-header {
    border-bottom: 3px solid #ddd;
}

.related-news-item {
    margin: 20px 0px;
}

.related-news-item a {
    font-weight: bold;
    text-decoration: none;
}

.related-news-item time {
    font-weight: bold;
}

.view-id-ajankohtaista.view-display-id-block_14 .view-content,
.view-id-tarjouspyynto.view-display-id-block_1 .view-content {
    padding-left: 100px;
}

.view-id-ajankohtaista.view-display-id-block_14 .views-row,
.block-views-blockajankohtaista-block-15 .views-row,
.view-id-tarjouspyynto.view-display-id-block_1 .views-row,
.view-id-tarjouspyynto.view-display-id-block_2 .views-row,
.view-id-tarjouspyynto.view-display-id-block_3 .views-row {
    padding: 10px;
    border-bottom: 1px solid #ddd;
}

.view-id-ajankohtaista.view-display-id-block_14 .views-row:first-child,
.block-views-blockajankohtaista-block-15 .views-row:first-child,
.view-id-tarjouspyynto.view-display-id-block_1 .views-row:first-child,
.view-id-tarjouspyynto.view-display-id-block_2 .views-row:first-child,
.view-id-tarjouspyynto.view-display-id-block_2 .views-row .views-row:first-child {
    padding-top: 0px;
}

.related-news-item .pubdate time {
    font-weight: normal;
}

.related-news-item .pubdate {
    color: #616161;
    text-transform: uppercase;
    font-size: 18px;
}


/*quicktabs*/
#quicktabs-etusivun_valilehdet {
    display: flex;
    flex-wrap: wrap;
}

#quicktabs-etusivun_valilehdet .item-list {
    flex: 1 1 250px;
}

#quicktabs-container-etusivun_valilehdet {
    flex: 1 1 950px;
}

#quicktabs-etusivun_valilehdet .list-group-item {
    border: none !important;
    margin: 0px !important;
    padding: 0px !important;
}

#quicktabs-etusivun_valilehdet .rssfeed-block ul {
    list-style: none;
    padding-left: 100px;
}

#quicktabs-etusivun_valilehdet .rssfeed-block li {
    padding: 10px;
    border-bottom: 1px solid #ddd;
}

#quicktabs-etusivun_valilehdet .rssfeed-block li:first-child {
    padding-top: 0px;
}

#quicktabs-etusivun_valilehdet .rssfeed-block li a {
    font-weight: bold;
    text-decoration: none;
}

#quicktabs-etusivun_valilehdet .list-group-item {
    background-color: transparent;
}

#quicktabs-etusivun_valilehdet .list-group-item a[aria-selected="true"],
#quicktabs-etusivun_valilehdet .list-group-item a.true:not([aria-selected="false"]) {
    background-color: #d96e45;
    color: #fff;
}


.rssfeed-block .pubdate {
    color: #616161;
    text-transform: uppercase;
    font-size: 18px;
}

.rssfeed-block .pubdate em {
    font-style: normal;
}

#block-pyhajoki-barrio-rssfeedblock .rssfeed-block .pubdate::after {
    content: ' | Avoimet työpaikat';
}

#block-pyhajoki-barrio-rssfeedblock-2 .rssfeed-block .pubdate::after {
    content: 'Kuulutukset';
}

#block-pyhajoki-barrio-rssfeedblock-3 .rssfeed-block .pubdate::after {
    content: 'Viranhaltijapäätökset';
}

#block-pyhajoki-barrio-rssfeedblock-4 .rssfeed-block .pubdate::after {
    content: 'Pöytäkirjat ja esityslistat';
}


/*tapahtumat*/
.block-views-blocktapahtumat-block-2 .view-content,
.block-views-blocktapahtumat-block-4 .views-infinite-scroll-content-wrapper {
    display: flex;
    flex-wrap: wrap;
}

.block-views-blocktapahtumat-block-3 .views-row {
    padding: 10px;
}

.block-views-blocktapahtumat-block-2 .views-row,
.block-views-blocktapahtumat-block-4 .views-row {
    display: block;
    flex: 0 1 25%;
    padding: 10px;
}

.layout__region--third .block-views-blocktapahtumat-block-2 .views-row,
.layout__region--second .block-views-blocktapahtumat-block-3 .views-row {
    flex: 0 1 100%;
}

.block-views-blocktapahtumat-block-2 .view-footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.block-views-blocktapahtumat-block-2 .view-footer a {
    margin-left: 10px;
    margin-right: 10px;
}


.event-item {
    display: flex;
    flex-wrap: wrap;
    text-decoration: none;
    background-color: transparent;
    transition: background-color 0.3s;
    color: #222222 !important;
    height: 100%;
}

.event-item:hover,
.event-item:focus {
    border-color: #86b7fe;
    box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);
    background-color: #e8f1f2;
    color: #222222 !important;
}

.event-image {
    width: 100%;
    height: 220px;
}

.event-image img {
    object-fit: cover;
    height: 100%;
    min-width: 100%;
}

.event-text {
    width: 100%;
    padding: 20px;
    font-size: 18px;
    font-weight: bold;
}

.event-text h3 {
    font-size: 26px;
}

.event-text time {
    font-size: 20px;
    font-weight: bold;
}

.event-text::after {
    display: block;
    width: 100%;
    transition: padding 0.3s;
    font-family: 'Material Icons';
    content: '\f1df';
    font-size: 30px;
    color: #d96e45;
    line-height: 1;
    font-weight: normal;
}

.event-item:hover .event-text::after,
.event-item:focus .event-text::after {
    padding-left: 40px;
}

.event-type {
    color: #616161;
    text-transform: uppercase;
    font-size: 18px;
    font-weight: normal;
}

.fc-toolbar {
    display: flex;
    flex-wrap: wrap;
}

.fc-left {
    width: 50%;
}

.fc-center {
    text-transform: capitalize;
    width: 50%;
    order: -1;
}

.fc-right {
    width: 100%;
    margin-top: 20px;
}

.fc-left .fc-button-group,
.fc-right .fc-button-group,
.fc-today-button {
    float: right;
}

/*kohdekortit*/
.view-kohdekortit-haku .views-infinite-scroll-content-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
    padding: 0px;
}

.view-kohdekortit-haku.view-id-kohdekortit_haku .views-row {
    width: 25%;
    height: auto;
    flex: 0 1 25%;
    padding: 10px;
}

.kohdekortti-item {
    width: auto;
    height: 100%;
    overflow: hidden;
}

.kohdekortti-image {
    width: 100% !important;
    height: 240px !important;
    display: block;
    overflow: clip;
}

.kohdekortti-image img {
    width: 100% !important;
    height: 240px !important;
    object-fit: cover;
    transition: transform .2s ease-in-out;
}

.kohdekortti-desc {
    padding: 20px 20px 25px 20px;
    height: calc(100% - 210px);
    font-weight: normal;
    font-size: 110%;
    color: #000;
}

.kohdekortti-desc .product-type {
    color: #616161;
    text-transform: uppercase;
    font-size: 18px;
    font-weight: normal;
}

.kohdekortti-desc h4 {
    margin: 0px !important;
}

.kohdekortti-desc::after {
    display: block;
    width: 100%;
    transition: padding 0.3s;
    font-family: 'Material Icons';
    content: '\f1df';
    font-size: 30px;
    color: #d96e45;
    line-height: 1;
    font-weight: normal;
    margin-top: 1rem;
}

a:hover>.kohdekortti-item .kohdekortti-desc::after,
a:focus>.kohdekortti-item .kohdekortti-desc::after {
    padding-left: 40px;
}

a:hover>.kohdekortti-item,
a:focus>.kohdekortti-item {
    border-color: #86b7fe;
    box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);
    background-color: #e8f1f2;
    color: #222222 !important;
}

.block-field-blocknodekohdekorttifield-openinghours {
    display: flex;
}


.view-id-tapahtumat .views-row .views-field,
.view-id-tapahtumat .views-row .field-content,
.view-id-tapahtumat .views-row a,
.view-id-kohdekortit_haku .views-row .views-field,
.view-id-kohdekortit_haku .views-row .field-content,
.view-id-kohdekortit_haku .views-row a {
    display: block;
    height: 100%;
    text-decoration: none;
}

/*alatunniste*/
.site-footer {
    padding: 0px;
    margin-top: 60px;
    padding-top: 60px;
    background: transparent !important;
    background-image: url('../images/aaltoprofiili.png') !important;
    background-size: 100% 60px !important;
    background-position: top !important;
    background-repeat: no-repeat !important;
}

.site-footer .container {
    max-width: 100%;
    padding: 0px;
    background-color: #1F2D40;
}

.site-footer-top .region {
    max-width: 1500px;
    margin: auto;
    padding: 20px;
    padding-bottom: 0px;
}

.site-footer-top .block {
    margin: 0px;
    padding: 0px;
}

.site-footer__top {
    max-width: 1500px;
    margin: auto;
    padding: 20px;
}

.site-footer__top h2 {
    text-transform: none;
}

.site-footer__bottom .region {
    max-width: 1480px;
    margin: auto;
    padding: 20px 0px;
}

.site-footer__bottom {
    margin-top: 0px;
    padding: 0px 20px;
    border: none;
}

.region-footer-fifth {
    border-top: 1px solid #ddd;
}

.site-footer .block {
    border: none;
}

.site-footer .content,
.site-footer .content p {
    font-family: "DM Sans", sans-serif, Arial;
    color: #fff;
    font-size: 1.0em;
}

.site-footer .content a,
.site-footer .content a.is-active {
    font-family: "DM Sans", sans-serif, Arial;
    color: #fff;
    font-size: 1.0em;
    font-weight: bold;
    text-decoration: none;
}

.site-footer h2,
.site-footer .field--name-body h2 {
    font-family: "DM Sans", sans-serif, Arial;
    color: #fff;
    border: none;
    font-size: 24px;
    font-weight: bold;
}

.site-footer .content a:hover,
.site-footer .content a:focus {
    color: #fff;
    text-decoration: underline !important;
    border-color: #86b7fe;
    box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);
}

#block-pyhajoki-barrio-evasteasetukset .cookies-cookie-settings-toggle--bottom {
    position: fixed;
    bottom: 5px;
    left: 5px;
    background: #eee;
    padding: 10px;
    color: #1F2D40;
    font-size: 15px;
}


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

    .layout--threecol-section .layout__region--first {
        flex: 0 1 33%;
    }

    .layout--threecol-section .layout__region--second {
        flex: 0 1 67%;
    }

    .layout--threecol-section .layout__region--third {
        flex: 0 1 100%;
        padding-left: 0px;
    }

    .layout__region--third .block-views-blocktapahtumat-block-2 .views-row {
        flex: 0 1 25%;
    }
}

@media screen and (max-width: 1200px) {
    .block-tb-megamenu-menu-blockmain {
        display: block;
        width: 100%;
        margin: 0px;
    }

    header #navbar-main {
        background-color: #222222;
    }

    .flexslider .flex-direction-nav a {
        display: block !important;
    }

    .flex-direction-nav .flex-prev {
        opacity: 1;
        left: 10px;
    }

    .flex-direction-nav .flex-next {
        opacity: 1;
        right: 10px;
    }

    body .dialog-off-canvas-main-canvas,
    body .node__content,
    body p,
    .site-footer .content,
    .site-footer .content a,
    .site-footer .content a.is-active {
        font-size: 16px !important;
    }

    body h1 {
        font-size: 38px;
    }

    body h2,
    .nosto-item h3 {
        font-size: 26px;
    }

    body h3 {
        font-size: 22px;
    }

    body h4 {
        font-size: 20px;
    }

    body h5 {
        font-size: 18px;
    }

    body h6 {
        font-size: 16px;
    }

    .news-text,
    .news-text time,
    .event-text,
    .event-text time {
        font-size: 16px;
    }

    .news-text h3,
    .event-text h3 {
        font-size: 22px;
    }


    .field--name-body h1,
    h1.title {
        font-size: 42px !important;
    }

    .field--name-body h2 {
        font-size: 35px !important;
    }

    .field--name-body h3 {
        font-size: 30px !important;
    }

    .field--name-body h4 {
        font-size: 24px !important;
    }

    .field--name-body h5 {
        font-size: 22px !important;
    }

    .field--name-body h6 {
        font-size: 20px !important;
    }

    .field--name-field-oikea-palsta p,
    .field--name-field-vasen-sisalto-toinen p {
        background-color: #e6eff0;
        padding: 25px;
        font-size: 16px;
    }

    .field--name-field-oikea-palsta a,
    .field--name-field-vasen-sisalto-toinen a {
        font-size: 24px;
    }

    .block-views-exposed-filter-blockhaku-page-1 .form-type-search-api-autocomplete {
        max-width: 60%;
    }

    #block-pyhajoki-barrio-ylatunniste p,
    #block-pyhajoki-barrio-haku p {
        font-size: 1.1em !important;
    }

    .flex-caption p,
    .flex-caption a {
        font-size: 16px;
    }

    .flex-caption h2 {
        font-size: 38px;
    }

    .field--name-field-kuvalinkit .field__item a {
        font-size: 20px;
    }

    .rssfeed-block .pubdate,
    .event-type {
        font-size: 16px;
    }

    .site-footer .content a.social {
        font-size: 0px !important;
    }


    #quicktabs-etusivun_valilehdet .item-list {
        flex: 1 1 100%;
    }

    #quicktabs-container-etusivun_valilehdet {
        flex: 1 1 100%;
    }

    #quicktabs-etusivun_valilehdet .rssfeed-block ul,
    .view-id-ajankohtaista.view-display-id-block_14 .view-content,
    .view-id-tarjouspyynto.view-display-id-block_1 .view-content {
        padding-left: 0px;
    }

    .field--name-field-linkit .field__item {
        flex: 0 1 50%;
    }

    .block-views-exposed-filter-blockhaku-page-1 {
        margin-right: 0px;
    }

    .navbar-form {
        display: none;
    }

    .block-tb-megamenu {
        padding: 0px;
    }
}

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


    .layout--twocol-section--33-67 .layout__region--first,
    .layout--threecol-section--25-50-25 .layout__region--first {
        padding-right: 0px;
        order: 1;
        flex: 0 1 100% !important;
    }

    .layout--twocol-section--33-67 .layout__region--second,
    .layout--threecol-section--25-50-25 .layout__region--second,
    .layout--twocol-section--67-33 .layout__region--first {
        flex: 0 1 100% !important;
    }

    .layout--twocol-section--33-67 .layout__region--third,
    .layout--threecol-section--25-50-25 .layout__region--third,
    .layout--twocol-section--67-33 .layout__region--second {
        padding-left: 0px;
        order: 2;
        flex: 0 1 100% !important;
    }

    .block-menu.menu--main,
    .node--type-page .layout--twocol-section .block-views-blockajankohtaista-block-13 {
        display: none;
    }

    .node--type-page .layout--onecol .block-views-blockajankohtaista-block-13 {
        display: block;
    }

    .featured-top .block-views-blockdiaesitys-block-2 {
        display: block;
    }

    .featured-top .block-views-blockdiaesitys-block-2 .flexslider {
        margin-left: -12px;
        margin-right: -12px;
    }

    main .block-views-blockdiaesitys-block-2 {
        display: none;
    }

    .block-views-blockajankohtaista-block-12 .views-row,
    .block-views-blockajankohtaista-block-17 .views-row,
    .layout__region--second .block-views-blockajankohtaista-block-12 .views-row,
    .layout__region--second .block-views-blockajankohtaista-block-17 .views-row,
    .block-views-blocktapahtumat-block-2 .views-row,
    .block-views-blocktapahtumat-block-4 .views-row,
    .layout__region--third .block-views-blocktapahtumat-block-2 .views-row,
    .view-id-nostot.view-display-id-block_3 .views-row,
    .view-kohdekortit-haku.view-id-kohdekortit_haku .views-row {
        flex: 0 1 33.33%;
        width: 33.33%;
    }

    .layout__region--third .block-views-blocktapahtumat-block-2 .views-row,
    .layout__region--second .block-views-blocktapahtumat-block-3 .views-row {
        flex: 0 1 33.33%;
    }

    .region-featured-top .block-views-blocktuotekuvat-block-2 {
        display: block;
    }

    #main-content .block-views-blocktuotekuvat-block-2 {
        display: none;
    }

    .node--type-laskeutumis-sivu .field--name-field-artikkelikuva,
    .node--type-laskeutumis-sivu .field--name-field-image {
        grid-template-columns: repeat(auto-fit, minmax(0, calc(33.33% - 15px)));
    }
}

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

    .flexslider img {
        min-height: 270px;
        object-fit: cover;
    }

    .flex-caption {
        position: relative;
        margin: 0px;
        width: 100%;
        max-width: 100%;
        background-color: #1b89bb;
    }

    .flexslider {
        background-color: #1b89bb;
    }

    .flex-direction-nav a {
        top: 30%;
    }

    .nosto-item {
        display: block;
    }

    .nosto-item .nosto-image {
        width: 100%;
        padding: 0px !important;
        height: 250px;
    }

    .nosto-item .nosto-text-2 {
        width: 100%;
        padding: 0px !important;
    }

    .nosto-item .nosto-text {
        width: 100%;
        padding: 0px !important;
    }

    .block-views-blocknostot-block-4 .views-row:nth-child(even) .no-nosto-image .nosto-text-inner-first {
        order: 0;
    }

    .no-nosto-image .nosto-text-inner-first,
    .no-nosto-image .nosto-text-inner-last {
        width: 100%;
    }

    .no-nosto-image .nosto-text-inner-last a.linkbox {
        margin: 0px;
    }

    .block-views-blockajankohtaista-block-12 .views-row,
    .block-views-blockajankohtaista-block-17 .views-row,
    .layout__region--second .block-views-blockajankohtaista-block-12 .views-row,
    .layout__region--second .block-views-blockajankohtaista-block-17 .views-row,
    .block-views-blocktapahtumat-block-2 .views-row,
    .block-views-blocktapahtumat-block-4 .views-row,
    .layout__region--third .block-views-blocktapahtumat-block-2 .views-row,
    .view-id-nostot.view-display-id-block_3 .views-row,
    .view-kohdekortit-haku.view-id-kohdekortit_haku .views-row {
        flex: 0 1 50%;
        width: 50%;
    }

    .layout__region--third .block-views-blocktapahtumat-block-2 .views-row,
    .layout__region--second .block-views-blocktapahtumat-block-3 .views-row {
        flex: 0 1 50%;
    }

    .field--name-field-linkit .field__item {
        flex: 0 1 100%;
    }

    .block-views-blockajankohtaista-block-16 .news-text {
        width: 100%;
    }

    .block-views-blockajankohtaista-block-16 .news-image {
        width: 100%;
        height: 220px;
    }

    .block-views-blockajankohtaista-block-16 .views-row:nth-child(odd) .news-image {
        order: 0;
    }

    .block-views-exposed-filter-blockhaku-page-1 .flex-wrap {
        justify-content: right;
    }

    .region-top-header-form .block-views-exposed-filter-blockhaku-page-1 .form-control {
        max-width: 100%;
    }

    .node--type-page .field--name-field-artikkelikuva,
    .node--type-laskeutumis-sivu .field--name-field-artikkelikuva,
    .node--type-laskeutumis-sivu .field--name-field-image {
        grid-template-columns: repeat(auto-fit, minmax(0, calc(50% - 10px)));
    }

}

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

    .block-views-exposed-filter-blockhaku-page-1 .form-type-search-api-autocomplete {
        max-width: 70%;
    }

    .block-views-exposed-filter-blockhaku-page-1 {
        padding: 0px;
        padding-top: 20px;
    }

    .block-views-blocktapahtumat-block-2 .view-footer a {
        margin-left: 0px;
        margin-right: 0px;
    }

    .block-views-blockajankohtaista-block-12 .views-row,
    .block-views-blockajankohtaista-block-17 .views-row,
    .layout__region--second .block-views-blockajankohtaista-block-12 .views-row,
    .layout__region--second .block-views-blockajankohtaista-block-17 .views-row,
    .block-views-blocktapahtumat-block-2 .views-row,
    .block-views-blocktapahtumat-block-4 .views-row,
    .layout__region--third .block-views-blocktapahtumat-block-2 .views-row,
    .view-id-nostot.view-display-id-block_3 .views-row,
    .view-kohdekortit-haku.view-id-kohdekortit_haku .views-row {
        flex: 0 1 100%;
        width: 100%;
    }

    .layout__region--third .block-views-blocktapahtumat-block-2 .views-row,
    .layout__region--second .block-views-blocktapahtumat-block-3 .views-row {
        flex: 0 1 100%;
    }

    .node--type-page .field--name-field-artikkelikuva,
    .node--type-laskeutumis-sivu .field--name-field-artikkelikuva,
    .node--type-laskeutumis-sivu .field--name-field-image {
        grid-template-columns: auto;
    }

}