/* GENERAL STYLES -> */

/*20230831*/
.home_first-row .fl-row-content-wrap{
  height: 500px;
}
@media only screen and (max-width: 570px) {
  .home_first-row .fl-row-content-wrap{
    height: 280px;
    align-items: end!important;
  }
}
.border-none .fl-row-content {
  border-top: none !important;
}
.home_first-row h1 {
  font-family: canada-type-gibson;
  font-weight: 700;
  font-size: 8rem;
  background: none;
  color: #fff;
  line-height: 1;
  text-transform: uppercase !important;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
  margin: 0;
    margin-top: 0px;
  letter-spacing: 0.03em;
  margin-top: 7.7%;
}

html {
  font-size: 62.5%;
}

body {
  background:#e2e4e3;
}

/*
#content .swiper-slide-invisible-blank {
    display: none!important;
}
*/

.single-referenssit img.refe_img {
  height:auto;
  width:100%;
  overflow:hidden;
  display:block;
}

#header-logo {
  text-align:center;
  margin-top:43px;
}

#header-logo svg {
  max-width: 90%;
  width:389px;
  height:auto;
}

body.menu-active #header-logo .hv-1 {
fill:#fff!important;
}

.menu-active #mobile-burger #burger .bar {
  background: #fff!important;
} 

#footer-logo svg {
  max-width:100%;
  width:438px;
  height:auto;
}

#footer {
  background:#00546e;
}

#content {
  background:#fff;
}

.referenssi-jumbo-row > .fl-row-content-wrap {
  background-position:center center!important;
  background-size: contain!important;
  background-repeat: no-repeat!important;
  width: 100%!important;
  padding-top: 0;
  padding-bottom:0;
}

h1 {
  color: #fff;
  font-family: farnham-display, serif;
  font-size: 10rem;
  line-height: 1.2;
  font-weight: 700;
  margin: 0;
  text-align: center; }

h1.jumbo-otsikko, h2.jumbo-otsikko {
font-family: canada-type-gibson!important;
font-weight: 700!important;
font-size: 8rem!important;
background: none;
line-height: 1!important;
text-transform:uppercase!important;
text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2)!important;
}

h1.jumbo-otsikko span.farnham-italic,
h2.jumbo-otsikko span.farnham-italic {
  font-family: farnham-display!important;
  font-weight:500!important;
  font-size:105px!important;
  font-style:italic!important;
  text-transform:none!important;
}


h2,
#content .referenssit-row h2 {
  color: #e76c5c;
  text-transform:uppercase;
  font-size: 1.8rem;
  line-height: 1.2;
  font-weight: 400;
  font-family:canada-type-gibson;
  margin:0 0 25px 0;
  padding:0;
  display:inline-block;
  letter-spacing:0.07em;
}

h3 {
  color: #1e1e1e;
  font-size: 2.6rem;
  line-height: 1.2;
  font-weight: 600;
  font-family: farnham-display, serif;
  margin: 0 0 1.6rem 0;
}

.palvelulaatikko h3 {
  color: #fff;
  font-size: 2.2rem;
  font-family: farnham-display, serif;
  font-weight: 400;
  margin-bottom:0;
}

.palvelulaatikko h3 span {
font-size: 4.1rem;
font-family:canada-type-gibson!important;
font-weight: 700!important;
text-transform: uppercase;
letter-spacing:2px;
display:block;
margin-top:10px;
}

h4 {
  color: #1e1e1e;
  font-size: 2.4rem;
  line-height: 1.2;
  font-weight: 600;
  font-family: farnham-display, serif;
  margin: 0 0 1.6rem 0; }

h5 {
  color: #1e1e1e;
  font-size: 2.2rem;
  line-height: 1.2;
  font-weight: 600;
  font-family: farnham-display, serif;
  margin: 0 0 1.6rem 0; }

h6 {
  color: #1e1e1e;
  font-size: 2.0rem;
  line-height: 1.2;
  font-weight: 600;
  font-family: farnham-display, serif;
  margin: 0 0 1.6rem 0; }

p {
  color: #1e1e1e;
  font-size: 2.0rem;
  line-height: 1.3;
  font-weight: 400;
  font-family: farnham-display, serif;
  margin: 0 0 3.2rem 0; }

.etusivu-content p {
font-size: 3.0rem;
font-family: farnham-display;
font-weight: 300;
line-height: 1.333;
}

.tehtava-row .etusivu-content p {
font-size: 3.7rem;
font-family: farnham-display;
font-weight: 300;
line-height: 1.27;
}

.yritys-isoteksti p {
font-size: 4rem;
font-family: farnham-display, serif;
font-weight: 600;
line-height: 1.27;
}

.palvelulaatikko p {
  color: #fff;
  font-size: 1.4rem;
  font-family:canada-type-gibson;
  font-weight: 700;
  text-transform: uppercase;
  margin-top: 17px;
  margin-bottom:0;
  letter-spacing: 2px;
}

.fl-node-5e0916b335287 {
  margin-bottom:24px;
}

.ingressi p {
  color: #1e1e1e;
  font-size: 4.0rem;
  line-height: 1.3;
  font-weight: 600;
  font-family: farnham-display, serif;
}

ul {
  margin: 0 0 1.6rem 0;
  padding-left: 2.0rem;
}

li {
  color: #1e1e1e;
  font-size: 2.4rem;
  line-height: 1.4;
  font-weight: 400;
  padding: 1px 0;
  font-family: farnham-display, serif;
}

.referenssi-sisalto-row p a {
  color:#498597;
}

.referenssi-sisalto-row p a:hover,
.referenssi-sisalto-row p a:focus {
  color:#498597;
  text-decoration:underline;
}

.single-palvelut ul li {
  font-size: 2.0rem;
  line-height: 1.3;
}

.page-id-1659 .yhteystiedot-teksti {
  width:275px;
  min-width:275px;
}

a,
a:visited {
  color: #1e1e1e;
  font-family: farnham-display, serif;
  outline: none;
  text-decoration: none;
}

  .yhteydet-row a,
  .ota-yhteytta-row a {
    color: #1e1e1e;
    border-bottom: 3px solid #e76c5c;
  }

  .yhteydet-row a:hover,
  .ota-yhteytta-row a:hover,
  .yhteydet-row a:focus,
  .ota-yhteytta-row a:focus {
    color: #1e1e1e;
    border-bottom: 3px solid rgba(0,0,0,0);
  }

a:hover,
a:focus {
  color: #00546e;
  font-family: farnham-display, serif;
  transition: all 0.3s ease;
  outline: none;
  text-decoration: none; }

ul.palvelut a {
  text-decoration: none!important;
}

.suosittelijan-kuva {
  padding-right:20px;
}

/* <- GENERAL STYLES */
/* BUTTON STYLES -> */
a.btn-1,
.btn-1 a.fl-button {
  background: #e4292c;
  padding: 15px 25px;
  display: inline-block;
  height: inherit;
  border: 0;
  border-radius: 0;
  font-size: 1.8rem;
  line-height: 1.2;
  letter-spacing: 1px;
  font-weight: 400;
  text-transform: uppercase;
  color: #fff;
  transition: all 0.3s ease;
  text-decoration: none; }

.btn-1 a.fl-button span {
  color: #fff; }

a.btn-1:hover,
a.btn-1:focus,
.btn-1 a.fl-button:hover,
.btn-1 a.fl-button:focus {
  background: #000;
  color: #fff; }

a.btn-2,
.btn-2 a.fl-button {
  background: #00b8ec;
  padding: 15px 25px;
  display: inline-block;
  height: inherit;
  border: 0;
  border-radius: 0;
  font-size: 1.8rem;
  line-height: 1.2;
  letter-spacing: 1px;
  font-weight: 400;
  text-transform: uppercase;
  color: #fff;
  transition: all 0.3s ease;
  text-decoration: none; }

.btn-2 a.fl-button span {
  color: #fff; }

a.btn-2:hover,
a.btn-2:focus,
.btn-2 a.fl-button:hover,
.btn-2 a.fl-button:focus {
  background: #000;
  color: #fff; }

/* <- BUTTON STYLES */
/* HEADER -> */
#top-logo {
  padding: 15px 0; }

#top-logo svg {
  fill: #fff;
  height: auto;
  max-width: 100%;
  width: 240px;
  transition: all 0.2s;
  display: block; }

#masthead {
  position: absolute;
  width: 100%;
  z-index: 1;
}

.menu-active header#masthead {
    z-index: 100;
    position: fixed;
    width: 100%;
    top: 0;
}

#top-logo a {
  outline: none; }

#footer-vaikuttavaa h5 {
  color:#fff;
  font-family:canada-type-gibson;
  font-weight:400;
  font-size:1.7rem;
  margin-top: 3px;
  text-transform:uppercase;
  letter-spacing:0.13rem;
}

#footer-copyright p {
  color:#fff;
  font-family:canada-type-gibson;
  font-weight:500;
  font-size:1.8rem;
}

#footer-promoting h4 {
  color:#fff;
  font-family:canada-type-gibson;
  font-weight:700;
  font-size:2.6rem;
  line-height: 3.1rem;
  letter-spacing: 1px;
  text-transform:uppercase;
  text-align:right;
  margin-top:9px;
}

#some-painikkeet a {
  color:#fff;
  font-size:2rem;
  font-family:canada-type-gibson;
  margin-right:15px;
}

#some-painikkeet a:hover,
#some-painikkeet a:focus {
  text-decoration:underline;
}


#some-painikkeet a:last-child {
  margin-right:4px;
}


#some-painikkeet .fl-html {
  text-align:right;
}

#bb-footer .fl-row-content-wrap {
  padding:75px 0 82px 0;
}

.burger-container {
    position: absolute;
    display: inline-block;
    height: 50px;
    width: 50px;
    top: 34px;
    right: 41px;
    cursor: pointer;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    transition: all 0.3s cubic-bezier(0.4, 0.01, 0.165, 0.99);
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
}

#burger {
    width: 39px;
    height: 19px;
    position: relative;
    display: block;
    margin: -4px 0 0 auto;
    top: 50%;
}

#burger .bar {
    width: 100%;
    height: 5px;
    display: block;
    position: relative;
    background: #fff;
    transition: all 0.3s cubic-bezier(0.4, 0.01, 0.165, 0.99);
    transition-delay: 0s;
}

.topBar {
    -webkit-transform: translateY(-8px) rotate(0deg);
    transform: translateY(-8px) rotate(0deg);
}

.btmBar {
      -webkit-transform: translateY(8px) rotate(0deg);
    transform: translateY(8px) rotate(0deg);
}

.burger-container:hover .topBar {
    -webkit-transform: translateY(-11px) rotate(0deg);
    transform: translateY(-11px) rotate(0deg);
}

.burger-container:hover .btmBar {
      -webkit-transform: translateY(11px) rotate(0deg);
    transform: translateY(11px) rotate(0deg);
}

.menu-active #burger .topBar {
    transform: rotate3d(0,0,1,45deg);
    transform-origin: 50% 50%;
    top: 7px;
}

.menu-active #burger .midBar {
      transform: rotate3d(0,0,1,45deg);
    transform-origin: 50% 50%;
    top: 2px;
}

.menu-active #burger .btmBar {
    transform: rotate3d(0,0,1,-45deg);
    transform-origin: 50% 50%;
    top: -3px;
}

.menu-active .midBar {
  opacity: 0;
}

.fullmenu-bg {
    visibility: hidden;
    -webkit-opacity: 0;
    -moz-opacity: 0;
    opacity: 0;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    -webkit-transition: visibility .3s linear,opacity .3s linear;
    -moz-transition: visibility .3s linear,opacity .3s linear;
    -ms-transition: visibility .3s linear,opacity .3s linear;
    -o-transition: visibility .3s linear,opacity .3s linear;
    transition: visibility .3s linear,opacity .3s linear;
    z-index: 10;
    background: rgba(0,84,110,0.95);
    height: 100%;
}

.menu-active .fullmenu-bg {
      visibility: visible;
    -webkit-opacity: 1;
    -moz-opacity: 1;
    opacity: 1;
}

.menu-paavalikko-container {
      display: flex;
    align-items: center;
    justify-content: center;
    display: -webkit-flex;
    -webkit-align-items: center;
    -webkit-justify-content: center;
    width: 100%;
    height: 100%;
    margin: 0;
}

#desktop-menu {
      margin: 0 auto;
    display: inline-block;
    z-index: 1200;
    padding: 0;
    text-align: center;
}

ul#desktop-menu li {
      display: block;
    float: none;
    position: relative;
}

ul#desktop-menu li a {
    background: inherit;
    color: #fff;
    font-family:canada-type-gibson;
    font-size: 4rem;
    letter-spacing: 0px;
    padding: 0;
    text-transform: uppercase;
    outline: none;
        color: #fff;
    line-height: 1.2;
    font-weight: 800;
    display: inline-block;
    letter-spacing: 4px;
}

ul#desktop-menu li:hover a {
  color: #e76c5c;
}

.menu-active header#masthead {
      z-index: 100;
    position: fixed;
    width: 100%;
}

/*
.menu-active #bb-header {
  margin: 0;
}
*/

/* <- GENERAL STYLES */

/* ETUSIVU -> */

.text-right {
  text-align: right;
}
.tehtava-row .fl-rich-text {
  width: 80%;
}

.vaikutus-row .fl-rich-text {
    max-width: 70%;
    float: right;
}

.referenssit-row .fl-row-content-wrap {
padding-top: 7px;
  }

.vaikutus-row {
      padding: 85px 0 13px;
}

.vaikutus-row p {
  margin-top: 0px;
}

.vaikutus-row p.vaikutus-lue-lisaa,
.holynpoly-row p.holynpoly-lue-lisaa {
  margin-top:-21px;
}

.vaikutus-row .vaikutus-lue-lisaa a,
.holynpoly-row .holynpoly-lue-lisaa a {
    font-family:canada-type-gibson;
    font-size: 1.6rem;
    font-weight:400;
    border-bottom: 3px solid #e76c5c;
    margin-top:-10px;
    letter-spacing: 0.03em;
}

.vaikutus-row .vaikutus-lue-lisaa a:hover,
.vaikutus-row .vaikutus-lue-lisaa a:focus,
.holynpoly-row .holynpoly-lue-lisaa a:hover,
.holynpoly-row .holynpoly-lue-lisaa a:focus {
    font-family:canada-type-gibson;
    font-size: 1.6rem;
    font-weight:400;
    border-bottom: none;
    color:inherit;
    border-bottom:3px solid rgba(0,0,0,0);
}

.palvelulaatikko.grid-box .palvelut {
  display: grid;
  grid-gap: 10px;
  grid-template-columns: repeat(auto-fill,minmax(300px,1fr));
}
.palvelulaatikko.grid-box .palvelut li {
  width:100%;
  margin-right: 0;
  float: unset;
  max-width: 350px;
}

ul.palvelut {
  padding: 0;
  margin: 0;
  list-style-type: none;
}

ul.palvelut li {
  width: 24.36%;
  margin-right: 0.85%;
  float: left;
  position: relative;
  text-align: center;
  background: #00546e;
  overflow:hidden;
  padding:0;
}

.type-palvelut ul.palvelut li:last-child, .type-palvelut ul.palvelut li:nth-child(5){
margin-top: 0.85%;
}

ul.palvelut li:before {
    content: "";
    display: block;
    padding-top: 100%;
}

.palvelulinkki {
  position:absolute;
  top:0;
  right:0;
  bottom:0;
  left:0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

ul.palvelut li:nth-child(4) {
  margin-right: 0;
}

.palvelu-play {
    position: absolute;
    top: 56%;
    color: #fff;
    border-radius: 100px;
    padding: 0;
    height:70px;
    width:70px;
    background: rgba(255,255,255,0.5);
    font-size: 4rem;
    left: 50%;
    margin-left: -35px;
    margin-top: -35px;
}

.palvelu-play:before {
  position:relative;
  line-height:70px;
  font-size:30px;
}

.palvelukuvaus {
    position: absolute;
    top: 0;
    height: 100%;
    left: 0;
    padding: 15px 15px;
    border: 2px solid #498597;
    background: #498597;
    transition: all 0.2s ease-in-out;
    opacity: 0;
    z-index: -1;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;

}

.palvelukuvaus p {
  margin-top: 0;
  margin-bottom:0;
  text-transform: none;
  font-weight: 400;
  line-height: 2.0rem;
  font-size: 1.6rem;
  color: #fff;
  letter-spacing: 0;
  font-family: canada-type-gibson;
  letter-spacing:0.07em;
}

ul.palvelut li:hover .palvelukuvaus {
  opacity: 1;
  z-index: 1;
  cursor: pointer;
}

ul.palvelut li.hover .palvelukuvaus {
  opacity: 1;
  z-index: 1;
  cursor: pointer;
  display:flex;
}

.palvelut-row {
  padding: 40px 0 0;
}

.hyvan-puolesta-row {
      padding: 87px 0 49px;
}

.hyvan-puolesta-row .fl-rich-text {
max-width: 60%;
}

.holynpoly-row .fl-row-content-wrap {
  padding: 87px 0 129px;
}

.holynpoly-row .fl-rich-text {
    max-width: 45%;
    float: right;
    text-align: right;
}

.exit-row {
      padding: 87px 0 49px;
}
.exit-row .fl-col-content {
  flex-direction: row-reverse;
  justify-content: space-between;
}
.exit-row .etusivu-content {
      max-width: 42%;
      float:left;
}

.exit-row .etusivu-irtisanomisaika {
      float:right;
}

.exit-row .etusivu-irtisanomisaika img {
      height:190px;
      width:auto;
      margin-top:50px;
}

/* Rivien paddingit -> */

.tehtava-row .fl-row-content-wrap {
      padding: 87px 0 42px;
}

.yhteydet-row .fl-row-content-wrap {
      padding: 87px 0 49px;
}

.referenssit-otsikko-row .fl-row-content-wrap {
      padding: 2px 0;
}
/* <- Rivien paddingit */

.yhteydet-row .fl-rich-text {
      max-width: 53%;
    float: right;
    text-align: right;
}

/* YKSITÄINEN PALVELU -> */

.single-palvelut .palvelut-sisalto > .fl-row-content-wrap {
  padding:67px 0 32px;
}

.single-palvelut .palvelut-sisalto > .fl-row-content-wrap {
  background-color:#f4f4f4!important;
}

.single-palvelut .palvelut-sisalto p,
.single-palvelut .palvelut-hinta-row p {
  font-size: 2.0rem;
  line-height: 1.3;
    font-family: farnham-display, serif;
    font-weight: 400;
    margin-bottom: 30px;
}

.single-palvelut .palvelut-sisalto ul {
  font-size: 2.0rem;
  line-height: 1.3;
    font-family: farnham-display, serif;
    font-weight: 400;
    margin-bottom: 30px;
    margin-left:20px;
    padding:0;
}

.single-palvelut .palvelut-sisalto ul li {
  font-size: 2.0rem;
  line-height: 1.3;
    font-family: farnham-display, serif;
    font-weight: 400;
}

.palvelu-kuvaus-row .fl-row-content-wrap {
  margin:79px 0 49px;
}
.palvelu-kuvaus-row .fl-col-content {
  flex-direction: row;
}
.palvelut-hinta-row .fl-row-content-wrap {
  padding:67px 0 0px;
}

.single-palvelut .palvelu-kuvaus-row p {
    font-size: 3.0rem;
    font-family: farnham-display;
    font-weight: 300;
    line-height: 1.34;
  }

.single-palvelut .palvelut-row {
    padding: 30px 0 0;
}

.single-palvelut .palvelut-lisaa-referensseja-rivi .fl-row-content-wrap {
  padding-top:87px;
}

.palvelut-jumbo-row .fl-row-content-wrap {
  background-image: linear-gradient(90deg, #498597, #00546e)!important;
}

/* <- YKSITTÄINEN PALVELU */

/* YRITYS-SIVU */

.henkilokuva img {
  width:215px;
  height:auto;
}

.henkilon-yhteystiedot p {
  font-family:canada-type-gibson;
  font-size: 2.0rem;
  line-height: 1.3!important;
  font-weight:400;
}

.henkilon-yhteystiedot a {
  font-family:canada-type-gibson;
  font-size: 1.8rem;
  line-height: 1.3!important;
  font-weight:400;
}

.henkilon-yhteystiedot p strong {
  font-family:canada-type-gibson;
  text-transform:uppercase;
  font-weight:600!important;
}

.yhteystiedot-otsikko p {
  font-family: farnham-display, serif;
  font-size: 2.0rem;
  line-height: 1.3;
}

.yhteystiedot-row .fl-row-content-wrap {
  margin:77px 0 52px 0;
}

.yritys-ingressi p {
  font-weight: 600;
}

.page-id-1659 p {
  line-height: 1.38;
}

.yritys-ingressi h2 {
  margin-bottom: 51px;
}

.page-id-1659 .ingressi p {
line-height: 1.28;
}

.fl-node-5d5e9d968c9d1 p {
  font-weight: 600;
}

.page-id-1659 .text-right {
      float: right;
}

.page-id-1939 .yhteydet-row .fl-rich-text {
    max-width: 53%;
    float: left;
    text-align: left;
}

.page-id-1939 .yhteydet-row {
  margin-top:86px;
}

/* SLIDES -> */

.slides .slide h1,
.slides .slide h2 {
font-family: canada-type-gibson;
font-weight: 700;
font-size: 8rem;
background: none;
color:#fff;
line-height: 1;
text-transform:uppercase!important;
text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
margin:0;
letter-spacing:0.03em;
margin-top:7.7%;
}

.slides .slide h1 i,
.slides .slide h2 i {
  font-family: farnham-display;
  font-weight:500;
  font-size:105px;
  font-style:italic;
  text-transform:none;
  line-height:0;
}

ul.slides {
  margin:0;
  padding:0;
  background:#266e84;
  position:relative;
  z-index:0;
  max-height: 500px!important;
  height:500px!important;
  overflow:hidden!important;
}

ul.slides li {
  margin:0;
  padding:0;
  list-style-type:none;
}

ul.slides li.slide {
  max-height: 500px!important;
  display: block;
  overflow: hidden!important;
  position:relative;
  height:500px!important;
  width:100%;
  display:none;
  display: flex;
  align-items: center;
  justify-content: center;
}

ul.slides li.slide .slide-content {
  position:absolute;
  max-width:960px;
  width:960px;
  left:50%;
  margin-left:-480px;
  /*top:230px;*/
  text-align:center;
  margin-bottom:0;
}

ul.slides li.slide.muutos img {
  max-width:1000px;
  position:absolute;
  top:-55px;
  left:50%;
  margin-left:-425px;
}

ul.slides li.slide.maine img {
  max-width:1200px;
  position:absolute;
  top:45px;
  left:50%;
  margin-left:-695px;
}

ul.slides li.slide.hyvan img {
  max-width:910px;
  position:absolute;
  top:-450px;
  left:50%;
  margin-left:-350px;
}

ul.slides li.slide.muutos {
  background-image: linear-gradient(90deg, #266e84, #e76c5c)!important;
}

/* <- SLIDES */


/* YRITYS -> */

.yritys-ingressi-row p {
    font-size: 3.0rem;
    font-family: farnham-display;
    font-weight: 300;
    line-height: 1.34;
  }

.yritys-ingressi-row .fl-rich-text {
  max-width:80%;
}

.yritys-ingressi-row > .fl-row-content-wrap {
  margin:80px 0 44px 0;
}

.yritys-missio-row {
  margin-top:48px;
}

.yritys-sisalto-row p {
  font-size: 2.0rem;
  line-height: 1.3;
    font-family: farnham-display, serif;
    font-weight: 400;
    margin-bottom: 30px;
}

.yritys-sisalto-row .fl-rich-text {
  max-width:80%;
}

.yritys-missio-row .fl-node-5dd512ed7c88c {
  margin-bottom:25px;
}

.yritys-missio-row h2 {
  text-align:right;
  float:right;
}

.yritys-missio-content {
  max-width:60%;
  float:right;
}

.yritys-missio-row .fl-col-group-responsive-reversed .fl-col-content, .palvelut-list-content-row .fl-col-content{
  flex-direction: row;
  justify-content: space-between;
}
.yritys-missio-row h2 {
  margin-bottom:39px;
}

.yritys-missio-row p {
    font-size: 3.0rem;
    font-family: farnham-display;
    font-weight: 300;
    line-height:1.34;
    text-align:right;
  }

.yritys-missio-kuva {
  max-width:40%;
  float:left;
}

.yritys-missio-kuva img {
  width:220px;
  height:auto;
}

/* <- YRITYS */

/* Hölynpöly -> */

#front-mobile-holynpoly {
  display:none;
}

/* <- Hölynpöly */

/* REFERENSSIT */


.referenssit-container .element-item .element-item-content {
      text-align: center;
      font-size: 18px;
      /* Center slide text vertically */
      display: -webkit-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      background-size: cover!important;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      -webkit-align-items: center;
      align-items: center;
      float:left;
      width:100%;
      height:inherit;
      padding-top:100%;
      position:relative;
      overflow:hidden;
      transition: all 1.2s;
}



.referenssit-container .element-item {
  overflow:hidden;
  display:block;
  margin:0 1.5% 1.5% 0;
  width:32.3333333333%;
}


/*
.referenssit-container .element-item:before {
    content: "";
    display: block;
    padding-top: 100%;
}
*/

.referenssit-container .element-item .element-item-content:hover {
      transform: scale(1.2);
}

.referenssit-container .element-item .element-item-content a {
  height:100%;
  width:100%;
}

  .referenssit-container .element-item h3 {
    margin: 0;
    background: rgba(255,255,255,0.75);
    font-size: 1.7rem;
    color: #000;
    position: absolute;
    text-transform: uppercase;
    font-family: canada-type-gibson;
    letter-spacing: 0.07em;
    font-weight: 400;
    padding: 8px;
    bottom: 0;
    right: 0;
  }


ul.referenssit-kategorialista {
  margin:0 0 30px 0;
  padding:0;
  overflow:hidden;
}

ul.referenssit-kategorialista li {
  margin:0 15px 5px 0;
  padding:0;
  list-style-type:none;
  float:left;
    font-size: 1.6rem;
    color: #1e1e1e;
    font-family: canada-type-gibson;
    font-weight: 400;
    text-transform: uppercase;
    border-bottom:3px solid #e76c5c;
    cursor:pointer;
    letter-spacing:0.07em;
}

ul.referenssit-kategorialista li:hover,
ul.referenssit-kategorialista li:focus,
ul.referenssit-kategorialista li.active {
    border-bottom:3px solid rgba(0,0,0,0);
}

.referenssit-container {
  clear:both;
  margin-bottom:90px;
}

img.referenssi-palvelu-icon {
  width:140px;
  height:140px;
  float:right;
  margin-left:20px;
}

.referenssit-jumbo-row .fl-row-content-wrap,
.palvelut-jumbo-row .fl-row-content-wrap {
  height:500px;
  padding:inherit;
  display: flex;
  align-items: center;
  justify-content: center;
}

.yritys-jumbo-row .fl-row-content-wrap {
  height:500px;
  padding:inherit;
  display: flex;
  align-items: center;
  justify-content: center;
}

.referenssit-content-row > .fl-row-content-wrap,
.palvelut-content-row > .fl-row-content-wrap,
.yritys-content-row > .fl-row-content-wrap {
  padding:83px 0 23px;
}

.referenssit-content-row .referenssit-h2 h2,
.palvelut-content-row .palvelut-h2 h2,
.yritys-content-row .palvelut-h2 h2 {
    font-size: 3.2rem;
    color: #1e1e1e;
    font-family: canada-type-gibson;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 15px!important;
    letter-spacing:0.07em;
}

.referenssit-content-row .referenssit-content,
.palvelut-content-row .palvelut-content {
  max-width:75%;
}

.referenssit-content p,
.yritys-content p {
    font-size: 3.0rem;
    font-family: farnham-display;
    font-weight: 300;
    /*line-height: 1.27;*/
    line-height:1.34;
}

.palvelut-content p {
    font-size: 3.0rem;
    font-family: farnham-display;
    font-weight: 300;
    line-height:1.34;
}

.referenssit-jumbo-row h1,
.palvelut-jumbo-row h1,
.yritys-jumbo-row h1 {
  font-family: canada-type-gibson!important;
    font-weight: 700!important;
    font-size: 8rem!important;
    background: none;
    line-height: 1!important;
    text-transform: uppercase!important;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2)!important;
    letter-spacing:0.03em;
}

#content .referenssit-jumbo-row h1,
#content .palvelut-jumbo-row h1,
#content .yritys-jumbo-row h1 {
    margin-top: 7.7%!important;
}

.yritys-jumbo-row h1 {
  color:#00546e;
}

#content .referenssit-jumbo-row h1 i,
#content .palvelut-jumbo-row h1 i,
#content .yritys-jumbo-row h1 i {
  font-family: farnham-display;
  font-weight:500;
  font-size:105px;
  font-style:italic;
  text-transform:none;
  line-height:0;
}

.referenssi-slider i {
    font-size: 4rem;
    color: #fff;
    padding: 33px 35.5px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -53px;
    line-height: 1;
    border-radius: 100px;
    background: rgba(255,255,255,0.5);
    margin-top: -53px;
}

.single-referenssit .referenssi-kuvaus-row h1 {
  font-size: 3.2rem!important;
  color: #1e1e1e;
  font-family: canada-type-gibson;
  font-weight: 700;
  text-transform:uppercase;
  margin-bottom:15px!important;
  letter-spacing:0.07em;
}

.referenssi-kuvaus-row .referenssi-kuvaus p,
.referenssi-kuvaus-row .referenssi-kuvaus li {
  font-family: canada-type-gibson;
  font-weight: 300;
  font-size:1.6rem;
  line-height:1.375;
  margin:0;
  letter-spacing: 0.01em;
}

.single-referenssit .referenssi-kuvaus-row .fl-row-content-wrap {
  background:#f4f4f4;
  padding:62px 0 46px;
}

.referenssi-kuvaus p {
      margin: 0 0 1.4rem 0;
      font-family: canada-type-gibson;
      font-weight: 600;
}

.single-referenssit .referenssi-sisalto-row h2 {
    color: #00546e;
    background: none;
    padding: 0;
    letter-spacing: 0;
    line-height: 1.32;
    font-family: farnham-display, serif;
    text-transform: none;
    font-size: 4rem;
    font-weight: 400;
   margin:20px 0 25px 0;
}

.single-referenssit .referenssi-sisalto-row .referenssi-top-h2 h2 {
  margin:-7px 0 52px 0;
}

.single-referenssit .referenssi-sisalto-row p {
  font-size: 2.0rem;
  line-height: 1.3;
  font-family: farnham-display, serif;
  font-weight:400;
  margin-bottom:30px;
}

.single-referenssit .referenssi-sisalto-row p strong {
  font-weight:700;
}

.single-referenssit .referenssi-suosittelija-teksti .fl-rich-text {
  max-width: 882px;
}

.single-referenssit .referenssi-sisalto-row .fl-rich-text {
  max-width: 90%;
}

.single-referenssit .referenssi-sisalto-row .fl-row-content-wrap {
  padding:64px 0 30px 0;
}

.single-referenssit .referenssi-suosittelu-row-left .fl-row-content,
.single-referenssit .referenssi-suosittelu-row-right .fl-row-content {
  border-top:3px solid #f4f4f4;
  padding:70px 0 45px;
}

.referenssi-lisaa-referensseja-otsikko {
  margin:4px 0 29px;
}

.single-referenssit h3 {
    color: #fff;
    background: #e76c5c;
    text-transform: uppercase;
    font-size: 2.4rem;
    line-height: 1.2;
    font-weight: 800;
    font-family: canada-type-gibson;
    margin: 0 0 3.4rem 0;
    padding: 8px 22px;
    display: inline-block;
    letter-spacing: 4px;
}

.referenssi-kuvaus p strong {
    font-weight: 400!important;
    text-transform:uppercase;
  }

.referenssi-palvelulaatikko {
    width: 140px;
    height:140px;
    display: block;
    float: right;
    border: 2px solid #00546e;
    text-align: center;
    padding: 40px 0;
    color: #00546e;
    font-size: 1.8rem;
    text-transform: lowercase;
    font-weight: 500;
    font-family: farnham-display;
    margin: 0 0 0 20px;
    line-height: 1.2;
}

.referenssi-palvelulaatikko span{
    font-family: canada-type-gibson;
    letter-spacing: 0;
    font-size: 2.6rem;
    text-transform: none;
    font-weight: 700;
    text-transform:uppercase;
    display:block;
    margin-top:2px;
  }

.referenssi-suosittelu-row-left p,
.referenssi-suosittelu-row-right p {
    font-weight: 300;
    font-family: canada-type-gibson;
  font-size: 2.0rem;
  line-height: 1.3;
    letter-spacing:0.01em;
}

.referenssi-suosittelu-row-left p strong,
.referenssi-suosittelu-row-right p strong {
    font-weight: 600!important;
    font-family: canada-type-gibson;
    letter-spacing:0.05em;
}

.referenssi-suosittelu-row-left .fl-rich-text:before,
.referenssi-suosittelu-row-right .fl-rich-text:before {
    font-weight: 400;
    font-family: farnham-display!important;
    font-size:140px;
    line-height:0;
    content:"”";
    float:left;
    color:#00546e;
    padding:52px 10px 0 0;
}

.referenssi-suosittelija-kuva img {
  width:215px;
  height:auto;
}

.referenssi-suosittelu-row-left .fl-col-content {
  flex-direction: row;
}

.referenssi-suosittelu-row-left .referenssi-suosittelija-kuva {
  float:left;
  padding-right:70px;
  width:30%;
}

.referenssi-suosittelu-row-left .referenssi-suosittelija-teksti {
  float:left;
  width:70%;
}

.referenssi-suosittelu-row-right .referenssi-suosittelija-kuva {
  float:right;
  padding-left:70px;
  width:30%;
}

.referenssi-suosittelu-row-right .referenssi-suosittelija-teksti {
  float:left;
  width:70%;
}

.single-referenssit .referenssit-row {
  margin-bottom:10px;
}

.fl-node-5d5fc8ee78b39 {
  text-align:center;
}

.fl-node-5d5fc8ee78b39 .fl-html {
    display: inline-block;
    text-align: center;
}

/*
.fl-node-5d5fc8ee78b39 .fl-html img:last-child {
  margin-left:0;
}
*/

/*
#front_referenssit_mobile {
  display:none;
}
*/

/* PALVELUT -> */

.single-palvelut .ingressi {
  float:left;
  width:65%;
}

.single-palvelut .palvelu-icon-text {
  float:right;
  width:35%;
  padding-left:30px;
}

.single-palvelut .palvelu-icon-text img {
  width:280px;
  height:auto;
}

.palvelut-list-content-row {
  margin-bottom:50px;
}

.palvelut-toplist-content-row .palvelut-content {
  max-width:70%;
}

img.palvelut-palvelu-icon {
  width:140px;
  height:140px;
}

.palvelut-list-icon {
  float:left;
  display:block;
  padding-right:70px;
  width:25%;
}

.palvelut-palvelulist-content {
  float:left;
  width:75%;
}

.palvelut-palvelulist-content p {
  font-size:20px;
  line-height:1.3;
  margin-bottom:20px;
}

.palvelut-palvelulist-content a {
  font-size:16px;
  line-height:1.3;
  border-bottom:2px solid #e76c5c;
  font-family: canada-type-gibson;
  color:#1e1e1e;
  letter-spacing: 0.03em;
}

.palvelut-palvelulist-content a:hover,
.palvelut-palvelulist-content a:focus {
  font-size:16px;
  line-height:1.3;
  border-bottom:2px solid rgba(0,0,0,0);
  font-family: canada-type-gibson;
  color:#1e1e1e;
}

.palvelut-toplist-content-row p {
    font-size:20px;
    line-height:1.3;
    margin-bottom:65px;
    font-weight:400;
}

.palvelu-iskulause h3 {
    color: #fff;
    font-family: canada-type-gibson;
    font-weight: 900;
    letter-spacing: 6px;
    font-size: 4.3rem;
    text-align: center;
    text-transform: uppercase;
}

.palvelut h1 {
    font-family: canada-type-gibson;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    line-height: 1.1;
}

.palvelut h1 span.palvelu-otsikko {
    font-family: farnham-display, serif;
    font-size: 16.5rem;
    text-transform: capitalize;
    font-weight: 700;
    letter-spacing: 0;
}

.jslinkki {
      height: 100%;
    width: 100%;
    display: block;
}

.palvelut p {
      max-width: 820px;
}

.single-palvelut p {
      line-height: 1.38;
}

.palvelut .text-right .fl-rich-text {
  float: right;
}

.ota-yhteytta-row p {
    font-size: 4rem;
    font-weight: 600;
    line-height: 1.2;
}

.palvelu-kuvarivi-sarake > .fl-col-content {
  height: 380px;
  position: relative;
}

.palvelu-kuvarivi-tekstit {
    position: absolute;
    bottom: 0;
    text-align: right;
    width: 100%;
}

.fl-builder-edit .palvelu-kuvarivi-tekstit {
  position: relative;
  margin: 0;
}

.palvelu-kuvarivi-tekstit p {
    margin: 0;
    padding: 7px;
    font-size: 2.4rem;
    color: #1e1e1e;
    text-transform: uppercase;
    font-family: canada-type-gibson;
    letter-spacing: 2px;
    font-weight: 800;
}

.palvelu-kuvarivi-tekstit p a{
font-family: canada-type-gibson;
  }

.palvelu-kuvarivi-tekstit i {
      font-size: 4rem;
    color: #fff;
    padding: 33px 35.5px;
    position: absolute;
    top: -243px;
    left: 50%;
    margin-left: -53px;
    line-height: 1;
    border-radius: 100px;
    background: rgba(255,255,255,0.5);
}

.fl-builder-edit .palvelu-kuvarivi-tekstit i {
  position: inherit;
  top: inherit;
  left: inherit;
  margin-left: inherit;
  padding: inherit;
  border-radius: inherit;
  background: inherit;
  color: inherit; 
}

/* <- PALVELUT */

/* Static slide -> */

/*
    .refstatic-container {
      width: 100%;
      height: 100%;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
    }

.refstatic-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    -o-transition-property: transform;
    transition-property: transform;
    transition-property: transform,-webkit-transform;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
}

    .refstatic-slide {
      text-align: center;
      font-size: 18px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: block;
      max-width: 320px;
      background-size: cover!important;
      min-height: 320px;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      -webkit-align-items: center;
      align-items: center;
    }
    */

.refstatic-slide i {
    font-size: 4rem;
    color: #fff;
    padding: 33px 35.5px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -53px;
    line-height: 1;
    border-radius: 100px;
    background: rgba(255,255,255,0.5);
    margin-top: -53px;
}

    .refstatic-wrapper .refstatic-slide:last-child {
      margin-right:0px;
    }

     .refstatic-slide {
      width:313.3333px;
      height:313.3333px;
      max-width:32.5%;
      float:left;
      margin-right:10px;
      display:block;
      background-size: cover!important;
      position:relative;
     }

    .refstatic-slide a {
    width: 100%;
    position: absolute;
    height: 100%;
    text-align: right;
    display:block;
    z-index:1000;
    }

    #content .refstatic-slide h3 {
    margin: 0;
    background: rgba(255,255,255,0.75);
    font-size: 1.7rem;
    color: #000;
    position: absolute;
    text-transform: uppercase;
    font-family: canada-type-gibson;
    letter-spacing: 0.07em;
    font-weight: 400;
    padding: 8px 8px 8px 8px;
    text-align:center;
    bottom: 0;
    right: 0;
    }

    .is_gecko #content .refstatic-slide h3 {
    padding: 10px 8px 6px 8px;
    }

/* <- Static slide */

/* SLIDER */ 

/*
.swiper-container .swiper-button-prev {
    background-image: url(../images/prev-nuoli.svg)!important;
}

#content .swiper-button-prev:hover, #content .swiper-container-rtl .swiper-button-next:hover {
    cursor: url(../images/prev-nuoli.png),e-resize;
}
*/

    .swiper-container {
      width: 100%;
      height: 100%;
    }
    .swiper-slide {
      text-align: center;
      font-size: 18px;
      /* Center slide text vertically */
      display: -webkit-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      max-width: 320px;
      background-size: cover!important;
      min-height: 320px;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      -webkit-align-items: center;
      align-items: center;
    }

    .swiper-slide a {
    width: 100%;
    position: absolute;
    height: 100%;
    text-align: right;
    display:block;
    z-index:1000;
    }

    #content .swiper-slide h3 {
    margin: 0;
    background: rgba(255,255,255,0.75);
    font-size: 1.7rem;
    color: #000;
    position: absolute;
    text-transform: uppercase;
    font-family: canada-type-gibson;
    letter-spacing: 0.07em;
    font-weight: 400;
    padding: 8px 8px 8px 8px;
    text-align:center;
    bottom: 0;
    right: 0;
    }

    .is_gecko #content .swiper-slide h3 {
    padding: 10px 8px 6px 8px;
    }

    .is_gecko #footer-promoting h4 {
      margin-top:11px;
    }

    #content .swiper-button-next:hover, #content .swiper-container-rtl .swiper-button-prev:hover {
      cursor:url(/wp-content/themes/puremedia/assets/images/right.gif),e-resize;
    }

    #content .swiper-button-next, #content .swiper-container-rtl .swiper-button-prev,
    #content .swiper-button-prev, #content .swiper-container-rtl .swiper-button-next {
      background-image: none;
      height: 100%;
      width: 150px;
    }

    #content .swiper-button-prev:hover, #content .swiper-container-rtl .swiper-button-next:hover {
    cursor:url(/wp-content/themes/puremedia/assets/images/left.gif),e-resize;
    }

    #content .swiper-button-next, #content .swiper-button-prev {
      top: 22px;
    }

    #content .swiper-button-prev {
      left: 0;
    }

    #content .swiper-button-next {
      right: 0;
    }

/* Large breakpoint */
@media only screen and (max-width: 1199px) {

.referenssit-container .element-item .element-item-content {
      width:22.92vw;
      height:275px;
}

.yritys-jumbo-row .fl-row-content-wrap,
.palvelut-jumbo-row .fl-row-content-wrap {
  height:41.667vw;
  min-height:300px;
  padding:0!important;
}

ul.slides li.slide {
  height:53.34vw;
  min-height:400px;
  padding:0!important;
}

/*
.fl-row .fl-row-content {
  margin-left:15px;
  margin-right:15px;
 }
 */

.fl-node-5dd44a388c174.fl-row .fl-row-content,
.fl-node-5d5d1298a95f0.fl-row .fl-row-content,
.referenssit-row.fl-row .fl-row-content,
.palvelu-kuvarivi.fl-row .fl-row-content,
#front_referenssit_mobile .fl-row-content {
  margin-left:0;
  margin-right:0;
}

.slides .slide h1,
.slides .slide h2,
.referenssit-jumbo-row h1,
.palvelut-jumbo-row h1,
.yritys-jumbo-row h1 {
  font-size:6.7vw!important;
}

.slides .slide h1 i,
.slides .slide h2 i,
.referenssit-jumbo-row h1 i,
.palvelut-jumbo-row h1 i,
.yritys-jumbo-row h1 i {
  font-size:8.7vw!important;
}

ul.slides li.slide .slide-content {
  max-width:100%;
  margin-left:0;
  width:100%;
  left:0;
}

/*
.home ul.slides li.slide img {
  margin-left:-50vw;
}
*/

.home ul.slides li.slide.muutos img{
  width:118vw;
  min-width:600px;
  margin-left:-37vw;
  top:-5vw;
}

.home ul.slides li.slide.maine img{
  width:132vw;
  margin-left:-51vw;
  min-width:900px;
}

/*
.home ul.slides li.slide.hyvan img{
  width:132vw;
  margin-left:-62vw;
  min-width:800px;
  top:-8vw;
}
*/

} 

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

.referenssit-container .element-item .element-item-content {
      width:30.5vw;
      height:275px;
}

}

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

.fl-row .fl-row-content {
    margin-left: 5%;
    margin-right: 5%;
}

.fl-row.referenssi-jumbo-row .fl-row-content {
    margin-left: 0;
    margin-right: 0;
}

}

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

/*
  .fl-row .fl-row-content {
    margin-left:20px;
    margin-right:20px;
  }
  */

  .fl-node-5dd4f98332b9b {
    margin-left:0;
    margin-right:0;
  }

}

@media only screen and (min-width: 961px) {

.referenssit-container .element-item:nth-child(3n+3) {
  margin-right:0;
}

}


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

.referenssit-container .element-item {
  overflow:hidden;
  display:block;
  margin:0 1.5% 1.5% 0;
  width:49.25%;
}

.referenssit-container .element-item:nth-child(2n+2) {
  margin-right:0;
}
/*
.referenssit-container .element-item:nth-child(3n+3) {
  margin-right:inherit;
}
*/

.referenssit-container .element-item .element-item-content {
    width: 44.5vw;
    height: 275px;
}

}

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

h1.jumbo-otsikko, h2.jumbo-otsikko, h1 {
  font-size: 6rem!important;
}

/*
ul.palvelut li {
    margin-top: 21px;
    width: 48.36%;
    overflow:hidden;
    position:relative;
}

ul.palvelut li:before {
    content: "";
    display: block;
    padding-top: 100%;
}
*/

.fl-node-5d566700a4b9f {
  margin:40px 0 0 0;
  float:none;
  width:100%!important;
}

#footer-promoting h4 {
  text-align:left;
}

#some-painikkeet .fl-html {
  text-align:left;
}

.fl-node-5d56671a331fd {
  margin-bottom:40px;
}

} 

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

.palvelulinkki img {
  max-width: 300px;
}

ul.palvelut li.hover .palvelukuvaus p:after {
  content:url('../images/palvelu-box-next.png');
  display:block;
  margin-top:5%;
}

/*
.referenssit-container .element-item .element-item-content {
      width:44vw;
      height:275px;
}
*/

ul.palvelut li:nth-child(2) {
  margin-right: 0;
}

ul.palvelut li {
    width: 100%;
    height:220px;
    margin-bottom:0.85%;
  }
.type-palvelut ul.palvelut li:last-child, .type-palvelut ul.palvelut li:nth-child(5){
    margin-top: 0;
    }
}

/* Small breakpoint */
@media only screen and (max-width: 769px) {

  .palvelulaatikko.grid-box .palvelut {
    grid-template-columns: repeat(auto-fill,minmax(250px,1fr));
    justify-items: center;
  }

.referenssit-container .element-item .element-item-content {
    width: 46.5vw;
    height: 275px;
}

  .fl-row .fl-row-content {
    margin-left:20px;
    margin-right:20px;
  }

.single-referenssit #referenssit {
  display:none;
}

img.palvelut-palvelu-icon {
    width: 220px;
    height: 220px;
}

#bb-footer {
  text-align:center;
}

#footer-logo svg {
    max-width: 75%;
    width: 438px;
    height: auto;
}

#bb-footer .fl-node-5d566700a4b9f {
  margin:0 auto;
}


#bb-footer .fl-node-5d566700a4b9f h4,
#bb-footer .fl-node-5d566700a4b9f #some-painikkeet .fl-html {
  text-align:center;
}

/* Mobiili marginaalit -> */

.fl-node-5dd2a9d624fe6 .etusivu-content h2 {
  margin-bottom:29px;
}

.referenssi-lisaa-referensseja-otsikko {
    margin: 0px 0 31px;
}

.single-referenssit .referenssi-suosittelu-row-left .fl-row-content, .single-referenssit .referenssi-suosittelu-row-right .fl-row-content {
    border-top: 3px solid #f4f4f4;
    padding: 60px 0 22px;
}

.single-referenssit .referenssi-sisalto-row h2 {
  margin-top:12px;
}

.single-referenssit .referenssi-sisalto-row .fl-row-content-wrap {
    padding: 53px 0 25px 0;
}

.referenssi-kuvaus {
  padding-bottom:10px;
}

.single-referenssit .referenssi-kuvaus-row h1 {
  margin-bottom:22px!important;
}

.single-referenssit .referenssi-kuvaus-row .fl-row-content-wrap {
    padding: 53px 0 53px;
}

.postid-1711.single-palvelut .palvelut-row,
.postid-1712.single-palvelut .palvelut-row,
.postid-1713.single-palvelut .palvelut-row {
  padding:0;
}

.palvelut-lisaa-referensseja-rivi h2 {
  margin-bottom:31px;
}

.single-palvelut .palvelut-lisaa-referensseja-rivi .fl-row-content-wrap {
  padding-top:53px;
}

.single-palvelut .palvelut-row h2 {
    margin-bottom:20px;
}

.single-palvelut .palvelut-row {
    padding: 32px 0 0;
}

.fl-node-5e05ec662d9cd h2 {
  margin-bottom:24px;
}

.palvelut-hinta-row .fl-row-content-wrap h2{
    margin-bottom:24px;
}

.palvelut-hinta-row .fl-row-content-wrap {
    padding: 56px 0 22px;
}

.single-palvelut .palvelut-sisalto > .fl-row-content-wrap {
  padding: 57px 0 24px;
}

.single-palvelut .palvelut-sisalto > .fl-row-content-wrap h2 {
  margin-bottom:24px;
}

.palvelu-kuvaus-row {
  margin-bottom:56px;
}
.palvelu-kuvaus-row .fl-col-content {
  flex-direction: column;
}
.palvelu-kuvaus-row .ingressi > .fl-module-content {
  margin:54px 0 0px;
}


.page-id-1939 .yhteydet-row {
    margin-top: 40px;
}

.palvelut-list-content-row.palvelut-row-purestory {
  margin-bottom:0;
}

.palvelut-list-content-row {
    margin-bottom: 41px;
}

.palvelut-list-icon {
  margin-bottom:25px;
}

.palvelut-h2 {
  margin-bottom:8px;
}

.referenssit-container {
    clear: both;
    margin-bottom: 45px;
}

.referenssit-h2 {
  margin-bottom:7px;
}

.referenssit-content-row > .fl-row-content-wrap,
.yritys-content-row > .fl-row-content-wrap {
    padding: 54px 0 18px;
}

.palvelut-content-row > .fl-row-content-wrap {
    padding: 54px 0 22px;
}

.fl-node-5e09ae1c92e59 {
  padding-bottom:25px;
}

.page-id-1659 .henkilon-yhteystiedot p {
  margin-bottom:30px;
}

.page-id-1659 #yhteystiedot {
  padding-top:23px;
  padding-bottom:20px;
}

.fl-node-5e0916b335287 {
  margin-bottom:23px;
}

.yritys-missio-kuva {
  padding-bottom:28px;
}

.yritys-missio-row {
    margin-top: 25px;
}

.yritys-sisalto-row h2 {
  margin-bottom:25px;
}

.yritys-isoteksti {
    padding-top: 54px;
    padding-bottom:18px;
}

.tehtava-row .fl-row-content-wrap {
    padding: 57px 0 15px;
}

h2 {
    margin: 0 0 28px 0;
}

.tehtava-row .etusivu-content h2 {
    margin: 0 0 21px 0;
}

.etusivu-content h2 {
  margin: 0 0 25px 0;
}

.vaikutus-row {
  padding:57px 0 0 0;
}

.vaikutus-row p.vaikutus-lue-lisaa,
.holynpoly-row p.holynpoly-lue-lisaa {
    margin-top: -21px;
    margin-bottom: 18px;
}

.home #palvelut h2 {
  margin: 0 0 20px 0;
}

.hyvan-puolesta-row {
    padding: 54px 0 22px;
}

#content .holynpoly-row .fl-row-content-wrap {
  padding-top:57px;
}

.exit-row {
    padding: 24px 0 22px;
}

.holynpoly-row .fl-row-content-wrap {
  padding:52px 0 28px;
}

.yhteydet-row .fl-row-content-wrap {
    padding: 57px 0 29px;
}

.yhteydet-row .etusivu-content h2 {
    margin: 0 0 23px 0;
}

#bb-footer .fl-row-content-wrap {
    padding: 60px 0 54px 0;
}

.fl-node-5d56671a331fd {
    margin-bottom: 27px;
}

.fl-node-5d566700a4b9f {
    margin: 0px 0 0 0;
}

/* <- Mobiili marginaalit */

.single-refe-mobile-refeslide .fl-row-content {
  margin-left:0;
  margin-right:0;
}

img.referenssi-palvelu-icon {
  max-width:48%;
}

.palvelut-list-icon {
    float: none;
    display: block;
    padding-right: 0;
    text-align: center;
    width:100%;
}

.single-palvelut .palvelu-icon-text {
    float: none;
    text-align: center;
    width: 100%;
    padding-left: 0px;
}

.single-palvelut .ingressi {
    float: none;
    width: 100%;
}

.single-palvelut .palvelu-icon-text img {
    width: 220px;
    height: auto;
}

.referenssi-suosittelu-row-left .referenssi-suosittelija-kuva,
.referenssi-suosittelu-row-right .referenssi-suosittelija-kuva {
  width:100%;
  padding:0;
}

.referenssi-suosittelija-kuva img {
  display:block;
}

.single-referenssit .referenssi-sisalto-row h2 {
  font-size:3.5rem;
}

.referenssi-suosittelu-row-right .referenssi-suosittelija-teksti,
.referenssi-suosittelu-row-left .referenssi-suosittelija-teksti {
  width:100%;
}

.etusivu-irtisanomisaika {
  text-align:center;
}

.yritys-missio-kuva {
  float:none;
  text-align:center;
}

.referenssit-content-row .referenssit-h2 h2,
.palvelut-content-row .palvelut-h2 h2,
.yritys-content-row .palvelut-h2 h2 {
    font-size: 2.8rem;
}

#footer-vaikuttavaa h5 {
    font-size: 1.5rem;
}

.swiper-slide {
  min-height:220px;
}

#content .swiper1 {
  margin-bottom:10px;
}

/*
#front_referenssit_mobile {
  display:block;
}

#front_referenssit_desktop {
  display:none;
}
*/

/* Hölynpöly -> */

#front-mobile-holynpoly {
  display:block;
}


#front-mobile-holynpoly.fl-row .fl-row-content {
    margin-left: 0px;
    margin-right: 0px;
}

#content .holynpoly-row .fl-row-content-wrap {
  background-image:none;
  padding-bottom:0;
}

/* <- Hölynpöly */

.tehtava-row .etusivu-content p {
    font-size: 3rem;
}

ul.palvelut li.hover .palvelukuvaus {
  opacity: 1;
  z-index: 1;
  cursor: pointer;
  display:flex;
}

/*
.single-referenssit .referenssi-sisalto-row h2 {
  font-size: 5vw;
}
*/

.referenssi-suosittelu-row-right .referenssi-suosittelija-kuva {
    float: left;
    padding-left: 0;
    margin-bottom:30px;
}

.referenssi-suosittelu-row-left .referenssi-suosittelija-kuva {
  margin-bottom:30px;
}

.henkilon-yhteystiedot > .fl-node-content {
  margin-top:30px;
}

.exit-row .etusivu-irtisanomisaika img {
    height: 170px;
    width: auto;
    margin-top: 20px;
    margin-bottom:27px;
}

.yritys-missio-kuva {
    max-width: 100%;
}

.fl-node-5d5d14f88a01a .fl-node-content {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    flex-flow: row wrap;
    -ms-box-orient: horizontal;
    -webkit-flex-flow: row wrap;
}


.yritys-missio-kuva:nth-of-type(1) {
    -webkit-box-ordinal-group: 12;
    -moz-box-ordinal-group: 12;
    -ms-flex-order: 12;
    -webkit-order: 12;
    order: 12;
}

.yritys-missio-content:nth-of-type(2) {
    -webkit-box-ordinal-group: 11;
    -moz-box-ordinal-group: 11;
    -ms-flex-order: 11;
    -webkit-order: 11;
    order: 11;
}

.yritys-missio-kuva img {
    width: 170px;
    height: auto;
}

.referenssit-jumbo-row h1,
.palvelut-jumbo-row h1,
.yritys-jumbo-row h1 {
  font-size:6.7vw!important;
  margin-left:15px;
  margin-right:15px;
}

.slides .slide h1,
.slides .slide h2 {
  font-size:8.7vw!important;
  margin-left:15px;
  margin-right:15px;
}

.slides .slide h1 i,
.slides .slide h2 i,
.referenssit-jumbo-row h1 i,
.palvelut-jumbo-row h1 i,
.yritys-jumbo-row h1 i {
  font-size:8.7vw!important;
}

ul#desktop-menu li a {
    font-size: 3rem;
}


/* Hamppari -> */

.topBar {
    -webkit-transform: translateY(-6px) rotate(0deg);
    transform: translateY(-6px) rotate(0deg);
}

.btmBar {
      -webkit-transform: translateY(6px) rotate(0deg);
    transform: translateY(6px) rotate(0deg);
}

.burger-container:hover .topBar {
    -webkit-transform: translateY(-8px) rotate(0deg);
    transform: translateY(-8px) rotate(0deg);
}

.burger-container:hover .btmBar {
      -webkit-transform: translateY(8px) rotate(0deg);
    transform: translateY(8px) rotate(0deg);
}

#burger {
    width: 35px;
}

/* <- Hamppari */

.fl-node-5d5fc8ee78b39 .fl-html {
  margin-top:20px;
  display:block;
}

.single-referenssit .referenssi-kuvaus-row h1 {
    font-size: 7.5vw!important;
}


.page-id-1659 .yhteystiedot-teksti {
  max-width:100%;
}

.referenssi-kuvaus-row .fl-col {
  max-width:100%;
}

.tehtava-row .fl-rich-text,
.hyvan-puolesta-row .fl-rich-text,
.holynpoly-row .fl-rich-text,
.referenssit-content-row .referenssit-content,
.palvelut-content-row .palvelut-content,
.palvelut-toplist-content-row .palvelut-content,
.palvelut-palvelulist-content,
.page-id-1939 .yhteydet-row .fl-rich-text,
.yritys-ingressi-row .fl-rich-text,
.yritys-sisalto-row .fl-rich-text,
.yritys-missio-content,
.single-referenssit .referenssi-sisalto-row .fl-rich-text {
  max-width:100%;
  width:100%;
}

.exit-row .etusivu-content {
  max-width:100%;
  float:none;
}

.exit-row .etusivu-irtisanomisaika {
  float:none;
}

.yhteydet-row .fl-rich-text {
  max-width:100%;
}

.fl-node-5d6660f887860 {
    padding-top:40px;
  }

/*
  .fl-node-5d5fcb7e7852f > .fl-row-content-wrap,
  .suosittelu-rivi > .fl-row-content-wrap{
    padding-top: 50px;
    padding-bottom: 50px;
  }
  */

img.referenssi-palvelu-icon {
  margin-left:0;
  margin-right:1%;
  margin-bottom:1%;
  float:left;
}

/*
.fl-row > .fl-row-content-wrap {
  padding:40px 0px;
}
*/

.ingressi p {
  font-size: 2.6rem;
}

/*
.yritys-isoteksti {
  padding-top:60px;
  }
*/

.holynpoly-row > .fl-row-content-wrap {
background-size: auto;
}

/*
.hyvan-puolesta-row {
    padding: 60px 0 40px;
}
*/

/*
.vaikutus-row {
  padding:60px 0 40px;
}
*/

/*
.holynpoly-row .fl-row-content-wrap {
  padding:60px 0 40px;
}
*/

/*
.exit-row {
    padding: 60px 0 40px;
}
*/

/*
.yhteydet-row .fl-row-content-wrap {
  padding:60px 0 40px;
}
*/

.yhteydet-row a,
.ota-yhteytta-row a {
  border-bottom:2px solid #e76c5c;
}

.palvelulaatikko p {
  margin-top:0;
}


.swiper-button-next,
.swiper-button-prev {
  display:none;
}


.palvelulaatikko .palvelu-play {
  display:none;
}

.palvelu-kuvarivi .fl-col-small {
  max-width: inherit;
}

.fl-node-5d566700a4b9f {
  max-width: inherit;
}

#page {
  margin-top: 0;
  margin-bottom: 0;
}

.fl-node-5d5fba684062f > .fl-row-content-wrap {
  padding: 0;
  min-height:0!important;
}

/*
.sisennys .fl-row-content-wrap, #footer .fl-row-content-wrap{
  padding-left: 10%!important;
  padding-right:10%!important;
}

.sisennys-yksittainen h2 {
  margin-left: 5%!important;
}
*/

.tehtava-row p, .vaikutus-row .fl-rich-text {
  width: 100%;
  max-width: 100%;
}

  .tehtava-row .etusivu-content p {
    font-size: 3rem;
  }

  .etusivu-content p {
    font-size: 2.4rem;
  }

  .yritys-isoteksti p,
  .yritys-missio-row p {
    font-size: 2.4rem;
  }

.referenssit-content p, .yritys-content p {
    font-size: 2rem;
}

.palvelut-content p,
.single-palvelut .palvelu-kuvaus-row p {
    font-size: 2.4rem;
}

.fl-node-5d5d1531a1902 > .fl-row-content-wrap {
    background-position: -24vw 1vw;
    background-size: cover;
}


/*
.palvelukuvaus {
  display: none!important;
}
*/

.palvelu-kuvarivi-sarake {
    width: 32.88%!important;
    float: left;
    clear: inherit;
}

.palvelu-kuvarivi-tekstit i {
      top: -166px;
}
.fl-node-5d6651e392e40 {
  margin: 0 0.68%;
}

.palvelu-kuvarivi-sarake > .fl-col-content {
  height: 238px;
}

.palvelu-kuvarivi-tekstit {
  margin-top: 119px;
}

.burger-container {
    right: 15px
}
} 

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

  .referenssi-suosittelu-row-left .fl-col-content {
    flex-direction: column;
  }

.referenssit-container .element-item {
  max-width:100%;
}

.referenssit-container .element-item .element-item-content {
      width:95vw;
      height:220px;
}

.referenssit-container .element-item {
    overflow: hidden;
    display: block;
    margin: 0 0 20px 0;
    width: 100%;
}

}


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

#footer-vaikuttavaa h5 {
    font-size: 2.5vw;
}

#footer-promoting h4 {
    font-size: 3.7vw;
    line-height:1.2;
}

#some-painikkeet a {
    font-size: 2.7vw;
    line-height:1.2;
}

.fl-node-5d5d1531a1902 > .fl-row-content-wrap {
background-position: 27% -10vw;
background-size:1800px auto
}

img.referenssi-palvelu-icon {
    margin-right: 2%;
    margin-bottom: 2%;
}

}

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

.referenssit-kategorialista li:first-child {
  clear:both;
  float:none;
  width:114px;
}
.palvelut-list-content-row .fl-col-content {
  flex-direction: column;
}
.referenssit-jumbo-row h1,
.palvelut-jumbo-row h1,
.yritys-jumbo-row h1 {
    font-size: 8.4vw!important;
}

.burger-container {
  top:0px;
}

.palvelut h1 span.palvelu-otsikko {
  font-size: 9rem;
}

.palvelu-iskulause h3 {
  margin-top: 41px;
  font-size: 2.8rem;
}

#header-logo {
  text-align:left;
  margin-top:9px;
}

#header-logo svg {
  max-width:75%;
}

.yritys-jumbo-row .fl-row-content-wrap,
.referenssit-jumbo-row .fl-row-content-wrap,
.palvelut-jumbo-row .fl-row-content-wrap,
.fl-node-5d5fba684062f > .fl-row-content-wrap {
  min-height:250px;
}

.home ul.slides li.slide.muutos img {
  width:118vw;
  min-width:200px;
  margin-left:-44vw;
  top:-11vw;
}

.home ul.slides li.slide.maine img {
  width:120vw;
  margin-left:-49vw;
  min-width:530px;
  top:2vw;
}


.home ul.slides li.slide.hyvan img {
  width:90vw;
  margin-left:-45vw;
  min-width:500px;
  top:-58vw;
}

ul.slides li.slide {
  height:53.34vw;
  min-height:280px;
  padding:0!important;
}

ul.slides {
  margin:0;
  padding:0;
  background:#266e84;
  position:relative;
  z-index:0;
  max-height: 280px!important;
  height:280px!important;
  overflow:hidden!important;
}

ul.slides li {
  margin:0;
  padding:0;
  list-style-type:none;
}

ul.slides li.slide {
  max-height: 280px!important;
  display: block;
  overflow: hidden!important;
  position:relative;
  height:280px!important;
  width:100%;
  display:none;
  display: flex;
  align-items: center;
  justify-content: center;
}

}

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

  .referenssi-palvelulaatikko {
      width:46%;
      height:36vw;
      padding:6vw 0 0 0;
  }

  /*
  .yhteystiedot-teksti p, .yhteystiedot-teksti a {
    font-size: 2rem;
  }
  */

  .referenssi-palvelulaatikko span {
      font-size:9vw;
  }
  .ota-yhteytta-row p {
    font-size: 2.8rem;
  }

}

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

.referenssit-jumbo-row h1,
.palvelut-jumbo-row h1,
.yritys-jumbo-row h1 {
    font-size: 8.2vw!important;
}

  .palvelu-kuvarivi-sarake {
      width: 100%!important;
      float: none;
      clear: both;
      max-width: 380px!important;
      margin: auto;
  }

/*
  .single-referenssit h2 {
    font-size: 2.6rem;
  }
  */

  .fl-node-5d6651e392e40 {
    margin: auto;
  }



  .palvelu-kuvarivi-sarake > .fl-col-content {
    margin: 10px 0!important;
    
  }

  /*
  .palvelulaatikko-sarake p {
    margin-top: 40px;
  }
  */
/*
  #header-logo {
    margin-top:47px;
  }
*/

}

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

.referenssit-content-row .referenssit-h2 h2,
.palvelut-content-row .palvelut-h2 h2,
.yritys-content-row .palvelut-h2 h2 {
    font-size: 2.4rem;
}

#header-logo {
    margin-top: 15px;
}

  ul.palvelut li {
      margin-top: 10px;
      width: 100%;
      margin-right: 0;
      padding: 0px;
      height:220px;
  }

}

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

  .palvelu-iskulause h3{
    font-size: 2.2rem;
    letter-spacing: 3px;
  }

  .yhteystiedot-teksti p, .yhteystiedot-teksti a {
    font-size: 1.6rem;
  }

  .palvelut h1 span.palvelu-otsikko {
    font-size: 7rem;
  }

  h2, #content .referenssit-row h2, .single-referenssit h3 {
    font-size: 1.4rem;
    letter-spacing: 0.07em;
  }

  .tehtava-row .etusivu-content p {
    font-size: 3rem;
  }

  .etusivu-content p {
    font-size: 2.4rem;
  }

  h1.jumbo-otsikko, h2.jumbo-otsikko, h1 {
    font-size: 5rem!important;
  }

  p {
    font-size: 2.0rem;
  }

  .single-palvelut ul li {
    font-size: 2.0rem;
    line-height: 1.3;
}

  .ingressi p {
    font-size: 2rem;
  }

  ul.palvelut li {
    padding: 0;
  }

} 

@media only screen and (max-height: 480px) {
  .menu-active header#masthead {
    position:fixed;
  }

  .menu-paavalikko-container {
      display: block;
      align-items: center;
      justify-content: center;
      display: block;
      -webkit-align-items: center;
      -webkit-justify-content: center;
      text-align:center;
      margin-top:110px;
  }

}

/* <- RESIZE LAYOUT */

