@import url('https://fonts.googleapis.com/css?family=Saira+Condensed:600,700|Fira+Sans+Extra+Condensed:600,700|Source+Sans+Pro:400,700');

/***********************************************/
/* CSS @imports must be at the top of the file */
/* Add them above this section                 */
/***********************************************/

/****************************************/
/* HubSpot Style Boilerplate            */
/****************************************/

/* These includes are optional, but helpful. */

/* HTML 5 Reset */

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
    display: block;
}

audio, canvas, video {
    display: inline-block;
    *display: inline;
    *zoom: 1;
}

audio:not([controls]) {
    display: none;
}

/* Support migrations from wordpress */

.wp-float-left {
    float: left;
    margin: 0 20px 20px 0;
}

.wp-float-right {
    float: right;
    margin: 0 0 20px 20px;
}

/* Responsive Google Maps */

#map_canvas img, .google-maps img {
    max-width: none;
}

/* line height fix for reCaptcha theme */
#recaptcha_table td {line-height: 0;}
.recaptchatable #recaptcha_response_field {min-height: 0;line-height: 12px;}




/*****************************************/
/* Start your style declarations here    */
/*****************************************/


/* 
 * 
 *  RemCalc Macro
 *
 */
 




/* ==========================================================================


   1. BASE STYLES                                             


   ========================================================================== */



.hs_cos_wrapper {
 
}

/* ==========================================================================
   Variables                                               
   ========================================================================== */


/**
 * Find the most consistently used font styles, colors, and container widths 
 * for your site and assign them to the jinja variables below for easy use 
 * and reference. 
 *
 * Apply the variable as shown below.  Ignore the jingja comment tags.
 *
 * 
 */

/* Colors */
   
  
   
    
  
  



    

    

/* Typography */
  /*  */
                         /*  */
  /*  /*
                          /*  */


/* Structure */
      /*  */

/* Containers */
 /* Used on '.page-center' in 'Base' and in the 'Portrait tablet to landscape and desktop' media query */
 /* Used on '.page-center' in 'Base' and in the 'Portrait tablet to landscape and desktop' media query */

 





/* ==========================================================================
   Base                                                    
   ========================================================================== */


/** 
 * Box Sizing
 * 
 * Applies a natural box layout model to all elements so that width and padding 
 * are essentially combined, making responsive styles easier to manage.
 */

*, *:before, *:after {
    -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;
}

html, body {
    min-height: 100%;
    margin: 0;
    padding: 0;
} 

/* Website background color and default font styles */
body {
  background: #fff;
  color: #4a4a4a;
  font-family: 'Source Sans Pro', arial, sans-serif;
  font-size: 1.25rem;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Centered content container */
.container-fluid .row-fluid .page-center {
  float: none;
  max-width: 1080px;
  margin: 0 auto;
}

/* ==========================================================================
   Typography
   ========================================================================== */


/* Basic text */
p { margin: 10px 0 20x 0;} 

img {
	display: block;
}

small {}
strong {}
em {}
cite {}
code {}
pre {}

sup, sub {
    position: relative;
    font-size: 75%;
    line-height: 0;
    vertical-align: baseline;
}

sup { top: -0.5em; }
sub { bottom: -0.25em; }

/* 
 * 
 *  Headings
 *
 */

h1, h2, h3, h4, h5, h6 {
  font-family: 'Saira Condensed', Fira Sans Extra Condensed, arial, sans-serif;
  color: #4a4a4a;
	text-rendering: optimizelegibility;
}

h4, h5, h6 {
  font-family: 'Source Sans Pro', arial, sans-serif;
  color: #4a4a4a;
	text-rendering: optimizelegibility;
}

h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
  margin-top: 0;    
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
  font-family: 'Saira Condensed', Fira Sans Extra Condensed, arial, sans-serif;
  color: #4a4a4a;
	text-rendering: optimizelegibility;
  text-decoration: none;
}

h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover {
  color: #000;
}

h1 { font-size: 2.0rem;; line-height:2.25rem;; text-transform: uppercase;}
h2 { font-size: 1.75rem;; line-height:2.25rem;; margin-bottom: 2.1875rem;;text-transform: uppercase;}
h3 { font-size: 1.5625rem;; line-height:2.0625rem;;	margin-bottom: 1.4375rem;;}
h4 { font-size: 1.375rem;; line-height:1.5rem;; margin-bottom: 1.4375rem;;}
h5 { font-size: 1.125rem;; margin-bottom: 1.625rem;;}
h6 { font-size: 1.0rem;; margin-bottom: 1.5rem;; }

@media screen and (min-width:768px) {
  h1 { font-size: 3.25rem;; line-height:3.75rem;;}
  h2 { font-size: 3.25rem;; line-height:3.75rem;;}
  h3 { font-size: 2.5rem;; line-height:3.0rem;;}
  h4 { font-size: 1.875rem;; line-height:2.375rem;; }
  h5 { font-size: 1.5625rem;; }
  h6 { font-size: 1.25rem;; }
}

@media screen and (min-width:1200px) {
  h1 { font-size: 4.5rem;; line-height:5.0rem;; margin-bottom: 2.5rem;;}
  h2 { font-size: 4.5rem;; line-height:5.0rem;;}
  h3 { font-size: 3.0rem;; line-height:3.5rem;;}
  h4 { font-size: 1.875rem;; line-height:2.375rem;; }
  h5 { font-size: 1.5625rem;; }
  h6 { font-size: 1.25rem;; }	
  
  
}


/* Lists */
ul, ol {}
ul ul, ul ol, ol ol, ol ul {}
li {}

ul.unstyled, ol.unstyled {
  list-style: none;
  margin: 0;
  padding: 0;
}

a {
  color: #f39200;
  text-decoration: none;
}

a:hover {
	text-decoration: underline;
}
blockquote {
  color: #4a4a4a;  
  font-family: 'Saira Condensed', Fira Sans Extra Condensed, arial, sans-serif;
  font-size: 1.75rem;;
  line-height: 2.5rem;;
  font-weight: 700;
}

@media screen and (min-width:1024px) {
  blockquote {
      font-size: 3.0rem;;
		  line-height: 3.75rem;;
  }
}
 @media screen and (min-width:1024px) {
.hide-large {
  display: none !important;
  min-height: 0 !important;
}
}
.text-center { text-align: center; }

 @media screen and (max-width:1023px) {
	.language-switcher {
		display: none !important;
	}
   	.language-switcher .lang_switcher_class {
  	display: none;
	}
}
 @media screen and (min-width:1024px) {
  .language-switcher {

    padding-top: 0.125rem;;
      font-family: 'Saira Condensed', Fira Sans Extra Condensed, arial, sans-serif;
  }
}

 @media screen and (min-width:1200px) {
    .language-switcher {
      padding-top: 0.625rem;;
    }
}
.language-switcher a {
  color: #000;
  text-transform: uppercase;
}

.language-switcher a:hover {
    color: #f39200;
}
.language-switcher .lang_list_class li a:hover{
    color: #f39200;
}

.language-switcher .lang_list_class { 
  text-align: left;
  min-width: 6.25rem;;
}

.language-switcher .lang_list_class li a {
	font-size: 1.0rem;;
}

.language-switcher .globe_class {
	background-image: none !important;
  position: relative;
  width: auto !important;
}

.language-switcher .globe_class::before {
  font-size: 16px;
  position: relative;
  top: -6px;
  color: #000; 
}

.language-switcher.english .globe_class::before {
 	content: "ENGLISH"; 
}

.language-switcher.svenska .globe_class::before {
 	content: "SVENSKA"; 
}
.language-switcher.suomi .globe_class::before {
 	content: "SUOMI"; 
}
.language-switcher.eesti .globe_class::before {
 	content: "EESTI KEEL"; 
}
.language-switcher.french .globe_class::before {
 	content: "FRANÇAIS"; 
}
.language-switcher.russian .globe_class::before {
 	content: "РУССКИЙ"; 
}

.language-switcher.white .globe_class::before {
  color: #fff; 
}

.language-switcher .globe_class::after {
  border: solid black;
  border-width: 0 3px 3px 0;
  display: inline-block;
  padding: 3px;
  transform: rotate(45deg);
  content: "";
  position: absolute;
  right: -17px;
  top: 3px;
  -webkit-transform: rotate(45deg);
}

.language-switcher.white .globe_class::after {
  border: solid white;
  border-width: 0 3px 3px 0;
  display: inline-block;
  padding: 0.1875rem;;
  transform: rotate(45deg);
  content: "";
  position: absolute;
  right: -1.0625rem;;
  top: 0.1875rem;;
  -webkit-transform: rotate(45deg);  
}

.mobile-language-switcher {
  padding-top: 20px;
  padding-bottom: 20px;
}
.global-page-header .hide-large {
min-height: 0 !important;
}

.mobile-language-switcher {
	margin-left: 0 !important;
}


.mobile-language-switcher .lang_list_class li:first-child {
	padding: 0;
}

.mobile-language-switcher .lang_list_class li {
  font-size: 16px;
	background-color: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  margin-bottom: 10px;
  text-transform: uppercase;
  line-height: 1.25rem;;
}
.mobile-language-switcher .lang_list_class li a {
  color: #000;

}

.mobile-language-switcher .lang_list_class li a:hover{
      color: #f39200;
}

.mobile-language-switcher .globe_class {
  background-image: none !important;
}

.mobile-language-switcher .lang_list_class{
  display: block !important;
  top: 0;
  left: 0;
 	border: none;
  padding: 0;
  width: 6.25rem;;
  height: auto;
  transform: none;
  text-align: left;
  padding: 0;
  position: relative;
}

.mobile-language-switcher .lang_list_class:before,
.mobile-language-switcher .lang_list_class:after{
	border: none !important;
  background-color: transparent !important;
}

/*
**** Sisältörivien välistys
*/
.row-spacer {
  padding-top: 3.75rem;;
  padding-bottom: 3.75rem;;
  position: relative;
}

  @media screen and (min-width:1024px) { 
   .row-spacer {
     padding-top: 6.25rem;;
     padding-bottom: 6.25rem;;
   }
	}

.divider-line:before {
  max-width: 18.75rem;;
  content: "";
  height: 0.125rem;;
  position: absolute;
  margin: 0 auto 0px auto;
	background-color: #ff8e1b;
  top: 0;
  left: 0;
  right: 0;
}

@media screen and (max-width:1023px) { 
  .hide-large-down {
    display: none !important;
  }
}
/* Testimonal blockquote */
.testimonial {
  text-align: center;
}
.testimonial .hs-image-widget {
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
  height: auto;
  
}

.testimonial blockquote {
	max-width: 700px;
  margin: 0 auto;
}
.testimonial p {
	color: #4a4a4a;  
  font-size: 20px;
  line-height: 26px;
}




/* ==========================================================================
   Page Header
   ========================================================================== */

.global-page-header {
	padding-top: 15px;
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 15px;
}

  @media screen and (min-width:1200px) { 
    
    
    .global-page-header {
	padding-top: 65px;
      padding-bottom: 30px;
}
}



/* ==========================================================================
   Desktop Menu
   ========================================================================== */


  /* Kelluva valikko,
   * Etusivu, blogikirjoitussivu */
  @media screen and (min-width:1024px) { 
    body.homepage .floating-menu,
    body.blog .floating-menu {
      position: absolute;
      z-index: 1001;
    }
  }


.global-page-header-wrapper {
  max-width: 2000px;
	margin: 0 auto;
  position: relative;
}



.global-page-header .menu .hs-menu-wrapper ul {
	list-style-type: none;
  padding: 0;
  margin: 0;
}


	/* Pääkuvan päällä kelluva valikon versio*/
  body.homepage .global-page-header .menu li.hs-menu-item a,
  body.hs-blog-post .global-page-header .menu li.hs-menu-item a {
    color:  #fff;
  }

  body.homepage .global-page-header .menu li.hs-menu-item a:hover,
	body.hs-blog-post .global-page-header .menu li.hs-menu-item a:hover {
    color:  #fff;
    	border-bottom: 2px solid #fff;  
  }

body.hs-blog-post .global-page-header .menu li.hs-menu-item.active a {
      	border-bottom: 2px solid #fff;  
}




/* Normaali valikko */
.global-page-header .menu li.hs-menu-item  {
	padding: 0 10px;
}
	.global-page-header .menu li.hs-menu-item a {
    color: #000;
	  font-family: 'Saira Condensed', Fira Sans Extra Condensed, arial, sans-serif;
    font-weight: 600;
    font-size: 17px;
    text-transform: uppercase;
    text-decoration: none;
    display: block;
		border-bottom: 2px solid transparent;
    -webkit-transition: all 180ms cubic-bezier(0.215, 0.610, 0.355, 1.000); 
    -moz-transition: all 180ms cubic-bezier(0.215, 0.610, 0.355, 1.000); 
    -o-transition: all 180ms cubic-bezier(0.215, 0.610, 0.355, 1.000); 
    transition: all 180ms cubic-bezier(0.215, 0.610, 0.355, 1.000); 
    
    
  }
	.global-page-header .menu li.hs-menu-item a:hover {
  	border-bottom: 2px solid #000;  
    
       -webkit-transform: translateY(-5px);
        -o-transform: translateY(-5px);
        transform: translateY(-5px);
       -webkit-transform: scale(1.08);
              -o-transform: scale(1.08);
              transform: scale(1.08);
	}
.global-page-header .menu li.hs-menu-item.active a {
  	border-bottom: 2px solid #000;  
	}



  @media screen and (min-width:1200px) { 
    
    	.global-page-header .menu li.hs-menu-item a {
	    font-size: 20px; 
        line-height: 2;
    }
    
}

 	@media screen and (min-width:1400px) { 
		.global-page-header .menu li.hs-menu-item a {
    	margin: 0 13px; /*Changed from 15px to 13px By HS Support Ticket #2270710 */
    }
  }

		
		





     


  


.global-page-header .menu.left ul {
	display: flex;
  justify-content: flex-end;
}
 

.global-page-header .menu.right ul {
	display: flex;
  justify-content: flex-start;
}


  @media screen and (min-width:1200px) { 
    .global-page-header .menu.left ul,
    .global-page-header .menu.right ul{
   
    }
}

/**** Header logo ****/
@media screen and (max-width:1023px) { 
.logo-container.span2 {
		margin: 0;
	}
}

.global-page-header .logo,
.global-page-header .logo-mobile {
	text-align: left;
}
  .global-page-header .logo img.hs-image-widget,
  .global-page-header .logo-mobile img.hs-image-widget{
    max-width: 100%;
    height: auto;
  }


  @media (max-width: 1023px){ 
    .global-page-header .logo img.hs-image-widget,
        .global-page-header .logo-mobile img.hs-image-widget{
      width: 140px !important;
    }
  }
  @media (min-width: 1024px){ 

    .global-page-header .logo {
      text-align: center;
    }
  }


.global-page-header .logo-desktop  {
	display: none;
}
@media screen and (min-width:1024px) { 
.global-page-header .logo-mobile  {
display: none;
}
  .global-page-header .logo-desktop  {
	display: block;
}
}




	
  @media screen and (max-width:1023px) {
    .global-page-header .menu.left,
    .global-page-header .menu.right {
      display: none !important;
    }
    
  }


/* ==========================================================================
   Mobile Menu
   ========================================================================== */


 /* Set ul background color */
 /* Set li background Color */
 /* Set link Color */
 /* Set link Hover Color */


.menu-mobile .hs-menu-wrapper > ul {
	margin-top: 30px !important;
}
.menu-mobile .hs-menu-wrapper > ul > li {
/*    background:*/
    text-transform: uppercase;
}
.menu-mobile .hs-menu-wrapper > ul > li > a {
  color: #3c3c3c;
}
.menu-mobile .hs-menu-wrapper > ul > li > a:hover {
  color: #f39200;
}



.menu-mobile .hs-menu-wrapper > ul li.active-branch a {
   color: #f39200;
}

/* Parent List */

.menu-mobile.span12 {
	min-height: 0 !important;
}


/* Override max width on menu links */
.menu-mobile .hs-menu-wrapper > ul li a, 
.hs-menu-wrapper.hs-menu-flow-horizontal > ul li.hs-item-has-children ul.hs-menu-children-wrapper li a {
    overflow: visible !important;
    max-width: none !important;
    width: auto !important;
}


/* Show menu and remove background color on desktop after toggling mobile menu */
@media screen and (min-width:1024px) {
  .menu-mobile .hs-menu-wrapper { 
      display:block !important;
      background: transparent !important;
  }
}

/* Force header to trigger mobile layout on iPads */
@media (max-width: 768px){
  .header-container-wrapper .container-fluid  .row-fluid [class*="span"] {
    display: block;
    float: none !important;
    width: auto !important;
    margin-left: 0 !important;
  }
}

@media (min-width: 1024px){
  
  .menu-mobile {
  display: none !important;
  }
}




/* ==========================================================================
   Mobile Menu - Hubspot Standard Toggle Menu
   ========================================================================== */


/**
 * Special Note
 *
 * When the menu is open, a class of .mobile-open is applied to the body. You can 
 * use this for custom styling on any element when the menu is in the open position.                     
 */

.mobile-trigger, .child-trigger{
    display: none !important; /* Hide button on Desktop */
}

@media (max-width: 1024px){


  /* Variables
     ========================================================================== */

     /* Set Mobile Menu Background Color */
        /* Set Link Color */
   /* Set Link Hover Color */

  /* 
    * Menu Reset
    *
    * Remove styling from desktop version of custom-menu-primary. Place any 
    * additional CSS you want removed from the mobile menu in this reset 
    */

  .menu-mobile,
  .menu-mobile .hs-menu-wrapper > ul,
  .menu-mobile .hs-menu-wrapper > ul li,
  .menu-mobile .hs-menu-wrapper > ul li a{
    display: block;
    float: none;
    position: static;
    top: auto;
    right: auto;
    left: auto;
    bottom: auto;
    padding: 0px;
    margin: 0px;
    background-image: none;
    background-color: transparent;
    border: 0px;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    border-radius: 0px;
    -webkit-box-shadow: none;
    -moz-box-shadow:    none;
    box-shadow:         none; 
    max-width: none;
    width: 100%;
    height: auto;
    line-height: 1;  
    font-weight: normal;
    text-decoration: none;
    text-indent: 0px;
    text-align: left;
    color:#000000;
  }


  /* Toggle Button
     ========================================================================== */

  .mobile-trigger{
    display: inline-block !important; /* Hide button on Desktop */
    position: absolute; /*******************************************/
    top: 5px;          /* Position Button at top right of screen  */
    right: 20px;        /*******************************************/
    width: auto; /* Button width */
    height: auto; /* Button height */      

    z-index: 99999999999; /* Z-index to keep button on top of other layers */
  }
  .mobile-trigger:hover{
    text-decoration: none; /* Removes link text underline on button */
  }

  /* Change button when menu is open */
  .mobile-open .mobile-trigger{}


    /*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 0px 10px;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible;
  color: #000;
}
  .hamburger:hover {
   opacity: 0.7;
  }

	.hamburger-box {
    width: 35px;
    height: 35px;
    display: inline-block;
    position: relative;
  }

.hamburger-inner {
  display: inline-block;
  top: 5px;
  margin-top: -2px; 
 }
  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 35px;
    height: 4px;
    background-color: #000;
    border-radius: 4px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease; }
  .hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; 
 }
  .hamburger-inner::before {
    top: -10px; 
 
  }
  .hamburger-inner::after {
    bottom: -10px; 
 }


/*
   * Collapse
   */
.hamburger--collapse .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0.13s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--collapse .hamburger-inner::after {
    top: -20px;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear; }
  .hamburger--collapse .hamburger-inner::before {
    transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--collapse.is-active .hamburger-inner {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--collapse.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear; }
  .hamburger--collapse.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(-90deg);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1); }

  
  
  /* Toggle Button Icon & Animations
     ========================================================================== */

  .mobile-trigger i{
    display: inline;
    position: relative;
    top: -5px;
  }
  .mobile-trigger i:before, .mobile-trigger i:after{
    position: absolute;
    content: '';
  }
  .mobile-trigger i, .mobile-trigger i:before, .mobile-trigger i:after{
    width: 25px; /* Icon line width */
    height: 2px; /* Icon line height */
    background-color: #000000; /* Icon color */
    display: inline-block;
  }
  .mobile-trigger i:before{
    margin-top: -6px; /* Position top line */
  }
  .mobile-trigger i:after{
    margin-top: 6px; /* Position bottom line */
  }


    
  /* Menu Styles on Mobile Devices
     ========================================================================== */  

  /* Hide menu on mobile */
  .menu-mobile.js-enabled .hs-menu-wrapper,
  .menu-mobile.js-enabled .hs-menu-children-wrapper{
    display: none;
  }  

  /* Make child lists appear below parent items */
  .menu-mobile ul.hs-menu-children-wrapper{
    visibility: visible !important;
    opacity: 1 !important; 
    position: static !important;
    display: none;
  }

  /* Mobile Menu Styles */
  .menu-mobilejs-enabled .hs-menu-wrapper{
    position: relative; /**************************************************************/
    top: 0;             /* Positions the menu to drop from the very top of the screen */
    left: 0px;          /**************************************************************/                                              
    width: 100%;   

  }
  .custom-menu-primary .hs-menu-wrapper{
    padding: 0;
    width: 100%; /* Full screen width */
    z-index: 8888;
  }

   /* Level 1 Menu List Styles */
   .menu-mobile .hs-menu-wrapper > ul {
    /*background: #3c3c3c;*/
   }
  .menu-mobile .hs-menu-wrapper > ul > li{
    position: relative;
  }
  .menu-mobile .hs-menu-wrapper > ul > li a{
    font-size: 22px; /* Font size of top level list items */
    line-height: 45px;
    overflow: visible;
  }

  /* Level 1 and Higher Menu List Styles */
  .menu-mobile .hs-menu-wrapper > ul li{
    border-top: 1px dotted rgba(0, 0, 0, 0.1); /* Adds transparent dark highlights to top of top level list items */
  }
  .menu-mobile .hs-menu-wrapper > ul li:first-child {
  border: none;
    
  }
  

  .menu-mobile .hs-menu-wrapper > ul li a:hover{
    color:#f39200 !important; /* link hover color set by global mobile-aColorHover variable */
  }
  .hs-menu-wrapper.hs-menu-flow-horizontal>ul li.hs-item-has-children > a:after {
      display: none;
  }


}

/* ==========================================================================
   Page Footer
   ========================================================================== */

.global-page-footer {
  padding-top: 50px;
	padding-left: 20px;
	padding-right: 20px;
	padding-bottom: 50px;
}

.global-page-footer .contact {
	text-align: center;
  letter-spacing: 5px;
  font-size: 18px;
  color: #3c3c3c;
  padding-bottom: 40px;
}

.global-page-footer .content {
	text-align: center;
  font-size: 14px;
  letter-spacing: 2px;
  color: #3c3c3c;
  padding-top: 20px;
  padding-bottom: 40px;
}

.global-page-footer .contact a,
.global-page-footer .content a {
   color: #3c3c3c;
  text-decoration: none;
    -webkit-transition: color ease-in 250ms;
 	-moz-transition: color ease-in 250ms;
  -o-transition: color ease-in 250ms;
  transition: color ease-in 250ms;
}
.global-page-footer .contact a:hover,
.global-page-footer .content a:hover {
  text-decoration: underline;
}




/* ==========================================================================


   3. MAIN NAVIGATION                                            


   ========================================================================== */



.content-spacer {
 padding-top: 70px;
  padding-bottom: 70px;
}

@media screen and (min-width:1024px) { 
  .content-spacer {
 padding-top: 100px;
  padding-bottom: 100px;
}
}

.content-column h2 {

  margin-bottom: 30px;
}
.content-column h2 + h3 {

  margin-top: 0;
}

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






/*
**** Sivun sisällön sisällään pitävä osio
*/

  .main-content {
    background:  #fff;
    position: relative;
    z-index: 10;
    overflow: hidden;   
    padding-top: 50px;
    padding-bottom: 50px;
  }
  /* Alle 1200px selainleveydelle sisennykset*/
  @media (max-width: 1200px){
    .main-content {
      padding-left: 30px;
      padding-right: 30px;
    }
  }

  @media screen and (min-width:1200px) { 
    .main-content {
      padding-top: 100px;
      padding-bottom: 100px;
    }
  }
/*
******************************************
*/


/*
**** Sivut aloittava otsikko + teksti osio
*/


  .section-header {
    padding-bottom: 30px;
  }

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

    .section-header .cta-button {
      margin-bottom: 60px;
    }

	}

  @media screen and (min-width:768px) and (max-width:1200px)  { 
    .section-header {
     padding-left: 50px;
      padding-right: 50px;
    }
	}


    .section-header h4 {
      margin-bottom: 0;
      font-weight: 400;
    }
    .section-header h4 + h1 {
      margin-top: 15px;
      text-transform: uppercase;
    }


 .section-header img {
	  max-width: 100%;
	  height: auto;
  	display: none;
	}


@media screen and (min-width:1024px) { 
  .section-header img {
		max-width: 420px;
		height: auto;
    display: block;
	}
}




/*
******************************************
*/


/*
**** Sivujen lomakeosio
*/


.form-column {
  background-color: #e6e6e6;
  padding-top: 40px;
  padding-bottom: 40px;
  padding-left: 30px;
  padding-right: 30px;
  
}
  @media screen and (min-width:1024px) { 
    .form-column {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

.form-column .form-text {
	text-align: center;
  padding-bottom: 30px;
}
.form-column .form-text p {
 	font-size: 18px;
  line-height: 25px;
  max-width: 800px;
  margin: 0 auto;
}
 @media screen and (min-width:1024px) { 
   .form-column .form-text p {
      font-size: 24px;
      line-height: 31px;
	  }
  }


/*
******************************************
*/


/*
**** Painikkeet
*/



.cta-button,
.cta-button-hollow,
.hs-button {
	border-radius: 50px;
  padding-top: 8px;
  padding-right: 30px;
  padding-bottom: 8px;
  padding-left: 30px;
  font-weight: 600;
  display: inline-block;
  text-decoration: none;
  cursor: pointer;
  text-align: center;
  margin-top: 15px;
  font-family: 'Source Sans Pro', arial, sans-serif;
    
}


.cta-button,
.hs-button {
	background: linear-gradient(225deg, #FFBD56 0%, #F39200 70%);
  color: #fff;
  box-shadow: 0 10px 20px 0 rgba(0,0,0,0.4);
  border: none;

  font-size: 18px;
  padding-top: 15px;
    padding-bottom: 15px;
  padding-right: 25px;
    padding-left: 25px;
    -webkit-transition: all ease-out 130ms;
  -moz-transition: all ease-out 130ms;
  -o-transition: all ease-out 130ms;
  transition: all ease-out 130ms;

  

}

 @media screen and (min-width:1024px) { 
   .cta-button,
   .hs-button {
       font-size: 24px;
       padding-right: 60px;
		   padding-left: 60px;
   }
   
}


.cta-button:hover,
.hs-button:hover {
	-ms-transform: scale(1.04); /* IE 9 */
  -webkit-transform: scale(1.04); /* Safari */
  transform: scale(1.04);
  box-shadow: 0 5px 20px 0 rgba(0,0,0,0.4);
  text-decoration: none;
}

.cta-button:active
.hs-button:active{
-ms-transform: scale(1); /* IE 9 */
    -webkit-transform: scale(1); /* Safari */
    transform: scale(1);
  box-shadow: 0 0px 20px 0 rgba(0,0,0,0.5);

}

.cta-button-hollow {
  border: 2px solid #ff8e1b;
      -webkit-transition: all ease-out 130ms;
  -moz-transition: all ease-out 130ms;
  -o-transition: all ease-out 130ms;
  transition: all ease-out 130ms;
}
.cta-button-hollow:hover {
  border: 2px solid #000;
  color: #000;
  text-decoration: none;
}

.cta-arrow-link {
  font-family: 'Saira Condensed', Fira Sans Extra Condensed, arial, sans-serif;
	text-transform: uppercase;
	color: #000;
  font-size: 22px;
  line-height: 24px;
  text-decoration: none;
	display: flex;
  align-items: center;
	max-width: 320px;
  font-weight: 600;
    text-align: left;
  padding-left: 80px;
  margin-top: 40px;
    -webkit-transition: all ease-out 150ms;
  -moz-transition: all ease-out 150ms;
  -o-transition: all ease-out 150ms;
  transition: all ease-out 150ms;
 cursor: pointer;
}
.cta-arrow-link:hover {
  padding-left: 90px;
  color:  #3c3c3c;
  text-decoration: none;
}
@media screen and (min-width:768px) { 
  
 .cta-arrow-link:hover {
  padding-left: 140px;
  color:  #3c3c3c;
} 
}

.cta-arrow-link:hover::before {
  -ms-transform: scale(1.1); /* IE 9 */
  -webkit-transform: scale(1.1); /* Safari */
  transform: scale(1.1);
}
@media screen and (min-width:768px) { 
   .cta-arrow-link {
    	font-size: 32px;
		  line-height: 36px;
       padding-left: 130px;  
     	max-width: 350px;
   }
}
.cta-arrow-link::before {
	background-image: url('https://cdn2.hubspot.net/hubfs/4546325/www-images/hero-image/finnos-arrow-icon.svg');
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 100%;
  content: "";
  width: 60px;
  position: absolute;
  height: 50px;

  margin-left: -80px;
      -webkit-transition: all ease-out 150ms;
  -moz-transition: all ease-out 150ms;
  -o-transition: all ease-out 150ms;
  transition: all ease-out 150ms;
}
@media screen and (min-width:768px) { 
  .cta-arrow-link::before {
		width: 108px;
	  height: 90px;
	  margin-left: -130px;
  }
}






/*
**** Blogilistauksen ja blogisivun muotoilut
*/

.blog-article-hero {
	position: relative;
}

  .blog-article-hero img {
    max-width: 100%;
    height: auto;
    width: 100%;
    z-index: 1;
    position: relative;
    min-height: 250px;
    max-height: 300px;
    object-fit: cover;
    object-position: center;
  }
@media screen and (min-width:1200px) { 
    .blog-article-hero img {
        max-height: 600px;
  }
}

@media screen and (min-width:1024px) { 
  .blog-article-hero .gradient-layer {
    z-index: 10;
    width: 100%;
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    background: -moz-linear-gradient(0deg, rgba(0,0,0,0) 40%, rgba(0,0,0,0.5) 100%);
    background: -webkit-linear-gradient(0deg, rgba(0,0,0,0) 40%, rgba(0,0,205,0.5) 100%);
    background: linear-gradient(0deg, rgba(0,0,0,0) 40%, rgba(0,0,0,0.5) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#ffffff",GradientType=1);
  }
}



/* Artikkelisivun kapeampi sisällön alue*/
.blog-section.main-content {
    float: none;
  max-width: 740px;
  margin: 0 auto;
}

/* Kirjoittajan tiedot + H1 otsikko*/

.blog-section p.author-data {
	margin-top: 0;
}
  .blog-section p.author-data + h1{
    margin-top: 0;
  }

.blog-section hr.post-divider {
  max-width: 300px;
  margin: 50px auto 50px auto;
  border: 1px solid #ff8e1b;
}

.blog-section {
	margin-bottom: 30px;
}

.blog-section .featured-image-wrapper {

}

.blog-section .featured-image {
	max-width: 100%;
  height: auto;
  margin-bottom: 20px;
}


.blog-section .post-item {
	position: relative;
}
@media screen and (min-width:1200px) { 
  .blog-section .post-content {
		padding-left: 70px;
  }
}
.blog-section .post-item .surtitle {
margin-bottom: 10px;
}

.blog-section .post-item .surtitle a {
  font-size: 18px;
  line-height: 23px;
  font-weight: 700;
  color: #9b9b9b;
  text-transform: uppercase;
  margin-bottom: 15px;
  text-decoration: none;
}
  .blog-section .post-item .surtitle a:hover {
    color: #000;
  }
.blog-section .post-item .surtitle + h3 {
  margin-top: 0;

}

.blog-section .post-item .post-body {
	margin-bottom: 40px;
}

/* Artikkelin aika ja julkaisijan tiedot */

.blog-section .post-header h1 {
  margin-bottom: 20px;
}
.blog-section .post-header a {
  color: #4a4a4a;
}
.blog-section .post-header span.divider {
	padding-left: 3px;
  	padding-right: 3px;
}
.pagination {
 margin-top: 30px;
  padding-left: 0;
    list-style-type: none;
  text-align: center;
}
.pagination li{
	display: inline;
	padding: 0 5px;
}

.pagination li.active a {
	text-decoration: underline;
}



/* Blogikirjoituksen sisältöalue + tekstien muotoilut */
.blog-article-content  blockquote {
	text-align: center;
  background-image: url('https://cdn2.hubspot.net/hubfs/4546325/www-images/content/finnos-chart.png');
  background-repeat: no-repeat;
  background-position: center top;
  padding-top: 70px;
}

@media screen and (max-width:768px) { 
  .blog-article-content  blockquote {
    background-size: 100%; 
  }
  
}

.blog-article-content img {
	max-width: 100%;
  height: auto;
}
/*
**** Yhteydenottolomake
*/



/* All HubSpot Forms
   ========================================================================== */

/* Form Field (selector for form field wrapper) */
.hs-form .hs-form-field {}

/* Descriptions (targets class applied to Help Text divs) */
.hs-form .hs-field-desc {}

/* Labels (selects field labels and error messages) */
.hs-form label { 
  margin-bottom: 8px;
  display: inline-block;
  font-size: 16px;
}
.hs-form .hs-form-field > label {}


/* Inputs (selectors for all inputs)  */
.hs-form input[type="text"],
.hs-form input[type="password"], 
.hs-form input[type="datetime"], 
.hs-form input[type="datetime-local"], 
.hs-form input[type="date"], 
.hs-form input[type="month"], 
.hs-form input[type="time"], 
.hs-form input[type="week"], 
.hs-form input[type="number"], 
.hs-form input[type="email"], 
.hs-form input[type="url"], 
.hs-form input[type="search"], 
.hs-form input[type="tel"], 
.hs-form input[type="color"],
.hs-form input[type="file"],
.hs-form textarea,
.hs-form select {

	width: 100%;
  border: 1px solid #9B9B9B;
  font-size: 16px;
  padding: 18px;
  
}

/* Inputs in focus (selectors for all inputs when clicked)  */
.hs-form input[type="text"]:focus,
.hs-form input[type="password"]:focus, 
.hs-form input[type="datetime"]:focus, 
.hs-form input[type="datetime-local"]:focus, 
.hs-form input[type="date"]:focus, 
.hs-form input[type="month"]:focus, 
.hs-form input[type="time"]:focus, 
.hs-form input[type="week"]:focus, 
.hs-form input[type="number"]:focus, 
.hs-form input[type="email"]:focus, 
.hs-form input[type="url"]:focus, 
.hs-form input[type="search"]:focus, 
.hs-form input[type="tel"]:focus, 
.hs-form input[type="color"]:focus,
.hs-form input[type="file"]:focus,
.hs-form textarea:focus,
.hs-form select:focus {
  border: 1px solid #000;
}

/* Multi-line inputs (selectors to target multi-line fields */
.hs-form textarea {width: 100% !important; min-height: 150px;}
.hs-form textarea:focus {}

/* Dropdowns (selectors for dropdowns) */
.hs-form select {}
.hs-form select:focus {}

/* Multi-select (selectors for multi-select fields) */
.hs-form form.hs-form .hs-form-field ul.inputs-list {}

.hs-form form.hs-form .hs-form-field ul.inputs-list li input {}
.hs-form input[type="radio"] {}
.hs-form input[type="checkbox"] {}

/* Required (selectors for fields, when they do not pass validation) */
.hs-form input:focus:required:invalid, 
.hs-form textarea:focus:required:invalid, 
.hs-form select:focus:required:invalid {}

.hs-form input:focus:required:invalid:focus, 
.hs-form textarea:focus:required:invalid:focus, 
.hs-form select:focus:required:invalid:focus {}

/* Error message (selector for validation messages) */
.hs-form .hs-error-msgs {
  list-style-type: none;  
  padding: 0;
  margin: 0;
}
.hs-form .hs-error-msgs label{
	color: red;
	font-size: 14px;
  margin-left: 18px;
  margin-bottom: 0;
}

.hs-form .hs-form-required {
	color: red;
  padding-left: 2px;
}

.hs-form .submitted-message {
text-align: center;
    font-weight: bold;
    font-size: 22px;
}



/* Placeholder Text (styles the placeholder attribute text) */
::-webkit-input-placeholder { /* Webkit Browsers */}
:-moz-placeholder { /* Firefox 18- */}
::-moz-placeholder { /* Firefox 19+ */}
:-ms-input-placeholder { /* IE10 */}

/* Multi Column Form (selectors for fieldsets and field wrappers) 
   ========================================================================== */

 .hs-form fieldset.form-columns-1 {max-width: 100%;  }
.hs-form fieldset.form-columns-1 .hs-form-field {}


/* Two columns */
.hs-form fieldset.form-columns-2 {max-width: 100%;margin-bottom: 20px;}
.hs-form fieldset.form-columns-2 .hs-form-field {}
.hs-form .form-columns-2 .hs-form-field .hs-input {
	width: 100% !important;
}

  @media screen and (min-width:401px) { 
.hs-form fieldset.form-columns-2 .hs-form-field:first-child .input {
	margin-right: 20px;
}
}

.hs-form fieldset.form-columns-3 {max-width: 100%; }
.hs-form fieldset.form-columns-3 .hs-form-field {}

/* Submit buttons (selectors for all non-CTA buttons) 
   ========================================================================== */

body .hs-button.primary,
body input[type="submit"],
body input[type="button"] {

 margin-top: 30px;

}

body .hs-button.primary:hover,
body input[type="submit"]:hover,
body input[type="button"]:hover {}

body .hs-button.primary:focus,
body input[type="submit"]:focus,
body input[type="button"]:focus {}



div#hs-eu-cookie-confirmation div#hs-eu-cookie-confirmation-inner p a {
	color: #f39200 !important;
}

.legal-consent-container ul {
list-style-type: none;
  padding: 0;
  font-size: 1.125rem;;
  margin-top:0;
    margin-bottom:0;
}

.legal-consent-container input[type="checkbox"] {
font-size:  1.375rem;;
  margin-right:  0.625rem;;
}


/* YouTube Responsive CSS for HubSpot */

.hs-responsive-embed { 
  position: relative; 
  height: 0; 
  overflow: hidden; 
  padding-top: 0; 
  padding-left: 0; 
  padding-right: 0; 
}

.hs-responsive-embed iframe, 
.hs-responsive-embed object, 
.hs-responsive-embed embed { 
  position: absolute; 
  top: 0; 
  left: 0; 
  width: 100%; 
  height: 100%; 
  border: 0; 
}

.hs-responsive-embed, 
.hs-responsive-embed.hs-responsive-embed-youtube, 
.hs-responsive-embed.hs-responsive-embed-wistia, 
.hs-responsive-embed.hs-responsive-embed-vimeo { 
	padding-bottom: 56.25%; 
}





