/*Common*/
*,
*::before,
*::after {
    box-sizing: inherit;
}
html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
    font-size: 15px;
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
}
body {
    margin: 0;
}
h1 {
    margin: 0.67em 0;
}
body,
button,
input,
select,
optgroup,
textarea {
    color: #404040;
    font-family: 'Trebuchet MS',sans-serif;
    font-size: 1rem;
    line-height: 1.5;
}
h1, h2 {
    color: #004264;
    font-size: 1.15rem;
    margin-top: 0;
    text-transform: uppercase;
}
a {
    color: #0060de;
    text-decoration: none;
}
img {
    object-fit: contain;
}
figure {
    margin: 0;
}
.screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute !important;
    width: 1px;
    word-wrap: normal !important;
}
.site-main {
	padding: 10px 0;
}
.container, .section > .wp-block-group__inner-container {
	margin: auto;
    max-width: 1000px;
    width: 100%;
    padding: 0 20px;
    position: relative;
}
.wp-block-columns {
    display: flex;
    justify-content: space-between;
}
.flex {
    display: flex;
}
.f-space {
	justify-content: space-between;
}
.f-center {
	align-items: center;
}
.f-start {
	align-self: flex-start;
}
.f-wrap {
	flex-wrap: wrap;
}
.blue-bg {
    background-color: #D7E9F3;
}
.blue-bg p {
    color: #004264;
}
/*Header*/
#masthead {
    border-bottom: 1px solid #dfdfdf;
    background-color: #004162;
}
#masthead .container{
    height: 70px;
}
.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}
.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
}
.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}
.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	display: block;
	left: auto;
}
.main-navigation ul ul a {
	width: 200px;
}
.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}
.main-navigation li {
	position: relative;
}
.main-navigation a {
	display: block;
    font-size: 14px;
    letter-spacing: 1px;
    color: #47bae3;
    font-weight: 700;
    text-transform: uppercase;
    margin-left: 20px;
}
.menu-toggle {
	width: 85px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.menu-toggle p {
	color: #47bae3;
    margin: 0;
    text-transform: uppercase;
    font-weight: 700;
}
.hamburger {
	position: relative;
    text-align: left;
    background: #fff;
    width: 20px;
    height: 2px;
}
.hamburger:before, .hamburger:after {
    background: #fff;
    width: 20px;
    height: 2px;
}
.hamburger:before {
    content: '';
    top: -6px;
    position: absolute;
}
.hamburger:after {
    content: '';
    top: 6px;
    position: absolute;
}
.main-navigation.toggled ul {
	display: block;
    position: absolute;
    top: 70px;
    left: 0;
    z-index: 10;
    width: 100%;
    background: #004162;
}
.main-navigation.toggled ul li {
    border-top: 1px solid rgba(120, 120, 120, 0.2);
}
.main-navigation.toggled ul li a {
    padding: 20px 15px;
    margin: 0;
}
/*404*/
.error-404.not-found {
    min-height: 500px;
    padding-top: 50px;
}
.error-404.not-found h1 {
    font-size: 22px;
}
/*Frontpage*/
.movetomob a {
    background: #f8eb5f;
    color: #56575b;
    font-weight: bold;
    left: 0;
    margin: 10px auto;
    padding: 14px 30px;
    text-align: center;
    text-transform: uppercase;
    top: 160px;
    width: 280px;
    display: none;
}
.small-banner {
    display: none;
    max-width: 320px;
    width: 100%;
    height: 50px;
    margin: auto;
    margin-bottom: 5px;
    text-align: center;
    line-height: 50px;
}
.test-header {
    height: 17px;
    background: #FFF;
    position: absolute;
    right: 10px;
    top: 14px;
}
.iframe-bg {
    border: 1px solid #ddd;
}
.iframe-bg .wp-block-group__inner-container{
    position: relative;
}
.iframe-bg iframe {
    background: #eee;
    width: 615px;
}
#meter-wrap { 
    position: absolute;
    top: 0;
    background: #fff;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding: 0 40px;
}
.meter {
    height: 20px;
    position: relative;
    background: #555;
    border-radius: 25px;
    padding: 10px;
    box-shadow: inset 0 -1px 1px rgba(255,255,255,0.3);
    overflow: hidden;
    width: 100%;
}
.meter > span {
    display: block;
    height: 20px;
    border-radius: 20px;
    background-color: rgb(49, 142, 180);
    background-image: -webkit-gradient(
      linear,
      left bottom,
      left top,
      color-stop(0, rgb(49, 142, 180)),
      color-stop(1, rgb(68, 181, 222))
     );
    background-image: -moz-linear-gradient(
      center bottom,
      rgb(43,194,83) 37%,
      rgb(84,240,84) 69%
     );
    box-shadow: 
      inset 0 2px 9px  rgba(255,255,255,0.3),
      inset 0 -2px 6px rgba(0,0,0,0.4);
    position: absolute;
    top: 0;
    left: -615px;
    transition: transform 3s;
}
.left-banner {
    width: 160px;
    height: 600px;
    position: absolute;
    top: 0;
    left: -140px;
}
.right-panel {
    background: #f8f8f8;
    border: 1px solid #dfdfdf;
    padding: 20px;
    width: 340px;
    align-self: flex-start;
    margin-bottom: 10px;
}
.right-panel p {
    font-size: 14px;
    margin: 14px 0;
}
/*Värinäkö*/
.light-blue-bg {
    background: #E1F4FE;
}
.newsContainer {
    padding-bottom: 30px;
}
.newsContainer h2 {
    font-size: 40px;
    color: #10819E;
    margin: 20px 0 0;
}
.newsContainer h3 {
    color: #10819E;
    font-size: 22px;
    font-weight: bold;
    text-transform: uppercase;
}
.newsContainer p {
    color: #004162;
    font-size: 18px;
    margin: 8px;
}
#newsContainerWide {
    box-sizing: initial;
    margin-top: 70px;
    background: #e1f5fe !important;
}
.varinako-container #speedtestholder {
    display: flex;
    margin-bottom: 30px;
}
.varinako-container #eyedoctordiv {
    margin: 60px -20px 0 0;
    position: relative;
    z-index: 10;
}
.varinako-container #bubble {
    position: absolute;
    top: 30px;
    width: 180px;
    left: 15px;
}
.varinako-container #bubble p{
    text-align: center;
    color: #004264;
    font-size: 22px;
}
.varinako-container #testbg {
    background-color: #fff;
    box-shadow: 4px 4px #b8dbed;
    height: 427px;
    padding: 12px 20px 20px 25px;
    width: 490px;
    border-radius: 5px;
    position: relative;
}
.varinako-container #eyeheader {
    color: #10819E;
    font-size: 22px;
    font-weight: bold;
}
.varinako-container h1 {
    font-size: 50px;
    margin-bottom: 0;
}
.varinako-container #colortest {
    float: left;
    height: 315px;
    position: relative;
    top: 10px;
    width: 315px;
}
.varinako-container #score {
    color: #000;
    float: right;
    font-size: 20px;
    font-weight: bold;
    margin: 54px 9px 0 0;
    text-align: center;
    text-transform: uppercase;
}
.varinako-container .yourscore, .varinako-container .yourpenalty {
    background-color: #10819E;
    border-radius: 5px;
    padding: 4px;
    color: #fff;
    font-size: 28px;
    margin: 5px auto 10px;
    width: 125px;
}
.varinako-container .yourpenalty {
    background-color: #ef3d4e !important;
}
.varinako-container #timeleft {
    background-color: #fff;
    border-radius: 50px;
    font-size: 50px;
    font-weight: bold;
    height: 50px;
    width: 50px;
    padding: 19px;
    position: absolute;
    right: -20px;
    top: -50px;
    text-align: center;
}
.varinako-container .clock {
    color: #008a04 !important;
    margin: -11px 0 0 -4px;
}
.varinako-container #resultdisplay {
    display: none;
}
/*Nopeustesteri*/
.nopeustesteri-container {
    margin-bottom: 60px;
    box-sizing: initial;
}
.speed {
    background: #E1F4FE;
    padding-bottom: 30px;
}
.speed h3 {
    color: #004264;
    font-size: 16px;
    margin-top: 0;
    text-transform: uppercase;
}
.nopeustesteri-container #resultdisplay {
    display: none;
}
.nopeustesteri-container #speedtestholder {
    background-color: transparent;
    background-image: url("/wp-content/themes/nopeustesti/glm-speedtest/media/peli-taustakuva.png");
    background-repeat: no-repeat;
    background-size: 100% auto;
    border: 0 none;
    height: 516px;
    margin: 20px auto 0;
    position: relative;
    max-width: 780px;
    width: 100%;
}
.nopeustesteri-container #graphics, .nopeustesteri-container #speedtest {
    position:absolute;
    top:52%;
    left:3%;
    width:94%;
    height:50%;
}
.nopeustesteri-container #speedtest .button {
    position: relative;
    top: 0;
    width: 25%;
    height: 100%;
    float: left;
    background-color: rgba(0,0,0,0);
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    user-select: none;
    z-index: 1000;
}
.nopeustesteri-container #score {
    background: none repeat scroll 0 0 transparent;
    color: red;
    font-family: "Trebuchet MS",sans-serif;
    font-size: 60px;
    font-weight: bold;
    height: 45px;
    left: 0;
    margin: 0;
    position: absolute;
    text-align: center;
    top: 188px;
    width: 100%;
}
.nopeustesteri-container .startgame {
    background-color: #ffffff;
    border-radius: 10px;
    color: #000000;
    font-size: 22px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 50px;
    padding: 15px;
    width: 56%;
    line-height: normal;
}
.nopeustesteri-container #score div {
    font-family: 'Orbitron', sans-serif;
}
.nopeustesteri-container .quickkeys {
        color: #3e3e3e;
        font-size: 34px;
        left: 23px;
        margin-left: auto;
        margin-right: auto;
        position: absolute;
        top: 154px;
        width: 94%;
}
/*Jalkapallo*/
.soccer {
    background: -webkit-linear-gradient(#10a1da, #002154);
    background: -o-linear-gradient(#10a1da, #002154);
    background: -moz-linear-gradient(#10a1da, #002154);
    background: linear-gradient(#10a1da, #002154);
    padding-bottom: 30px;
}
.soccer .container {
    max-width: 1040px;
    width: calc(100% - 40px);
    box-sizing: initial;
}
.jalkapallo-container #speedtestholder {
    background-image: none;
    height: 504px;
    width: 1000px;
    margin-top: 70px;
}
.jalkapallo-container #testbg {
    background-color: #fff;
    box-shadow: 4px 4px #b8dbed;
    float: right;
    height: 395px;
    margin-right: 20px;
    padding: 12px 20px 20px 25px;
    width: 480px;
    border-radius: 5px;
    position: relative;
}
.jalkapallo-container #gameheader {
    color: #252525;
    font-size: 22px;
    font-weight: bold;
}
.jalkapallo-container h1 {  
    font-size: 40px;
    color: #252525;
    margin-bottom: 0;
}
.jalkapallo-container #speedtest {
    background-color: #fff;
    float: left;
    height: 291px;
    left: 0;
    padding: 0;
    position: relative;
    top: 0;
    width: 310px;
    margin: auto;
}
.jalkapallo-container #speedtest .button {
    position: relative;
    top: 0;
    width: 50%;
    height: 50%;
    float: left;
    background-color: rgba(0,0,0,0);
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    user-select: none;
}
.jalkapallo-container #score {
    background: none repeat scroll 0 0 transparent;
    color: #000;
    float: right;
    font-family: "Trebuchet MS",sans-serif;
    font-size: 20px;
    font-weight: bold;
    height: auto;
    margin: 54px 9px 0 0;
    position: relative;
    right: 0;
    text-align: center;
    text-transform: uppercase;
    top: 0;
    width: 133px;
}
.jalkapallo-container #score div {
    color: #fff;
    font-family: "Trebuchet MS",sans-serif;
    font-size: 28px;
    margin-top: 5px;
    text-align: center;
    text-transform: uppercase;
}
.jalkapallo-container .yourscore {
    float: none;
    text-align: center;
    width: 125px;
    margin-left: auto;
    margin-right: auto;
    background-color: #51ccf6;
    border-radius: 5px;
    padding: 4px;
    margin-bottom: 10px;
}
.jalkapallo-container .yourbest {
    float: none;
    text-align: center;
    width: 125px;
    margin-left: auto;
    margin-right: auto;
    background-color: #b2d52b;
    border-radius: 5px;
    padding: 4px;
}
.jalkapallo-container #resultdisplay {
    display: none;
}
.jalkapallo-container #bubble {
    line-height: normal;
    color: #252525;
    position: relative;
    top: 10px;
    width: 160px;
    text-align: center;
    left: 50px;
    -ms-transform: rotate(-5deg); /* IE 9 */
    -webkit-transform: rotate(-5deg); /* Safari */
    transform: rotate(-5deg);
}
.jalkapallo-container #bubble p {
    color: #252525;
    font-size: 22px;
}
/*Uutiset*/
.news {
    padding: 40px 20px;
    display: flex;
}
.news article {
    margin-bottom: 30px;
    background: #fff;
    box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.05);
    border-radius: 3px !important; 
    overflow: hidden;
    width: 100%;
    max-width: 610px;
}
.news article h2 {
    margin: 0;
    line-height: 1.2;
}
.news article h2 a {
    color: #004264;
}
.news .content {
    width: calc(100% - 300px);
    margin-right: 50px;
}
.news .text-wrapper {
    width: 100%;
    padding: 15px 20px;
}
.entry-meta, .entry-meta a {
    color: #666;
    font-size: 12px;
}
.news .entry-content {
    color: #666;
    margin-top: 14px;
}
#secondary {
    max-width: 300px;
    width: 100%;
}
#secondary .widget {
    background: #fff;
    box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.05);
    border-radius: 3px; 
    padding: 15px 20px;
}
#secondary .widget h2 {
    margin: 0 0 10px;
    padding: 0;
    list-style: none;
    border-bottom: 2px solid #47bae3;
}
#secondary .widget ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
#secondary .widget ul li {
    padding: 10px 0;
    font-size: 0.9rem;
    border-bottom: 1px solid #f3f3f3;
}
#secondary .widget ul li:last-child {
    border: none;
    padding-bottom: 0;
}
#secondary .widget ul li a {
    color: #004264;
    display: block;
}
#secondary .widget ul li span {
    color: #666;
}
/*Uutiset single*/
.news-single {
    padding: 40px 20px;
}
.news-single .entry-header {
    margin-bottom: 20px;
}
.news-single article {
    background: #fff;
    box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.05);
    border-radius: 3px;
    padding: 15px 20px;
    margin-right: 50px;
    width: 100%;
    max-width: 610px;
    overflow: hidden;
}
.news-single .post-thumbnail {
    margin: -15px -20px 15px;
}
.news-single h1.entry-title {
    font-size: 28px;
    border-bottom: 2px solid #47bae3;
    margin-bottom: 5px;
}
/*Mobiili*/
.mobile-speed {
    padding-bottom: 30px;
}
#mobileContainerWide {
    padding-bottom: 30px;
    padding-left: 10px;
    padding-right: 10px;
    box-sizing: initial;
    max-width: 450px;
    margin: auto;
}

#mobileTestContainer {
    background-color: #ffffff;
    border: 1px solid #e2e2e2;
    margin: 20px -25px 0;
    padding: 0 25px;
    text-align: left;
    padding-bottom: 20px;
}

#mobileTestContainer h1 {
    color: #004264;
    font-size: 22px;
    margin-top: 15px;
    text-align: center;
    text-transform: uppercase;
}
#mobileTestContainer #preRunContainer p {
    font-weight: normal;
    text-align: center;
    color: #004264;
}
.mobileYellowCTA {
    background-color: #f8eb5f;
    color: #56575b;
    font-size: 14px;
    font-weight: bold;
    padding-bottom: 14px;
    padding-top: 14px;
    text-align: center;
    text-transform: uppercase;
    cursor: pointer;
    border: 0;
    width: 100%;
    display: block;
    text-decoration: none;
}

.section-tips .wp-block-column img {
    box-sizing: content-box;
}

@media screen and (max-width: 1279px) {
    .left-banner {
        display: none;
    }
    .small-banner {
        display: block;
    }
}
@media screen and (max-width: 1050px) {
    .varinako-container #speedtestholder {
        margin-bottom: 80px;
    }
    .varinako-container #testbg {
        margin: auto;
    }
    .varinako-container #eyedoctordiv {
        display: none;
    }
    .jalkapallo-container #speedtestholder{
        width: 100%;
        position: relative;
    }
    .jalkapallo-container #testbg {
        margin: auto!important;
        float: unset!important;
    }
}
@media screen and (max-width: 1000px) {
    .iframe-bg {
        text-align: center;
        display: flex;
        justify-content: center;
    }
    .right-panel {
        width: 100%;
    }
    .news {
        flex-direction: column;
    }
    .news .content {
        width: 100%;
        margin: auto;
    }
    .news article {
        margin: 0 auto 30px;
    }
    #secondary {
        margin: 70px auto 0;
        max-width: 610px;
    }
    .news-single .flex {
        flex-direction: column;
    }
    .news-single article {
        margin: auto;
    }
}
@media only screen and (max-width : 860px) {
    .newsContainer {
        padding-top: 0;
    }
}
@media screen and (max-width: 768px) {
    .wp-block-columns {
        flex-direction: column;
    }
    .nopeustesteri-container #graphics, .nopeustesteri-container #speedtest {
        top: 140px;
    }
    .nopeustesteri-container #speedtestholder {
        max-width: 400px !important;
        height: 280px;
    }
    .nopeustesteri-container #score {
        top: 99px;
        font-size: 28px;
    }
    .nopeustesteri-container .startgame {
        font-size: 15px;
        margin-top: -38px;
    }
    .nopeustesteri-container .quickkeys {
        font-size: 30px;
        left: 13px;
        top: 83px;
    }
    .jalkapallo-container #speedtestholder{
        position: relative;
    }
}
@media screen and (max-width: 620px) {
    .news {
        padding-top: 10px;
    }
    .news a.post-thumbnail {
        margin: auto;
    }
    .news-single {
        padding: 0;
    }
    .news-single article {
        margin-top: -10px;
        border-radius: 0;
    }
    .news-single h1.entry-title {
        font-size: 20px;
    }
    .news-single #secondary .widget {
        margin: 0 20px 1.5em;
    }
    .movetomob a {
        display: block;
    }
}
@media only screen and (max-width: 590px) {
    #newsContainerWide {
        margin: -10px -20px 0;
        background: #fff !important;
    }
    .varinako-container #speedtestholder {
        margin-bottom: 25px;
    }
    .varinako-container #testbg {
        width: 290px;
        box-shadow: none;
        padding: 22px 0 20px;
        height: auto;
    }
    .varinako-container #eyeheader {
        font-size: 16px;
        margin-left: 5px;
    }

    .varinako-container #eyeheader h1 {
        font-size: 26px;
        margin-bottom: 6px;
        margin-top: 36px;
    }
    .varinako-container #colortest {
        height: 290px;
        width: 290px;
    }
    .varinako-container #score {
        margin: 25px 0 0 0;
        width: 100%;
    }
    .varinako-container .yourscore, .varinako-container .yourpenalty {
        width: 100%;
        padding: 4px;
    }
    .varinako-container #timeleft {
        font-size: 40px;
        height: 20px;
        width: 20px;
        top: 30px;
        right: 0;
    }
    .varinako-container .clock {
        margin-left: -12px;
        margin-top: -18px;
    }
    .newsContainer h2 {
        font-size: 32px;
    }
    .jalkapallo-container #speedtestholder {
        height: 634px !important;
        margin-top: 0 !important;
        background-color: #fff !important;
    }
    .jalkapallo-container #testbg {
        width: 100%;
        height: 567px !important;
        box-shadow: none !important;
        padding: 0;
    }
    .jalkapallo-container #gameheader h1 {
        color: #252525;
        font-size: 26px;
        margin-bottom: 6px !important;
        width: 180px !important;
        padding-top: 10px;
        text-transform: uppercase;
    }
    .jalkapallo-container #gameheader {
        font-size: 16px;
        margin-left: 10px;
        margin-bottom: 10px;
    }
    .jalkapallo-container #speedtest {
        float: none;
    }
    .jalkapallo-container #score {
        float: left !important;
        margin: 25px 0 0 0 !important;
        position: unset !important;
        width: 100% !important;
    }
    .jalkapallo-container .yourscore, .jalkapallo-container .yourbest {
        width: calc(100% - 40px) !important;
        padding: 4px 0 !important;
        display: block;
        margin: 0 20px;
    }
}
@media screen and (max-width: 420px) {
    .nopeustesteri-container #speedtestholder {
        max-width: 280px !important;
        height: 190px;
    }
    .nopeustesteri-container #graphics, .nopeustesteri-container #speedtest {
        top: 100px;
    }
    .nopeustesteri-container #score {
        top: 70px;
        font-size: 19px;
    }
    .nopeustesteri-container .startgame {
        font-size: 14px;
        margin-top: -10px;
        width: 80%;
        padding: 5px;
    }
    .nopeustesteri-container .quickkeys {
        font-size: 28px;
        left: 8px;
        top: 53px;
    }
}
@media screen and (min-width: 768px) {
    .menu-toggle {
        display: none;
    }
    .main-navigation ul {
        display: flex;
    }
}
