/* =============================================================================
   HTML5 Boilerplate CSS: h5bp.com/css
   ========================================================================== */

.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; }
[hidden] { display: none; }

html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
html, button, input, select, textarea { font-family: sans-serif; color: #222; }
body { margin: 0; font-size: 1em; line-height: 1.4; }

/*
::-moz-selection { background: #fe57a1; color: #fff; text-shadow: none; }
::selection { background: #fe57a1; color: #fff; text-shadow: none; }
*/

a { color: #551a8b; text-decoration: none}
a:visited { color: #551a8b; }
a:hover { color: #06e; }
a:focus { outline: thin dotted; }
a:hover, a:active { outline: 0; }

abbr[title] { border-bottom: 1px dotted; }
b, strong { font-weight: bold; }
blockquote { margin: 1em 40px; }
dfn { font-style: italic; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
ins { background: #ff9; color: #000; text-decoration: none; }
mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }
pre, code, kbd, samp { font-family: monospace, serif; _font-family: 'courier new', monospace; font-size: 1em; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
q { quotes: none; }
q:before, q:after { content: ""; content: none; }
small { font-size: 85%; }

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

ul, ol { margin: 1em 0; padding: 0 0 0 40px; }
dd { margin: 0 0 0 40px; }
.nav ul, .nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }

img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }

svg:not(:root) { overflow: hidden; }

figure { margin: 0; }

form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }
label { cursor: pointer; }
legend { border: 0; *margin-left: -7px; padding: 0; white-space: normal; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; }
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; *overflow: visible; }
button[disabled], input[disabled] { cursor: default; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; *width: 13px; *height: 13px; }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }

table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }

.chromeframe { margin: 0.2em 0; background: #ccc; color: black; padding: 0.2em 0; }


/* ===== Initializr Styles =====================================================
   Author: Jonathan Verrecchia - verekia.com/initializr/responsive-template
   ========================================================================== */

body{ font:16px Helvetica, Helvetica Neue, Arial;
    background-color: #000; }

.wrapper{
	width:90%;
	margin:0 5%;
	/*border-left: 1px white solid;
	border-right: 1px white solid;*/
	position: relative;
}

/* ===================
    ALL: Orange Theme
   =================== */

/* Black theme */

#header-container,
#footer-container,
#main aside{
	background:#000;
}

#main-container {
	background:#f0f0f0;
}

#title{ color:white; }

::-moz-selection { background: #f16529; color: #fff; text-shadow: none; }
::selection      { background: #f16529; color: #fff; text-shadow: none; }


/*Fonts styles*/


@font-face {
    font-family: 'din_alternatebold';
    src: url('../Fonts/din_alternate_bold-webfont-webfont.eot');
    src: url('../Fonts/din_alternate_bold-webfont-webfont.eot#iefix') format('embedded-opentype'),
         url('http://hiqfinland.fi/Templates/HiQMinisite/Fonts/din_alternate_bold-webfont-webfont.woff') format('woff'),
         url('../Fonts/din_alternate_bold-webfont-webfont.ttf') format('truetype'),
         url('../Fonts/din_alternate_bold-webfont-webfont.svg') format('svg');
    font-weight: normal;
    font-style: normal;

}




@font-face {
    font-family: 'din_alternate_lightregular';
    src: url('../Fonts/din_alternate_light-webfont-webfont.eot');
    src: url('../Fonts/din_alternate_light-webfont-webfont.eot#iefix') format('embedded-opentype'),
         url('http://hiqfinland.fi/Templates/HiQMinisite/Fonts/din_alternate_light-webfont-webfont.woff') format('woff'),
         url('../Fonts/din_alternate_light-webfont-webfont.ttf') format('truetype'),
         url('../Fonts/din_alternate_light-webfont-webfont.svg') format('svg');
    font-weight: normal;
    font-style: normal;

}




@font-face {
    font-family: 'din_alternate_mediumregular';
    src: url('../Fonts/din_alternate_medium-webfont-webfont.eot');
    src: url('../Fonts/din_alternate_medium-webfont-webfont.eot#iefix') format('embedded-opentype'),
         url('http://hiqfinland.fi/Templates/HiQMinisite/Fonts/din_alternate_medium-webfont-webfont.woff') format('woff'),
         url('../Fonts/din_alternate_medium-webfont-webfont.ttf') format('truetype'),
         url('../Fonts/din_alternate_medium-webfont-webfont.svg') format('svg');
    font-weight: normal;
    font-style: normal;

}

body {font-family: "din_alternate_lightregular", Arial, Helvetica, sans-serif !important}

/* ==============
    MOBILE: Menu
   ============== */

.wrapper {
	padding-top: 10px;
}

.article.header p {
	color: #000 !important;
}


.article {
	color: #ECECEC !important;
}

/*.nav {
    position: relative;
    left: -10px;
}*/

.nav a {
	font-family: "din_alternate_mediumregular";
	display: block;
	float: left;
    margin-top: 10px;
	margin-bottom: 10px;
	padding: 0px 0;
	line-height: normal;

	background-color: #000;
	color: white;

	text-align:center;
	text-decoration:none;
	font-weight: 100;
	text-transform: uppercase;
	

	border-left: 1px solid #696969;

    font-size: 8px;

	padding-left: 3px;
	padding-right: 3px;
	
}


.nav ul li:first-child a {
	border-left: none;
}



.nav a:hover, .nav a:visited {
	color:white;
}

.nav a:hover{
	color: rgb(255, 0, 150); 
}

#header-image {
	display:none;
}

#breadcrumb {
	font-family: "din_alternate_mediumregular";
	line-height: normal;
	color: #000;
	text-decoration:none;
	font-weight: normal;
	text-transform: uppercase;
    font-size: 8px;
    margin-top: 5px;
    
}

#breadcrumb a {
    text-decoration: none;
}


/* ==============
    MOBILE: Main
   ============== */

#main{
	padding:0px 0;
}

#main .article h1, #main .right h2 {
	font-size: 1em;
}

#main h1 {
	margin-top: 5px;
}

#main .article.header {
	font-size: 1em;
	
}

#main .article.header p {
	font-size: 0.75em;
}

div.itemgrid {
	margin-top: 20px;
}

.article.section a {
   color: #fff;
   text-decoration: none !important;
     }

div.servicelist {
	width: 100% !important;
}

.servicelist a {
   color: #551a8b;
   text-decoration: none !important;
     }

.article.section .readmore {
	    position: absolute;
	    
	    bottom: 7px;
	    right: 15px;
	   /* height: 20px;*/
	   
	   /*text-align: right;*/
	}

.article h1
{
    font-size: 1em;
    text-transform: uppercase;
    font-weight: normal;
}	
	
.article.section 
{
    font-family: "din_alternate_lightregular";
	font-size: 11px;
	line-height: normal;
    font-weight: bold;
	padding: 7px;
	padding-bottom: 25px;
	margin-bottom: 14px;
	display: inline-block;
	width: 96%;
	vertical-align: top;
    cursor: pointer;
    position: relative;
}

.article.section div
{
    font-family: "din_alternate_mediumregular", Arial, Helvetica, sans-serif;
    font-size: 14px !important;;
    font-weight: normal !important;
}



    div.right {
	    vertical-align: top;
        width: 96%;
		display: inline-block;
	    
        color: #000;
        padding: 0 10px;
        font-size: 12px;
        margin-bottom: 10px;
	}
	
	div.right a, .newslist a 
	{
	    text-decoration: none;
	    color: #000; 
	}
	
	td.pubdate  
	{
	    padding-right: 10px;
    	    
	}
	
	div.right div.news table 
	{
	    font-size: 12px;
    	margin-bottom: 7px;
	}
	
	div.news h2 {
	   text-transform: uppercase;
	}
	
.body-wrapper
{
    background-color: #00aed5;
    color: #fff;

    font-size: 0.75em;
    font-family: "din_alternate_mediumregular";
    padding: 10px;
    padding-top: 0px;
    margin: 10px 0;
}

.second-level
{
    background-color: #fff;
    color: #000;

    font-size: 0.9em;
    font-family: "din_alternate_mediumregular";
    padding: 10px;
    padding-top: 0px;
    margin: 0 0;
}

.second-level .reference {
    color: #fff;

}



.second-level p, .body-wrapper p {
   font-family: "din_alternate_lightregular", Arial, Helvetica, sans-serif;
}
    
.second-level .reference.section p {
    font-family: "din_alternate_mediumregular", Arial, Helvetica, sans-serif;
    font-weight: 100;
}

.second-level .servicelist li a {
    font-size: 1.0em;
}

.second-level .image p {

    text-align: center;
}

.second-level p img {

    width: 240px;
    height:auto;

}

.second-level h1, .second-level h2, .body-wrapper h1, .body-wrapper h2 {
    font-weight: normal !important;
}

.second-level .reference div {

    width: 100%;

}

h1.blue {
	color: #00aed5 !important;
}

h1.purple {
	color: #7c279b  !important;
}

h1.red {
	color: #f2008a  !important;
}

h1 em {
    font-style: normal;
    font-weight: normal;
    font-family: "din_alternate_mediumregular";
}

.news h2, .news h2 a {
	color: #7c279b  !important;
}

.news td {
	padding-bottom: 5px;
}

.section.blue {
	background-color: #00aed5;
}

.section.purple {
	background-color: #7c279b;
}

.section.red {
	background-color: #f2008a;
}

.article.section h2 {
	text-transform: uppercase;
	font-size: 1.4em;
	margin: 0;
	margin-bottom: 5px;
	padding-top: 5px;
	padding-bottom: 5px;
}

.nav a.current {
	color: #f2008a;
}

/* Article page */
.body-wrapper 
{
    background-color: #fff;
    color: #000;
}

.body-wrapper p, .body-wrapper li {
    font-family: "din_alternate_lightregular", Arial, Helvetica, sans-serif;
}

/* Social media */
iframe.twitter-share-button, span.IN-widget {
    position: relative;
    top: 4px;
    margin-left: 5px;
}

div#sharing-links 
{
    margin: 10px 0;
    padding-top: 0px;
    padding-bottom: 0px;
}


.referencelist .reference {
   
    margin-bottom: 10px;
    padding: 7px;
}

.referencelist .reference h2 {
   
    margin-top: 0;

}

.contacts {
    margin-top: 10px;
    background-color: #fff;
    padding: 5px 30px;
}

.contacts a {
    color: rgb(124,39,155);	
}

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

 div#siblings-list p {
     font-weight: bold;
       
  }
  
  div#siblings-list p a:link {
      text-decoration: none;
       
  }

/* ===============
    Mobile: Footer
   =============== */
#footer-container {

    /*height: 55px;*/
    font-family: "din_alternate_lightregular", Arial, Helvetica, sans-serif;
}

#footer-container .footer {
	color: white;
    padding: 15px 0;
}

.footer span {
    font-size: 0.75em;
    display: block;
    /*float: left;*/
}

.footer span#social {
    position: absolute;
    right: 0px;
    top: 10px;
   /* float: right;*/
}



/* ===============
    ALL: IE Fixes
   =============== */

.ie7 #title{ padding-top:20px; }


/* =============================================================================
   Media Queries
   ========================================================================== */

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

/* ====================
    INTERMEDIATE: Menu
   ==================== */
	
	.wrapper {
	    padding-top: 15px;
	}
	
	.nav {
		position: absolute;
	    top: 20px;
		right: 0px;
	}
	
	.nav a{
		float:left;
		line-height: normal;
		font-size: 10px;
		margin:0 0%;
		
		border-left: 1px solid #696969;
		
		padding: 0px 5px;
	}
	
	.nav ul li:first-child a {
		background-image: none;
		border-left: none;
	}
	
	
	.nav li:first-child a{ margin-left:0;  }
	.nav li:last-child  a{ margin-right:0; }

    #breadcrumb {

	    font-size: 10px;
	}

    #main h1 {
	    margin-top: 0;
    }

	#main h1.article.header  {

	    font-size: 1.5em;
	    margin:0;
	}
	
	#main .left {
        margin-left: 5px;
	}
	
	.article.header em {
        text-transform: uppercase;
	}
	
	.article.section h1  {
		/*font-size: 11px;*/
	    font-size: 2em;
	}
	
	#main  {
	    padding: 10px 0;
    }
	
	#main .article.header {
	font-size: 1em;
}
	
	#main .article.header p {
	font-size: 1em;
}
	
	.article.section {
		/*font-size: 11px;*/
	    font-size: 1em;
		line-height:normal;
		padding: 7px 15px;
		padding-bottom: 25px;
		margin-bottom: 14px;
		
		
	}
	
    
	
	
	.section.blue, .reference.blue {
		background-color: #00aed5;
	}
	
	.section.purple, .reference.purple {
		background-color: #7c279b;
	}
	
	.section.red, .reference.red {
		background-color: #f2008a;
	}
	
	.section h3, .section h2 {
		text-transform: uppercase;
		font-size: 20px;
		margin: 0;
	}
	
	#header-image {
		display: inline;
	}
	


    .second-level .row div.referencelist {
        width: 100%;
        text-align: center;
    }
    
    .second-level .row div.referencelist.single {
        text-align: left;
    }

    .second-level .row div.referencelist .reference {
        
        text-align: left;
    }

.second-level img {
  
    max-width: 90%;
    height:auto;
}

div.right, div.right div.news table {

	    font-size: 1em;
	}

	
/* ========================
    INTERMEDIATE: IE Fixes
   ======================== */

	.nav ul li{
		display:inline;
	}	
	.oldie .nav a{
		margin:0 0.7%;		
	}
	
	/* General, may be moved to mobile*/
	
	#header-image {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}

#header-image img {
	width: 100%;
}



/* Mobile Safari test */

html {
	-webkit-text-size-adjust:none
}

   
.second-level 
{
    margin: 5px 0;
    padding: 20px;
     }



.second-level h1, .body-wrapper h1
{
    font-size: 32px;
    text-transform: uppercase;
    padding-top: 10px;
    margin-top: 0px;
     }
     
 .second-level h1
{

    padding-top: 0;

     }

.second-level h2, .body-wrapper h2
{
    font-size: 1.5em;
    text-transform: uppercase;
     }

.second-level p, .body-wrapper p
{
    font-size: 1.2em;
     }
   
.second-level .servicelist li a, .body-wrapper li
{
    font-size: 1.2em;
     }
     
div.servicelist {
    margin-bottom: 10px;
  }
     
.second-level .row > div
{
    width: 48%;
    display: inline-block;
    vertical-align: top;
    
     }
     
.second-level .row .reference
{
    width: 44%;
    display: inline-block;
    vertical-align: top;
    margin-right: 10px;
    
     }
     
 .second-level .row div.wide
{
    width: 96%;

    
     }
     
div.image p {
    
    text-align: center;
    
     }  
	
}

@media only screen and (min-width: 600px) {
    .nav {
		position: absolute;
	    top: 20px;
		right: 10px;
	}
	
	.nav a{
		float:left;
		line-height: normal;
		font-size: 12px;
		margin:0 0%;
		
		border-left: 1px solid #696969;
		
		padding: 0px 15px;
	}
	
	#breadcrumb {

		font-size: 12px;

	}
	
	.second-level .row .reference
    {
        width: 44%;
        margin-right: 14px;
    
     }
     
      div.second-level-article {
         width: 70%;
         display: inline-block;
    
     }
     
     div.bodytext.article-page {
         width: 70%;
         display: inline-block;
    
     }
    
     div#siblings-list {
         width: 23%;
         display: inline-block;
         vertical-align: top;
         padding-left: 20px;
         border-left: 1px solid #7c279b;
         margin-left: 10px;
         position: relative;
         top: 20px;
     }
    
    div.second-level {
        position: relative;
     }
     
    div#siblings-list.second {
        position: absolute;
        top: 20px;
        right: 20px;
     }

     div.news-article {
        display: inline-block;
        width: 60%;
     }
     
   div.right.embedded {
       width: 35%;
        float: right;
        padding-top: 20px;
       display: inline-block;
     } 

}

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

/* ====================
    WIDE: CSS3 Effects
   ==================== */

	#header-container,
	#main aside{
		-webkit-box-shadow:0 5px 10px #aaa;
		   -moz-box-shadow:0 5px 10px #aaa;
		        box-shadow:0 5px 10px #aaa;
	}

	

/* ============
    WIDE: Menu
   ============ */
	
	#title{
		float:left;
	}

	.nav{
		float:right;
		width: 550px;
		top: 20px;
	}
	
	.nav a, #breadcrumb {
		font-size: 1em;
		
	}
	
	
	div#header-image {
		display: block;
		margin-top: 5px;
		background-repeat: no-repeat;
		background-position: center center;
	}

/* ============
    WIDE: Main
   ============ */
/*
	#main .article{
		
		width:90%;
		margin: auto;
	}
	*/
	
	.article.section {
	    vertical-align: middle;		

	}
	
	
	div.left {
		
		width:58%;
	    display: inline-block;
	}
	
	div.left.wide {
		
		width:100%;

	}
	
	div.right {

		width: 38%;
	}
	
	div.news-article {

	    padding-left: 10px;
     } 
	
	div.news {

	    border-left: 1px solid #7c279b;
	    padding-left: 25px;
     }
     
     div.news > a {
	    position: relative;
	    left: 160px;
     }
     
 
	
	
	#main .right h2
	{
	    font-size: 1.5em;
	    margin: 5px 0;    
	}
		
	
		
	#main aside{
		float:right;
		width:28%;
	}
	.article.section {
		width: 44%;
	}
	
	.article.section {
		margin-right: 10px;
	    margin-bottom: 14px;
	}
	
	.second-level .row .reference
    {
        width: 45%;
        margin-right: 14px;
    
     }
	
		.footer span {
        font-size: 1em;
	    display: inline;
    }
    
    .footer span#social {
        position: static;
    }
    
    .footer #contactphone {
        color: white;
        text-decoration: none;
    }

.footer {
	height: 40px;
	position: relative;
}

.footer div {
	position: absolute;
	right: 20px;
	font-size: 12px;
}
}

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

/* ===============
    Maximal Width
   =============== */

	.wrapper{
		width:922px; /* 922px - 10% for margins */
		margin:0 auto;
		
	}
	
	.nav{
		width:550px;
	}
	.nav a {
		
	}
	
	
	div.itemgrid {
	    position: relative;
	    height: 620px;
	    width: 100%;
	    text-shadow: 0px 0px 0px #101010 !important;
	}
	
	div.referencelist {
	    text-shadow: 0px 0px 0px #101010 !important;
	}
	
	div.itemgrid.high {
	    height: 810px;
	}
	
	.article.section {
	    position: absolute;
	    padding-bottom: 7px;
	}
	
	.article.section .readmore {
	    position: absolute;
	    
	    bottom: 7px;
	    right: 15px;
	   /* height: 20px;*/
	   
	   /*text-align: right;*/
	}
	
	
	.article.section.first {
		width: 334px;
	    height: 185px;
		
	}
	
	.article.section.second {
		width: 505px;
	    left: 390px;
		height: 185px;
		
	}
	
	.article.section.third {
		width: 264px;
		height: 185px;
	    top: 218px;
	}
	
	.article.section.fourth {
		width: 261px;
	    left: 318px;
	    top: 218px;
		height: 398px;
		
	}
	
	.article.section.fifth 
	{
	    top: 218px;
		left: 631px;
		width: 264px;
	    height: 281px;
	}
	
    .article.section.sixth 
	{
	    top: 436px;
		left: 0;
		width: 264px;
	    height: 180px;
	}
	
	.article.section.seventh 
	{
	    top: 531px;
		left: 631px;
		width: 264px;
	    height: 85px;
	}
	
	.article.section.eighth 
	{
	    top: 649px;
		left: 0;
		width: 422px;
	    height: 155px;
	}
	
    .article.section.ninth 
	{
	    top: 649px;
		left: 475px;
		width: 422px;
	    height: 155px;
	}
	
		.second-level .row .reference
    {
        width: 46%;
        margin-right: 14px;
    
     }


}

/* =============================================================================
   Non-Semantic Helper Classes
   ========================================================================== */

.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; *line-height: 0; }
.ir br { display: none; }
.hidden { display: none !important; visibility: hidden; }
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }

/* =============================================================================
   Print Styles
   ========================================================================== */
 
@media print {
  * { background: transparent !important; color: black !important; box-shadow:none !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: h5bp.com/s */
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }  /* Don't show links for images, or javascript/internal links */
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; } /* h5bp.com/t */
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
}

div.article.section, img { 
    transition: all .2s ease; 
    -o-transition: all .2s ease; 
    -moz-transition: all .2s ease; 
    -webkit-transition: all .2s ease;
}