.font-cabin,
.font-cabin * {
    font-family: 'Cabin', sans-serif;
    font-weight: bold;
}

a.korona {
    background: none !important;
    border: 1px solid #000 !important;
    color: #000 !important;
    padding: .5rem 1rem;
}

.site-footer .block {
    padding: 15px;
    padding-top: 0;
    border: none;
}

.site-footer__bottom, .site-footer__bottom .region {
    margin-top: 0;
    border: none;
}

.footerlogo strong {
    font-weight: bold;
}

.region-footer-first img {
    margin-top: 0 !important;
}

.keskelle {
    margin: 0 auto;
}

.cl {
    float: right;
}

body {
    font-family: 'Montserrat', sans-serif;
}

.hanuripainike {
    padding-bottom: 15px;
}

.node--type-asukastoiminta-pop .field--name-title {
    font-size: 1.4rem;
}

#page-wrapper>#page {
    max-width: 1400px;
    margin: 0 auto;
}

body:not(.node--type-asuntokohde):not(.node--type-asuntokohteet-asukassivut) .region.row.region-content {
    padding-top: 30px;
}

.path-frontpage .region.row.region-content {
    padding-top: 0;
}

.region.row.region-content>*>*>.node--type-perusalasivu {
    margin-top: -30px;
}

.editlohko {
    position: absolute;
    z-index: 4;
}

p, h1, h2, h3, h4, h5, h6, h7, span {
    font-family: 'Montserrat', sans-serif;
}

.site-footer .content {
    font-size: 1rem;
}

.field--name-field-digiesite-kansikuva {
    margin: 0 !important;
    width: 100%;
    float: none !important;
}

.field--name-field-digiesite-kansikuva img {}

.ajaxer .card-footer {
    border: 0 none;
    text-align: right;
}

html .ajaxer .card-body {
    min-height: 140px;
    padding-left: 15px;
    padding-right: 15px;
}

.field--name-field-sisalto-2, .field--name-field-sisalto-3, .field--name-field-sisalto-4, .field--name-field-sisalto-2+.katsosomessa, .field--name-field-sisalto-3+.katsosomessa, .field--name-field-sisalto-4+.katsosomessa {
    padding-bottom: 15px;
}

.cl>i {
    color: #fff;
    width: 32px;
    line-height: 34px;
    text-align: center;
    cursor: pointer;
    font-size: 32px;
    font-weight: bold;
    height: 32px;
    display: inline-block;
    background-color: #115B69;
}

.cl>i:before {
    font-weight: bold;
    line-height: 32px;
}

.addtoany_list.a2a_kit_size_32 a>span {
    border-radius: 0;
}

.node--type-article .col-sm-8 {
    padding-bottom: 60px;
}

.node--type-article img {
    margin-top: 15px;
}

.card-body+.cl {
    bottom: 15px;
}

html .mediallekuvat .cl {
    margin-top: 15px;
    margin-right: -15px;
}

.addtoany_list.a2a_kit_size_32>a {
    /* height: 32px; */
    /* width: 32px; */
    display: inline-block;
    /* margin-left: 5px; */
    padding-right: 0;
    font-size: 12px;
    line-height: 12px;
}



.ajaxer .addtoany_list {
    float: left;
    line-height: 12px !important;
}

.katsosomessa {
    right: 200px;
    z-index: 9;
    color: #5599cd
}

.cl i:hover {
    background-color: #000;
}

.digis {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    width: 100%;
    height: 100%;
}

.digis * {
    width: 100%;
    height: 100%;
    display: block;
}

.digicard .card-header {
    border: 0 none;
}

.card-group:not(.pienetblogit) .card:not(.kysymyksetcard):not(.juststatic) .card-footer, body.node--type-asuntokohde .col>.card:not(.kysymyksetcard) .card-footer {
    position: absolute;
    border: 0 none;
    bottom: 0;
    left: 0;
    padding-left: 5px;
    padding-right: 5px;
    width: 100%;
}

.view-medialle .card-footer, .pienetblogit .card-footer {
    position: static !important;
}

.pienetblogit img {
    display: none;
}

.blogitjauutiset h3 {
    font-size: 20px;
}

.wanhat:nth-child(2n) .pienetblogit .digicard {
    background-color: #D6C3AA;
}

.wanhat:nth-child(2n+1) .pienetblogit .digicard {
    background-color: #ebe1d5;
}

.pienetblogit .digicard .card-footer {
    position: static;
    background-color: transparent;
}

.dovl img {
    width: 100%;
    height: auto;
    margin: 0;
}

.asuntokohdeteksti {
    /* padding-left: 35px; */
    padding-right: 35px;
}

body.path-frontpage .node__content {
    margin-top: -10px;
}

.node__content {
    font-size: 1rem;
    margin-top: 0;
}

.card.text-white p, .card.text-white a, .card.text-white p, .card.text-white a {
    color: #fff;
}

p {
    /* line-height: 1.55; */
    /* font-size: 1.1rem; */
    color: #000;
    font-weight: 400;
}

h1 {
    font-size: 40px;
    margin-bottom: 2rem;
    line-height: 1.1;
}

.wanhat>h2 {
    margin-bottom: 30px;
    text-align: center;
}

h2 {
    font-size: 24px;
    margin-bottom: 2rem;
}

h3 {
    font-size: 20px;
    font-weight: normal;
}

h4 {
    font-size: 18px;
    font-weight: normal;
}

.card-body.tulossa h3 {
    font-size: 20px;
}

/* ==================================================
      General
      ================================================== */

.top-0 {
    top: 0;
}

.left-0 {
    left: 0;
}

a {
    -webkit-transition: color .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -moz-transition: color .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -ms-transition: color .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -o-transition: color .4s cubic-bezier(.25, .21, .015, .995) 0s;
    transition: color .4s cubic-bezier(.25, .21, .015, .995) 0s;
    color: #115B69;
}

p>a,p>a:hover {
    text-decoration: underline;
}

.site-footer .content a, .site-footer .content a.is-active {
    color: #115B69;
}

/*:focus, .focus {
        border: 2px solid #f39200;
        border-radius: 5px;
        background-color: rgba(243, 146, 0, 0.7) ;
        }*/

/* ==================================================
      Elements
      ================================================== */

.btn {
    background-color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    color: #182F32;
    border-radius: 50px;
    letter-spacing: 0.02rem;
    padding: 0.5rem 1.5rem;
}

.btn-outline-light:not(.btn-sm) {
    padding: .5em 2rem;
    ;
}

.btn-primary:not(:disabled):not(.disabled).active, .btn-primary:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active, .btn-outline-light:not(:disabled):not(.disabled):active, .show>.btn-outline-light.dropdown-toggle, .show>.btn-primary.dropdown-toggle, #block-webform .btn-primary:hover, #block-webform-2 .btn-primary:hover {
    background-color: #115B69;
}

.btn-outline-light:not(:disabled):not(.disabled).active, .btn-outline-light:not(:disabled):not(.disabled):active, .show>.btn-outline-light.dropdown-toggle {
    color: #fff;
}

.btn:not(.faq-btn):focus:after {
    color: #fff !important;
}

.vihrea .faq-btn {
    background-color: #385346;
}

.vaaleasininen .faq-btn {
    background-color: #385346;
}

.haettavissa:not(.card-body).btn-default:hover,
.valmistumassa:not(.card-body).btn-default:hover,
.tulossa-amp-haettavissa:not(.card-body).btn-default:hover,
.valmistunut-amp-haettavissa:not(.card-body).btn-default:hover {
    background-color: #115B69;
}

.btn:not(.faq-btn):hover, .tulossa.btn-default:hover {
    background-color: #115B69;
    color: #fff;
}

a.btn:not([href]):not([tabindex]):focus, a.btn:not([href]):not([tabindex]):hover {
    color: #fff;
}

.btn.taustankanssa:focus {
    color: #fff !important;
}

.btn:not(.faq-btn):focus {
    color: #fff;
    background-color: #115B69 !important;
}

.btn:focus {
    box-shadow: 0 0 0 !important;
}

.btn-ghost {
    border: 3px solid #fff;
    background-color: transparent;
}

.btn-ghost:hover {
    background-color: #fff;
    color: #199EB8;
}

nav.tabs li a {
    background-color: #fff;
    border-radius: 0 !important;
}

.otsikko {
    margin-top: 15px;
    text-align: center;
    margin-bottom: 30px;
}

html body.path-frontpage nav.tabs {
    top: -42px;
}

html nav.tabs {
    z-index: 10;
    margin-bottom: 30px;
    left: 0;
}

.ajaxer {
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    background-color: transparent;
    width: 100%;
    z-index: 999999;
}

.aj>*, .aj {
    height: 100%;
    overflow: auto;
}

.ajaxer.ladataan .aj>*>.col, .ajaxer.ladataan .aj>*>.col .card {
    background-color: transparent;
    border: 0 none;
    box-shadow: 0 0 0;
}

.aj>*>.col {
    background-color: #fff;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    box-shadow: 0 10px 10px rgba(0, 0, 0, .3);
}

section {
    /* padding: 85px 0; */
}

.hero-section-content .field--name-title,
.hero-section-content h1 {
    font-size: 50px;
}

.bg-primary {
    background-color: #2980c1 !important;
}

.bg-secondary {
    background-color: #16b4c4 !important
}

.bg-success {
    background-color: #2f3989 !important;
}

.card.medialle {
    height: 100%;
}

.card-group>.card .card, .card-group>.card.lisacard .card {
    border: 0 none !important;
    border-radius: 0 !important;
}

.eisata .card {
    margin-left: 15px;
    margin-right: 15px;
}

.card-group>.card {
    border-radius: 0;
    border-color: #ccc !important;
}

.blogitjauutiset .withload .card, .withload:not(.col)>.card:not(.col):not(.col-xl-3) {
    display: none;
}

.withload .jokanelja+.card, .withload .card.nayta {
    display: block !important;
}

.view.card-group .digicard, .view-uudishankkeet .card {
    border: 1px solid #fff !important;
}

.card .cardgroupinside, .card .cardgroupinside>.content, .card .cardgroupinside>.content .field--name-field-cards, .card .cardgroupinside>.content .card {
    height: 100%;
}

.w-100.kysymyksetcard.nelja .card {
    width: 100%;
    -ms-flex: 1 0 100%;
    flex: 1 2 100%;
    max-width: 100%;
}

.card.nelja, .neljas_osa .card {
    -ms-flex: 1 0 25%;
    flex: 1 1 25%;
    max-width: 25%;
}

*:not(.card-group)>.card .dovl {
    /* height: 100%; */
    /* float: left; */
}

*:not(.card-group)>.card:not(.col-xl-3) {
    position: relative;
    padding: 0;
    border: 0;
    border-radius: 0;
    margin: 0;
    overflow: hidden;
    /* height: 100%; */
}

a:hover {
    text-decoration: none !important;
    color: #000;
}

.site-footer .content a:hover, .site-footer .content a:focus {
    color: #000;
}

.scrolltop {
    display: none;
    position: fixed;
    bottom: 15px;
    right: 15px;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #199EB8;
    color: #fff;
    text-align: center;
    font-size: 24px;
}

.scrolltop:hover, .scrolltop:active, .scrolltop:focus {
    color: #fff !important;
    opacity: .75;
}

/* ==================================================
      Hero Styling
      ================================================== */

.hero {
    display: table;
    position: relative;
    background-image: url(../img/cover.jpg);
    background-size: cover;
    padding: 150px 0;
    color: #fff;
    width: 100%;
    height: 100vh;
}

.hero:after {
    content: '';
    z-index: 0;
    position: absolute;
    background: rgba(0, 0, 0, 0.65);
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
}

.hero .container {
    position: relative;
    z-index: 1;
    text-align: center;
    display: table-cell;
    vertical-align: middle;
    width: 100%;
}

.hero-brand {
    margin-bottom: 75px;
    display: inline-block;
}

.hero-brand:hover {
    opacity: .75;
}

.tagline {
    font-size: 26px;
    margin: 45px 0 75px 0;
    color: #fff;
}

/* ==================================================
      Header Styling
      ================================================== */

body.toolbar-horizontal .is-sticky #header {
    top: 38px !important;
}

.is-sticky #header {
    padding-left: 0;
    padding-right: 0;
    background-color: #fff;
}

.is-sticky #header #logo {
    margin: 0;
}

body.toolbar-tray-open .is-sticky #header {
    top: 78px !important;
}

#header-sticky-wrapper:not(.is-sticky)>#header {
    display: flex;
    width: 100%;
}

section.theheader #header>.container-fluid {
    display: flex;
    align-items: center;
    padding-left: 0;
    padding-right: 0;
    flex-wrap: wrap;
}

#header-sticky-wrapper>#header>.container-fluid>*>a, section.theheader > #header>.container-fluid>*>a {
    display: block;
    margin-right: 0px;
    float: none;
}

#header, .highlighted {
    padding-left: 45px;
    padding-right: 45px;
}

.node--type-asuntokohteet-asukassivut .card {
    border: 0 none;
}

.node--type-asuntokohteet-asukassivut .btn {
    white-space: normal !important;
}

footer.site-footer>div, .theheader>*, .ajaxer .card-body {
    width: 1400px;
    margin: 0 auto;
    padding-left: 0;
    padding-right: 0;
    max-width: 100%;
}

#header {
    background: #fff;
    padding-left: 0;
    padding-right: 0;
    max-width: 100%;
}

#header #logo {
    padding: 2rem 2rem 2rem 0;
}

#header #logo h1 {
    font-size: 36px;
    margin: 0;
    padding: 2px 0;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 3px;
    text-transform: uppercase;
}

#header #logo h1 a, #header #logo h1 a:hover {
    color: #fff;
}

#header #logo img {
    padding: 0;
    margin: 0;
    width: auto;
}

@media (max-width: 1600px) {
    html .navbar-nav a {
        font-size: 14px;
    }
}

#search-block-form {
    position: relative;
    display: flex;
    align-items: center;
}

.theheader {
    position: relative;
}

.theheader>* {
    background-color: #fff;
}

/*.theheader:before, .theheader:after {*/
/*    width: 50%;*/
/*    height: 100%;*/
/*    position: absolute;*/
/*    background-color: #16b4c4;*/
/*    left: 0;*/
/*    content: "";*/
/*    z-index: -1;*/
/*}*/

/*.theheader:after {*/
/*    background-color: #2980c1;*/
/*    left: auto;*/
/*    right: 0;*/
/*    top: 0;*/
/*}*/

.theheader {
    padding-top: 0;
    padding-bottom: 0;
}

#header-sticky-wrapper #logo {
    width: 200px;
}

.is-sticky .hakulomake .form-submit:after {
    -webkit-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -moz-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -ms-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -o-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
}

#header-sticky-wrapper:not(.is-sticky) {
    height: auto !important;
}

footer ul.nav>li>a:hover, footer ul.nav a.nav-link:hover {
    background-color: #115B69;
    color: #fff;
    border-color: #115B69;
}

@media (min-width: 992px) {
    .relaetufoo {
        display: none;
    }
    html .kolme .card.nelja, html .kolme .neljas_osa .card {
        -ms-flex: 1 0 33.3333333% !important;
        flex: 1 1 33.3333333% !important;
        max-width: 33.3333333% !important;
    }
    .paavalikko ul.nav li ul li a:hover, .paavalikko ul.nav li ul li a.active {
        text-decoration: underline !important;
    }
    .paavalikko ul.nav li ul li a {
        text-align: left;
        padding: 5.5px 15px;
        line-height: 18px;
    }
}

@media (min-width: 992px) and (max-width: 1200px) {
    #header-sticky-wrapper:not(.is-sticky)>#header>.container-fluid>* {
        width: auto !important;
        padding-left: 15px !important;
    }
    .paavalikko ul.nav li ul li a.active:after {
        bottom: -30px;
    }
}

@media (min-width: 992px) {
    #logo+.hakulomake {
        display: none !important;
    }
    .site-footer__bottom {
        margin-top: -30px;
        width: 400px;
        position: relative;
    }
    #header-sticky-wrapper>#header {
        top: -200px !important;
        -webkit-transition: top .4s cubic-bezier(.25, .21, .015, .995) 0s;
        -moz-transition: top .4s cubic-bezier(.25, .21, .015, .995) 0s;
        -ms-transition: top .4s cubic-bezier(.25, .21, .015, .995) 0s;
        -o-transition: top .4s cubic-bezier(.25, .21, .015, .995) 0s;
        transition: top .4s cubic-bezier(.25, .21, .015, .995) 0s;
    }
    body:not(.toolbar-tray-open) #header-sticky-wrapper.is-sticky>#header, body:not(.toolbar-tray-open) .is-sticky:before {
        top: 40px !important;
    }
    body:not(.toolbar-horizontal) #header-sticky-wrapper.is-sticky>#header, body:not(.toolbar-horizontal) .is-sticky:before {
        top: 0px !important;
    }
    body.toolbar-horizontal.toolbar-tray-open #header-sticky-wrapper.is-sticky>#header, .is-sticky:before {
        top: 80px !important;
    }
    .is-sticky #header {
        pointer-events: none;
    }
    .is-sticky #header>* {
        pointer-events: auto;
        padding-left: 0;
        padding-right: 0;
    }
}

@media (min-width: 1401px) {

    .page-node-14 .field--name-title {
        max-width: 65%;
        display: inline-block;
    }
}

.haetastalaatikko {
    padding-left: 15px !important;
    padding-right: 15px !important;
    text-align: center;
}

@media (min-width: 1200px) and (max-width: 1400px) {
    .etusivuviim h2 {
        font-size: 1.6rem !important;
    }
    .etusivuviim h1 {
        font-size: 1.8rem !important;
    }
    .page-node-14 .field--name-title {
        max-width: 75%;
        display: inline-block;
    }
}

html body #header-sticky-wrapper nav.navbar-expand-lg ul.navbar-nav>li ul>li {
    padding: .25rem;
}

@media (min-width: 1701px) {
    html body #header-sticky-wrapper nav.navbar-expand-lg ul.navbar-nav>li ul {
        margin-left: -1rem;
        border-spacing: 5px 0px !important;
        text-align: center;
        border-radius: 0
    }
    .navbar-expand-lg ul {
        max-width: 960px;
    }
}

.hakulomake .content {
    width: 100%;
}

@media (min-width: 768px) and (max-width: 1200px) {
    .kysymyksetcard {
        /* margin-bottom: 60px !important; */
    }
    .card.nelja, .card-group>.card, .neljas_osa .card {
        -ms-flex: 1 0 50%;
        flex: 1 2 40%;
        max-width: 50%;
    }
    html .is-sticky #header #logo {
        margin-right: 0;
    }
    html #header {
        padding-left: 0;
        padding-right: 0;
    }
}

@media (min-width: 992px) and (max-width: 1200px) {
    html body .navbar-expand-lg ul.navbar-nav>li>a {
        font-size: 0.7em !important;
        max-width: 70px !important;
    }

    html body nav.navbar-expand-lg ul.navbar-nav {
        max-width: 777px;
        float: left !important;
    }
    html .is-sticky .region-primary-menu>.hakulomake {
        /* display: none; */
    }
}

@media (min-width: 992px) and (max-width: 1100px) {
    html .region-primary-menu>* {
        /* display: block; */
    }
    html .is-sticky .region-primary-menu>.hakulomake {
        display: table-cell;
    }
    html .region-primary-menu>.hakulomake {
        /* padding: 5px; */
        /* width: 250px; */
        /* float: right; */
    }
}

@media (min-width: 480px) and (max-width: 767px) {
    .is-sticky #header #logo img {
        max-height: 50px !important;
    }
    html body .is-sticky .hakulomake input[type="search"], html body .is-sticky .hakulomake .form-submit, html body .is-sticky .hakulomake .form-actions, .is-sticky .hakulomake .form-submit:after, .is-sticky .menu--language-selector .nav, .is-sticky #block-languageswitcher .links, .is-sticky .navbar-toggler {
        -webkit-transition: color 0s cubic-bezier(.25, .21, .015, .995) 0s;
        -moz-transition: color 0s cubic-bezier(.25, .21, .015, .995) 0s;
        -ms-transition: color 0s cubic-bezier(.25, .21, .015, .995) 0s;
        -o-transition: color 0s cubic-bezier(.25, .21, .015, .995) 0s;
        transition: color 0s cubic-bezier(.25, .21, .015, .995) 0s;
    }
    body .is-sticky .hakulomake .form-submit:after {
        line-height: 50px !important;
    }
    .card.nelja, .neljas_osa .card {
        -ms-flex: 1 0 25%;
        flex: 1 1 50%;
        max-width: 50%;
    }
}

@media (max-width: 1400px) and (min-width: 992px) {
    .is-sticky:before {
        height: 97px;
    }
    .is-sticky #header>* {
        padding-right: 0;
    }
    #navbar-top {
        margin-right: 1rem;
    }
    .theheader {
        /* min-height: 96px; */
    }
    .theheader:before, .theheader:after {
        display: none;
    }
    html .is-sticky #header {
        height: 85px;
        background-position: center bottom;
    }
    .is-sticky #header {
        padding-left: 0;
        padding-right: 0;
        background-size: auto 100%;
    }
    .region-primary-menu {
        display: table;
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }

    html body .hakulomake input[type="search"] {
        min-width: 65px !important;
        padding: 0;
        /* height: 55px; */
    }

    #header #logo {
        padding: 1rem;
    }

    #header-sticky-wrapper:not(.is-sticky)>#header>.container-fluid:after {
        content: "";
        clear: both;
        display: block;
    }
    #header {
        height: auto;
    }
    html .paavalikko ul.nav>li>ul {
        margin-top: 0;
        /* margin-left: -6px !important; */
    }
    #header #logo img {
        height: auto;
        /*max-width: 108px;*/
        /* margin-bottom: 15px; */
    }
    html body nav.navbar-expand-lg ul.navbar-nav {
        text-align: left;
        border-spacing: 5px 0px;
        /* float: none !important; */
    }
    html body nav.navbar-expand-lg ul.navbar-nav li {
        /* height: 50px; */
    }
    html body .paavalikko ul.nav>li>ul>li:first-child:hover:after, .paavalikko ul.nav>li>ul>li:first-child.active:after {
        left: -0.5px;
    }

    html body .navbar-expand-lg ul.navbar-nav>li>a {
        width: 85px !important;
        /* padding-left: 5px !important; */
        /* padding-right: 5px !important; */
    }
    html body nav.navbar-expand-lg ul.navbar-nav>li a {
        font-size: 14px;
    }
    html .paavalikko ul.nav>li>ul>li:first-child:before, .paavalikko ul.nav>li>ul>li:first-child:after {
        left: -1px;
    }
    html .paavalikko ul.nav>li>ul>li:first-child:after {
        left: -0px;
    }
    #header-sticky-wrapper.is-sticky .hakulomake .content {
        float: right;
        margin-right: -2px;
    }
    html .region-primary-menu>*.hakulomake {
        padding-right: 5px;
    }
    html .region-primary-menu>* {
        vertical-align: top;
    }
    .is-sticky .hakulomake {
        /* padding-top: 5px; */
    }
}

@media (min-width: 480px) and (max-width: 767px) {
    *:not(.col)>.card:not(.col):not(.col-xl-3), #ymparistovastuu *:not(.col)>.card:not(.col):not(.col-xl-3), #environmental-responsibility *:not(.col)>.card:not(.col):not(.col-xl-3) {
        margin-bottom: 0 !important;
        width: 50%;
        max-width: 50% !important;
        margin: 0 auto;
        -ms-flex: 1 0 50%;
        flex: 1 0 50%;
    }
    *:not(.col)>.card:not(.col):not(.col-xl-3) .card {
        width: 100% !important;
        max-width: 100% !important;
    }
}

@media (max-width: 480px) {
    html body nav.navbar-expand-lg ul.navbar-nav li.menu-item--expanded:after {
        right: .5em !important;
    }
    *:not(.col)>.card:not(.col):not(.col-xl-3):nth-child(2n+1) {
        clear: both;
    }
    .blogitjauutiset .card {
        clear: none !important;
    }
    .card-group {
        display: block;
    }
    *:not(.col)>.card:not(.col):not(.col-xl-3) .card {
        width: 100% !important;
        max-width: 100% !important;
    }
}

@media (max-width: 767px) {
    .mobiilipad {
        padding-left: 0 !important
    }
    .node--type-asuntokohde .mobiilipad {
        padding-right: 0;
    }
    
    #header {
        height: auto;
    }
    #header #logo {
        margin: 10px 0 0 0;
    }
    #header #logo h1 {
        padding: 2px 0;
        font-size: 26px;
    }
}

#header .social-nav {
    margin-top: 15px;
}

#header .social-nav a {
    font-size: 24px;
    margin-left: 15px;
    color: #fff;
}

#header .social-nav a:hover {
    color: rgba(255, 255, 255, 0.75);
}

/*--------------------------------------------------------------
    # Navigation Menu
    --------------------------------------------------------------*/

/* Nav Menu Essentials */

header .navbar-nav {
    height: 100%;
}

header .navbar-nav, .navbar-nav * {
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-footer__top .block-menu {
    width: 100%;
}

footer ul .dropdown-toggle::after {
    display: none;
}

footer ul.nav {
    display: grid;
    gap: 1rem;
    width: 100%;
    grid-template-columns: repeat(4,1fr);
}

footer ul.nav>li, footer ul.nav>li:first-child {
    border: 0 none;
}

footer ul.nav>li>div {
    padding-left: 10px;
    padding-right: 10px;
}

footer ul.nav ul {
    display: block;
    list-style: none;
}

footer ul.nav ul {
    padding: 0;
    margin: 0;
}

footer ul.nav li div a {
    font-size: 12px;
    font-weight: normal;
}

footer ul.nav li div {
    line-height: 14px;
}

footer ul.nav>li>a {
    background-color: #fff;
    border: 2px solid #182F32;
    margin-bottom: 10px;
    margin-left: 5px;
}

footer ul.nav a.nav-link, footer ul.nav>li>a {
    line-height: 1rem;
}

footer ul.nav .menu-item--expanded>.nav-link {
    font-weight: bold;

}


footer ul.nav a.nav-link.is-active {
    text-decoration: underline;
}

footer ul.nav ul li a, footer ul.nav ul li, footer ul.nav ul {
    background-color: transparent !important;
    border: 0 none;
    box-shadow: 0 0 0;
}

.site-footer__top .block-menu {
    padding-top: 30px;
}

header .navbar-nav ul {
    position: absolute;
    display: none;
    top: top;
    left: 0;
    z-index: 99;
}

header .navbar-nav li {
    position: relative;
    display: flex;
    padding: 1rem 1rem 1rem 1rem;
    align-items: center;
    gap: 1rem;
}

header .navbar-nav .nav-item.dropdown .nav-link:after {
    content: "\f078";
    font-family: "FontAwesome";
    font-style: normal;
    font-weight: normal;
}

header .navbar-nav>li {
    float: left;
}

.navbar-nav li.sfHover>ul {
    display: block;
}

header .navbar-nav ul ul {
    top: 0;
    left: 100%;
}

/* Nav Menu Arrows */

.sf-arrows .sf-with-ul {
    padding-right: 30px;
}

.sf-arrows .sf-with-ul:after {
    content: "\f107";
    position: absolute;
    right: 15px;
    font-family: "FontAwesome";
    font-style: normal;
    font-weight: normal;
}

.sf-arrows ul .sf-with-ul:after {
    content: "\f105";
}

/* Nav Meu Container */

#navbar-main {
    margin: 0;
}

input[type="search"]::placeholder {
    color: #182F32 !important;
    opacity: 1 !important;
}

@media (min-width: 992px) {
    html .paavalikko ul.nav>li:hover>ul, html .paavalikko ul.nav>li.sfHover>ul {
        margin-left: -1rem;
        margin-top: 0px;
        padding: 0 !important
    }
    .is-sticky .region-primary-menu, .is-sticky .region-primary-menu>* {
        vertical-align: top !important;
    }
    .is-sticky .navbar-expand-lg ul {
        border-spacing: 5px 0px !important;
    }
    input[type="search"] {
        padding-right: 70px;
    }
    .navbar-expand-lg ul {
        display: flex;
        width: 100%;
        align-items: end;
        position:relative;
    }
    .navbar-expand-lg ul.navbar-nav:after {
        display: none;
    }
    html body .is-sticky .navbar-expand-lg ul.navbar-nav li {
        /* line-height: 0.9em !important; */
    }
    html body .is-sticky .navbar-expand-lg ul.navbar-nav li a {
        /* font-size: 0.9em; */
        /* width: auto; */
    }
    .is-sticky #search-block-form {
        /* width: 300px; */
    }
    html body .navbar-expand-lg ul.navbar-nav>li {
        cursor: pointer;
    }
    html body .is-sticky .navbar-expand-lg ul.navbar-nav li {}
    input[type="search"], input[type="text"] {
        color: #182F32 !important;
        border-radius: 0;
    }
    input[type="search"], input[type="text"] {}
    input[type="search"]:focus::placeholder {
        opacity: 0 !important;
    }
    input[type="search"]:-ms-input-placeholder, input[type="search"]::-ms-input-placeholder {
        color: #182F32 !important;
        opacity: 1 !important;
        /* Firefox */
    }
    html body .is-sticky .hakulomake input[type="search"] {
        border-color: #5599cd
    }
    html body .hakulomake input[type="search"] {
        box-shadow: 0 0 0 !important;
    }
    .hakulomake .form-group {
        margin-bottom: 0;
    }
    .navbar-expand-lg .navbar-nav .nav-link {
        padding-right: 0.3rem;
        padding-left: 0.3rem;
    }
}

@media (max-width: 800px) {
    .node--type-asuntokohteet-asukassivut {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .blogitjauutiset h3 {
        font-size: 20px;
        min-height: 35px;
    }
}

@media (max-width: 991px) {
    .navbar-light .navbar-nav .active>.nav-link, .navbar-light .navbar-nav .nav-link.active {
        color: #fff;
    }

    .menu--main .menu-item--expanded.show:not(.active) .nav-link:before {
        content: "\f077";
    }
    footer ul.nav>li>a {
        margin-left: 0;
    }
    footer ul.nav>li {
        grid-column: span 2 / span 2;
    }
    html .mediallekuvat .cl {
        margin-right: 15px;
    }
    html h1 {
        margin-bottom: 2rem;
    }
    .jokanelja+.card+.fullwidth {
        padding-top: 15px;
        padding-bottom: 15px;
    }
    .region-footer-third {
        margin-left: 0;
        margin-right: 0;
    }


    .row.row-eq-height:not(.borderinkanssa) {
        display: block;
    }
    .col {
        width: 100%;
        float: none;
        display: block;
        margin-bottom: 15px !important;
    }
    .etusivuviim .col.mb-0 {
        margin-bottom: 0 !important;
    }
    header .navbar-nav a {
        width: auto!important;
    }
    #header-sticky-wrapper.is-sticky {
        padding-bottom: 15px;
    }
    html body .navbar-light .navbar-nav .active, html body .navbar-light .navbar-nav .active>a, html body .navbar-light .navbar-nav li>a.nav-link:hover, html body .navbar-light .navbar-nav .active>a.active {
        background-color: #385346 !important;
    }
    .card-group {
        /* display: block; */
        /* width: 100%; */
    }
    input[type="search"]::placeholder {
        font-size: 18px;
        font-weight: 500;
        text-align: left;
    }
    #block-cardgroupvuokraasunnot .card {
        margin-bottom: 60px !important;
    }
    footer ul.nav li {
        border: 0;
        width: 100%;
    }
    #navbar-main .navbar-collapse {
        margin-top: 0px;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: auto;
        z-index: 10;
    }
    html .aj>*, .aj {
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;
    }
    #navbar-main .navbar-collapse>div {
        margin-top: 0px;
    }
    .theheader {
        min-height: 113px;
    }
    html body .is-sticky .paavalikko {
        margin-top: 0 !important;
    }
    #header-sticky-wrapper>#header>.container-fluid #navbar-main {
        padding-top: 0px !important;
        float: right !important;
        position: static;

        flex-wrap: wrap;
    }
    #header-sticky-wrapper:not(.is-sticky) {
        padding-bottom: 0;
    }
    #header-sticky-wrapper {
        height: auto !important;
    }
    .region-primary-menu {
        margin-left: 0;
        margin-right: 0;
    }
    #header {
        height: auto;
    }
    #header-sticky-wrapper:not(.is-sticky)>#header>.container-fluid>* {
        display: block;
    }
    html body .hakulomake input[type="search"] {
        height: 50px !important;
        margin-top: 12px;
        border: 1px solid #fff;
        background-color: #fff;
    }
    .paavalikko ul.nav>li>ul>li:first-child:before, .paavalikko ul.nav>li>ul>li:first-child:after {
        display: none;
    }
    .paavalikko ul.nav>li>ul {
        display: table;
        border-spacing: 5px 0px !important;
        margin-left: 0px !important;
        width: 100% !important;
        padding-top: 0 !important;
        /* margin-top: 5px !important; */
        /* margin-bottom: 5px !important; */
        /* border-top: 1px solid #eee !important; */
        /* border-bottom: 1px solid #eee !important; */
    }
    html .paavalikko ul.nav>li>ul, .paavalikko ul.nav>li>ul li {
        margin: 0 auto;
    }
    html .paavalikko ul.nav>li>ul, html .paavalikko ul.nav>li:hover>ul {
        display: none;
    }
    .paavalikko ul.nav>li>ul li {
        display: block !important;
    }
    .paavalikko ul.nav>li>ul {
        display: none;
    }
    .paavalikko ul.nav>li.nayta, .paavalikko ul.nav>li.active.dropdown {
        padding-bottom: 0;
    }

    /* , .paavalikko ul.nav>li.active>ul */
    .paavalikko ul.nav>li.show>ul {
        display: block !important;
        margin-top: 0px;
        padding-bottom: 0;
    }

    html body nav.navbar-expand-lg ul.navbar-nav li ul {
        background-color: rgba(85, 153, 205, 1);
    }
    html body nav.navbar-expand-lg ul.navbar-nav li ul li {
        background-color: transparent;
        width: 100% !important;
        padding: 0 !important;
    }
    html body nav.navbar-expand-lg ul.navbar-nav li ul li a {
        width: 100% !important;
        display: flex;
        padding: 1rem;
        gap: 1rem;
    }
    html body nav.navbar-expand-lg ul.navbar-nav li a {
        padding-top: 0;
        padding-bottom: 0;
    }
    html body nav.navbar-expand-lg ul.navbar-nav li ul li a {
        /* max-width: 150px; */
        /* padding-top: 10px; */
        background-color: #182F32;
        color: #fff;
    }
    html body div nav.navbar-expand-lg ul.navbar-nav>li {
        border: 0 none
    }
    html body div nav.navbar-expand-lg ul.navbar-nav>li:hover, html body div nav.navbar-expand-lg ul.navbar-nav>li:hover>a {
        background-color: #115B69;
    }
    html body nav.navbar-expand-lg ul.navbar-nav li>a {
        background-color: #182F32;
    }
    html body nav.navbar-expand-lg ul.navbar-nav li.menu-item--expanded.nayta {
        padding-bottom: 0 !important;
        border-bottom: 0 none !important;
    }
    html body nav.navbar-expand-lg ul.navbar-nav li.menu-item--expanded:hover, html body nav.navbar-expand-lg ul.navbar-nav li.menu-item--expanded:hover>a {
        background-color: #115B69;
    }
    html body nav.navbar-expand-lg ul.navbar-nav li.menu-item--expanded {
        background-color: #182F32;
    }
    html body nav.navbar-expand-lg ul.navbar-nav li.menu-item--expanded>a {
        position: relative;
        width: auto !important;
        color: #fff;
        background-color: #182F32;
    }
    html header .navbar-light .navbar-nav .nav-link, html header .navbar-light .navbar-nav .nav-link:focus {
        color: #fff;
    }
    html body nav.navbar-expand-lg ul.navbar-nav li.menu-item--expanded {
        position: relative;
        flex-direction: column;
    }
    .menu--main .menu-item--expanded .nav-link:before {
        content: "\f078";
        font-family: "FontAwesome";
        font-size: 1rem;
        color: #fff !important;
        margin-left: auto;

    }
    .menu--main .menu-item--expanded .nav-link {
        display: flex;
        align-items: center;
        flex-direction: row-reverse;
        font-size: 1.25rem;
        font-weight: bold;
    }
    html body nav.navbar-expand-lg ul.navbar-nav li.menu-item--expanded:after:hover {
        color: rgba(85, 153, 205, 1)
    }
    html body nav.navbar-expand-lg ul.navbar-nav li a,
    html body nav.navbar-expand-lg ul.navbar-nav li span {
        padding: 1rem;
        display: block;
        width: 100%;
    }

    .mobilenav-close {
        padding: 1rem;
        border-bottom: 1px #385346 solid;
    }

    html body nav.navbar-expand-lg ul.navbar-nav li span {
        cursor: pointer;
        user-select: none;
    }

    header .navbar-nav li {
        gap: 0;
    }

    /*html body nav.navbar-expand-lg ul.navbar-nav li a:not(.btn-default):not(.btn-outline-light):not(.border-light),*/
    /*html body nav.navbar-expand-lg ul.navbar-nav li span:not(.btn-default):not(.btn-outline-light):not(.border-light){*/
    /*    border-bottom: 1px #fff solid !important;*/
    /*}*/
    html body nav.navbar-expand-lg ul.navbar-nav li {
        height: auto;
        /* border: 0 none; */
        width: auto !important;
        padding-top: 0px !important;
        padding-bottom: 0px !important;
    }
    #header #logo {
        padding-top: 30px;
    }
    #header #logo {
        width: 200px;
        padding-left: 0;
        padding-top: 8px;
    }
    html #header .container-fluid>#logo {
        margin-top: 0;
        margin-right: auto;
        padding: 1rem;
        display: flex;
        align-items: center;
    }
    #logo+.hakulomake form, #logo+.hakukone .form-control, html body #logo+.hakulomake input[type="search"], #logo+.hakulomake .form-submit {
        height: 74px !important;
        border-radius: 0;
    }
    html body #logo+.hakulomake input[type="search"] {
        border: 0px none;
        height: 35px !important;
        margin-top: 20px;
        text-align: left !important;
        /* margin-left: -55px !important; */
        max-width: 105px;
        border-bottom: 2px solid #5599cd;
    }
    #logo+.hakulomake form>* {
        margin-bottom: 0;
    }
    #logo+.hakukone .form-control {}
    #logo+.hakulomake, #header-sticky-wrapper>#header>.container-fluid>.hakulomake {
        float: right !important;
        width: 100px;
        margin-top: 8px;
        height: 74px;
        max-width: 160px;
        margin-right: 74px;
    }
    #header-sticky-wrapper>#header>.container-fluid {
        display: flex;
        float: none;
    }
    #header-sticky-wrapper>#header {
        display: table;
        width: 100%;
        float: none;
    }
    html body .region-primary-menu>.hakulomake {
        display: none !important;
    }
    html body .region-primary-menu>* {
        display: block !important;
        width: 100%;
        padding-top: 0px;
        margin-top: 0px;
        border-top: 0px none;
        padding-bottom: 0;
    }
    .is-sticky .navbar-toggler {
        top: 8px;
    }
    .navbar-toggler {
        padding: 0;
        margin-left: 17.5px;
        border-radius: 0;
        border: 0px none;
    }
    .navbar-toggler-icon {
        background-image: url(/themes/contrib/subtheme/img/yleiset/mob-nav.png) !important;
        background-size: 100% auto;
        background-position: top center;
    }
    .collapsed .navbar-toggler-icon {
        background-position: bottom center;
    }
    .navbar-toggler:hover {
        background: #fff;
    }
    .karusellit:not(.loaded) {
        padding-top: 0;
    }
    .toolbar-fixed #header-sticky-wrapper #header {
        top: 39px !important;
    }
    .theheader #header {
        /* position: static !important; */
        padding-left: 15px;
        padding-right: 15px;
        top: 0px !important;
    }
    #header #logo img {
        max-height: 75px;
        margin-top: 5px;
    }
    .theheader {
        min-height: 50px;
    }

    header .navbar-nav li {
        padding: 0;
    }
    .dropdown-menu .dropdown-item a {
        padding-left: 2rem !important;
    }
    ul.nav.navbar-nav {
        max-height: calc(100vh - 96px);
        overflow-y: auto;
        flex-wrap: nowrap;
    }
}

@media (min-width: 768px) {
    #block-cardgroupvuokraasunnot .card {
        margin-bottom: 60px !important;
    }

    .view-uudiskohteet .view-content .w-100:nth-child(even)  .image-block-section,
    .view-uutisarkisto-uusi .view-content .w-100:nth-child(even)  .image-block-section,
    .page-node-16 .view-uudishankkeet .w-100:nth-child(even)  .image-block-section {
        flex-direction: row-reverse!important;
    }
}

@media (max-width: 550px) {
    .karusellit {
        display: none;
    }

    footer ul.nav>li {
        grid-column: span 4 / span 4;
    }
}

@media (max-width: 480px) {
    *:not(.col)>.card, *:not(.col)>.card:not(.col):not(.col-xl-3) {
        max-width: 100% !important;
        width: 100%;
    }
    *:not(.col)>.card.seurcard, *:not(.col)>.card.seurcard:not(.col):not(.col-xl-3) {
        max-width: 50% !important;
        width: 50%;
    }
    html .card.nelja, html body *>.card-group>.card, html .neljas_osa .card, html *:not(.col)>.card:not(.col) {
        -ms-flex: 1 0 100%;
        flex: 1 1 100%;
        width: 100%;
        max-width: 100% !important;
    }
    #header #logo {
        width: 100px;
        padding: 7px 0 0px 0px !important;
    }
}

@media (max-width: 767px) {
    .col:not(.normcol) {
        width: 100%;
        float: none;
        display: block;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
}
@media (max-width: 480px) {
    .col {
        width: 100%;
        float: none;
        display: block;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
    .kohdeaddtoany {
        text-align: left !important;
        padding-left: 0;
        padding-top: 0 !important;
        margin-left: -4px;
        margin-top: -2.5em;
        z-index: 2;
    }
}
.kohdeaddtoany .addtoany_list.a2a_kit_size_32 a > span.a2a_label {
    display: none;
}

.is-sticky #navbar-main {
    padding-top: 0px;
    padding-left: 0;
    padding-right: 0;
    /* margin-left: -15px; */
    /* margin-right: -15px; */
}

html body .hakulomake .form-submit {
    /*outline: 0 !important;*/
    box-shadow: 0 0 0 !important;
    position: relative;
}

.hakulomake .form-submit:after {
    content: "\f002";
    color: #182F32;
    font-size: 1.5rem;
    width: auto;
    display: inline-block;
    font-family: "FontAwesome";
    height: 100%;
    margin-left: -50%;
}

/* Nav Meu Styling */

html body .hakulomake input[type="search"]:focus, html body .hakulomake:hover input[type="search"] {
    border-color: #5599cd;
}

ul.action-links {
    list-style: none;
    margin: 0 !important;
    padding: 0 !important;
}

a.nav-link, .dropdown-item>a {
    -webkit-transition: color 0s cubic-bezier(.25, .21, .015, .995) 0s;
    -moz-transition: color 0s cubic-bezier(.25, .21, .015, .995) 0s;
    -ms-transition: color 0s cubic-bezier(.25, .21, .015, .995) 0s;
    -o-transition: color 0s cubic-bezier(.25, .21, .015, .995) 0s;
    transition: color 0s cubic-bezier(.25, .21, .015, .995) 0s;
}

header .navbar-nav a {
    padding: 2px 5px 2px 5px;
    text-decoration: none;
    display: inline-block;
    font-weight: 500;
    line-height: 1em;
    word-wrap: normal;
    font-size: 1rem;
    width: 100%;
    text-align: center;
}

header .navbar-light .navbar-nav .nav-link, header .navbar-light .navbar-nav .nav-link:focus {
    color: #182F32;
    font-weight: 500;
}

.navbar-light .navbar-nav li:hover .nav-link:focus {
    color: #fff;
}

header .navbar-nav li {
    background-color: #fff;
}

header .navbar-nav>li:hover,
header .navbar-nav>li.dropdown.show,
header .navbar-nav>li.dropdown.show .nav-link,
header .navbar-nav>li:hover .nav-link,
header .navbar-nav>li .nav-link:hover,
header .navbar-nav>li.sfHover {
    color: #EEE082 !important;
    background-color: #1B2F32;
}

header .navbar-nav>li.sfHover>a {}

header .navbar-nav>li.active .nav-link {
    text-decoration: underline;
}

header .navbar-nav>li ul li:hover {
    color: rgba(255, 255, 255, 1);
    background-color: transparent;
}

header .navbar-nav>li ul li.active {
    color: rgba(255, 255, 255, 1);
    background-color: transparent;
}

.navbar-light .navbar-nav>li.sfHover>a, .navbar-light .navbar-nav>li:hover>a, .navbar-light .navbar-nav>li.sfHover>a, .navbar-light .navbar-nav>.active>a, .navbar-light .navbar-nav>li>a.nav-link:hover, .navbar-light .navbar-nav>.active>a.active {
    color: rgba(255, 255, 255, 1) !important;
}

.paavalikko .dropdown-toggle::after {
    display: none;
}

.paavalikko ul.nav>li>ul {
    margin: 0;
    border: 0;
    box-shadow: 0 0 0;
    left: auto;
}

.paavalikko ul.nav>li {
    position: relative;
}

.paavalikko ul.nav>li>ul {
    width: auto;
    background-color: #182F32;
}

.paavalikko>ul.nav>li>a {
    width: 105px;
}

.paavalikko ul.nav li ul li {
    background-color: transparent;
}

.paavalikko ul.nav li ul li:not(:last-of-type) {
    border-bottom: 1px #385346 solid;
}

.paavalikko ul.nav li ul li a {
    white-space: normal;
    color: #fff;
}

.is-sticky .paavalikko ul.nav>li>a {
    /* width: 170px; */
}

.is-sticky .paavalikko ul.nav li ul li a {
    /* width: 175px; */
    /* padding-left: 30px; */
    /* padding-right: 30px; */
}

.paavalikko ul.nav>li>ul>li:first-child:after {
    top: -20px;
    left: 0px;
    border-color: transparent transparent #fff transparent;
}

.paavalikko ul.nav>li>ul>li:first-child:hover:after {
    border-color: transparent transparent #f39200 transparent;
}

.paavalikko ul.nav>li>ul>li:first-child.active:after {
    border-color: transparent transparent #2980c1 transparent;
}

.paavalikko ul.nav>li {
    position: static;
}

.navbar-nav ul {
    margin: 4px 0 0 15px;
    -webkit-box-shadow: 0px 0px 1px 1px rgba(0, 0, 0, 0.08);
    box-shadow: 0px 0px 1px 1px rgba(0, 0, 0, 0.08);
}

.navbar-nav ul li {
    background: #fff;
    /* border-top: 1px solid #f4f4f4; */
}

.navbar-nav ul li:first-child {
    /* border-top: 0; */
}

.navbar-nav ul li:hover {
    -webkit-transition: all .2s cubic-bezier(.25, .21, .015, .995) 0s;
    -moz-transition: all .2s cubic-bezier(.25, .21, .015, .995) 0s;
    -ms-transition: all .2s cubic-bezier(.25, .21, .015, .995) 0s;
    -o-transition: all .2s cubic-bezier(.25, .21, .015, .995) 0s;
    transition: all .2s cubic-bezier(.25, .21, .015, .995) 0s;
}

/* Mobile Nav Toggle */

#mobile-nav-toggle {
    position: fixed;
    right: 0;
    top: 0;
    z-index: 999;
    margin: 8px 10px 0 0;
    border: 0;
    background: none;
    font-size: 24px;
    display: none;
    -webkit-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -moz-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -ms-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -o-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    /*outline: none;*/
    cursor: pointer;
}

#mobile-nav-toggle i {
    color: #fff;
}

@media (max-width: 767px) {
    html .navbar-light .navbar-nav a:hover, html .navbar-light .navbar-nav li:hover>a, html .navbar-light .navbar-nav .active>a, html .navbar-light .navbar-nav li>a.nav-link:hover, html .navbar-light .navbar-nav .active>a.active {
        /* color: #333333 !important; */
    }
    #mobile-nav-toggle {
        display: inline;
    }
}

/* Mobile Nav Styling */

#mobile-nav {
    position: fixed;
    top: 0;
    padding-top: 18px;
    bottom: 0;
    z-index: 998;
    background: rgba(0, 0, 0, 0.9);
    left: -260px;
    width: 260px;
    overflow-y: auto;
    -webkit-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -moz-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -ms-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -o-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
}

#mobile-nav ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

#mobile-nav ul li {
    position: relative;
}

#mobile-nav ul li a {
    color: #fff;
    font-size: 16px;
    overflow: hidden;
    padding: 10px 22px 10px 15px;
    position: relative;
    text-decoration: none;
    width: 100%;
    display: block;
    /*outline: none;*/
}

#mobile-nav ul li a:hover {
    color: #fff;
}

#mobile-nav ul li li {
    padding-left: 30px;
}

#mobile-nav ul .menu-has-children i {
    position: absolute;
    right: 0;
    z-index: 99;
    padding: 15px;
    cursor: pointer;
    color: #fff;
}

#mobile-nav ul .menu-has-children i.fa-chevron-up {
    color: #199EB8;
}

#mobile-nav ul .menu-item-active {
    color: #199EB8;
}

#mobile-body-overly {
    width: 100%;
    height: 100%;
    z-index: 997;
    top: 0;
    left: 0;
    position: fixed;
    background: rgba(0, 0, 0, 0.6);
    display: none;
}

/* Mobile Nav body classes */

body.mobile-nav-active {
    overflow: hidden;
}

body.mobile-nav-active #mobile-nav {
    left: 0;
}

body.mobile-nav-active #mobile-nav-toggle {
    color: #fff;
}

/* ==================================================
      Stats Styling
      ================================================== */

.stats-row {
    margin-top: 65px;
}

.stats-col .circle {
    display: inline-block;
    width: 160px;
    height: 160px;
    font-weight: 500;
    color: #666;
    border: 6px solid #199EB8;
    border-radius: 50%;
    padding: 55px 25px 0 25px;
    position: relative;
}

.stats-col .circle .stats-no {
    color: #fff;
    width: 70px;
    height: 70px;
    line-height: 70px;
    top: -25px;
    right: -15px;
    font-size: 18px;
    background-color: #E04F00;
    position: absolute;
    border-radius: 50%;
    font-weight: 700;
}

/* ==================================================
      Features Styling
      ================================================== */

.features {
    padding-bottom: 45px;
}

.features h2 {
    color: #199EB8;
}

.feature-col {
    display: table;
    padding-bottom: 45px;
}

.feature-col>div>div {
    display: table-cell;
    vertical-align: middle;
}

.feature-col>div>div:last-child {
    padding-left: 20px;
}

.feature-col .feature-icon {
    width: 70px;
    height: 70px;
    margin-bottom: 15px;
    background: #199EB8;
    color: #fff;
    font-size: 24px;
    text-align: center;
    line-height: 70px;
    border-radius: 50%;
    display: inline-block;
}

.feature-col h3 {
    color: #199EB8;
}

.feature-col p {
    font-size: 14px;
    color: #999;
}

/* ==================================================
      Call-to-action Styling
      ================================================== */

.cta {
    background-color: #199EB8;
    padding: 25px 0;
}

.cta h2 {
    margin-bottom: 5px;
}

.cta h2, .cta p {
    color: #fff;
}

.cta p {
    margin-bottom: 0;
    opacity: .75;
}

.cta .btn-ghost {
    position: relative;
    top: 13px;
}

/* ==================================================
      Portfolio Styling
      ================================================== */

.portfolio {
    background-color: #edf6ff;
    padding-bottom: 0;
}

.portfolio h2 {
    color: #199EB8;
    margin-bottom: 25px;
}

.portfolio-grid {
    margin-top: 65px;
}

.portfolio-grid .row {
    margin: 0;
}

.portfolio-grid .row>div {
    padding: 0;
}

.portfolio-grid .row>div .card img {
    width: 100%;
}

.portfolio-grid .row>div .card .portfolio-over {
    position: absolute;
    display: table-cell;
    vertical-align: middle;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.8);
    top: 0;
    left: 0;
    text-align: center;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -moz-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -ms-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -o-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
}

.portfolio-grid .row>div .card .portfolio-over>div {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.portfolio-grid .row>div .card .portfolio-over .card-title {
    color: #fff;
    font-size: 30px;
}

.portfolio-grid .row>div .card .portfolio-over .card-text {
    color: #fff;
    opacity: .75;
    padding: 0 45px;
}

.portfolio-grid .row>div .card:hover .portfolio-over {
    opacity: 1;
    visibility: visible;
}

/* ==================================================
      Team Styling
      ================================================== */

.team h2 {
    color: #199EB8;
}

.team .col-sm-3 {
    padding: 0;
}

.team .card>a {
    display: block;
}

.team .card img {
    width: 100%;
}

.team .card h4 {
    color: #fff;
    text-transform: uppercase;
}

.team .card p {
    font-size: 11px;
    color: #fff;
    opacity: .75;
    margin: 0;
    padding: 0 35px;
}

.team .card .social-nav {
    margin-bottom: 45px;
}

.team .card .social-nav a {
    color: #fff;
    font-size: 16px;
    margin: 0 4px;
}

.team .card .social-nav a:hover {
    opacity: .75;
}

.team .card:hover .team-over {
    opacity: 1;
    visibility: visible;
}

.team .card:hover .card-title-wrap {
    background-color: #199EB8;
}

.team .card:hover .card-title-wrap .card-title, .team .card:hover .card-title-wrap .card-text {
    color: #fff;
}

.team .team-over {
    padding-top: 45px;
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.8);
    top: 0;
    left: 0;
    text-align: center;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -moz-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -ms-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -o-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
}

.team .card-title-wrap {
    padding: 15px 25px;
    position: relative;
    z-index: 9;
    background-color: #fff;
}

.team .card-title-wrap .card-title, .team .card-title-wrap .card-text {
    display: block;
    margin: 0;
}

.team .card-title-wrap .card-title {
    font-size: 24px;
    color: #333;
}

.team .card-title-wrap .card-text {
    font-size: 18px;
    color: #999;
}

/* ==================================================
      Contact Section
      ================================================== */

#contact {
    background: #f7f7f7;
    padding: 80px 0;
}

#contact h2 {
    color: #199EB8;
}

#contact .info i {
    font-size: 32px;
    color: #199EB8;
    float: left;
}

#contact .info p {
    padding: 0 0 10px 50px;
    line-height: 24px;
}

#contact .form #sendmessage {
    color: #199EB8;
    border: 1px solid #199EB8;
    display: none;
    text-align: center;
    padding: 15px;
    font-weight: 600;
    margin-bottom: 15px;
}

#contact .form #errormessage {
    color: red;
    display: none;
    border: 1px solid red;
    text-align: center;
    padding: 15px;
    font-weight: 600;
    margin-bottom: 15px;
}

#contact .form #sendmessage.show, #contact .form #errormessage.show, #contact .form .show {
    display: block;
}

#contact .form .validation {
    color: red;
    display: none;
    margin: 0 0 20px;
    font-weight: 400;
    font-size: 13px;
}

#contact .form input, #contact .form textarea {
    border-radius: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
}

#contact .form button[type="submit"] {
    background: #199EB8;
    border: 0;
    padding: 10px 24px;
    color: #fff;
    -webkit-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -moz-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -ms-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -o-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
}

#contact .form button[type="submit"]:hover {
    background: #23c2e1;
}

/* ==================================================
      Footer Styling
      ================================================== */

.site-footer {
    background-color: #D6C3AA;
    padding: 0;
    margin-top: 60px;
    padding-left: 15px;
    padding-right: 15px;
}

.region-footer-third {
    margin-right: 0 !important;
    margin-left: 0 !important;
}

.site-footer__top .block-menu {
    padding-right: 0;
    padding-left: 0;
}

.site-footer__top .region {
    float: none !important;
    width: 100% !important;
    /* padding-right: 0 !important; */
    /* margin-right:  0; */
}

.site-footer h2, .site-footer p {
    color: #000;
}

.site-footer h2, .site-footer .btn {
    margin-bottom: 25px;
}

.site-footer .social-nav a {
    color: #fff;
    opacity: .25;
}

.site-footer .social-nav a:hover {
    opacity: 1;
}

.site-footer .bottom {
    background-color: #000;
    padding: 20px 0;
}

.site-footer .bottom .list-inline, .site-footer .bottom p {
    margin: 0;
}

.site-footer .bottom .list-inline {
    position: relative;
    top: 5px;
}

.site-footer .bottom .list-inline a {
    color: #fff;
    margin-right: 15px;
}

.site-footer .bottom .list-inline a:hover {
    color: #199EB8;
}

.site-footer .credits {
    color: #ddd;
}

.site-footer .credits a {
    color: #199EB8;
}

/* ==================================================
      Responsive Styling
      ================================================== */

@media (max-width: 61.9em) {
    .features {
        padding-bottom: 5px;
    }
    p, .block p {
        /* margin: 0; */
    }
    .hero-brand {
        margin-bottom: 35px;
    }
    .tagline {
        margin: 35px 0;
    }
    h1 {
        font-size: 32px;
        margin: 0;
    }
    h2, .tagline {
        font-size: 24px;
    }
    h2 {
        margin-bottom: 25px;
    }
    h3 {
        font-size: 20px;
    }
    .hero {
        padding: 75px 0;
    }
    .stats-col {
        margin-bottom: 25px;
    }
    .block {
        height: auto;
    }
    .feature-col {
        padding-bottom: 30px;
    }
    .portfolio-grid .card h3.card-title {
        font-size: 18px !important;
    }
    .portfolio-grid .card .card-text {
        font-size: 13px;
    }
    .team .team-over {
        padding-top: 20px;
    }
    .team .card .social-nav {
        margin-bottom: 15px;
        padding: 0;
    }
    .site-footer .social-nav {
        margin-bottom: 35px;
    }
    .site-footer .list-inline {
        text-align: center;
        padding-bottom: 15px;
    }
    .site-footer .list-inline li {
        display: inline-block;
    }
}

@media (max-width: 767px) {
    html body .is-sticky .hakulomake input[type="search"] {
        margin-top: 0;
    }
    html .paavalikko ul.nav>li>ul, .paavalikko ul.nav>li>ul li {
        /* display: block !important; */
        margin: 0 auto;
    }
    .block {
        /* padding-left: 0px; */
        /* padding-right: 0px; */
    }
}

body .region-breadcrumb {
    padding-left: 0;
    padding-right: 0;
}

.hakulomake .form-submit:focus {
    background-color: transparent !important;
}

.hakulomake .form-submit:hover {
    border: 1px solid #5599cd !important;
    border-left: 1px solid transparent !important;
    background-color: transparent !important;
}

.hakulomake .form-submit:hover:after, .hakulomake .form-submit:focus:after {
    color: #115B69 !important;
}

.hakulomake .form-submit {
    background-color: transparent;
    border: 1px solid transparent !important;
    display: flex;
    padding: 0;
    color: transparent !important;
    margin-left: -2.5rem;
}

.btn:not(.btn-outline-light):not(.border-light), a:not(.nav-link):not(.btn-default):not(.btn-outline-light):not(.border-light) {
    /*outline: 0 !important;*/
    border: 0 !important;
}

.card-title:last-child>a {
    margin-bottom: 0 !important;
}


.addtoany_list {
    padding-left: 0px;
}

.webform-button--submit:not(.taustankanssa) {
    height: 32px;
    font-size: 14px;
    padding: 1px 30px;
    line-height: 32px;
    border-radius: 0;
    font-weight: bold;
}

.fb_logo img, .tw_logo img {
    width: 40px;
}

.tw_logo {
    padding-right: 30px;
}

.tw_logo+span {
    font-size: 14px;
    position: relative;
    top: 2px;
}

.views-field-field-karusellin-kuva img {
    width: 100%;
    height: auto;
}

.region-primary-menu {
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    margin-left: 0;
    margin-right: 0;
}

.region-primary-menu>*.block-menu {
    position: relative;
    height: 100%;
}

.region-primary-menu>* {
    display: flex;
    align-items: center;
}

.region-featured-top {
    max-width: 100%;
    height: auto !important;
    margin-left: 0;
    margin-right: 0;
}

.featured-top, .featured-top>.container-fluid {
    padding-left: 0;
    padding-right: 0;
}

/*-SLIDER-*/

.featured-top {
    margin-bottom: 30px;
}

.w>.c:hover {
    background-color: #385346;
}

.w>.c {
    position: absolute;
    bottom: 0;
    cursor: pointer !important;
    -webkit-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -moz-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -ms-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -o-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    left: 0;
    display: block;
    width: 50% !important;
    height: 105px;
    background-color: #182F32;
    padding: 1rem 2rem;
}

.w>.c.tila {
    width: 100% !important;
}

.w>.c.tila.haettavissa {
    background-color: #182F32;
}

.w>.c.tila.haettavissa:hover {
    background-color: #115B69;
}

.w>.c.tila.tulossa {
    background-color: #385346;
}

.w>.c.tila.valmistumassa {
    background-color: #385346;
}

.w>.c.tila.tulossa-amp-haettavissa,
.w>.c.tila.valmistunut-amp-haettavissa {
    background-color: #385346;
}

.w>.c.tila.tulossa:hover,
.w>.c.tila.valmistumassa:hover,
.w>.c.tila.tulossa-amp-haettavissa:hover,
.w>.c.tila.valmistunut-amp-haettavissa:hover {
    background-color: #115B69;
}

.w>.c.tila>h2 {
    line-height: 6rem;
}

.w>.c>.ct>section {
    float: left;
    text-align: left;
    line-height: 1.5rem;
}

.w>.c>.ct>section:first-child, .w>.c>.ct>section:nth-child(2) {
    width: calc(30% - 60px);
    padding: 0 10px;
    border-right: 1px solid #fff;
    margin-right: 30px;
}

.w>.c>.ct>section:first-child {
    width: calc(25% - 60px);
}

.w>.c>.ct>section {
    font-size: 20px;
    text-transform: none;
    font-weight: bold;
}

.w>.c>.ct>section>h2 {
    margin-bottom: 0;
    font-size: 2rem;
    line-height: 2.2rem;
    margin-top: 0
}

.w>.c>.ct>section:nth-child(3) {
    width: calc(45% + 60px);
    padding: 0 10px;
}

.w>.c>.ct>section:nth-child(3) br:nth-child(3) {
    display: none;
}

.w>.c>.ct:after {
    clear: both;
    display: block;
    content: "";
}

.view-karuselli>div>div>div>div>div>div {
    cursor: default !important;
}

.w>.c, .w>.c p {
    color: #fff;
    font-weight: 400;
    margin-bottom: 0;
}

.w>.c>.cb {
    font-size: 3.2rem;
    line-height: 3.8rem;
    margin-bottom: 0;
}

.w>.c.no_feat>.cb {
    font-size: 3rem;
    line-height: 4.5rem;
}

.w>.c>.ct {
    font-size: 1.4rem;
    line-height: 1.4rem;
}

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

.karusellit:not(.loaded) {
    overflow: hidden;
    width: 100%;
}

.slider {
    max-width: 100%;
    -webkit-transition: none !important;
    -moz-transition: none !important;
    -ms-transition: none !important;
    -o-transition: none !important;
    transition: none !important;
    display: none;
}

.slider, .karusellit .content {
    position: relative;
    visibility: hidden;
    -webkit-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -moz-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -ms-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -o-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
}

.jssorb01 {
    left: 0 !important;
    bottom: 0 !important;
    width: auto !important;
    height: auto !important;
}

.jssorb01 div:after {
    content: "";
    width: 100%;
    height: 100%;
    display: table-cell;
    vertical-align: middle;
    font-size: 1.4em;
}

.jssorb01 div:nth-child(1):after {
    content: "1";
}

.jssorb01 div:nth-child(2):after {
    content: "2";
}

.jssorb01 div:nth-child(3):after {
    content: "3";
}

.jssorb01 div:nth-child(4):after {
    content: "4";
}

.jssorb01 div:nth-child(5):after {
    content: "5";
}

.jssorb01 div {
    width: 50px !important;
    height: 50px !important;
    display: table;
    float: left;
    border-color: #16b4c4 !important;
    opacity: 1 !important;
    text-align: center;
    position: static !important;
    color: #16b4c4;
    background-color: #fff;
}

.jssorb01 div.av, .jssorb01 div.dn, .jssorb01 div:hover, .jssorb01 div:focus {
    background-color: #16b4c4 !important;
    color: #fff !important;
}

.tulossa.btn-default {
    background-color: #385346;
}

.tila, .faq-btn {
    background-color: #fff;
    color: #000;
}

.faq-btn {
    font-weight: 400;
    font-size: 1rem;
    gap: 1rem;
}

.faq-btn:after {
    content: "\f077";
    font-family: "FontAwesome";
    font-size: 1rem;
    margin-left: auto;
}

.field-collection-item--name-field-hanuri {
    margin-bottom: 2rem;
    border-bottom: 1px solid #D9D9D9;
}

.faq-btn {
    margin-bottom: 0;
}

.faq-btn.collapsed:after {
    content: "\f078";
}

.field--name-field-hakemuskuva {
    float: none !important;
    margin: 0 !important;
}

.faq-btn {
    border-radius: 0;
}

.tila {
    text-align: center;
    padding: 0.5rem;
}

.haettavissa:not(.card-body), .now-open-for-application:not(.card-body) {
    background-color: #182F32;
}

.valmistumassa:not(.card-body), .almost-complete:not(.card-body) {
    background-color: rgba(22, 180, 196, 1);
}

.tulossa-amp-haettavissa:not(.card-body),
.valmistunut-amp-haettavissa:not(.card-body),
.coming-amp-apply-now:not(.card-body),
.complete-amp-apply-now:not(.card-body){
    background-color: rgba(41, 128, 193, 1);
}

.vapaa:not(.card-body) {
    background-color: #2980c1;
}

.faq-btn {
    padding: 0;
}

body:not(.loaded) .karusellit {
    background: url(../img/loaders/main.svg);
    background-size: 50% 50%;
    background-position: center center;
    background-repeat: no-repeat;
}

.slider img {
    width: 100%;
    height: auto;
}

body:not(.loaded) .karusellit .content,
/*
    body:not(.loaded) .slider > *
    {
    opacity: 0;
    }
    */

.text-formatted tr, .text-formatted td {
    padding: 0;
    font-size: 14px;
}

.text-formatted table td {
    padding-left: 5px;
    padding-top: 5px;
}

tr {
    background: #ffffff;
}

tr td, tr th {
    text-align: unset;
}

table {
    margin: 0;
}

.btn-default:not(.taustankanssa) {
    border: 1px solid #fff !important;
}

.btn-default {
    border-radius: 0;
    background-color: #182F32;
    border-width: 1px;
}

.field--name-field-sijaintikartta {
    height: 100%;
}

.card-body h3, .card-body h1, .card-body h2 {
    font-weight: normal;
}

.createdarticle {
    margin-bottom: .1rem;
    font-size: 1.1rem;
    font-weight: 300;
    color: #16b4c4;
}

.articletitle {
    font-size: 2.4rem;
    margin-bottom: 1rem;
    line-height: 2.5rem;
}

.digicard .card-body, .digicard .card-header {
    padding: 0;
}

.haettavissa {
    text-align: center;
}

.card-body.haettavissa {
    padding-bottom: 0;
}

.card-body.haettavissa .card-footer {
    padding-bottom: 0;
    background-color: transparent;
    border: 0 none;
}

.node--type-asuntokohde .card-footer {
    background-color: transparent;
    border: 0;
}

.card-body {
    padding: 2rem;
    height: 100%;
}

.field--name-field-card-kuva {
    margin: 0 !important;
}

.isompi .card-body>h5 {
    display: none;
}

.isompi .card-body {
    padding: 0;
}

.faq-btn {
    white-space: normal;
}

.isompi .card-footer {
    display: none !important;
}

.isompi * {
    font-size: 0px;
    line-height: 0px;
}

.cardsgroup:not(.cardgroupinside) {
    position: relative;
    width: 100%;
}

.field--type-entity-reference {
    margin-bottom: 0;
}

.ajaxer .field--name-field-tags {
    display: none;
}

.field--name-field-tags {
    padding-top: 10px;
}

.field--type-entity-reference .field--name-file {
    line-height: 0;
}

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

.loading {
    margin: 0 auto;
    display: block;
    width: 100px;
    height: 100px;
    border-radius: 99999px;
    border: 8px solid #115B69;
    border-left-color: transparent;
    animation-name: spin;
    animation-duration: 2000ms;
    animation-iteration-count: infinite;
}

@keyframes spin {
    from {
        transform:rotate(0deg);
    }
    to {
        transform:rotate(360deg);
    }
}

.card-title a {
    padding: 1.5rem 0;
    display: block;
    height: 4.9rem;
    line-height: 30px;
}
.card-title.pitkasliderotsikko a {

}

.card-title {
    width: 100%;
    text-align: center;
    font-weight: normal;
    padding: 0rem;
    font-size: 1.4rem;
    margin-bottom: 0;
    text-transform: uppercase;
}

.card-title.pitkasliderotsikko {
    font-size: 1.3rem;
}
.card-title.pitkasliderotsikko a {
    line-height: 30px;
}

.card-img-overlay {
    padding: 0;
}

.bg-harmaa-100 {
    background-color: #eee;
}

.bg-tummansininen {
    background-color: rgba(47, 57, 137, .65);
}

.card-title {
    -webkit-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -moz-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -ms-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -o-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
}

.card-title>.taustankanssa {
    -webkit-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s !important;
    -moz-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s !important;
    -ms-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s !important;
    -o-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s !important;
    transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s !important;
}

.card-title:hover, i .card-title>.taustankanssa:hover {
    background-color: #385346;
}

#main {
    margin-top: 0;
}

.card-title a {
    -webkit-transition: none !important;
    -moz-transition: none !important;
    -ms-transition: none !important;
    -o-transition: none !important;
    transition: none !important;
}

.card-title:hover a {
    color: #fff !important;
}

.btn.disabled {
    background-color: #333 !important;
    border-color: #333 !important;
}

.bg-vaaleansininen {
    background-color: rgba(85, 153, 205, .65)
}

.bg-melkovaaleansininen-100 {
    background-color: #e3ecf6;
}

.bg-vaaleansininen {
    background-color: rgba(85, 153, 205, .65)
}

.bg-tummansininen-100 {
    background-color: rgba(47, 57, 137, 1);
}

.bg-vaaleansininen-100 {
    background-color: rgba(85, 153, 205, 1)
}

.bg-oranssi, a.bg-tummansininen-100:hover {
    background-color: rgba(243, 146, 0, .65);
}

.bg-facebook {
    background-color: #3b5998;
}

.bg-twitter {
    background-color: #00aced;
}

.bg-oranssi-100 {
    background-color: #f39200;
}

.bg-turkoosi {
    background-color: rgba(22, 180, 196, .65);
}

.bg-turkoosi-100 {
    background-color: rgba(22, 180, 196, 1);
}

.bg-valkoinen {
    background-color: rgba(255, 255, 255, .65)
}

.bg-valkoinen-100 {
    background-color: rgba(255, 255, 255, 1)
}

.kehys-bg-vaaleansininen {
    border-color: rgba(85, 153, 205, .65)
}

.kehys-bg-tummansininen-100 {
    border-color: rgba(47, 57, 137, 1);
}

.kehys-bg-vaaleansininen-100 {
    border-color: rgba(85, 153, 205, 1)
}

.kehys-bg-turkoosi {
    border-color: rgba(22, 180, 196, .65);
}

.kehys-bg-oranssi {
    border-color: rgba(243, 146, 0, .65);
}

.kehys-bg-oranssi-100 {
    border-color: rgba(243, 146, 0, 1);
}

.kehys-bg-musta-100 {
    border-color: #000;
}

.kehys-bg-turkoosi-100 {
    border-color: rgba(22, 180, 196, 1);
}

.kehys-bg-valkoinen {
    border-color: rgba(255, 255, 255, .65)
}

.kehys-bg-valkoinen-100 {
    border-color: rgba(255, 255, 255, 1)
}

.color-bg-vaaleansininen {
    color: rgba(85, 153, 205, .65)
}

.color-bg-tummansininen-100 {
    color: rgba(47, 57, 137, 1);
}

.color-bg-vaaleansininen-100 {
    color: rgba(85, 153, 205, 1)
}

.color-bg-oranssi {
    color: rgba(243, 146, 0, .65);
}

.color-bg-oranssi-100 {
    color: rgba(243, 146, 0, 1);
}

.color-bg-turkoosi {
    color: rgba(22, 180, 196, .65);
}

.color-bg-turkoosi-100 {
    color: rgba(22, 180, 196, 1);
}

.color-bg-valkoinen {
    color: rgba(255, 255, 255, .65)
}

.color-bg-valkoinen-100 {
    color: rgba(255, 255, 255, 1)
}

.fb-page, .fb-page>*, .fb-page>*>iframe {
    width: 100% !important;
}

span.card-text {
    padding-left: 0;
    padding-right: 0;
    /* padding-top: 90px; */
    display: block;
    width: 100%;
    z-index: 2;
}

.card .hoverer, .hoverlinkit a>.hoverer {
    display: none;
}

.card:hover .hoverer, .hoverlinkit a:hover>.hoverer, .hoverlinkit a.is-active>.hoverer, .card.active .hoverer {
    display: block;
}

.hoverlinkit a img {
    display: block;
    margin: 0 auto;
}

.hoverlinkit a {
    display: block;
}

.card:hover .hovererless, .hoverlinkit a:hover>.hovererless, .hoverlinkit a.is-active>.hovererless, .card.active .hovererless {
    display: none !important;
}

.kysymyksetcard .card-text {
    padding-left: 20px;
    padding-right: 20px;
}

.kysymyksetcard .card-title {
    text-transform: uppercase;
}

.card .kysymyksetcard .card-body {
    padding-bottom: 0;
}

.card .kysymyksetcard .card-footer {
    padding-top: .5rem;
}

.kysymyksetcard .card-body {
    padding-bottom: 0rem;
}

.kysymyksetcard .card-footer {
    background-color: transparent;
    border: 0 none;
    padding-bottom: 1.1rem;
}

.kysymyksetcard .card-img-top {
    width: 63%;
    margin: -45px auto 3px auto;
}

.kysymyksetcard.visu5 .card-img-top {
    width: 100%;
}

.kysymyksetcard.kuvasisalla .card-img-top {
    margin-top: 15px;
    margin-bottom: 0;
}

.kysymyksetcard .btn:focus {
    color: #fff !important;
}

.kysymyksetcard .btn {
    border-radius: 0;
    min-width: 40px;
}

.kysymyksetcard .btn:not(:hover):not(.taustankanssa) {
    background-color: transparent;
}

.kysymyksetcard .card-body {
    padding-top: 0px;
}

.node--type-article .max-w-text:before {
    content: "";
    position: absolute;
    top: 15px;
    left: -95px;
    height: 80px;
    width: 80px;
    background-image: url("/themes/contrib/subtheme/img/comma.svg");
    background-position: center;
    background-size: contain;

}

.level1 {
    color: #115B69;
    text-transform: uppercase;
    font-size: 14px !important;
    line-height: 32px !important;
}

.level2 {
    color: #182F32;
    text-transform: uppercase;
    font-size: 20px !important;
    line-height: 32px !important;
}

.level3 {
    color: #385346;
    text-transform: uppercase;
    font-weight: 500;
    font-size: 24px !important;
    line-height: 32px !important;
}

.level4 {
    color: #115B69;
    text-transform: uppercase;
    font-size: 28px !important;
    line-height: 32px !important;
}

.level5 {
    color: rgba(0, 0, 0, 1);
    font-size: 34px !important;
    line-height: 32px !important;
}

.level6 {
    color: #385346;
    font-size: 44px !important;
    line-height: 32px !important;
}

.tagclouds-term {
    display: inline-block;
    margin-left: 10px;
    margin-right: 10px;
}

#block-tagsintagit {
    padding-left: 20%;
    padding-right: 20%;
}

.collapser {
    display: none;
}

.etusivuartikkeli {
    padding: 1rem 2rem 1em 3rem;
    font-size: .9rem;
}

.etusivuartikkeli .views-field-created {
    color: #385346;
}

.etusivuartikkeli .views-field-title a {
    color: #115B69;
    font-weight: 400;
}

.etusivuartikkeli ul {
    list-style: none;
}

.etusivuartikkeli ul li {
    margin-bottom: 0.5rem;
}

.collapser>h1+.content>.field--name-field-hanuri>div:first-child h1, .collapser>h1+*+.content>.field--name-field-hanuri>div:first-child h1 {
    margin-top: -35px;
}

.node--type-asuntokohteet-asukassivut .field--name-field-alaotsikko {
    font-weight: 400;
    font-size: 16px;
}

#ala-alue {
    padding-bottom: 50px;
}

blockquote p {
    color: #385346;
    font-style: italic;
}

.lisacard>.card-group {
    height: 100%;
}

.blogitjauutiset {
    margin-bottom: 60px;
}

.fullwidth, .blogitjauutiset, .blogitjauutiset>.content {
    width: 100%;
    clear: both;
}

.eimitaan {
    background-color: transparent;
    border: 0 none;
}

.hide {
    display: none;
}

iframe {
    max-width: 100%;
    overflow: auto;
}

.twittercontainer {
    height: 271px;
    overflow: auto;
}

.view-uudishankkeet h3 {
    font-size: 20px;
}

#block-footer1 p {
    margin-bottom: 15px;
}

.path-search #block-bootstrap-barrio-subtheme-content {
    padding-left: 15px;
    padding-right: 15px;
}

@media (min-width: 1400px) {
    #block-bootstrap-barrio-subtheme-content {
        padding-left: 0;
        padding-right: 0;
        max-width: 100%;
        border: 0px solid transparent;
    }

    .px-2xl-0 {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

.form-item-olen-tutustunut-tietosuojaselosteeseen- label.option {
    font-size: 13px;
    float: left;
    margin-right: 25px;
    position: relative;
    font-size: 12px;
    font-size: 14px;
    top: 1px;
}

.juststatic .card-body {
    padding-bottom: 0;
}

.path-taxonomy .node__meta {
    display: none;
}

.path-taxonomy .image-style-medium {
    margin-top: 0;
}

img.card-img {
    /* height: 100%; */
}

.gray {
    background-color: #e0e0e0;
}

/* IE10, IE11 */

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    p {
        margin-top: 20px;
    }
    .faq-btn:before {
        margin-top: 18px;
    }
    .ajaxer {
        vertical-align: center;
    }
    .aj {
        height: auto !important;
        max-height: 100%;
    }
    :not(.is-sticky)#header-sticky-wrapper {
        padding-bottom: 17px;
        padding-top: 0px;
    }
}

/* IE10, IE11 */

@media screen and (min-width: 1200px) and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    :not(.is-sticky)#header-sticky-wrapper {
        padding-bottom: 17px;
        padding-top: 0px;
    }
    .navbar-expand-lg ul {
        border-spacing: 2px 0px;
        margin-right: 5px;
    }
}

@media all and (-ms-high-contrast:none) and (min-width: 1200px) {
    *::-ms-backdrop, .kysymyksetcard .card-img-top {
        margin: -45px auto -140px auto;
    }
    *::-ms-backdrop, .kuvasisalla.kysymyksetcard .card-img-top {
        margin-bottom: -140px;
    }
    *::-ms-backdrop, .visu5.kysymyksetcard .card-img-top {
        height: 350%;
        margin-bottom: 0px;
    }
}

b, strong {
    font-weight: 600;
}

body.node--type-article .linkitys {
    display: none;
}

.ajaxer .linkitys {
    display: inline;
}

.linkitys {
    display: none;
    float: left;
    bottom: 0;
    font-size: 24px;
    width: 32px;
    height: 32px;
    line-height: 32px;
    background-color: #2980c1;
    color: #fff;
    text-align: center;
    cursor: pointer;
    margin-left: 15px;
}

.node .field--type-image {
    margin: 0;
}

#views-exposed-form-medialle-page-1 .bef-links ul>li:first-child {
    display: none;
}

#views-exposed-form-medialle-page-1 .bef-links ul>li {
    list-style: none;
}

#views-exposed-form-medialle-page-1 .bef-links ul {
    margin: 0;
    padding: 0;
}

.mediallekuvat .view-filters {
    padding-left: 13px;
    padding-right: 13px;
}

@media (max-width: 991px) {
    .w>.c>.ct {
        font-size: 1.1rem;
    }
    .w>.c>.cb {
        font-size: 1.8rem;
        line-height: 1.8rem;
    }
    .w>.c {
        height: 75px;
        padding-top: 10px;
    }
    .seurcard .card-footer {
        display: none;
    }
    .relaetufoo {
        position: relative !important;
    }
    .paavalikko ul.nav>li>ul {
        border-top: 0 none;
    }
    .kysymyksetcard .card-img-top {
        margin: 0 auto !important;
    }
    .page-node-16 .cl>* {
        top: -15px;
    }
    .node--type-article .max-w-text:before {
        display: none;
    }
}

body .cl:before {
    content: "Sulje";
    padding-right: 10px;
    padding-left: 10px;
    padding-top: 3px;
    position: relative;
    font-size: 24px;
    line-height: 24px;
    float: left;
    color: #000;
}

body:lang(en) .cl:before {
    content: "Close";
}

footer, footer p, footer a {
    text-shadow: 2px 2px 3px rgba(255, 255, 255, .1);
}

@media (max-width: 991px) {
    .site-footer__top .col-xl-auto, .site-footer__top .col-xl-auto>div.region-footer-first {
        margin: 0 auto !important;
        text-align: center;
        margin-left: 0;
        margin-right: 0;
    }
    .katsosomessa {
        width: 100%;
        display: block;
    }
    .addtoany_list {
        margin-left: 5px;
    }
    .blogitjauutiset {
        margin-top: 7.5px !important;
        margin-bottom: 7.5px !important;
    }
    .field--name-field-henkilo>.field__item {
        margin: 0 auto;
    }
    #block-yhteystiedotallateksti .text-right {
        text-align: left !important;
    }
}

#block-alafooter {
    margin-top: 20px;
}

.footer.popopened {
    z-index: 9999999;
}

#block-joulutervehdys {
    width: 100%;
}

.suljenappi {
    font-size: 1.3rem;
    color: #fff;
    padding-bottom: 2px;
    cursor: pointer;
}

.suljenappi:hover {
    color: #eee
}

.suljen:after {
    border-radius: 50%;
    content: "X";
    border: 1px solid #fff;
    width: 20px;
    text-align: center;
    height: 20px;
    margin-left: 1px;
    line-height: 18px;
    font-size: 15px;
    display: inline-block;
}

.karuselliloading:before {
    background-color: #fff;
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 4;
}

.karuselliloading:after {
    top: 50%;
    margin-top: -50px;
    left: 50%;
    margin-left: -50px;
    content: "";
    width: 100px;
    height: 100px;
    border: 8px solid #000;
    border-top: 8px solid #2980c1;
    border-radius: 50%;
    animation: rotate 5s linear infinite;
    position: absolute;
    z-index: 5555;
}

@keyframes rotate {
    100% {
        transform: rotate(360deg);
    }
}

@media (max-width: 1400px) {
    .voiei>.linttu {
        height: 20% !important;
    }
    .voiei>.mainoxbox {
        height: 80% !important;
    }
    .voieiwidth {
        width: 80% !important;
        max-width: 800px !important;
    }
    .region-secondary-menu {
        margin-left: 0;
        margin-right: 0;
    }
    #block-webform-3 {
        padding-left: 1rem;
        padding-right: 1rem;
    }
    .hero_section_block {
        margin-left: -15px;
        margin-right: -15px;
    }
}

@media (max-width: 991px) {
    .voieicontainer>.container-fluid {
        padding-left: 0;
        padding-right: 0;
    }
    .voieicontainer>.container-fluid .mainoxbox {
        padding-left: 15px;
        padding-right: 15px;
    }
    html .voiei>.linttu {
        height: 10% !important;
    }
    html .voiei>.mainoxbox {
        height: 90% !important;
    }
    html .voieiwidth {
        width: 100% !important;
        max-width: 991px !important;
    }
}

@media (max-width: 767px) {
    html body .voiei>.linttu {
        height: 5% !important;
    }
    html body .voiei>.mainoxbox {
        height: 95% !important;
    }
    html body .voieiwidth {
        width: 100% !important;
    }
}

@media (max-width: 480px) {
    html .w>.c {
        width: 100% !important;
    }
    html .w>.c {
        height: 55px;
        padding-top: 4px;
        padding-left: 1rem;
    }
    .voieiwidth {
        width: 100%;
    }
    .w>.c>.ct {
        font-size: 1rem;
    }
    .w>.c>.cb {
        font-size: 1.6rem;
        line-height: 1.1rem;
    }
}

.loadvoiei {
    display: none;
}

.voieioverlay {
    background-color: rgba(24, 47, 50, 0.25);
    background-size: cover;
    background-position: center center;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999999;
}

.voieicontainer, .voieicontainer>.container-fluid, .voieicontainer>.container-fluid>* {
    height: 100%;
}

.voiei {
    padding-top: 0px;
    height: 100%;
    /* font-size: 0rem; */
}

.voiei>.linttu {
    height: 20%;
    background-size: 20rem auto;
    background-position: center bottom;
    background-repeat: no-repeat;
    /* margin-bottom: -1.3rem; */
    z-index: 2;
    position: relative;
    padding-top: 1.3rem;
}

.voiei .perus_lohko, .voiei .lohko_sisalto {
    margin-top: 0;
    padding-top: 0;
    padding-bottom: 0;
}

.voiei>.mainoxbox h1 {
    font-weight: bold;
    margin-bottom: .3rem;
    font-size: 3.2rem;
}

.voiei>.mainoxbox h3 {
    font-size: 1.6rem;
}

.voiei>.mainoxbox {
    /* background-color: #fff; */
    height: 80%;
    overflow-y: auto;
    overflow-x: hidden;
    /* max-height: 42rem; */
    padding-left: 1rem;
    padding-right: 1rem;
}

.voiei>.mainoxbox {
    padding-left: 0rem;
    padding-right: 0rem;
    position: relative;
    z-index: 3;
}

.voieiwidth {
    margin: 0 auto;
    max-width: 100%;
}

.voieilohko .field--name-body>div {
    display: block !important;
    height: 100%;
}

.voieilohko img {
    max-height: 100%;
    margin-left: 10px;
    margin-right: 10px;
    width: auto !important;
}

.voieilohko {
    position: fixed;
    bottom: 0;
    width: 100%;
    height: 52px;
    left: 0;
    z-index: 9999;
}

.voieilohko .field--name-body a {
    color: #666;
    text-decoration: none;
    font-weight: bold;
}

.voieilohko .field--name-body {
    background-color: rgba(255, 255, 255, 0.9);
    width: auto;
    display: block;
    padding: 5px 5px 0px 5px;
    height: 100%;
    color: #000;
}

.voieilohko .field--name-body img {
    transition: all 0.4s linear;
    -webkit-transition: all 0.4s linear;
    -moz-transition: all 0.4s linear;
    -o-transition: all 0.4s linear;
    transform: rotate(0deg) scale(1) skew(0deg) translate(0px);
    -webkit-transform: rotate(0deg) scale(1) skew(0deg) translate(0px);
    -moz-transform: rotate(0deg) scale(1) skew(0deg) translate(0px);
    -o-transform: rotate(0deg) scale(1) skew(0deg) translate(0px);
    -ms-transform: rotate(0deg) scale(1) skew(0deg) translate(0px);
}

.voieilohko .field--name-body a:hover img {
    transform: rotate(-11deg) scale(1.1) skew(0deg) translate(0px);
    -webkit-transform: rotate(-11deg) scale(1.1) skew(0deg) translate(0px);
    -moz-transform: rotate(-11deg) scale(1.1) skew(0deg) translate(0px);
    -o-transform: rotate(-11deg) scale(1.1) skew(0deg) translate(0px);
    -ms-transform: rotate(-11deg) scale(1.1) skew(0deg) translate(0px);
}

.voieilohko .field--name-body span {
    min-width: 110px;
    display: inline-block;
}

@media (min-width: 1200px) {
    .voieiwidth {
        width: 800px;
    }
}

.digicard .card-body {
    padding: 0 !important;
}

.field--name-field-hakemuskuva {
    display: none;
}

.menu--language-selector .nav, #block-languageswitcher .links {
    flex-wrap: nowrap;
    align-items: center;
    height: 48px;
    margin-left: 1px;
    display: flex;
    list-style: none;
    padding-left: 0px;
}

#block-languageswitcher .links span {
    padding-left: 2.5px;
    padding-right: 0;
}

.menu--language-selector .nav span a, #block-languageswitcher .links span a {
    border: 1px solid #182F32 !important;
    border-radius: 50%;
    width: 32px;
    height: 32px;

    padding: 7px;
    text-transform: uppercase;
    color: #182F32 !important;
    text-align: center;
    font-size: 12px;
    font-weight: 500;
    display: block;
    overflow: hidden;
}

#block-languageswitcher .links span a:hover {
    background-color: #182F32;
    color: #fff !important;
}

.menu--language-selector .nav span .active, #block-languageswitcher .links span .is-active {
    background-color: #182F32;
    color: #fff !important;
}

#block-languageswitcher .links li .active:hover {
    background-color: #fff;
    color: #5599cd !important;
}

.is-sticky header .container-fluid {
    display: flex;
}

.is-sticky .menu--language-selector .nav {
    align-items: center;
}

/* blog and news subcription form */

#block-webform, #block-webform-2 {
    margin: 0 auto;
}

#block-webform .btn-primary {
    border-radius: 0;
    background-color: #182F32;
    border-width: 1px;
    margin-top: 10px;
}

#webform-submission-blogijulkaisut-node-29-add-form>fieldset.js-form-item.js-form-type-email.form-type-email.js-form-item-email.form-item-email.form-group>label, #webform-submission-blogijulkaisut-node-29-add-form>div.js-form-item.js-form-type-checkbox.checkbox.js-form-item-confirm.form-item-confirm>label>label, #webform-submission-uutiset-node-27-add-form>fieldset.js-form-item.js-form-type-email.form-type-email.js-form-item-email.form-item-email.form-group>label, #webform-submission-uutiset-node-27-add-form>div.js-form-item.js-form-type-checkbox.checkbox.js-form-item-confirm.form-item-confirm>label>label, #webform-submission-blogijulkaisut-node-547-add-form>fieldset.js-form-item.js-form-type-email.form-type-email.js-form-item-email.form-item-email.form-group>label, #webform-submission-blogijulkaisut-node-547-add-form>div.js-form-item.js-form-type-checkbox.checkbox.js-form-item-confirm.form-item-confirm>label>label, #webform-submission-uutiset-node-547-add-form>fieldset.js-form-item.js-form-type-email.form-type-email.js-form-item-email.form-item-email.form-group>label, #webform-submission-uutiset-node-547-add-form>div.js-form-item.js-form-type-checkbox.checkbox.js-form-item-confirm.form-item-confirm>label>label {
    display: none !important;
}

#simplenews-confirm-removal #edit-cancel {
    display: inline-block;
    font-weight: 400;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px solid transparent;
    padding: .375rem .75rem;
    font-size: 1rem;
    line-height: 1.5;
    border-radius: .25rem;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    background-color: #5599cd;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    color: #fff;
    border-radius: 50px;
    letter-spacing: 0.02rem;
}

#simplenews-confirm-removal #edit-cancel:hover {
    background-color: #fd7e14;
}

#block-webform #edit-email, #block-webform-2 #edit-email {
    border-radius: 0;
}

#block-webform fieldset>p, #block-webform-2 fieldset>p {
    margin-bottom: 0;
}

@media (max-width: 1700px) {
    html body #header-sticky-wrapper div.hakulomake input[type="search"] {
        /* max-width: 80px !important; */
    }
}

#logo+.hakulomake {
    display: none !important;
}

@media (max-width: 991px) {
    .menu--language-selector .nav, #block-languageswitcher .links {
        height: 65px;
    }
}

@media (max-width: 480px) {
    #header>.container-fluid #navbar-top .block-search-form-block {
        display: none;
    }
}

.header {
    display: flex;
}

.header .container-fluid {
    display: flex;
}

.header .container-fluid #logo {
    width: 200px;
}

.header .container-fluid #navbar-main {
    align-items: flex-start;
    align-self: stretch;
    padding: 0;
}

.navbar-collapse {
    height: 100%;
}

.region-secondary-menu #edit-keys[type="search"] {
    border: 1px solid #182F32;
    border-radius: 9999px;
    padding: .25rem 2.5rem .25rem 1rem;
    font-size: 1rem;
}

#block-languageswitcher .links {
    margin: 0;
}

#block-facebookpixel-2, #block-facebookpixel {
    height: 0;
    width: 0;
    overflow: hidden;
}

#navbar-top {
    margin-left: auto;
    padding: 1rem 0;
}

#navbar-top .region-secondary-menu {
    margin: 0;
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
}

.inlinecheck .description {
    display: inline-block;
    position: relative;
    top: 2px;
}

h1.etusivu_title, h2.etusivu_title {
    font-size: 2em;
    margin-top: 2rem;
    color: #5599cd;
}

.html_hanuri .hanuritaso {
    margin-left: 0;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
    padding-left: 0;
    padding-right: 0;
}

.html_hanuri .hanuritaso .faq-btn {
    background-color: transparent !important;
    color: #000;
    text-align: left;
}

.html_hanuri .hanuritaso .field-collection-item--name-field-hanuri-taso-2>.content>div {
    padding-left: 65px;
    padding-right: 65px;
}

.html_hanuri .hanuritaso .faq-btn:before {
    margin-right: .5em;
    color: #115B69;
}

.html_hanuri table {
    width: 100%;
    clear: both;
}

.tavoitteethanuri img {
    width: 250px;
}

.html_hanuri table tr td {
    padding-left: 15px;
    padding-right: 15px;
}

.sininentable p {
    color: #fff;
}

.sininentable {
    background-color: #2b80c1;
}

.tavoitteethanuri th {
    background-color: #2b80c1;
    border: 4px solid #2b80c1;
    padding-top: 10px;
    font-weight: normal;
}

.tavoitteethanuri td {
    border: 4px solid #2b80c1;
    padding-top: 15px !important;
}

.sininentable td, .sininentable tr {
    background-color: transparent !important;
}

.sininentable tr:first-child td {
    padding-top: 45px !important;
}

.vaaleavalkoinenhanuri img {
    min-width: 50px;
}

.vaaleavalkoinenhanuri td {
    border-color: #2b80c1 !important;
}

.vaaleavalkoinenhanuri td:first-child {
    border-right-width: 4px !important;
}

.vaaleavalkoinenhanuri td:last-child {
    padding: 15px;
    color: #2b80c1;
}

.sininentable tr td {
    border-color: #fff !important;
}

.sininentable tr:last-child td {
    padding-bottom: 45px !important;
}

.sininentable img {
    max-width: 100px;
}

.vastuullisuusohjelma_hanuri td {
    width: 25%;
}

.vastuullisuusohjelma_hanuri h2 {
    display: block;
    height: 225px;
    font-size: 14px;
    padding-top: 130px;
    width: 225px;
    margin: 15px auto;
    border-radius: 50%;
    background-repeat: no-repeat;
    background-size: 125px;
    background-position: center 10px;
    color: #fff;
}

.vastuullisuusohjelma_hanuri.ymparisto td {
    position: relative;
}

.vastuullisuusohjelma_hanuri.ymparisto h2 {
    background-image: none !important;
    width: 20rem !important;
    height: 20rem !important;
    padding: 7rem 1rem 1rem 1rem;
    font-size: 1.4rem;
}

.vastuullisuusohjelma_hanuri.ymparisto h2 {
    max-width: 80vw;
}

.vastuullisuusohjelma_hanuri.ymparisto h2>span {
    font-size: 0.9rem;
    display: block;
    padding-left: 2rem;
    padding-right: 2rem;
}

.text-formatted ul li {
    font-weight: 400;
}

@media (min-width: 768px) {
    .field--name-field-oikea-kappale-4 {
        margin-top: -10rem;
        margin-bottom: -2rem;
    }
}

.field--name-field-vasen-kappale-2 ol, field--name-field-vasen-kappale-2 ul, .field--name-field-kesken-kappale-1 ol, .field--name-field-kesken-kappale-1 ul, .field--name-field-oikea-kappale-1 ol, .field--name-field-oikea-kappale-1 ul, .field--name-field-oikea-kappale-2 ol, .field--name-field-oikea-kappale-2 ul, .field--name-field-kesken-kappale-2 ol, .field--name-field-kesken-kappale-2 ul, .field--name-field-kesken-kappale-3 ol, .field--name-field-kesken-kappale-3 ul, .field--name-field-oikea-kappale-3 ol, .field--name-field-oikea-kappale-3 ul, .field--name-field-vasem-kappale-4 ol, .field--name-field-vasem-kappale-4 ul {
    padding-left: 20px;
}

.vastuullisuusohjelma_hanuri.ymparisto h2 img {
    max-width: 100px;
    margin: -5rem auto .5rem auto;
}

.vastuullisuusohjelma_hanuri td:first-child h2:not(.nobg) {
    background-image: url(/sites/default/files/MAHDOLLISTAMME.png);
    background-color: #5f9ad1
}

.vastuullisuusohjelma_hanuri td:nth-child(2) h2:not(.nobg) {
    background-image: url(/sites/default/files/RAKENNAMME.png);
    background-color: #3eb5c8
}

.vastuullisuusohjelma_hanuri td:nth-child(3) h2:not(.nobg) {
    background-image: url(/sites/default/files/TUEMME.png);
    background-color: #5f9ad1
}

.vastuullisuusohjelma_hanuri td:nth-child(4) h2:not(.nobg) {
    background-image: url(/sites/default/files/PANOSTAMME.png);
    background-color: #5f9ad1
}

.ykhanuri tr, .ykhanuri td {
    background-color: rgb(195, 218, 239);
}

.ykhanuri td tr td, .ykhanuri table tr {
    border: 0 none !important;
}

.ykhanuri td img {
    width: 150px !important;
    max-width: 150px;
}

#kestavakehitys-grid {
    grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 767px) {
    .vastuullisuusohjelma_hanuri.ymparisto td {
        display: grid;
    }

    #kestavakehitys-grid {
        grid-template-columns: 1fr;
    }
    
    .etusivu_title {
        font-size: 26px !important;
        font-weight: bold;
    }
}

@media (min-width: 992px) {
    .html_hanuri table.tavoitteethanuri td>p>strong {
        display: none;
    }
}

@media (max-width:992px) {
    .vastuullisuusohjelma_hanuri td {
        width: 100%;
    }
    .html_hanuri .hanuritaso .field-collection-item--name-field-hanuri-taso-2>.content>div {
        padding-left: 15px;
        padding-right: 15px;
    }
    .vaaleavalkoinenhanuri td:first-child {
        border-right-width: 1px !important;
    }
    .html_hanuri table:not(.varallisuustbl), .html_hanuri table:not(.varallisuustbl) tr, .html_hanuri table:not(.varallisuustbl) td, .html_hanuri table:not(.varallisuustbl) th, .html_hanuri table:not(.varallisuustbl) tbody {
        display: block;
        width: 100% !important;
    }
    .html_hanuri table.tavoitteethanuri thead {
        display: none;
    }
    .html_hanuri table tr {
        margin-top: 15px;
    }
}

@media (min-width: 481px) {
    .borderinkanssa>.col-sm-6:first-child {
        border-right: 1px solid #ccc;
    }
}

@media (max-width: 767px) {
    .borderinkanssa .webform-element--title-inline>label {
        padding-right: 0 !important;
    }
}

@media (max-width: 991px) {
    .header .container-fluid #navbar-main {
        align-self: center;
    }
    .etusivuviim .card-group {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
    .etusivuviim .card:first-child {
        order: 1;
        -ms-flex: 1 0 100%;
        flex: 1 1 100%;
        max-width: 100%;
    }
    .etusivuviim .card:nth-child(2) {
        order: 4;
        -ms-flex: 1 0 100%;
        flex: 1 1 100%;
        max-width: 100%;
    }
    .etusivuviim .card:nth-child(3) {
        order: 2;
    }
    .etusivuviim .card:nth-child(4) {
        order: 3;
    }
    #navbar-main {
        order: 3;
    }

    #navbar-top {
        margin-left: auto;
        padding: 0;
    }
}

@media (min-width: 481px) and (max-width: 767px) {
    html .kaksi .card.nelja, html .kaksi .neljas_osa .card, .kaksi *:not(.col)>.card:not(.col):not(.col-xl-3) {
        -ms-flex: 1 0 100% !important;
        flex: 1 1 100% !important;
        max-width: 100% !important;
    }
    html .kolme .card.nelja, html .kolme .neljas_osa .card, .kolme *:not(.col)>.card:not(.col):not(.col-xl-3) {
        -ms-flex: 1 0 100% !important;
        flex: 1 1 100% !important;
        max-width: 100% !important;
    }
}

@media (min-width: 768px) {
    .kaksi .card.nelja, .kaksi .neljas_osa .card {
        -ms-flex: 1 0 50% !important;
        flex: 1 1 50% !important;
        max-width: 50% !important;
    }
    .kolme .card.nelja, .kolme .neljas_osa .card {
        -ms-flex: 1 0 50% !important;
        flex: 1 1 50% !important;
        max-width: 50% !important;
    }
}

@media (min-width: 481px) {
    .lue_viime_blogit, #viime_blogit, .lue_viime_uutiset, #viime_uutiset {
        display: none;
    }
}

#viime_blogit, #viime_uutiset {
    margin-bottom: 15px;
}

.lue_viime_blogit, .lue_viime_uutiset {
    position: fixed;
    bottom: 0;
}

.lue_viime_uutiset {
    bottom: 20px;
}

@media (min-width: 481px) {
    .lue_viime_blogit, #viime_blogit, .lue_viime_uutiset, #viime_uutiset {
        display: none !important;
    }
}

#viime_blogit, #viime_uutiset {
    margin-bottom: 15px;
}

.lue_viime_blogit, .lue_viime_uutiset {
    position: fixed;
    z-index: 9;
    bottom: 0;
    left: 0;
}

.lue_viime_uutiset {
    bottom: 28px;
}

#viime_blogit, #viime_uutiset {
    margin-top: 30px;
}

.mobileoverflower {
    overflow: hidden;
    background-color: #182F32;
}

.mobileoverflower #page, .mobileoverflower .site-footer {
    opacity: 0;
}



div.search-block-form {
    width: calc(100% - 90px);
}

.icheckbox_square+.form-required {
    display: none;
}

.varallisuustbl thead tr {
    border: 0 none !important;
}

.varallisuustbl th {
    padding: 10px 15px;
    border: 0 none !important;
    background-color: #385346;
}

.varallisuustbl td {
    background-color: #ebe1d5;
    border-left: 0 none;
    border-right: 0 none;
    color: #000;
}

.varallisuustbl tr:nth-child(2n) td {
    background-color: #D6C3AA;
}

@media (max-width: 767px) {
    .varallisuustbl td, .varallisuustbl th {
        font-size: 12px;
    }
}

@media (min-width: 768px) and (max-width: 1200px) {
    .vastuullisuusohjelma_hanuri.ymparisto h2 {
        background-image: none !important;
        width: 12rem !important;
        height: 12rem !important;
        padding: 4rem 1rem 1rem 1rem;
        font-size: 1rem;
    }
    .vastuullisuusohjelma_hanuri.ymparisto h2.pt-5 {
        padding-top: 2rem !important;
        font-size: .8rem;
    }
    .vastuullisuusohjelma_hanuri.ymparisto h2>img {
        width: 3rem;
        margin-top: -3rem;
        margin-bottom: .5rem;
    }
    .vastuullisuusohjelma_hanuri.ymparisto h2>span {
        font-size: .5rem;
        padding-left: 1rem;
        padding-right: 1rem;
    }
}

@media (min-width: 1200px) {
    .varallisuustbl td, .varallisuustbl th {
        font-size: 16px;
    }
}

@media (max-width: 920px) {
    html {
        overflow-x: hidden;
    }
}

@media(min-width: 992px) {
    .vast_banneri_img {
        position: absolute;
        bottom: -9em;
        left: 22.5%;
        z-index: 9;
    }
}

.border-3 {
    border-width: 3px !important;
}

.border-2 {
    border-width: 2px !important;
}

.node--type-vastuullisuus-alasivut h2 {
    margin-bottom: 1rem;
}

.node--type-vastuullisuus-alasivut hr {
    background-color: #000;
    color: #000;
}

.roskatiko {
    height: 10rem;
    margin-top: -7rem;
    text-align: right;
    margin-bottom: -2rem;
}

.roskatiko img {
    height: 100%;
    width: 25%;
    margin-left: -5%;
    margin-right: -5%;
}

@media (max-width: 1200px) {
    html .site-footer {
        padding-left: 30px;
        padding-right: 30px;

    }
    footer ul.nav .menu-item--expanded>.nav-link {
        padding-left: 0;
        padding-right: 0;
    }
    footer ul.nav .menu-item--expanded > ul > li > a {
        padding-left: 0;
        padding-right: 0;
    }
    .field--name-field-vasen-kappale-2 h1 {
        margin-top: 0 !important;
    }
    .field--name-field-kesken-kappale-1 table {
        margin-bottom: 0 !important;
    }
}

.stickymenuala {
    height: 62px;
}

.stickymenuala>ul {
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 999;
    left: 0;
}

.stickymenuala>ul li {
    padding: 0 !important;
    margin-left: -2px;
}

.stickymenuala>ul li a {
    border-color: rgba(22, 180, 196, 1) !important;
    padding-top: .2rem !important;
    padding-left: .5rem !important;
    padding-right: .5rem !important;
    margin: 0 !important;
    font-size: .75rem !important;
    padding-bottom: .1rem !important;
}

.hanuritaso .row.w-100 {
    margin: 0;
}

@media (max-width: 991px) {
    .bigpadding {
        padding-bottom: 0 !important;
        margin-bottom: 0 !important;
    }
}

@media (max-width: 480px) {
    #block-sliderinallaetusivu {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
    .vastuullisuusohjelma_hanuri.ymparisto h2 {
        max-height: 80vw;
        max-width: 80vw;
        padding-top: 25vw !important;
    }
    .vastuullisuusohjelma_hanuri.ymparisto h2.pt-5 {
        padding-top: 12vw !important;
        font-size: 5vw !important;
    }
    .vastuullisuusohjelma_hanuri.ymparisto h2>span {
        font-size: 3vw;
    }
    .vastuullisuusohjelma_hanuri.ymparisto h2 img {
        margin-top: -20vw;
    }
}

table.ymparisto tr {
    border: 0 none !important;
}

.bg-vihrea-100 {
    background-color: #44c040;
}

.bg-dark-vihrea-100 {
    background-color: #4eb045;
}

.bg-light-oranssi-100 {
    background-color: #f8aa00;
}

.btn-bold {
    font-weight: bold;
    border-width: 2px;
}

.card-img {
    border-radius: 0;
}

.btn.bg-valkoinen-100:hover {
    color: #fff !important;
}

.btn-bold.btn-sm {
    padding-bottom: .1rem;
}

.dropdown-menu {
    border-radius: 0;
}

.paavalikko .dropdown-item {
    padding: 1rem .5rem;
}

.paavalikko .dropdown-item a {
    display: flex;
    gap: 1rem;
    padding: 0;
}

.paavalikko .dropdown-item a:after {
    content: "\f054";
    font-size: 1rem;
    font-family: "FontAwesome";
    font-style: normal;
    font-weight: normal;
    margin-left: auto;
    display: inline-block;
}

.paavalikko .dropdown-item .is-active {
    text-decoration: underline !important;
}

@media (max-width: 480px) {
    #stickymenuala {
        display: block;
    }
    .stickymenuala {
        height: 173px;
    }
    #stickymenuala>li {
        margin-left: 1px !important;
    }
    #stickymenuala>li>a {
        margin-bottom: -2px !important;
        margin-left: 0 !important
    }
}

#stickymenuala li .active {
    border-color: #f39200;
}

.emotyp {
    margin-bottom: 0px;
}

.emoty {
    position: relative;
    top: -4px;
}

.node--type-vastuullisuus-alasivut .embedded-entity header, .node--type-vastuullisuus-alasivut .embedded-entity .field--name-title {
    display: none;
}

@media (min-width: 481px) and (max-width: 991px) {
    .node--type-vastuullisuus-alasivut #block-bootstrap-barrio-subtheme-content img:not(.emoty) {
        max-width: 400px;
        width: 100%;
    }
}

.node--type-vastuullisuus-alasivut .embedded-entity {
    width: 100% !important;
}

.node--type-vastuullisuus-alasivut .embedded-entity ul li, .node--type-vastuullisuus-alasivut .embedded-entity p {
    font-weight: 300;
    font-size: 1.1rem;
}

.etusivuviim h1 {
    font-size: 2rem;
    margin-bottom: 15px;
    padding-top: 1rem !important;
    margin-top: 0;
}

.etusivuviim h2 {
    margin-top: 5px;
    margin-bottom: 5px;
    font-size: 1.8rem;
    padding: 1rem 0;
    font-weight: bold;
}

.etusivuviim h4 {
    padding-bottom: 15px;
    margin-bottom: 0;
}

.seurcard img {
    width: 100%;
}

.etusivuviim {
    margin-bottom: 0 !important;
}

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

.seurcard>a>img, .seurcard>img {
    height: auto !important;
}

.seurcard>img {
    margin-top: .75px;
}

@media (max-width: 480px) {
    .seurcard:last-child {
        border-left: 0 none !important;
    }
    .seurcard>img {
        margin-top: 0px;
    }
}

@media (max-width: 991px) {
    .hide_for_mobile {
        display: none;
    }
    .w>.c>.ct>section {
        width: 100% !important;
    }
    .w>.card-title>a {
        line-height: 1rem;
        font-size: 1.25rem;
    }
}

@media (min-width: 992px) {
    .hide_title_for_desktop>h1 {
        display: none;
    }
}

.w>.card-title {
    position: absolute;
    width: 20%;
    min-width: 200px;
    right: 0;
}

@media (max-width: 1200px) and (min-width: 768px) {
    .w.b>.c {
        height: 130px;
    }
    .w.b>.c>.ct>section {
        width: calc(50%);
    }
    .w.b>.c>.ct>section:last-child {
        width: 100%;
        clear: both;
        float: none;
        padding-top: 5px;
        font-size: 16px;
        line-height: 18px;
    }
    .w>.c>.ct>section:first-child {
        border-right: 0;
        margin-right: 0;
    }
    .w>.c>.ct>section:nth-child(2) {
        border-left: 1px solid #fff;
        padding-left: 45px;
        margin-right: 0;
        border-right: 0;
        margin-bottom: 0px;
    }
}

@media (max-width: 991px) {
    .w.b>.c {
        height: 115px;
    }
    .w>.c>.ct>section:nth-child(3) br:nth-child(3) {
        display: block;
    }
    .w.b>.c>.ct>section:last-child>h1 {
        width: 50% !important;
        clear: none;
        float: left;
    }
    .w.b>.c>.ct>section:last-child:after {
        clear: both;
        content: "";
        display: block;
    }
    .w.b .relaetufoo {
        display: none;
    }
}
@media (max-width: 991px) {

html .w>.c.no_feat > .cb {
    line-height: 1.25em !important;
    font-size: 2em !important;
    text-transform: none
}
}
@media (max-width: 767px) {
    .w.b>.c>.ct>section {
        font-size: 4vw;
        line-height: 4.5vw;
        padding-left: 15px;
        padding-right: 15px;
    }
    .w.b .relaetufoo {
        margin-top: 2vw;
        padding-top: 2vw;
        border: 0;
        display: block;
    }
    .w.b .relaetufoo>span.btn {
        padding-top: 1vw;
        padding-bottom: .5vw;
        font-size: 3vw;
        line-height: 4vw;
    }
    .w.b>.c>.ct>section:last-child>h1 {
        width: 100% !important;
        clear: none;
        float: left;
        margin-bottom: 2vw;
        margin-top: 3vw;
        font-size: 8vw;
        line-height: 9vw
    }
    .w.b>.c {
        height: 50vw;
        padding-left: 0;
        padding-right: 0;
    }
    .w.b {
        padding-bottom: 50vw;
    }
    html .w>.c.no_feat>.cb {
        font-size: 15px !important;
        line-height: 14px !important;
    }
    .w.b>.c.no_feat {
        height: 25px !important;
    }
    .w.b.no_feat {
        padding-bottom: 0vw;
    }
}

@media (min-width: 481px) and (max-width: 767px) {
    .w.b>.c {
        height: 30vw;
    }
    .w.b .relaetufoo {
        margin-top: 1vw;
        padding-top: 1vw;
        border: 0;
        display: block;
    }
    .w.b .relaetufoo>span.btn {
        padding-top: 1vw;
        padding-bottom: .5vw;
        font-size: 2.5vw;
        line-height: 3.5vw;
    }
    .w.b {
        padding-bottom: 30vw;
    }
    .w.b>.c>.ct>section:last-child>h1 {
        margin-bottom: 2vw;
        margin-top: 1vw;
        font-size: 5vw;
        line-height: 5vw
    }
    .w.b>.c>.ct>section {
        font-size: 3vw;
        line-height: 3.5vw;
        padding-left: 15px;
        padding-right: 15px;
    }
}

.owl-nav {
    position: absolute;
    top: 46px;
    width: 100%;
    pointer-events: none;
}

.owl-nav:after {
    content: "";
    display: block;
    clear: both;
}

.owl-nav>* {
    pointer-events: all;
}

.owl-next, .owl-prev {
    overflow: hidden;
    border: 1px solid #ccc !important;
    width: 50px;
    height: 50px;
    background-color: #fff !important;
    -webkit-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -moz-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -ms-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    -o-transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    transition: all .4s cubic-bezier(.25, .21, .015, .995) 0s;
    outline: 0 !important;
}
.owl-next:hover, .owl-prev:hover {
    background-color: #115B69 !important;
}

.owl-next:hover>span, .owl-prev:hover>span {
    color: #fff !important;

}
.owl-next>span, .owl-prev>span {
    font-size: 4rem !important;
    color: #115B69;
    line-height: 2.5rem !important;
    height: 50px !important;
}

.owl-prev:hover {
    width: 75px;
}

.owl-next:hover {
    width: 75px;
}

.owl-next {
    float: right;
}

@media (max-width: 480px) {
    .w>.card-title {
        min-width: 150px;
    }
    html .w>.card-title.pitkasliderotsikko {
        min-width: 230px;
    }
    .w>.card-title>a {
        font-size: 1rem;
        line-height: .5rem;
    }
    .owl-next, .owl-prev {
        width: 25px;
    }
    .owl-next:hover, .owl-prev:hover {
        width: 50px;
    }
}

.laatikot_table {
    table-layout: fixed;
}

.laatikot_table td {
    padding: 1rem 1.5rem .5rem 1.5rem !important;
    border-width: 4px;
}

@media (max-width: 991px) {
    .laatikot_table, .laatikot_table tr, .laatikot_table td {
        display: block;
    }
    .dummytd {
        display: none !important;
    }
}

.lb-v-scrollbar {
    display: block !important;
    opacity: .3 !important;
}

.kohdesaannot {
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}
.kohdesaannot li {
    list-style: none;
    float: left;
}
.kohdesaannot:after, .kohdesaannotcontainer:after {
    content: "";
    clear: both;
    display: block;
}

.a2a_svg
{
    border-radius: 50% !important;
}

.skrollatava h2 {
    line-height: 1.5em;
    margin-bottom: 1.25em !important;
    font-size: 1.25rem;
}

.skrollatava p {
    line-height: 2em;
    margin-bottom: 1.5em !important;
}

.skrollatava {
    max-width: 100%;
    overflow: auto;
}



.skrollatava .lb-content {
    padding-right: 15px;
}

.lb-h-scrollbar {
    display: none;
}

.kohdelaatikot {
    width: 100%;
    height: 100%;
    padding: 15px 15px 0px 15px;
    line-height: 18px;
}
@media (max-width: 991px) {
    .kohdelaatikot {
        padding-bottom: 1px;
    }
}
.kohdelaatikot a {
    color: #fff;
    font-weight: 600;
}
.kohdelaatikot a:hover {
    text-decoration: underline !important;
}

.listatable tr, .listatable td {
  border: 0 none;
  padding: 0 0 5px 0px;
}
.listatable {
    font-size: 1em;
}
.listatable td > span:first-child {
    background-color: #fff;
    padding-right: 5px;
}
.listatable td:last-child {
    text-align: left;
    min-width: 65px;
    padding-left: 15px;
}
.listatable .dots {
    width: calc(100% - .1em);
    height: 2px;
    float: left;
    margin-top: -6px;
    border-top: 2px dotted #182F32
}


.w>.c.no_feat {
    height: 50px !important;
    padding-top: 5px;
    padding-bottom: 5px;
    text-align: left;
    padding-left: 15px;
}

.w>.c.no_feat > .cb {
    line-height: 1.25em !important;
    font-size: 2em !important;
    text-transform: none
}

.w>.card-title.pitkasliderotsikko {
    min-width: 300px;
}

.node--type-asuntokohde .slideri.normal * {
    max-height:unset !important
}

.haetastalaatikko .card-footer {
    padding-bottom: 1.5em;
}

.haetastalaatikko h5 {
    padding-bottom: 1em;
}

/* it was originally 124 */
.kohdesaannotcontainer img 
{
    height: 130px;
}

/* new */
.asukaalle_text-right {
    text-align: right!important;
    margin-left: -30px;
    padding: 0px 50px 20px 65px;
}

.kohdesaannot li{
    margin-bottom: 10px;
}
/* endnew */

.asuntotiedot 
{
    font-size: .95em;
}

#block-turvallinenjaluotettavavuokranantaja .hero-section-content,
.hero_section_block .hero-section-content {
    width: 45% !important;
    display: flex;
    flex-direction: column;
    gap: 2rem;
    height: 100%;
    justify-content: center;
}

@media (max-width: 991px) {
    .kohdeaddtoany
    {
        padding-top: 0 !important;
    }
    .skrollatava {
        height: auto !important;
    }

    .takaisinnappi {
        text-align: center !important;
    }

    #block-turvallinenjaluotettavavuokranantaja .field--name-field-overlay,
    .hero_section_block .field--name-field-overlay {
        display: none;
    }
    #block-turvallinenjaluotettavavuokranantaja .hero-section-content,
    .hero_section_block .hero-section-content {
        position: relative !important;
        width: 100% !important;
    }
}






.kohdelaatikot p {
    margin-bottom: 0;
}
.kohdelaatikot {
    padding: 0;
}

.kohdelaatikot {
    display: table !important;
    vertical-align: middle;
}
.kohdelaatikot > p {
    display: table-row;
    vertical-align: middle;
}

.kohdelaatikot > p > a {
    display: table-cell;
    vertical-align: middle;
    padding: 15px;
}

.card-body.tulossa
{
    padding-bottom: 0;
}


footer ul.nav ul a.nav-link:hover{
    color: #000;
}
.owl-dots {
    margin-bottom: -20px;

    margin-top: -4px;
    text-align: left;
}
.owl-dots > button:not(.active):hover {
    background-color: #115B69 !important;
    border-color: #115B69 !important
}
.owl-dots > button {
    width: 20px;
    outline: 0 !important;
    height: 20px;
    background-color: #ccc  !important;
    margin-left: 5px;
    margin-right: 5px;
    border: 1px solid #999 !important;
}

.owl-dots > button.active {
    background-color: #115B69 !important;
    border-color: #115B69 !important
}
/* it was originally 110 */

.vinkkijako
{
    position: absolute;
    bottom: 15px;
    right: 15px;
}
.vinkkiscont {
    position: relative;
}

@media (max-width: 480px) {
    .henkilokun .text-right {
        text-align: left !important;
    }
    .henkilokun .row {
        margin-bottom: 30px !important;
        padding-bottom: 30px;
        border-bottom: 8px solid #ddd;
    }
}
article.node--unpublished {
    padding: unset;
}

@media (max-width: 1200px) {

    .w-xl-100 {
        width: 100% !important;
    }
    .w-xl-50 {
        width: 50% !important;
    }
}

@media (max-width: 767px) {

    .w-sm-100 {
        width: 100% !important;
    }
    .w-sm-50 {
        width: 50% !important;
    }

    .image-block-section img {
        object-fit: cover;
        aspect-ratio: 1.5/1;
        width: 100%;
    }
}

.text-formatted td {
    font-weight: 300;
    font-size: 1rem;
}

#block-breadcrumbs {
    padding: 0;
    margin-bottom: -30px;

}
body.path-search #main-wrapper {
    padding-top: 30px;
}
html nav.tabs {
    margin-bottom: 30px;
    margin-top: 0px;
}
.breadcrumb {
    background-color: #D6C3AA;
    margin: 0;
    border-radius: 0;
    font-weight: 500;
}

.bg-green-i {
    background: #385346 !important;
}

.bg-darkgreen {
    background: #182F32;
}

.text-darkgreen {
    color: #182F32;
}

.kehys-bg-darkgreen {
    border-color: #182F32 !important;
}

.bg-green {
    background: #385346;
}

.bg-teal {
    background: #115B69;
}

.text-green {
    color: #385346;
}

.kehys-bg-green {
    border-color: #385346;
}

.bg-sand {
    background: #D6C3AA;
}

.bg-gray {
    background: #EBEEED;
}

.text-sand {
    color: #D6C3AA;
}

.kehys-bg-sand {
    border-color: #D6C3AA;
}

.bg-lightsand {
    background: #ebe1d5;
}

.text-lightsand {
    color: #ebe1d5;
}

.kehys-bg-lightsand {
    border-color: #ebe1d5;
}

.text-yellow {
    color: #EEE082;
}

.text-yellow-important {
    color: #EEE082 !important;
}

i.fas {
    font-family: 'FontAwesome';
    font-style: normal;
}

.gap-1 {
    gap: 1rem;
}

.podcast-links ul {
    display: flex;
    flex-wrap: wrap;
}

.podcast-col {
    display: flex;
    flex-direction: column;
}

.podcast-col .podcast-links {
    margin-top: auto;
}

#block-views-block-podcast-block-1 .views-row {
    margin-bottom: 0 !important;
}

#block-views-block-podcast-block-1 .views-row hr {
    margin-bottom: 2rem !important;
    margin-top: 2rem !important;
    border-color: #182F32;
    border-top-width: 2px;
}

#block-turvallinenjaluotettavavuokranantaja .field--name-field-overlay,
.hero_section_block .field--name-field-overlay {
    position: absolute;
    left: 0;
    top: 0;
}

#block-turvallinenjaluotettavavuokranantaja .field--type-image img,
.hero_section_block .field--type-image img {
    margin: 0;
}

#block-turvallinenjaluotettavavuokranantaja .hero-section-company,
.hero_section_block .hero-section-company {
    font-size: 1.25rem;
}

#block-turvallinenjaluotettavavuokranantaja .text-formatted p:not(.text-yellow),
.hero_section_block .text-formatted p:not(.text-yellow) {
    color: #fff;
}

#block-etusivunilmoitukset .notification--item {
    gap: 2rem;
}

#block-etusivunilmoitukset .notification--content * {
    margin: 0;
}

#block-etusivunilmoitukset .notification--content p {
    color: #EEE082;
}

.three-col-section h2 {
    font-size: 2.5rem;
}

.three-col-section h3 {
    font-size: 1.75rem;
    font-family: 'Cabin', sans-serif;
    font-weight: bold;
    margin-bottom: 2rem;
}

.image-block-section img {
    width: 100%;
}

.border-y {
    border-top: 1px #D9D9D9 solid;
    border-bottom: 1px #D9D9D9 solid;
}

.border-b {
    border-bottom: 1px #D9D9D9 solid;
}

.news-list a:not(.btn) {
    color: #fff;
    text-decoration: underline;
}


.article--info {
    gap: .5rem;
    font-weight: 500;
}

#block-views-block-etusivun-uutiset-ja-blogi-uusi-block-1 .btn {
    margin-top: 1rem;
}

#block-views-block-etusivun-uutiset-ja-blogi-uusi-block-1 img,
#block-views-block-etusivun-uutiset-ja-blogi-uusi-block-2 img {
    margin-bottom: 1rem;
}

#block-views-block-etusivun-uutiset-ja-blogi-uusi-block-1 .title {
    font-size: 2rem;
}

#block-views-block-etusivu-haettavissa-block-1 .views-row {
    width: 100%;
}

.paragraph--type--image-section img {
    margin: 0;
}

.max-w-text {
    max-width: 65ch !important;
    width: 100%;
}

.featured-top .field--name-field-taustakuva img {
    margin: 0;
}

.search-link:after {
    content: "\f002";
    color: #182F32;
    font-size: 1.5rem;
    width: auto;
    display: inline-block;
    font-family: "FontAwesome";
    padding-left: 10px;
    padding-right: 10px;
}

.node--type-article h1 .node--type-article h2, .node--type-article h3, .node--type-article h4 {
    font-family: 'Cabin', sans-serif;
}

article.node--type-article .field--name-body,
.node--type-article .article-date {
    font-size: 1.25rem;
}

.text-formatted a[target='_blank']:not(.no-icon):after {
    content: "\f08e";
    color: #115B69;
    font-size: 1rem;
    margin-left: .5rem;
    display: inline-block;
    font-family: "FontAwesome";
}

.property-map {
    min-height: 300px;
}

.asunto-ingressi {
    font-size: 1.175rem;
}

.asunto-ingressi p {
    color: #385346;
    font-weight: 500;
}

.accordion-subtitle {
    font-weight: 600;
    font-size: 1.25rem;
    text-transform: uppercase;
    margin-bottom: 1rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #D9D9D9;
    letter-spacing: 3px;
}

.ukk-controls {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: center;
    flex-wrap: wrap;
}

.ukk-controls a {
    font-size: 1.175rem;
    font-weight: 500;
}

.ukk-controls a.is-active {
    text-decoration: underline;
}

.webform-submission-year-filter-form {
    display: flex;
    align-items: end;
    gap: 1rem;
}

.font-weight-semibold {
    font-weight: 500 !important;
}

.text-lg {
    font-size: 1.175rem;
}

.gap-4 {
    gap: 1rem;
}

.actions-row {
    flex-wrap: wrap;
}

.text-formatted ul li {
    margin-bottom: 0.5rem
}

.icon-section--icon {
    width: 100%;
    max-width: 10%;
}

.icon-section--icon img {
    margin-bottom: 0;
}

.green-box-section {
    padding: 2rem;
    border-radius: 1rem;
}

.green-box-section p,
.green-box-section a,
.green-box-section a:after {
    color: #fff !important;
}

.green-box-section p:last-of-type {
    margin-bottom: 0;
}

.aspect-video {
    aspect-ratio: 16 / 9;
}

.view-uutisarkisto-uusi p strong {
    font-weight: 400;
}

.mobilenav-close:after {
    content: "\f00d";
    font-family: "FontAwesome";
    font-style: normal;
    font-weight: normal;
    font-size: 1rem;
    margin-left: auto;
}

.liiketilat .haetastalaatikko {
    display: none !important;
}

.image-block-section h2 {
    font-size: 30px;
    color: #385346;
}

.image-block-section .text-uppercase {
    display: block;
    letter-spacing: 1px;
}

.spacing-1,
.article--info .text-uppercase {
    letter-spacing: 1px;
}

/*.node--type-asuntokohteet-asukassivut .field--name-field-teksti-3 p:first-of-type {
    margin-bottom: 4rem;
}*/
.text-formatted a[target='_blank'][href='']:not(.no-icon):after {
    display: none;
}

.text-formatted a[target='_blank'][href=''] {
    text-decoration: none;
    pointer-events: none;
    cursor:text;
}

.kohdesaannotcontainer img.taiteilija-asunto {
    height: 90px;
}

.alert svg {
    margin-right: 25px;
    line-height: unset;
    height: 32px;
}
.alert > .btn-close {
    display: none;
}

.alert > div > hr {
    margin-top: .1rem;
    margin-bottom: .1rem;
}
 
.alert a {
    text-decoration: underline;
}

.alert #message-status-title {
    margin: 0 !important;
}

.field--name-field-hinnaston-lisaselite {
    margin-top: -30px;
}


body #header-sticky-wrapper.is-sticky>#header:before {
    content: "";
    background-color: #fff;
    position: absolute;
    margin-left: -30px;
    height: 100%;
    width: 30px;
    display: block;
    pointer-events:none;
}
body #header-sticky-wrapper.is-sticky>#header:after {
    content: "";
    background-color: #fff;
    position: absolute;
    margin-right: -30px;
    right: 0;
    height: 100%;
    width: 30px;
    display: block;
}
@media (min-width: 992px) {
    .etuss .article--info + div > h3 {
        min-height: 3rem;
    }
    .greencontent {
        min-height: 31.9rem;
    }
    .greencontent .border-b > div {
        min-height: 4rem;
    }
}
