table { 
  width: 98%;
}

tr.vertMiddle td {
    vertical-align: middle;
}

table.spacer {
    border-collapse: separate;
    border-spacing: 10px;
}

td {
  font-size: 12px;
}

td.caption {
  font-size: 12px;
  font-weight: bold;
  background-color: #88B2E2;
  padding: 2;
  margin: 0;
}

hr { 
  width: 98%;
}

a[href]:after {
  content: none !important;
}

/* =============================================================================
   Tut.fi taustakuvan tyylit
   ========================================================================== */

body {
    background-color: #B2E1F9;
    //background-image: url("../images/opas_bg.jpg");
    background-repeat: repeat-x;
    background-position: top;
	height: 100%;
}

/* Työpöytäkokoisen ruudun tyylit */
@media screen and (max-width: 1040px){
    html.lt-ie9 body {
        background-image: url("../images/opas_bg.jpg"); !important;
    }   
}

@media screen and (min-width: 1040px) {
    html.touch body {
        background-color: #B2E1F9 !important;
        //background-image: url("../images/opas_bg.jpg");
        background-repeat: repeat-x;
        background-position: top;
        background-attachment: scroll;
        background-size: auto;
    }
    
    body {
        background-attachment: fixed;
        background-color: #B9DCFE;
        background-image: url("../images/opas_bg.jpg");
        background-position: center bottom;
        background-repeat: no-repeat;
        background-size: cover;
    }
}

/* Yläosan taustaväri */
div#top-background {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    filter: alpha(opacity=40);
    opacity: 0.5;
    background-color: #FFFFFF;
}

/* =============================================================================
   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 { height: 100%; 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: #76BDED; color: #fff; text-shadow: none; }
::selection { background: #76BDED; color: #fff; text-shadow: none; }

a { color: #1A799F; }
a:visited { color: #1A799F; }
a:hover { color: #639FC6; }
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; }

::-webkit-input-placeholder {
    color:    #999;
}

:-moz-placeholder {
    color:    #999;
}

body {  
    font-family: "MyriadPro","Myriad Pro","Arial";
    font-size: 0.8125em; /* 13px */
    font-weight: normal;
    position: relative;
    z-index: 10;
}

div#guide-header {
    position: absolute;
    top: 30%;
    font-size: 150%;
    width: 100%;
    text-align: center;
}

h1#guide-title {
    color: #FFFFFF;
    font-size: 140%;
    font-weight:800;    
    font-family: "MyriadPro","Myriad Pro","Arial";
}

object,video,embed {
    max-width: 100%;
}

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

input[type="text"] {
    border: 1px solid #DBDBDB;
    padding: 2px;
    margin: 1px;
}

nav a {
    text-decoration: none;
}

div.title {
    display: none;
}

div#top-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 17.692307692307692em;
}

div#main-wrapper {
    margin: 0 auto;
    padding: 0 0.833333333333333%;
    max-width: 1200px;
    min-width: 220px;
    position: relative;
    width: 98.333333333333333%;
    height: auto; 
    min-height: 100%;
    margin-bottom: -220px;  
}

div#main-wrapper > header {
    width: 98.333333333333333%; /* 100% - 2x0.833333333333333% */
    margin: 0 0.833333333333333%; /* 10px / 1200px */
    position: relative;
    overflow: hidden;
    height: auto;
}

div#content {
    position: relative;
    margin: 0;
    display: block;
    margin: 0;
    width: 100%;
    letter-spacing: -0.230769230769231em; /*-3px*/;
}

div#content section *{
    letter-spacing: normal;
}

div.logo {
    position: absolute;
    /*top: 5.769230769230769em;*/ /* 75px; */
    top: 1.7em;
    left: 0px;
    width: 95%;
    min-width: 230px;
    overflow: hidden;
}

div.logo a {
    width: 100%;
    display: block;
}

hr {
    border: 0;
    color: #46c8ff;
    background-color: #46c8ff;
    height: 1px;
    width: 100%;
    text-align: left;
}

/* Main content area with 1/1 space in 1 columns */
section.main-content-1-1 {
    display: inline-block;
    position: relative;
    background-color: white;
    margin-bottom: 1.694915254237288%;
    margin-left: 0.833333333333333%;
    margin-right: 0.833333333333333%;
    padding: 1.6666666666667%;
    float: left;
    width: 95%;
}

div.sub-content {
    margin-left: 0px;
    width: 100%;
    float: left;
    min-height: 11.538461538461538em; /*150px;*/
    height: auto;
}

h1 {
    font-size: 1.8em;
    font-weight: normal;
    margin-bottom: 10px;
    margin-top: 0;
}

h2 {
    font-size: 1.6em;
    font-weight: normal;
    margin-bottom: 10px;
    margin-top: 0;
    text-decoration: none;
    border-bottom: 1px #46c8ff solid;
    color: #333;
}

h3 {
    font-size: 1.5em;
    font-weight: normal;
    margin-bottom: 10px;
    margin-top: 15px;
    color: #333;
}

h4 {
    font-size: 1.3em;
    font-weight: bold;
    margin-bottom: 5px;
    margin-top: 15px;
    color: #333;
}

h5 {
    font-size: 1.1em;
    font-weight: bold;
    margin-bottom: 5px;
    margin-top: 15px;
}

.otsikko_en 
{
    font-size: 80%;
    color: #999; 
    font-style: italic;
    margin-top: 95px;
}

.otsikko_add  
{
    font-size: 70%;
    color: #000000; 
    margin-top: 95px;
}

/* h2 otsikoiden peraan sininen viiva*/
.alaviiva 
{
    border-bottom: 1px solid #76BDED;
    padding-top: 5px;
}

nav.main {
    position: relative;
    text-align: left;
    width: 100%;
    z-index: 100;
    background: url("../images/main-nav-bg-png.png") repeat-y 80% center;
    margin-top: 11.153846153846154em;
    overflow: hidden;
}

nav.main ul {
    letter-spacing: -3px;
}

nav.main li {
    display: inline-block;
    zoom:1;
    *display: inline;
    letter-spacing: normal;
    vertical-align: bottom;
    width: auto;
    min-width: 28%;
    border-bottom: 3px solid #81CBFC;
    text-align: center;
}

nav.main li a {
    display: block;
    height: 2em; /*26px / 13 */
    line-height: 2em;
    padding: 0.307692307692308em 0.769230769230769em; /* 4px 10px; */
    color: #222222;
    border-right: 1px solid #81CBFC;
}

nav.main li a:hover {
    background-color: #4e008e;
    color: white;
}

nav.main li.active a:hover {
    color: white !important;
}

.active, .active a {
    color: #4e008e !important;
}

nav.breadcrumb {
    min-height: 2.307692307692308em; /* 30px; */
    width: 96.60%;
    background-color: #47c8ff;
    overflow: auto;
    position: relative;
    padding: 0px;
    margin-bottom: 0px;
    border-radius: 0px; 
}

nav.breadcrumb span {
    color: white;
    line-height: 2.230769230769231em; /*29px;*/
}

nav.breadcrumb span a,
nav.breadcrumb span a.active {
    color: white !important;
}

nav.breadcrumb span a:hover{
    text-decoration: underline;
}

div.sn {
    display: block;
    height: 2.230769230769231em; /*29px;*/
    width: 6.461538461538462em; /*84px;*/
    position: absolute;
    bottom: 0;
}

div.bc {
    width: 70%;
    margin-left: 6.461538461538462em; /*84px;*/
}

nav#sub-nav {
    background-color: white;
    float: left;
    height: auto;
    overflow: hidden;
    position: absolute;
    width: 75%;
    opacity: .94;
    padding: 0.833333333333333%;
    left: 1.933333333333333%;
    z-index: 102;
    -webkit-box-shadow:  2px 2px 8px 0px rgba(0, 0, 0, 0.6);
    box-shadow:  2px 2px 8px 0px rgba(0, 0, 0, 0.6);
}

nav#sub-nav ul ul {
    margin: 0;
}

nav#sub-nav.menuActive {
    top: 0px !important;
    background-color: #FBFCFF;
}

a#subNavToggle {
    background-image: url("../images/menu-active-png.png");
    background-repeat: no-repeat;
    background-size: 100% 100%;
    color: white;
    cursor: pointer;
    float: left;
    height: 2.230769230769231em; /*29px;*/
    line-height: 2.230769230769231em; /*29px;*/
    padding-left: 1.923076923076923em; /*25px;*/
    text-align: left;
    width: 3.769230769230769em; /*49px;*/
    width: 5.692307692307692em; /*74px;*/
    
    text-decoration: none;
}

nav#sub-nav ul li {
    color: #222222;
    display: block;
    font-size: 1em;
    margin: 1px 0;
    padding: 5px 0;
    font-weight: bold;
}

nav#sub-nav ul li a {
    color: #222222;
    display: block;
    font-size: 1em;
    margin: 1px 0;
    padding: 5px 0;
}


nav#sub-nav ul li a.lista {
    display: block;
    font-size: 11px;
}

nav#sub-nav ul li a:hover {
    color: #1EB2ED;
}

nav#sub-nav ul > li {
    background: url("../images/sub-nav-background-png.png") no-repeat left bottom;
    position: relative;
    padding-left: 5px;
}

nav#sub-nav ul > li:last-child{
    background: none;
}

nav#sub-nav ul li ul > li:last-child{
    background: none;
}

nav#sub-nav ul li:before{
    content: "";
    position: absolute;
    top: 0.5em;
    left: 0;
}

nav#sub-nav ul li ul li:before{
    content: "";
}

nav#sub-nav ul li ul li{
    background: none;
    padding: 1px 0;
    font-size: 11px; /*muutettu 1em*/
    color:#333;
}

nav#sub-nav ul li ul li a{
    font-size: 11px;
    padding:  0 10px;

}

nav#sub-nav ul li ul li ul li a{
    font-weight: 100;
    line-height: 1em;
    font-size: 0.7em;
}

nav#sub-nav ul li ul{
    margin-left: 5%;
}

div#support-nav-container{
    left: 50%;
    margin-left: -50%;
    position: absolute;
    top: 2%;
    width: 50%;
}
   
section.search {
    background-color: rgba(255, 255, 255, 0.38);
    height: 1.692307692307692em; /* 22px; */
    padding: 1.5%;
    text-align: left;
    top: 2.692307692307692em; /* 35px; */
    font-size: 0.923077em;
}
section.search input {
    background-color: #F7F7F7;
    border: 0 none;
    display: block;
    float: left;
    height: 1.833333333333333em; /*22px;*/
    margin: 0;
    padding: 0 0.416666666666667em; /*0 5px;*/
    width: 86%;
}

.button.search {
    background-repeat: no-repeat;
    background-position: 50% 50%;
    color: transparent;
    display: block;
    float: right;
    height: 1.666666666666667em; /*20px;*/
    text-indent: -9000px;
    width: 5%;
}

footer#main {
    background-color: #F6F6F6;
    position: relative;
    bottom: 0px;
    width: 100%;
    height: 220px;
    overflow: auto;
    display: block;
    padding-bottom: 10px;
    
    z-index: 10;    
    clear: both;    
}

div#footer-content-container {
    height: 200px;
    background-color: #E1E1E1;
    margin: 10px 0 auto;
}

div#footer-content {
    margin: 0 auto;
    max-width: 1180px;
    min-width: 220px;
    overflow: auto;
    padding: 0 1.66666666666%;
    width: 96.66666666668%
}

div#footer-text {
    padding-left: 10px;
    padding-top: 10px;
}

footer#main ul {
    list-style-type: none;
    padding: 0;
}

footer#main a {
    color: #181818;
    text-decoration: none;
    font-size: 0.923076923076923em;
}

div.footer-logo {
    width: 50%;
    padding-left: 10px;
}

div.footer-column {
    display: block;
    padding-top: 10px;
    float: left;
    padding-right: 40px;
}

div.footer-column p {
    margin-top: 0;
}

div.footer-column ul {
    margin-top: 0;
}

div.footer-column.col1 {
    margin-top: 20px;
    width: 90%;
    float: none;
    padding-top: 0px;
}

nav.main li.navItem1
{
    width: auto;
    background-color: white;
    opacity: .80;
}

nav.main li.navItem1 a
{
    padding-bottom: 25px;
    text-decoration: none;
}

.show-sub-nav {
    display: block;
}

/* =============================================================================
   Media Queries
   ========================================================================== */
@media screen and (min-width: 320px){
    div#support-nav-container{
        margin-left: -49%;
        width: 98%;
    }
    div.logo {
        /*top: 5.769230769230769em;*/ /*75px;*/
        top: 1.7em;
        width: 50%;
    }   
}

@media screen and (min-width: 480px){
    div.logo {
        /*top: 5.769230769230769em;*/ /*75px;*/
        top: 1.7em;
        width: 50%;
    }
    
    h1#guide-title
    {
    font-size: 150%;
    }   

}

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

    div#support-nav-container{
        width: 23.076923076923077em; /*300px;*/
        height: 6.923076923076923em; /*90px;*/
        top: 4.615384615384615em; /*60px;*/
        right: 0px;
        left: auto;
        margin-left: 0%;
    }

    li#visitor-link,
    li#language-link-support{
        display: none;
    }
    section.search{
        width: 23.333333333333333em; /*280px;*/
        padding: 0.769230769230769em; /*10px;*/
        background-color: #FFFFFF;
    }
    
    section.search input{
        background-color: #eaeaea;
    }
    div.logo {
        /*top: 5.769230769230769em;*/ /*75px;*/
        top: 1.7em;
        width: 50%;
    }
    nav.main {
        margin-top: 13.846153846153846em; /*180px;*/
    }
    nav.main li{
        min-width: 1% !important;
    }
    nav.main li a {
        font-size: 1.076923076923077em; /* 14px */
        height: 3.571428571428571em; /*50px;*/
        line-height: 3.571428571428571em; /*50px;*/
        padding: 0 1.2em;
        border-right: 1px solid #81CBFC !important;
    }
    nav.main li.navItem1 {
        border-bottom: none;
    }
    
    
    nav.support li a.icon span{
        line-height: 1em;
    }
    
    section.block header{
        margin-top: -1%;
    }
    
    /* Footer */
    div#footer-content-container{
        /*min-height: 340px;*/
    }
    div.footer-column.col1{
        width: 330px;
    }
    
    nav#sub-nav{
        width: 40%;
    }
    
    div#guide-header{
        position: absolute;
        top: 40%;
        width: 100%;
        text-align: center;
        font-size: 200%;
        font-weight:900;
    }

}

@media screen and (min-width: 720px){
    
    nav.main li a {
        font-size: 1.230769230769231em; /* 16px */
        height: 3.125em; /* 50px */
        line-height: 3.125em; /* 50px */
    }
    
    section.block{
        width: 44.9%;
    }
    
    section.block header{
        margin-top: -2%;
    }
    
    a#subNavToggle {
        display: none;
    }
    
    div.sn {
        width: 1.153846153846154em; /* 15px; */
    }
    
    nav#sub-nav{
        position: relative;
        opacity: 1;
        /*padding: 0%;*/
        box-shadow:  0px 0px 0px 0px rgba(0, 0, 0, 0.0);
        top: 0 !important;
        left: 0;
        width: 25%;

        display: block;
    }
    
    div.sub-content{
        width: 75%;
    }
    
    div.bc {
        margin-left: 1.153846153846154em; /* 15px; */
    }
   

@media screen and (min-width: 1040px){
    
    nav.main li a {
        font-size: 1.53846em; /* 20px */
        height: 2.5em; /* 50px */
        line-height: 2.5em; /* 50px */
    }
    
    section.block{
        padding: 1.6666666666667%;
        width: 28.033333333333267%;
    }
    
    section.block header{
        margin-top: -3%;
    }
    
    div.footer-column{
        padding-top: 20px;
    }
    
    div.footer-column.col1{
        float: left;
    }
    
    section.main-content-2-3{
        width: 61.6666666666666%;
    }
    
    div#blocksContainer{
        width: 33.3334%; /* 400px */
    }
    
    div#blocksContainer section.block{
        margin-bottom: 1.694915254237288em;
        margin-left: 2.5%;
        margin-right: 2.5%;
        padding: 5%;
        width: 85%;
    }
}
