
form { margin:0; padding:0; width:100%; float:left;  }
legend { padding-bottom:5px; font-size:24px; color:#ffba00; }
fieldset {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}
form.spacedform div { padding:10px 0; float:left; display:inline; width:100%; }
label1 { float:left; display:inline; width:140px; line-height:2; margin-right:20px; text-align:right; } 
ainput, atextarea { display:inline; width:350px;  border:1px solid #999999; padding:3px; font-size:12px; background:#ffffff; font-family:Arial,Helvetica,sans-serif;  } 
textarea { overflow:auto; }
input[type="checkbox"] { width:auto; float:left; display:inline; } 
.checkoutReservation {width: 90%;margin-bottom: 2px;}
p.seatTitle { margin-bottom: 0; }
input.button { border:none; width:auto; margin-left:160px; text-transform:uppercase; color:#ffffff; background:#ffba00; padding:4px 6px; cursor:pointer; }
input:focus, textarea:focus, input.invalid:focus, textarea.invalid:focus { border:1px solid #000000; background:#eeeeee; }
input.invalid, textarea.invalid { border:1px solid #FF0000;}

form span { float:left; display:inline; margin:0 15px 0 5px; }
form div:last-of-type { padding-bottom:0; }
/*
Protoform message & error customizations
*/
.protoform-message { float:left; width:100%; margin-bottom:10px; }
/* ul.error */
.protoform-message ul { border-top:1px solid #eeeeee; margin:5px 0 0 0; padding:5px 0 0 0; } 
.protoform-message ul li { margin:0 0 5px 0; padding:0 0 5px 15px; background:url('../images/bullet.gif') no-repeat 0 4px; border-bottom:1px solid #eeeeee; }
.protoform-message p.working { float:left; padding:20px 20px 20px 30px; background:url('../images/loading.gif') no-repeat left center;}

button.submit {margin-top: 1em; width: 100%; display:block;}

#nav, #timetables, #timetables table, .widebox {
	
	margin-bottom: 5px;
}
.myreservationslist {
	min-width: 600px;
	overflow-x: scroll;
}
.widebox {
	padding: 10px 40px;
	
	clear: both;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

.bluebox {
	background: url("../images/siniliuku.png");
	color: white;
}

.orangebox, #nav {
	background: #ffba00;
}
.intro {word-break: break-word;}
tr.ylin td {
	
}

.leffanimi {
	font-weight: bold;
	height: 3em;
	padding: 5px 20px 5px 0;
	line-height: 1.35em;
}
.varaa_label {
	display: block;
	font-size: 0.6em;
	margin-top: -13px;
	font-weight: 500;
}
.varaa_label::after {
	font-family: sans-serif;
	content: '▶';
	opacity: 0;
	font-size: 0.7em;
	padding-left: 0em;
	transition: padding-left 0.1s ease;
}
.aika:hover .varaa_label::after {
	opacity: 1;
	padding-left: 0.5em;
}

.varaustaulukko td.buttoncell { padding: 0.5em 0; }
.varaustaulukko td.buttoncell input[type=submit], .varaustaulukko td.buttoncell button {
	width: 100%;
}
.aika:hover .varaa_label::after {
	padding-left: 1em;
}
.movie_classifications {
	display:inline-block;
}
img.classification {
	width: 30px;
    display: inline-block;
    margin: 0 0 0 5px;
    padding: 0;
    vertical-align: bottom;
}
.aikataulu {
	border-collapse: separate;
	border-spacing: 4px;
	clear: both;
}


#timetables {
	width: 968px;
	margin-left: -4px;
}

tr td {
	abackground-color: #eda005;
	abackground-image:url('../images/variliuku.png');
	padding: 9px 8px;
	text-align: center;	
	background-repeat: repeat-x;
	transition: background-color 0.1s linear, border-radius 0.2s ease;
	-moz-transition: background-color 0.1s linear, border-radius 0.2s ease;    /* FF3.7+ */
	-o-transition: background-color 0.1s linear, border-radius 0.2s ease;      /* Opera 10.5 */
	-webkit-transition: background-color 0.1s linear, border-radius 0.2s ease; /* Saf3.2+, Chrome */
	
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

.formtopcolumn {
	abackground-color: #eda005;
	abackground-image:url('../images/variliuku.png');
	padding: 9px 8px;
	text-align: center;	
	background-repeat: repeat-x;
	transition: background-color 0.1s linear;
	-moz-transition: background-color 0.1s linear;    /* FF3.7+ */
	-o-transition: background-color 0.1s linear;      /* Opera 10.5 */
	-webkit-transition: background-color 0.1s linear, ; /* Saf3.2+, Chrome */
	/*
	-webkit-border-radius: 5px 5px 0px 0px;
	-moz-border-radius: 5px 5px 0px 0px;
	border-radius: 5px 5px 0px 0px;
	*/
	}

.formmiddlecolumn {
	abackground-color: #eda005;
	abackground-image:url('../images/variliuku.png');
	padding: 9px 8px;
	text-align: left;	
	background-repeat: repeat-x;
	transition: background-color 0.1s linear;
	-moz-transition: background-color 0.1s linear;    /* FF3.7+ */
	-o-transition: background-color 0.1s linear;      /* Opera 10.5 */
	-webkit-transition: background-color 0.1s linear, ; /* Saf3.2+, Chrome */
	/*
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	border-radius: 0px;
	*/
	}

.formbottomcolumn {
	abackground-color: #eda005;
	abackground-image:url('../images/variliuku.png');
	padding: 9px 8px;
	text-align: center;	
	background-repeat: repeat-x;
	transition: background-color 0.1s linear;
	-moz-transition: background-color 0.1s linear;    /* FF3.7+ */
	-o-transition: background-color 0.1s linear;      /* Opera 10.5 */
	-webkit-transition: background-color 0.1s linear, ; /* Saf3.2+, Chrome */
	/*
	-webkit-border-radius: 0px 0px 5px 5px;
	-moz-border-radius: 0px 0px 5px 5px;
	border-radius: 0px 0px 5px 5px;
*/
	}

.wp-block-table tr td {
	border-radius: initial;
	background: initial;
	text-align: initial;
}

.varaustaulukko .movietitle {text-align: center; }
.alreadyreserved > p.reservationinfo_tickets { text-align: center; margin: 1em; }
.checkout.alreadyreserved p.reservationinfo_2 { margin: 2em 0; }
.varaustaulukko h2, .varaustaulukko h3 {
	font-size: 1.8em;
}
.ticketlink {
	display:inline-block;
	border-radius: 2em;
	padding: 0.5em 1em;
}
.ticketlink:hover {
	text-decoration:none;
	color: initial;
	opacity: 0.8;
}

.multishow .seatTitle {
	font-weight: bold;
	margin: 0;
}
.alreadyreserved p.reservationinfo_mail {font-size: 1.4em; text-align: center; margin: 1em; font-weight: bold; }
.varaustaulukko .paybutton {margin-top: 1em; }
.moviebox {
	width: 300px;
	margin-left: 30px;
	float: left;
	background-color: #00192e;
	background-image: url('../images/siniliuku.png');
	background-repeat: repeat-x;
	color: white;
	height: 510px;
	transition: height 0.5s linear;
	overflow: hidden;
	position: relative;
	margin-bottom: 30px;
	border-top: 1px solid #AAAAEE;
	transition: background-color 0.3s linear;
	-moz-transition: background-color 0.3s linear;    /* FF3.7+ */
	-o-transition: background-color 0.3s linear;      /* Opera 10.5 */
	-webkit-transition: background-color 0.3s linear; /* Saf3.2+, Chrome */

}

.moviebox:hover {
	background: #022746;
}

.moviebox:hover .info3d img {
	margin-top: -5px;
}

#movies {
	margin-top: 30px;
}

.nomargin {
	margin-left: 0;
}


.moviecontent {
	width: 260px;
	padding: 10px 20px;
}

.infopart {
	display: block;
	width: 120px;
	font-weight: bold;
	float: left;
	clear: both;
}

.shortpart {
	width: 60px;
}

.value {
	clear: both;
}

.value a {
	color: #ffba00;
}

.value a:hover {
	text-decoration: none;
	color: white;
}
span.agelimit {
    display: inline-block;
    background: #3e3e3e;
    border-radius: 100%;
    width: 30px;
    height: 30px;
    text-align: center;
    font-size: 16px;
    line-height: 31px;
    color: #a3c731;
    font-weight: 800;
    margin-right: 10px;
    text-transform: uppercase;
    border: 1px #ffffff1a solid;
}
.categoryicon {
	display:inline;
	width: 30px;
	height: auto;
    vertical-align: -9px;
    margin-right: 10px;
}

#acontent a {
	color: #ffba00;
	font-weight: bold;
}

#acontent a:hover {
	color: #1a5f99;
}
.cancelCheckout { margin: 10px auto; display: block; }

.moviebox button {
	width: 100% !important;
}
button.tutustu, a.tutustu { padding-left: 0; }

#acontent .tutustu {
	color: #00192e;
}

#acontent .tutustu:hover {
	color: white;
}

.valilehti {
	color: black;
	background: rgba(255, 186, 0, 0.52);
	text-decoration: none;
	display: block;
	float: left;
	height: auto;
	padding: 5px 30px;
	font-size: 0.8em;
	margin-right: 4px;
	margin-top: 20px;
	
	-webkit-border-top-left-radius: 5px;
	-webkit-border-top-right-radius: 5px;
	-moz-border-radius-topleft: 5px;
	-moz-border-radius-topright: 5px;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}

td.current {
	background: #ffba00;
	color: black;
	font-weight: bold;
}

.valilehti:hover {
	background: yellow;
	color: black;
}

.leffanimi {
	width: 200px;
	text-align:left;
	padding-left: 20px;
	
	color: black;
	font-size: 1.35em;
	padding: 12px 23px;
	line-height: 1.15em;
	font-weight: 400;
	}
	
.sali {
	width: 10px;
	padding: 10px;
	}
	
.info3d {
	margin-top: -30px;
	height:50px;
}

.info3d img {
	vertical-align: -50%;
	transition: margin-top 0.3s linear;
	-moz-transition: margin-top 0.3s linear;    /* FF3.7+ */
	-o-transition: margin-top 0.3s linear;      /* Opera 10.5 */
	-webkit-transition: margin-top 0.3s linear; /* Saf3.2+, Chrome */
}

.info3d span {
	margin-left: 20px;
	color: #1a5f99;
}

.actor {
	display: block;
}

.huomautus {
	background: white;
	background: #36546e;
	padding: 25px;
	border-bottom: 1px solid #DDDDDD;
    border-top: 1px solid #DDDDDD;
    margin: 2em 0;
}


.viikko {
	font-size: 2em;
}

.viikko span {
	display: block;
	width: 300px;
}

.aikataulu .aika, .aikataulu .sali {
	font-size: 1.35em;
	padding:5px;
	width: 95px;
}
.aikataulu .aika.closed {
	opacity: 0.2;
	cursor: not-allowed;
}
.aika { z-index: 10; }
.aikataulu .aika.closed .varaa_label {display: none;}

.harbor .seat, .harbor .seat_outer {
	width: 28px;
	height: 76px;
	background-size: contain;
	background-repeat: no-repeat;
}
.harbor .seat {width: 100%; height: 100%; }
.seatmap_outer {
	overflow-x: scroll;
}

.harbor .seat.free {
	background-image: url("../images/boat_free.png");
}
.harbor .seat.own {
	background-image: url("../images/boat_own.png");
}
.harbor .seat.reserved {
	background-image: url("../images/boat_taken.png");
}
.harbor .seat.temporary {
	background-image: url("../images/boat_temporary.png");
}

.timeselector {
	flex: 1;
	padding: 20px;
	border-radius: 5px;
}
.timeselector .startinput, .timeselector .endinput {
	background: white;
	color: black;
}
.timeselector .stack {
	display: flex;
	justify-content: center;
	align-items: flex-end;
	flex-wrap: wrap;
}
.timeselector h3 {
	margin: 0.5em 0.5em;
	font-size: 1.5em;
	text-align: center;
	text-transform: uppercase;
	border-bottom: 1px solid;
}
.timeselector .stack>* {flex:1;margin:1em;}
.timeselector p {margin-top: 0;}
.timeselector input {
	padding: 5px 10px;
	font-family: inherit;
	font-size: 1rem;
	line-height: 1.75;
}
.timeselector input, .timeselector button {width: 100%;}
.timeselector button {
	border: 0;
	border-radius: 128px;
	font-size: 14px;
	text-transform: uppercase;
	line-height: 1.25;
	padding: 10px 30px;
	opacity: 1;
	font-weight: 700;
	box-sizing: border-box;
	transition: opacity 0.3s ease 0s;
}
.timeselectorbutton.disabled {
	opacity: 0.2;
	cursor: not-allowed;
}
.sali {
	width: 30px;
}

.short {
	height: auto;
}

.longinfo {
	width: 450px;
	float: left;
}

#content .moviebox {
	float: right;
}

.traileri div, .traileri object {
	margin: 0 auto;
	margin-top: 100px;
	display: block !important;
}

#wrapper.nonav  {
	text-align: center;
}

.traileri { margin-bottom: 2em; }

.nonav a {
	color: #BBB;
}

.nonav a:hover {
	color:white;
	text-decoration: none;
}

.linksurround {
	display: block;
    cursor: pointer;
    width: 100%;
    color: inherit;
    position:absolute;
    left:0;
    top:0;
    right:0;
    bottom:0;
    z-index:20;
}
.surroundlinks table tr td {
	position:relative;
}
.linksurround:hover {text-decoration:none;}

.tutustulink {
	color: #00192e;
}

.tutustulink:hover {
	text-decoration: none;
}



.paiva {
	font-size: 1.5em;
	padding:0;
	position: relative;
}

.trailerlink {
	color: #FFBA00;
	font-weight: bold;
}

.isohuomio {
	background-color: #FFBA00;
	abackground-image: url('../images/huom.png');
	background-repeat: no-repeat;
	clear: both;
	padding: 2.5em;
	color: #000;
	background-position-y: 13px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
.isohuomio a {
	text-decoration: underline;
}
.isohuomio p {
	margin: 0;
	padding: 0;
	margin-left: 50px;
}

.varausbox, .varausinfo, .reservationdetails, .modal.varausbox, .modal.varausinfo, .modal.reservationdetails {
	height: auto;
	max-width: 600px;
	padding: 28px;
	background-color: #00192e;
	background-image: url('../images/siniliuku.png');
	background-repeat: repeat-x;
	border-radius: 5px;
	box-shadow: 0 2px 4px rgba(0,0,0,0.3);
	z-index: 50;
	margin-top: 50px;
	transition: max-width 1s;
}

.varausinfo {
	height: 300px;
}
.voucherinfo {display: block;}

.varausbox h1, .varausbox h2, .varausinfo h1, .varausinfo h2, .reservationdetails h1, .reservationdetails h2 {
	text-align: center;
	font-size: 2.5em;
}
p.reservations_footer { color: white; }
#reservationform > p.reservations_footer {
	margin-top: 1.5em;
	margin-bottom: 2em;
}
#check_seats_result_text {margin: 1em 0 0 0;}
.varaustaulukko td, .varaustaulukko th {
	/* text-align: left; */
	padding: 0.7em 1em;
	/*tasataan leveydet*/
	min-width: 50%;
	
}

/*lisää leveyssäätöjä*/
.email_reservation td{
	min-width: initial;
}
/*lisää leveyssäätöjä*/
.temporaryreservations td{
	min-width:initial;
}



.varaustaulukko { 
	margin: 0 auto;
	max-width: 600px;
	transition: max-width 1s;
}
.widemap .varaustaulukko {
	max-width: 2000px;
}
.modal.varausbox.widemap {
	max-width: 2000px;
}
.entry-content div.alreadyreserved > h2 {
  text-align: center;
  font-size: 2.1em;
  margin-top: 0.9em;
}
.alreadyreserved {
	max-width: 700px;
	margin: 0 auto;
}
.mailinfo>p, .alreadyreserved>p { margin: 0; }
.reservationdetails .mailinfo, .reservationdetails .alreadyreserved { margin: 0em 3em 2em 3em;}
.varaustaulukko .mailinfo a { text-decoration: underline; }
#reservationform .movietitlecell, .varaustaulukko .buttoncell {text-align:center;}
.varausbox table, .varausinfo table, .reservationdetails table { width: 100%; }
.varausbox > p, .varausinfo > p, .reservationdetails > p, #reservationform > p, .valkokangas  { margin: 0; padding: 0; text-align: center; margin-bottom: 1em;}
.showlist h4 a {text-decoration:none;}
.showlist h4 {margin: 10px 0 5px;}
.varausbox button, .varausbox input[type="button"], .varausbox input[type="submit"] {
	border-radius: 128px;
	line-height: 1.25;
	padding: 10px 30px;
	border: 0;
	margin-bottom: 5px;
}
.varaustaulukko a.tutustu.closereservation {
	border-radius: 128px;
	margin-top: 1em;
}
.start_email_reservation, .checkCode, .buttoncell input[type="submit"], .buttoncell button, .oauth_options input[type="submit"]{
	font-size: 1.4em;
	text-transform: initial;
	font-weight: bold;
}
.varausbox .buttoncell {background: transparent;}
.varausbox input { 
	width: 100%;
	font-size: 1.2em;
	padding: 0.4em;
	box-sizing:border-box;
}
.closereservation {
	border-radius: 128px;
}
.varausbox select { 
	width: 100%; 
	margin: 0 auto;  
	min-width: 76px; 
	font-size: medium;
	padding: 0.2em;
}
.varausleffa { 
	font-size: 1.5em;
	font-weight: normal; 
}
.avaraustaulukko td strong { color: black !important; }
.isohuomio.matala {
    background-position-y: -3px;
}
.varausbox .permissionrow input[type='checkbox'] {
	width: auto;
	display: inline-block;
	float: none;
	margin-right: 10px;
}
.varausbox .permissioncell {
	text-align: left;
	padding-left: 20px;
}
.valkokangas {
	margin: 0;
	border-bottom: 1px white solid;
}

.modalback {
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.8);
	height: 1500px;
	width: 100%;
	z-index: 10;
	display: none;
}

.hideOverflow { overflow: hidden; }
.reservationDone {
	display: none;
	background: #36546e;
	width: 400px;
	height: 100px;
	border-radius: 5px;
	position: absolute;
	top: 50px;
	left: 50%;
	margin-left: -200px;
	z-index: 70;
}

.loginbut {
	width: 216px;
	height: 78px;
	margin-left: -108px;
	position: absolute;
	top: -25px;
	left: 50%;
	background-image: url('../images/lipunvaraus.png');
	transition: top 0.5s ease;
	z-index: 2;
}

.loginbut:hover {
	background-position: 216px 0;
	top: -30px;
}

.loginbox {
	background: url('../images/variliuku.png') repeat-x scroll 0 0 #eda005;
	border-radius: 3px;
	display: none;
	font-family: 'Open Sans Condensed',sans-serif;
	color: #443922;
}
.vali {margin: 0 !important; }
.loginbox.open { display: block; }

.loginbox h2 {     color: #241B0A;
    margin-bottom: 4px;
    margin-left: 3px;
    margin-top: 3px;}
.loginbox p { margin-left: 3px; }
.loginbox a { color: #443922; }
.loginbox a:hover { color: black; }

.overTop { top: -90px; }
.overTop:hover {top: -90px !important; }
.use_giftcard {cursor: pointer; }
.fieldrequirement {
	clear:both;
}

.fieldrequirement.ok:before {
	content: '✓ ';
}
.fieldrequirement.nok:before {
	content: '❌ ';
}
.loginbox form, .loginbox div { padding: 15px; }

.loginbox span { display: inline-block; }
.loginbox input { display: inline-block; width: 240px; }
.loginbox form, .loginbox input, .loginbox span { float: none; }
.logoarea { position: relative; }
.welcome h2, .welcome p { margin: 0; }
.welcome p { font-weight: normal; }
span.logout { float: right; }
table.reservationstable { width: 100%; margin-top: 5px;}
.reservationstable td { background: rgba(255,255,255,0.5); padding: 2px 8px;}
.esityspaikka_mobile {display: none;}
.isohuomio, .moviecontent, .readmore {position: relative; }
.info-luelisaa {
    display: none;
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -100px;
    padding: 15px;
    width: 200px;
    height: auto;
    border-radius: 10px 10px 0 0;
    text-align: center;
    background: yellow;
    color: black;
}
.fullinfo .info-luelisaa {
	display: none !important; 
}
.timetables_inner {
	position:relative;
}
.selaa-symbol {
	display: none;
	width: 110px;
	height: 50px;
	position: absolute;
	right: 0;
	top: 50%;
	background: yellow;
	border-radius: 10px 0 0 10px;
	background-image: url('../images/selaa.png');
	background-repeat: no-repeat;
	box-shadow: 0 0 6px rgba(0,0,0,0.5);
	padding: 5px;
	z-index: 99;
	background-position: center;
}
#timetables {clear: both; }
@media screen and (min-width: 768px) {
	.aikataulu tr:hover td {
		
	}
}
.mobileheader { display: none; width: 100%; }
.mobileheader img { width: 100%; }
.mobileosoite {display: none;color: white;margin-top:-20px;}
.logoarea .mobileosoite {margin-top:-50px;}


#timetables {margin-bottom: -5px; }
.past {
	color: #9e7d1d;
	background: #b98e14;
	cursor: not-allowed;
}
.premiere {
	background-image:url('../images/tahdet.png') !important;
	background-position: 50% 50%;
}

/* Tooltip container */
.tooltip {
    position: relative;
    /*display: inline-block;*/
    text-decoration:underline;
}

/* Tooltip text */
.tooltip .tooltiptext {
    visibility: hidden;
    width: 100px;
    background-color: black;
    color: #fff;
    text-align: center;
    padding: 5px 0;
    border-radius: 6px;
 
    /* Position the tooltip text - see examples below! */
    position: absolute;
    z-index: 1;
}

/* Show the tooltip text when you mouse over the tooltip container */
.tooltip:hover .tooltiptext {
    visibility: visible;
}
.tooltip .tooltiptext {
    width: 100px;
    bottom: 100%;
    left: 50%;
    margin-left: -50px; /* Use half of the width (120/2 = 60), to center the tooltip */
}
#check_seats_result, #check_seats_progress {
    text-align: center;
    margin: 2.5em auto;
    width: 50%;
}
#check_seats_outerbar {
	position: relative;
	height: 10px;
	background: red;
}
#check_seats_bar {
	height: 100%;
	background: green;
	width: 0;
}
.auth_logout {
	text-align: center;
	display: block;
	margin: 10px;
}
td.reserved {
	acolor: #839e00;
	abackground: yellow;
	padding: 3px !important;
	text-align: center;
}
.reserved .infoLabel {
	font-weight: normal;
	font-size: 10px;
	display:block;
}
.ajanvaraustab {
	background-color: #1a5f99;
	color: white;
	font-size: 15px;
	font-weight: bold;
	margin-left: 0px;
	padding: 15px 75px 9px 75px;
}

.morecontent span {
    display: none;
}
.morelink {
    display: block;
}
.moviebox.expanded {
	height: auto !important;
}

.updateinfo {
	float: right;
	color: #dacd0170;
	margin-top: 36px;
}

.tanaanbox {
	position: absolute;
	color: #000000c9;
	margin-left: -50px;
	width: 100px;
	background: #dacd01;
	top: -44px;
	padding: 10px 0;
	border-radius: 5px;
	left: 50%;
	font-size: 15px;
}

.arrow-down {
    width: 0px;
    height: 0px;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid #dacd01;
    position: absolute;
    left: 50%;
    margin-left: -10px;
    bottom: -9px;
}

.aikataulut_inner {
	position:relative;
}
#moviesTable {
	width: 249px !important;
}
.timesTableOuter {
	position: absolute;
	top: 0;
	left: 240px;
	right: 0;
	bottom: 0;
	overflow: auto;
}
#timestable {
	width: 1000px;
}
tr.ylin td {
	height: 2em;
	vertical-align: bottom;
	padding-bottom: 5px;
}
.aikataulu tr.ylin:hover td { background: initial; color: initial; }
.paiva { line-height: 1.2em; }
.moviebox.firstcol {
	clear: both;
}
.morelink {
	color: #ffba00;
}
/*
.email_reservation input {
	 width: 95%; 
	}
*/
.expanded .moviecontent { padding-bottom: 70px; }
.goodcode { background: lightgreen; }
.badcode { background: lightred; }
.sali { padding: 4px; }
.intro { margin-top: 1em; margin-left: 5px; margin-right: 5px; }
.seatmap {
	position: relative;
	height: 400px;
	margin: 0 auto;
	margin-top: 20px;
}

.seat {
	position: absolute;
	width: 50px;
	height: 50px;
	background-image: url('../images/seat_free.png');
	background-size: cover;
}

.seat.reserved:hover, .seat.temporary:hover {
	cursor: not-allowed;
	background-color: #71a2cc;
}
.seat.free:hover {
	cursor: pointer;
	background-color: #71a2cc;
}


.seat.reserved {
	background-image: url('../images/seat_taken.png');
	background-color: transparent;
	padding: 0;
}
.seat.own {
	background-image: url('../images/seat_own.png');
}
.seat.temporary {
	background-image: url('../images/seat_temporary.png');
}
.movielist {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(285px,1fr));
  grid-gap: 10px;
  color: #444;
}
div.movielist_outer.alignwide {
	max-width: 1100px; 
}
.submitting input[type="submit"], .submitting .checkoutReservation {
	opacity: 0.5 !important;
	pointer-events: none;
}
.movie {
    position: relative;
    display: flex;
    flex-direction: column;
    background: #eee;
    border-radius: 5px;
    padding: 17px;
    margin-bottom: 45px;
	box-shadow: inset 0px 0px 152px 1px rgb(226, 226, 226), 0px 21px 26px -23px rgba(255, 255, 255, 0.63);
	overflow: hidden;
}
.movie .aika {
	text-align: left;
}
.aika.hastime:hover {
	aoutline: 2px white solid !important;
	cursor: pointer;
	border-radius: 15px;
}
.movie img {
	width: 100%;
}
.movie h3, .entry-content .movie h3 {
    margin: 1.2em 0;
    font-size: 1.4em;
    text-align: center;
}

.movie .info {
	margin-top: 1em;
	margin-bottom: 1em;
}
.movie .infoarea {
	flex: 1;
}
.showlist tr td {
	text-align: left;
	padding: 1em 1.5em;
}
.showlist table {width:100%; }
.showlist h4 {
	text-transform: initial;
	font-size: 1.4em;
	font-weight: normal;
}
.showlist p {
	margin: 0 0 20px;
	margin-bottom: 0.2em;
}
.showlist span.agelimit {
	color: inherit;
	background: transparent;
	border: 2px rgba(0,0,0,0.1) solid;
}
.movie .infoarea .aika::before, .movie_timetable .aika::before, .showlist .aika::before {
	content: url('/wp-content/plugins/nexxo-scope/images/cart.svg');
	width: 1.5em;
	height: 1.5em;
	display: inline-block;
	margin-right: 0.4em;
	vertical-align: -0.35em;
	transform: scale(1);
	transition: transform 0.4s ease;
}
.aika.hastime:hover::before {
	transform: scale(1.1);
}
.aika.onlytime { font-size: 1.2em; text-align: center; width: 6em;}
.showlist .aika.onlytime::before { margin-right: 0; }

.movie .infoarea th, .movie .infoarea td, .movie .info th, .movie .info td {
	font-size: 0.8em;
	font-weight: 500;
}
.movie .info th, .movie .info td {
	width: 50%;
	text-align: left;
	background: initial;
	color: inherit;
	padding: 0 0.8em;
}
.movie .info td {
	font-weight: bold;
}
.tutustu, input[type='submit'].tutustu {
	display: block;
	width: 100%;
	padding-left: 25px;
	padding-top: 20px;
	padding-bottom: 20px;
	abackground-color: #ffba00;
	color: #00192e;
	font-size: 1.4em;
	text-decoration: none;
	text-align: center;
	font-weight: bold;
	
	abackground-image: url('../images/nuoli.svg');
	abackground-repeat: no-repeat;
	abackground-position: 90% 50%;
	
	transition: background-position 0.3s linear;
	-moz-transition: background-position 0.3s linear;    /* FF3.7+ */
	-o-transition: background-position 0.3s linear;      /* Opera 10.5 */
	-webkit-transition: background-position 0.3s linear; /* Saf3.2+, Chrome */
	
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	position: relative;
}
.multishow .temporaryreservations .productTitleCell {
	display:none;
}
.multishow .temporaryreservations .seatTitle {
	font-weight: bold;
	margin-bottom: 0;
}
.reservationhelp {
	font-weight: normal;
}
.atutustu .nuoli {
	position: absolute;
	display: inline-block;
	right: 51px;
	top: 50%;
	transition: right 0.3s linear;
	transform: translateY(-50%);
}
.atutustu:hover .nuoli {
	right: 45px;
}

.tutustu:hover {
	text-decoration: none;
	background-position: 91% 50%;
	color: initial;
	cursor:pointer;
}
.tutustu::after {
	font-family: sans-serif;
	content: '▶';
	opacity: 0;
	font-size: 0.7em;
	padding-left: 0em;
	transition: padding-left 0.1s ease;
}
.tutustu:hover::after {
	opacity: 1;
	padding-left: 0.5em;
}
.movieBanner {
	position: relative;
	padding-bottom: 44%;
	line-height: 160px !important;
	background-size: cover;
	background-position: 50% 50%;
}
.moviePoster {
	position: relative;
	padding-bottom: 155%;
	line-height: 200px !important;
	background-size: cover;
	background-position: 50% 50%;
	overflow: hidden;
	border-radius: 0;
	margin-left: -17px;
	margin-top: -17px; 
	margin-right: -17px;
}
.infoarea .shows {width: 100%;}
.playbutton {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0,0,0,0.0);
	abackground-image: url('../images/nuoliv.png');
	background-repeat: no-repeat;
	background-position: -42px 50%;
	vertical-align: center;
	text-align: center;
	
    border-radius: 0;

    padding: 0;
}
.playbutton span {
	opacity: 0;
	transition: opacity 0.3s linear, backdrop-filter 0.3s linear;
	color: #FFF;
	font-size: 1.2em;
	font-weight: bold;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	backdrop-filter: blur(0px);
	line-height: 1.5em;
	white-space: nowrap;
}
.playbutton span::after {
  font-family: sans-serif;
  content: '▶';
  opacity: 0;
  font-size: 0.7em;
  padding-left: 0em;
  transition: padding-left 0.4s ease;
}
.playbutton:hover {
	background-color: rgba(0,0,0,0.5);
	background-position: 90% 50%;
	cursor: pointer;
	backdrop-filter: blur(2px);
}
.playbutton:hover span::after {
  opacity: 1;
  padding-left: 0.8em;
}
.playbutton:hover span {
	opacity: 1;
}
.movielist_outer.fullwidth {
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
	padding: 50px;
}
.oauth_options td.static {
	padding: 5px;
}
.movie_trailer {
    position: relative;
    padding-bottom: 56.25%; /* 16:9 */
    padding-top: 25px;
    height: 0;
}
.movie_trailer iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.modal {
	max-width: 600px;
}
[data-usereservations] .aika.hastime {
	cursor: pointer;
	box-sizing: border-box;
}
[data-usereservations] .aika.hastime:hover {
	font-weight: bold;
	box-shadow: inset 0px -28px 79px 0px rgba(0,0,0,0.3);
}
.movieslider {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
}
.movieslider.responsive {
	position:relative;
}
.movieslider.responsive #slider {
	position: initial;
}
.movieslider.responsive .slide img {display: block;}
.movieslider.responsive .slides {transition: padding 1s ease-in-out; position:relative;transition-delay: 1s;}
.movieslider.responsive .slides .slide {
	position:absolute;
	left:0;
	top: 50%;
    transform: translateY(-50%);
	width:100%; 
	height:100%;
}
.movieslider[data-cover="1"] {
	position: fixed;
	min-height: 100vh;
}
.movieslider[data-cover="2"] {
	position: static;
	width: 100%;
	min-height: 40vw;
	position: relative;
}
.movieslider_inner {
    width: 100%;
    height: 100%;
    position: absolute;
    overflow: hidden;
}
.movieslider .slidernext, .movieslider .sliderprevious {
	position: absolute;
	top: 50%;
	margin-top: -100px;
	width: 30px;
	height: 200px;
	max-height: 100%;
	z-index: 3;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	opacity: 0.2;
}
.movieslider .slidernext:hover, .movieslider .sliderprevious:hover {
	opacity: 1;
	cursor: pointer;
}
.movieslider .slidernext {
	right: -50px;
	background-image: url("../images/next_arrow.png");
}
.movieslider .sliderprevious {
	left: -50px;
	background-image: url("../images/previous_arrow.png");
}
.movieslider .circlecontainer {
	position: absolute;
	bottom: 11px;
	height: 15px;
	width: 100%;
	text-align:center;
}
.movieslider .circle {
	display: inline-block;
	width: 15px;
	height: 15px;
	background: transparent;
	border: 2px white solid;
	border-radius: 10px;
	margin: 0 3px;
}
.movieslider .circle:hover {
	cursor: pointer;
	transform:translateY(-2px);
}
.movieslider .circle.current {
	background: white;
}
.slide.current {background: initial;}
.mobile-navbar {z-index:10005 !important;}
.mobile-navbar #menu-toggle {background: white;}
#menu-toggle .button-toggle, #menu-toggle .button-toggle:before, #menu-toggle .button-toggle:after {
    background-color: black;
}
#menu-toggle.toggled-on .button-toggle {
	background-color: transparent;
}
#menu-toggle.toggled-on .button-toggle:before, #menu-toggle.toggled-on .button-toggle:after {
	background-color: #a3c731
}

.pricebox {
    position: absolute;
    top: 4px;
    right: 0px;
    width: 50px;
    height: 40px;
    line-height: 40px;
    vertical-align: middle;
    text-align: center;
    color: white;
    background: #ff3a3a;
    font-weight: bold;
    font-size: 15px;
    border-radius: 13px;
    z-index: 1;
    transform: rotate(2deg);
    box-shadow: 0px 18px 19px -14px rgba(0,0,0,0.75);
}
.showauth {
	text-decoration: underline;
}
.showauth:hover {
	font-weight: bold;
}
.ajanvaraustab { float:none; max-width: 290px;}
.timetable {
	overflow-x: auto;
}
.aika.empty {
	opacity: 0.7;
}
.centerfade {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 3;
	background: linear-gradient(90deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 33%, rgba(0,0,0,1) 66%, rgba(0,0,0,0) 100%);
}
.leftfade {
	position: absolute;
    left: -100%;
    right: 0;
    top: 0;
    z-index: 3;
    mix-blend-mode: hard-light;
    abackground: radial-gradient(circle, rgba(0,0,0,1) 0%, rgba(10,34,61,1) 35%, rgba(18,59,107,1) 39%, rgba(1, 5, 9, 0.48) 43%, rgba(255, 255, 255, 0) 100%);
    background: radial-gradient(circle, rgba(0,0,0,1) 0%, rgba(10,34,61,1) 29%, rgba(18,59,107,1) 30%, rgba(1, 5, 9, 0.48) 55%, rgba(255, 255, 255, 0) 100%);
    box-shadow: inset 3px -44px 93px -43px rgba(0,0,0,0.75);
    
    /* background: radial-gradient(circle, rgba(0,0,0,1) 0%, rgba(0,0,0,0.4248074229691877) 100%); */
    bottom: 0;
}
.jquery-modal {
	z-index: 65 !important;
}
.modal {
	z-index: 67 !important;
}
.blocker {
	backdrop-filter: blur(10px);
}
.cancelreservation_single {
	margin-bottom: 1em;
}

.largeroom .seat, .largeroom .seat_outer {
	width: 30px;
	height: 30px;
}
.largeroom .seat_outer, .largestroom .seat_outer, .seatmap .seat_outer {
	transform-origin: 50% 50%;
}
.largestroom .seat, .largestroom .seat_outer {
	width: 22px;
	height: 22px;
}
.seatmap_outer {
  margin-bottom: 33px;
}
.slide .content.showtype {
	display:block;
}
.content.showtype .content-txt {
	float: none;
	width: initial;
	height: initial;
	display: inline-block;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
}

@keyframes spinner {
  to {transform: rotate(360deg);}
}
 
.spinner:before {
  content: '';
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 20px;
  margin-top: -10px;
  margin-left: -10px;
  border-radius: 50%;
  border: 2px solid transparent;
  border-top-color: #FFF;
  border-bottom-color: #FFF;
  animation: spinner .8s ease infinite;
}

.namerow :first-child{
	border-bottom-left-radius: 5px;
}
.namerow :nth-child(2){
	border-bottom-right-radius: 5px;
}

.mailrow :nth-child(2){
	border-top-right-radius: 5px;
}

/* ei toimi mobiilissa */

.email_reservation td:first-child {
	max-width: 150px;
}

@media only screen and (max-width: 660px) {
	.reservationdetails .mailinfo, .reservationdetails .alreadyreserved {
	    margin: 0em 0em 2em 0em;
	}
	.reservationdetails h1, .reservationdetails h2 {
		text-align: left;
	}
	.timetable {
		max-width: 100% !important;
		overflow-x: auto !important;
		overflow-y: hidden !important;
		clear: both !important;
	}
	.blocker {
		overflow-x: hidden !important;
		overflow-y: scroll !important;
		-webkit-overflow-scrolling:touch !important;
	}
	.seatmap {
		overflow-x: hidden !important;
		overflow-y: hidden !important;
		position: relative !important;

		a-webkit-overflow-scrolling: touch;
	}
	.blocker:before {
		content: "";
		display: block;
		height: 0%;
		vertical-align: middle;
		margin-right: 1.95em;
		pointer-events: none;
	}
	.seat {
		pointer-events: auto;
	}
	.seat.transfering {
		pointer-events:none;
	}
	.jquery-modal.blocker {
		padding: 0 !important;
	}
	.modal {
		width: 100% !important;
		left:0 !important;
		right: 0 !important;
		top: 10px !important;	
		z-index: 20 !important;
	}
	.modal a.close-modal {
		left:50%;
		transform:translatex(-50%);
	}
	.oauth_options td.static {
		display: inline-block !important;
		width: 100% !important;
		clear: both !important;
	}
}
.onlynarrow {
	display: none;
}
@media only screen and (max-width: 400px) {
	.aikataulu .future {
		display: none;
	}
	.showlist>h3 {
		text-align: center;
	}
	div.showlist.alignwide {
		max-width: none;
		margin-right: calc(var(--wp--style--root--padding-right) * -1) !important;
  		margin-left: calc(var(--wp--style--root--padding-left) * -1) !important;
	}
	.showlist .aika.onlytime::before {
		display: block;
		margin: 0 auto;
	}
	.showlist table .aika.onlytime {
		width: 3em;
		padding: 2px;
	}
	.showlist h4 {
		margin-top: 0;
	}
	.onlynarrow {
		display: block;
	}
	h1.entry-title {
		font-size: 2.0rem !important;
	}
	.showlist h4 {
	  font-size: 1em;
	  font-weight: bold;
	}
	.showlist tr td {
	  padding: 12px;
	}

}
@media only screen and (max-width: 1450px) {
	.paiva {
		font-size: 1.2em !important;
	}
	.aleffanimi {
		padding: 5px 10px 5px 5px;
	}
	.aaikataulu .aaika {
		font-size: 20px;
	}

}



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

		/*varauslomake puhelimille*/

		.varausbox .formtopcolumn{
			background-color: linear-gradient(#f8c009,#eda005);
		}

		.varausbox .formmiddlecolumn{
			background-color: linear-gradient(#f8c009,#eda005);
		}

		.varausbox .formbottomcolumn{
			/* background: #f8c009; */
			background-color: linear-gradient(#f8c009,#eda005);
		}

		.varausbox .mailrow {
			display:flex;
			flex-direction: column;
			background: inherit;
			background-color: inherit;
		}

		.varausbox .checkmailrow {
			display:flex;
			flex-direction: column;
			background: inherit;
			background-color: inherit;
		}

		.varausbox .namerow {
			display:flex;
			flex-direction: column;
			background: inherit;
			background-color: inherit;
			border-radius: 0 0 5px 5px;
		}
		.varausbox .coderow {
			display:flex;
			flex-direction: column;
			background: inherit;
			background-color: inherit;
		}
		.varausbox button
		{
			width: 95%;
		}
/*
		.varaustaulukko td, .varaustaulukko th input {
			text-align: center;
		}
*/
/*
		.varausbox input
		{
			margin-bottom: 15px;
		}
*/

		.varaustaulukko td, .varaustaulukko th {
			padding: 0.4em 0.4em;
		}

		/*
		.varaustaulukko tr {
			padding-left: 0.4em;
			padding-right: 0.4em;
		}
		*/

		.seatCountRow {
			display:flex;
			flex-direction: column;
		}

		.seatCountRow:nth-child(2) {
			border-top-right-radius: 5px;
		}

		#temporaryreservations tr{
			display: flex;
			flex-direction:column;
		}

		#temporaryreservations td{
			/*
			background: inherit;
			background-color: inherit;
			color: #FFF;
			*/
			text-align: left;
			padding: 1em;
		}

		/*
		.voucherSelection{
			margin-left: 15px !important;
		}
		*/
		
		.withoutPayments{
			margin-top:15px;
		}

		.seatmap_outer {
			margin-bottom: 0px;
		}

		.product_options tr{
			display: flex;
			flex-direction:column;
		}

		.product_options td{
			/*
			background: inherit;
			background-color: inherit;
			color: #FFF;
			*/
			text-align: left;
		}

		/*
		.product_options .productcount{
			margin-left: 15px !important;
		}
			*/

		.submitReservation.withoutPayments{
			margin-top: 25px;
		}

		.temporaryreservations td select{
			text-align: center;
		}

		.temporaryreservations{
			margin-top: 10px;
		}

		.seatreservation{
			margin-bottom: 10px;
		}

		.varausbox select{
			font-size: medium;
			padding: 5px;
		}

		.seatmap{
			margin: 25px auto 25px auto;
		}

		.namerow > td:nth-child(2) {
			border-radius: 0 0 5px 5px;
		}

		tr td{
			border-radius: 0 0 0 0;
		}

		.expiryrow{
			display: flex;
			flex-direction: column;
		}

		.expirylabel{
			border-radius: 5px 5px 0 0;

		}

		.expirycell{
			border-radius: 0 0 5px 5px;
		}

		.seatCountRow td:last-child {
			border-radius: 0 0 5px 5px;
		}

		.productTitleCell{
			border-radius: 5px 5px 0 0;
		}

		.expirycell{
			border-radius: 0 0 5px 5px;
		}

		.seatCountRow > td:nth-child(2){
			border-radius: 0 0 5px 5px;
		}

		.productTitleSeat td:last-child{
			border-radius: 0 0 5px 5px;
		}
/*
		.voucherOptions{
			border-radius: 0 0 5px 5px;
		}
*/

		.product_options{
			margin-top: 0px;
		}

		tr.productoptionrow td:first-child{
			border-radius: 5px 5px 0 0 ;
		}

		/*
		tr.productoptionrow:nth-child(2){
			border-radius: 5px 5px 0 0;
		}			
		*/

		tr.productoptionrow td:last-child{
			border-radius: 0 0 5px 5px;
		}

		.codemail{
			margin: 5px 5px 5px 5px;
		}

		.codemail_check{
			margin: 5px 5px 5px 5px;
		}

		.name{
			margin: 5px 5px 5px 5px;
		}

		.checkCode{
			margin-top: 15px;
		}

		/*
		.product_options{
			margin-top: 10px;
		}
		*/

		.product_options td:nth-child(2n+1){
			margin-top:15px;
		}

		.seatreservation td:nth-child(2n+1){
			margin-top:15px;
		}

		/*
		.temporaryreservations td:last-child{
			margin-top:15px;
			color: red;
		}
*/
		.productTitleSeat{
			margin-top: 15px;
		}

		.email_reservation tr td:first-child {
			max-width: initial;
		}

		.varausbox input { 
			box-sizing: border-box;
			width: 97%;
		}

		.expiryrow span{
			float: initial;
		}
		.mailrow :nth-child(2){
			border-top-right-radius: initial;
	}
		.namerow :first-child {
		border-bottom-left-radius: initial;
	}

		.varaustaulukko td, .varaustaulukko th{
			border-radius: inital;
			padding: 0.6em;
		}

		tr.mailrow:nth-child(1) > td:nth-child(1) {
			border-radius: 5px 5px 0 0;
		}

		.seatCountRow > td:nth-child(1){
			border-radius: 5px 5px 0 0;
		}

		.movietitlecell{
			border-radius: 5px 5px 0 0;
		}

		.pricerow > td:nth-child(1){
			border-radius: 0 0 0 5px;
		}

		.pricerow > td:nth-child(2){
			border-radius: 0 0 5px 0;
		}

		.modal.varausbox{
			padding: 15px;
		}

}

