/*
Theme Name: AYY 2016
Theme URI: http://ayy.fi
Author: Ville Niemi, Viiksimaisteri
Author URI: http://viiksimaisteri.fi
Description: Aalto-yliopiston ylioppilaskunnan Wordpress-teema lukukaudesta 2015-2016 alkaen.
Version: 1.0
License: © AYY x Viiksimaisteri 2015
Text Domain: ayy2016
*/

/**
 * Table of Contents:
 *
 * 1.0 - Reset + basics
 * 2.0 - Repeatable Patterns
 * 3.0 - Basic Structure
 * 4.0 - Navigation
 * 6.0 - Content
 *   6.05 - Front page
 *   6.1 - Page.php styles
 *   6.2 - Single.php styles
 *   6.3 - Archive / category-pages
 *   6.4 - Individual page styles
	6.4.1 Associations page
	6.4.2 Contacts page
	6.4.3 Events page
 * 7.0 - Sidebar
 *   7.1 - Widgets
 *   7.2 - Content Sidebar Widgets
 * 8.0 - Footer
 * 9.0 - Featured Content
 * 10.0 - Multisite
 * 11.0 - Media Queries
 * 12.0 - Print
 * -----------------------------------------------------------------------------
 */


/**
 * 1.0 Reset + basics
 * -----------------------------------------------------------------------------
 */
@import url('/wp-content/themes/AYY2016/reset.css');
@import url('/wp-content/themes/AYY2016/type/ayyfonts.css');

html { background-color: white; }

a:hover { color: #890D75; text-decoration: underline; }

body { font-family: 'Source Sans Pro'; }
body {
/*	background: #f5f5f5; 
    background: white url("/wp-content/themes/AYY2016/images/Mantanlakitus2015_cTeemuOjala.jpg") center top repeat-x; */
/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#eed2f5+0,fcf7ff+25,ffffff+100 */
background: #eed2f5; /* Old browsers */
background: -moz-linear-gradient(top,  #eed2f5 0%, #fcf7ff 25%, #ffffff 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#eed2f5), color-stop(25%,#fcf7ff), color-stop(100%,#ffffff)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top,  #eed2f5 0%,#fcf7ff 25%,#ffffff 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top,  #eed2f5 0%,#fcf7ff 25%,#ffffff 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top,  #eed2f5 0%,#fcf7ff 25%,#ffffff 100%); /* IE10+ */
background: linear-gradient(to bottom,  #eed2f5 0%,#fcf7ff 25%,#ffffff 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eed2f5', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */
}
footer {
    background-position: 20% 100%;
    background-size: cover;
background: #e9e1ef;
background: -moz-linear-gradient(top, #e9e1ef 0%, #ffffff 65%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#e9e1ef), color-stop(65%,#ffffff));
background: -webkit-linear-gradient(top, #e9e1ef 0%,#ffffff 65%);
background: -o-linear-gradient(top, #e9e1ef 0%,#ffffff 65%);
background: -ms-linear-gradient(top, #e9e1ef 0%,#ffffff 65%);
background: linear-gradient(to bottom, #e9e1ef 0%,#ffffff 65%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e9e1ef', endColorstr='#ffffff',GradientType=0 );
}
body, footer {
    background-image: url("/wp-content/themes/AYY2016/images/Mantanlakitus2015_cTeemuOjala_ver.jpg");
    background-position: center top;
    background-repeat: repeat-x;
}
@media (min-width: 841px) {
	body, footer {
	    background-image: url("/wp-content/themes/AYY2016/images/Mantanlakitus2015_cTeemuOjala.jpg"); 
	}
}

p, table, .entry-meta, div.entry-meta, div.entry-content { font-family: 'Crimson text'; }
.entry-content span { font-family: inherit !important; font-size: 1em !important; }

h1, h2, h3, h4, h5, h6 {
margin: 0.6em 0 0.25em;
line-height: 1.15em;
}

h1 { font-weight: 300 }

/**
 * 2.0 Repeatable Patterns
 * -----------------------------------------------------------------------------
 */

/* Input fields */

input,
textarea {
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-radius: 2px;
	color: #2b2b2b;
	padding: 8px 10px 7px;
}

textarea {
	width: 100%;
}

input:focus,
textarea:focus {
	border: 1px solid rgba(0, 0, 0, 0.3);
	outline: 0;
}

/* Buttons */

button,
.button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	background-color: #890D75;
	border: 1px dotted transparent;
	border-radius: 2px;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	padding: 10px 30px 11px;
	text-transform: uppercase;
	vertical-align: bottom;
}

button:hover,
button:focus,
.button:hover,
.button:focus,
input[type="button"]:hover,
input[type="button"]:focus,
input[type="reset"]:hover,
input[type="reset"]:focus,
input[type="submit"]:hover,
input[type="submit"]:focus {
	background-color: inherit;
	border: 1px solid #800080;
	color: #fff;
}

button:active,
.button:active,
input[type="button"]:active,
input[type="reset"]:active,
input[type="submit"]:active {
	background-color: inherit;
	border: 1px solid #800080;
}

.search-field {
	width: 100%;
}

.search-submit {
	display: none;
}

/* Placeholder text color -- selectors need to be separate to work. */

::-webkit-input-placeholder {
	color: #939393;
}

:-moz-placeholder {
	color: #939393;
}

::-moz-placeholder {
	color: #939393;
	opacity: 1; /* Since FF19 lowers the opacity of the placeholder by default */
}

:-ms-input-placeholder {
	color: #939393;
}

/* Responsive images. Fluid images for posts, comments, and widgets */

.comment-content img,
.entry-content img,
.entry-summary img,
#site-header img,
.widget img,
.wp-caption {
	max-width: 100%;
}

/**
 * Make sure images with WordPress-added height and width attributes are
 * scaled correctly.
 */

.comment-content img[height],
.entry-content img,
.entry-summary img,
img[class*="align"],
img[class*="wp-image-"],
img[class*="attachment-"],
#site-header img {
	height: auto;
}

img.size-full,
img.size-large,
.wp-post-image,
.post-thumbnail img {
	height: auto;
	max-width: 100%;
}

/* Make sure embeds and iframes fit their containers */

embed,
iframe,
object,
video {
	margin-bottom: 24px;
	max-width: 100%;
}

p > embed,
p > iframe,
p > object,
span > embed,
span > iframe,
span > object {
	margin-bottom: 0;
}

/* Alignment */

.alignleft {
	float: left;
}

.alignright {
	float: right;
}

.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

blockquote.alignleft,
figure.wp-caption.alignleft,
img.alignleft {
	margin: 7px 24px 7px 0;
}

.wp-caption.alignleft {
	margin: 7px 14px 7px 0;
}

blockquote.alignright,
figure.wp-caption.alignright,
img.alignright {
	margin: 7px 0 7px 24px;
}

.wp-caption.alignright {
	margin: 7px 0 7px 14px;
}

blockquote.aligncenter,
img.aligncenter,
.wp-caption.aligncenter {
	margin-top: 7px;
	margin-bottom: 7px;
}

.site-content blockquote.alignleft,
.site-content blockquote.alignright {
	border-top: 1px solid rgba(0, 0, 0, 0.1);
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
	padding-top: 17px;
	width: 50%;
}

.site-content blockquote.alignleft p,
.site-content blockquote.alignright p {
	margin-bottom: 17px;
}

.wp-caption {
	margin-bottom: 24px;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin: 0;
}

.wp-caption {
	color: #767676;
}

.wp-caption-text {
	-webkit-box-sizing: border-box;
	-moz-box-sizing:    border-box;
	box-sizing:         border-box;
	font-size: 12px;
	font-style: italic;
	line-height: 1.5;
	margin: 9px 0;
}

div.wp-caption .wp-caption-text {
	padding-right: 10px;
}

div.wp-caption.alignright img[class*="wp-image-"],
div.wp-caption.alignright .wp-caption-text {
	padding-left: 10px;
	padding-right: 0;
}

.wp-smiley {
	border: 0;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Assistive text */

.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-weight: bold;
	height: auto;
	line-height: normal;
	padding: 15px 23px 14px;
	position: absolute;
	left: 5px;
	top: 5px;
	text-decoration: none;
	text-transform: none;
	width: auto;
	z-index: 100000; /* Above WP toolbar */
}

.hide {
	display: none;
}

/* Clearing floats */

.footer-sidebar:before,
.footer-sidebar:after,
.hentry:before,
.hentry:after,
.gallery:before,
.gallery:after,
.slider-direction-nav:before,
.slider-direction-nav:after,
.contributor-info:before,
.contributor-info:after,
.search-box:before,
.search-box:after,
[class*="entry-content"]:before,
[class*="entry-content"]:after,
[class*="site"]:before,
[class*="site"]:after {
	content: "";
	display: table;
}

.footer-sidebar:after,
.hentry:after,
.gallery:after,
.slider-direction-nav:after,
.contributor-info:after,
.search-box:after,
[class*="entry-content"]:after,
[class*="site"]:after {
	clear: both;
}

/* Genericons */

.bypostauthor > article .fn:before,
.comment-edit-link:before,
.comment-reply-link:before,
.comment-reply-login:before,
.comment-reply-title small a:before,
.contributor-posts-link:before,
.menu-toggle:before,
.search-toggle:before,
.slider-direction-nav a:before,
.widget_ayy2016_ephemera .widget-title:before,
.icon, span.icon {
	-webkit-font-smoothing: antialiased;
	display: inline-block;
	font: normal 16px/1 Genericons;
	font-family: Genericons !important;
	text-decoration: inherit;
	vertical-align: text-bottom;
}
a:hover > .icon { text-decoration: none; }

.icon.medium-size {
    font-size: 1.25em;
}

.menu-toggle {	cursor: pointer; }
.menu-toggle:before {
	content: "";
}
.mini .menu-toggle:before { content: "" }

/* Separators */

.site-content span + .entry-date:before,
.full-size-link:before,
.parent-post-link:before,
span + .byline:before,
span + .comments-link:before,
span + .edit-link:before,
.widget_ayy2016_ephemera .entry-title:after {
	content: "\0020\007c\0020";
}


/**
 * 3.0 Basic structure
 * -----------------------------------------------------------------------------
 */

#header {
/*width: 86.99%;*/
/*margin: 0 auto;*/
/* max-width: 960px; */
box-sizing: border-box;
-moz-box-sizing: border-box;
}
#header {
    box-sizing: border-box;
    width: 80%;
    margin: 4em auto 1em;
    max-width: 65em;
    display: table;
    border-bottom: 3px double #FFF;
    padding-bottom: 2.5em;
}

#flags-container, div.header-main, #search-box-container {
    vertical-align: middle;
    display: inline-block;
}
#flags-container {
    float: right;
    margin-top: 0.25em;
    margin-right: 1em;
}
#search-box-container {
    float: right;
}
div.header-main {
/*    text-align: center; */
/*    width: 50% !important; */
	margin-top: -1em;
}
#header { position: relative; }
#header .search-field {
    z-index: 1;
    max-width: 2em;
    background-position: 50%;
    float: right;
    color: transparent;
    border: 0px;
	cursor: pointer;
}

#header .search-field:hover {
	background-color: rgba(255,255,255,1);
}
#header .search-field:focus {
    max-width: 20em;
    background-position: 97.5% 50%;
    color: inherit;
    background-color: rgba(255,255,255,1);
	position: absolute;
	right: 0;
}

.search-field, #asso_search {
    background: rgba(255, 255, 255, 0.45) url("/wp-content/themes/AYY2016/images/searchicon-tr.png") no-repeat 98% 50% / 1em;
}

#header h1.site-title {
	letter-spacing: 2px;
	font-size: 3em;
	margin: 0;
	/*text-align: center;*/
}
h1.page-title {
    text-align: center;
}
h1.site-title img {
    height: 64px;
    opacity: 0.8;
    image-rendering: optimizequality;
}
h1.site-title img:hover { opacity: 1; }

#login-container {
    display: none;
}
#login-container:hover { opacity: 1 }

#flags-container {

}
#flags-container img {
    height: auto;
    margin: 0 0.25em 0;
}
#flags-container a img { opacity: 0.33; }
#flags-container img:hover { opacity: 1; }
#flags-container img { opacity: 1; }

div#page {
margin: 0 auto;
}

div#wrapper {
	width: 100%;
    margin: 1em auto 0;
    padding-top: 4em;
    border-top: 3px double #800080;
	padding-bottom: 2em;
/*	background-color: #fefefe; */
	clear: both;
}
body.single div#wrapper { padding-top: 2em; }

body.home div#wrapper {
	margin: 0 auto;
	padding-top: 2em;
	border-top: 0;
}

div#content img { max-width: 100%; }

span.edit-link a { color: white; }
	.edit-link { position: relative; float: right; opacity: 0.15 }
	span.edit-link a {
	    display: inline-block;
		position: absolute;
		right: 0;
	    padding: 0.5em 1em;
	    margin: 1em 0;
	    border: 0;
	    background-color: #800080;
	}
	.edit-link:hover { opacity: 0.9 }

/**
 * 4.0 Navigation
 * ----------------------------------------------------------------------------
 */

nav#primary-navigation {
position: fixed; top: 0; left: 0; width: 100%;
}
body.admin-bar nav#primary-navigation {
top: 32px;
}

/*
nav#primary-navigation div#flags_language_selector {
position: absolute;
top: 1em;
right: 1em;
}

div#flags_language_selector img { opacity: 0.25; }
div#flags_language_selector a img { opacity: 1; }
*/


#primary-navigation ul.menu, nav#page-family { margin-left: 0; font-family: 'Edmondsans'; font-weight: 800; 
padding: 0 1em;
}

#primary-navigation ul.menu li > ul, #primary-navigation ul.menu li > ol { margin: 0 }

/* #primary-navigation ul.menu li { margin: 0 1em 0 0; display: inline-block; } */
#primary-navigation ul.menu li {
	display: inline-block;
	width: 19.5%;
	text-align: center;
}
#primary-navigation ul.menu a {
padding: 0.5em 0; 
width: 100%;
display: inline-block;
box-sizing: border-box;
-moz-box-sizing: border-box;
}
#primary-navigation ul.menu ul.sub-menu li {
display: block;
width: 100%;
text-align: left;
margin: 0;
}
#primary-navigation ul.menu ul.sub-menu li a { padding: 0.5em 0.75em; }
#primary-navigation ul.menu, ul.sub-menu { background: white; }
ul.sub-menu { }

#primary-navigation ul.menu li:hover {
background: #eee;
}

/*
#primary-navigation ul.menu li.menu-item-has-children ul.sub-menu { display: none; position: absolute; }
#primary-navigation ul.menu li.menu-item-has-children:hover > ul.sub-menu {
display: block;
width: 19.1%;
}
*/

li.current-menu-ancestor > a, li.current-menu-item > a {
	background: rgb(252, 228, 255);
}

nav#page-family {
    width: 100%;
    padding: 2em 0 2em 2em;
    box-sizing: border-box;
}

nav#page-family div.menu {
    background-color: rgba(255, 255, 255, 0.2);
    padding: 1.5em 0px 1em 6%;
    box-shadow: 0px 0px 4em 0.8em rgba(255, 255, 255, 0.38);
}

li.page-item-116 {
/*width: 100%; display: block !important; margin: 1em 0; text-align: center !important ;
	border-bottom: 1px solid;
	padding: 1em 0;
*/
}

li.page-item-116 ul.children {
//	display: none !important;
}

nav#page-family .menu {

}

nav#page-family span.page-family-toggle { display: none }

nav#page-family li.pagenav {
	display: inline-block;
	width: 100%;
}
nav#page-family ul {
	list-style-type: none;
	margin: 0 auto;
}
nav#page-family ul * {
	text-align: left;
}
nav#page-family ul.children li {
	font-family: 'Source Sans Pro';
	font-weight: 400;
}

nav#page-family ul.children { /* white-space: nowrap; */ }
nav#page-family ul.children ul.children li:first-child { border-top: 0; }
nav#page-family ul.children ul.children {
    border-bottom: 0px none;
/*    background-color: rgba(255,255,255,0.6); */
    width: 100% !important;
    max-width: 1000px !important;
    padding: 0px 2em 0px 0.5em;
}
nav#page-family .children .children {
	display: none;
	width: inherit;
	z-index: 999;
}

/* To give a hint there are sub pages 
nav#page-family ul.children li.page_item_has_children > a:after {
	content: " +";
	font-size: 0.8em;
	padding-left: 0.2em;
	white-space: nowrap;
	text-decoration: none;
	font-weight: bold;
	opacity: 0.5;
}
*/

/* Selected */
.current_page_ancestor li.current_page_ancestor>a {
	font-weight: bold;
/*	border: 1px solid #800080; */
/*	padding: 0 0.25em; */
}
nav#page-family ul li ul.children li.current_page_item {
	font-weight: bold;
}
nav#page-family li.current_page_ancestor>a:hover, nav#page-family li.current_page_item a:hover {
/*	background-color: rgb(170, 95, 166); */
}

/* Posts page bottom navigation! */

nav.paging-navigation {
	z-index: 1;
	clear: both;
	position: fixed;
	bottom: 0;
	text-align: center;
	width: 100%;
	background: white;
	left: 0;
	padding: 1em 0;
	border-top: 2px solid #F5F5F5;
}

aside.fix.hide { display: none; opacity: 0; }
aside.fix {
    transition: all 500ms;
    opacity: 1;
    position: fixed;
    top: 2em;
}
aside#toplogo { left: 2em; z-index: 5; }
aside#hop { right: 2em; z-index: 10; }
aside#toplogo img {
    width: auto;
    height: 2em;
}
aside#hop div.arr-up, aside#hop div.arr-up a {
    margin: 0px;
}
aside#hop div.arr-up a {
    background-color: transparent;
    color: #800080;
    font-size: 1em;
    height: 1.5em;
    width: 1.5em;
    line-height: 1.25em;
}
aside#hop div.arr-up a:hover { background-color: #800080; color: white; }

.with {
	position: fixed;
	top: 0; left: 0;
	width: 100%;
	background-color: #fff;
	z-index: 5;
	border-bottom: 1px solid #800080;
}
nav.grabme.with {
    margin: 0px;
	padding: 1em 6em;
	-moz-column-count: 1;
	-webkit-column-count: 1;
	-o-column-count: 1;
	column-count: 1;
	box-sizing: border-box;
}
nav.grabme.with a { display: inline-block; }

nav.grabme .menu-toggle { display: none }

/**
 * 6.0 Content
 * ----------------------------------------------------------------------------
 */
 /* 6.05 front page */

body.home div#primary { 
	width: 100%; 
	max-width: none;
	background: transparent;
	margin: 0;
	padding: 0px 13.5%;
}

div#frontpage-banner {
	display: inline-block;
	margin: 0 auto;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	width: 100%;
	text-align: center;
}

.front-box {
    position: relative;
    display: inline-block;
    float: left;
    vertical-align: top;
    margin: 0px 1% 2%;
    width: 48%;
    overflow: auto;
    border: 1px solid #eaeaea;
    background-color: white;
    box-sizing: border-box;
    padding: 0px 1em 1em;
}

.front-scroll-box {
    max-height: 30em;
    max-height: 50vh;
    overflow-y: auto;
    padding-right: 1em;
}

.col-title {
    text-align: center;
    margin: 1em 0 1em;
    border-bottom: 1px dashed;
    padding-bottom: 0.75em;
    font-weight: 300;
}
section.frontpage div.front-slot {
    margin-top: 1%;
    padding: 0em;
    background-color: transparent;
    margin-bottom: 2em;
}
.front-box.frontpage-box {
    padding: 0;
    width: 98%;
    background: transparent;
    border: 0;
    text-align: center;
    padding-left: 0; padding-right: 0;
    margin: 0 2.5% 0;
}
.front-box.frontpage-box div.frontpage-entry, .front-box.frontpage-box div.frontpage-entry p {
    font-size: 2em;
    font-family: Edmondsans;
}
.front-box.sata {
    width: 100%;
    text-align: center;
    font-size: 1.25em;
}

section.frontboxes-firstrow {}
section.frontboxes-secondrow { float:left; }

.front-box.events-box { float: right; }
.front-box.fb-events-box { }

.moreabout {
    display: block;
    float: left;
    text-align: center;
    width: 100%;
    color: #800080;
    cursor: pointer;
    margin: 1.4em 0px 0.5em;
    box-sizing: border-box;
    background-color: #fafafa;
    padding: 0.25em 0 0.15em;
    border: 1px solid transparent;
	font-family: Edmondsans;
	font-size: 0.75em;
	font-weight: 300;
}
.moreabout:hover { border: 1px solid #800080; }

#cff .cff-author {
    text-align: center;
}
#cff .cff-details {
    padding-top: 0;
}
#cff .cff-author a {
    cursor: default;
    display: inline-block;
    text-align: center;
    margin: 0px auto;
    float: none;
    color: #999;
}
#cff div.cff-author-img {
    float: left;
    width: 0px;
    margin: 0px 0px 0px -100% !important;
}
#cff .cff-author img {
    border-radius: 100%;
    margin-top: 0.15em;
}

#cff .cff-post-links {
    width: 100%;
    text-align: center;
    padding-top: 0.5em;
    display: none;
}
.cff-item.opened .moreabout {
    background: #800080;
    color: white;
    opacity: 0.3;
}
.cff-item.opened #cff .cff-post-links {
	display: block;
}
.cff-info, .cff-post-text {
    display: none;
}
.cff-status-post .cff-post-text {
    display: block;
    font-size: 0.8em;
}
#cff .cff-details .cff-info {
    padding-top: 1em;
    margin-top: 1em;
    border-top: 1px dashed #ccc;
}
#cff h3, #cff h4, #cff h5, #cff h6, #cff p {
    margin: 0;
}
#cff .cff-author .cff-author-text * {
    font-weight: normal;
}
#cff .cff-details p {
    font-size: 1em;
}
#cff .cff-details p:first-child {
    color: rgb(128, 0, 128);
}
#cff .cff-details p:first-child:hover {
    text-decoration: underline;
}
#cff .cff-details p:first-child, .cff-details p.cff-date, .cff-details p.cff-where {
    width: 100% !important;
    text-align: center;
/*    float: none; */
}


section.some { padding: 0 0 3em 0; }

section.some .widget-title {
    display: none;
}

.front-box.blog-box {
/*	width: 95%; */
}
.front-box.widgets-box{
    width: 98%;
    padding-bottom: 2em;
    border: 0;
}
#ytc-wrapper .ytcplayer-wrapper, #ytc-wrapper .ytc-thumbnails a.ytcthumb {
    border: 1px solid #FFF !important;
}
div.ytc-previous a:before { content: "←" }
div.ytc-next a:after { content: "→" }
div.ytc-previous a:before, div.ytc-next a:after { color: #800080 }
div.ytc-previous a:hover, div.ytc-next a:hover { opacity: 0.6 }

#ytc-wrapper .ytc-thumbnails .ytc-pagination a {
    color: transparent;
}
h5.ytctitle {
    font-size: 0.75em;
    font-weight: normal;
    text-align: center;
}

.facebookbox, .twitterbox {
	padding: 0px;
	border: 0;
	text-align: center;
}

.fb_iframe_widget, .fb_iframe_widget span, .fb_iframe_widget iframe {
/*	width: 100% !important; */
}

span.edit-box { position: absolute; bottom: 1em; right: 1em; opacity: 0.7; transition: all 50ms; z-index: 10; }
span.edit-box:hover { opacity: 1; }

span.edit-box a { padding: 0.5em 1em; border: 1px dashed; background-color: rgba(255,255,255,1); }

div.front-box .blogi h2 {
    font-family: Crimson Text;
}
div.front-scroll-box.blogi div.entry,
div.front-scroll-box.blogi p.postmetadata {
    display: none;
}
div.blogi div.post {
    position: relative;
    padding-left: 4.5em;
}
div.blogi div.post small {
    float: left;
    position: absolute;
    top: 0.55em;
    left: 0px;
    max-width: 6em;
    line-height: 1em;
    font-size: inherit;
    font-family: Crimson Text;
}
div.blogi div.navigation {
    display: none;
}
div.front-box .entry-title, div.front-box .blogi h2 {
	font-size: 1em;
	margin: 0.5em 0;
	font-weight: inherit;
}

div.front-box.two-thirds {
	width: 63.33%;
	float: right;
}

section.some {
	float: left;
	clear: both;
	width: 100%;
}
.twitterbox iframe {
	width: 100%;
	margin: 0 auto !important;
}

.content-more a {
    text-transform: uppercase;
    text-align: center;
    width: 100%;
    display: block;
    letter-spacing: 1px;
    font-size: 12px;
    padding-top: 1em;
    font-weight: 800;
    border-top: 1px solid;
    margin-top: 2em;
    font: 800 0.8em "Source Sans Pro";
}

#frontbox-container
{
	/*height: 768px;*/
}

#front-info {
	float: left; 
	width: 98%; 
}
#front-info p {
	margin-bottom: 0;
}
div#front-info table {
    height: auto !important;
}
#front-info table td {
	border: 0;
	line-height: 1.25em;
	margin: 0;
	padding: 0;
	text-align: center;
	width: 33%;
}
#front-info table {
	margin: 0 0 0.35em;
	border: 0;
}

div.news-box article {
margin: 0.75em 0;
}
div.news-box .col-title {
    background: transparent url("/wp-content/themes/AYY2016/images/news_ico-10.png") no-repeat 0 0.25em / 1.25em;
}

div.frontpage-news, div.top-level-news { 
	line-height: 1em;
	display: table-row;
}
div.frontpage-news .entry-title, .top-level-news .entry-title { 
	margin: 0 !important; 
	line-height: inherit;
}
.frontpage-news .cat-links, .top-level-news .cat-links {
	font-size: 0.8em;
}
.frontpage-news-timestamp, .top-level-news-timestamp {
	float: left;
	min-width: 4.5em;
	display: table-cell;
	text-align: left;
}
.top-level-news-timestamp { min-width: 5em; }
.frontpage-news-text, .top-level-news-text {
	display: table-cell;
	vertical-align: top;
	text-align: left;
}
	/* Front page buttons */

div#buttons h1 { display: none; }

div#buttons { clear: both; float: left; }

div#buttons {
	text-align: center;
	margin: 1em auto;
}

div#buttons .button-box {
    display: inline-block;
    opacity: 0.7;
    margin: 1%;
    transition: opacity 300ms ease 0s;
    max-width: 22%;
}
div#buttons .button-box:hover { opacity: 1; }
.button-box:focus, .button-box:selection, .button-box:active  { opacity: 1; }

.button-title {
    font-family: Edmondsans;
    margin: 0 0 0.5em;
    display: block;
    font-weight: 800;
    letter-spacing: 1px;
}

div#buttons div#viikkotiedote { 	/* Should be set to any first button in the button-box area */
    padding-top: 4em;
    border-top: 3px double #800080;
}

div#buttons div#viikkotiedote {
    position: relative;
    width: 95%;
    display: block;
    margin: 0 2.5% 1%;
    max-width: none;
}

div.button-box img {
    max-width: 100%;
    height: auto;
}

#viikkotiedote-form {
    width: 48.5%;
    margin: 0 auto;
    position: relative;
}

#viikkotiedote #email {
    color: #800080;
    width: 100%;
    margin-bottom: 1%;
    text-align: center;
}

#viikkotiedote .radios { visibility: hidden; position: absolute; top: 0; left: 0; }

#viikkotiedote input[type="submit"] {
    text-align: center;
    background: #FFF none repeat scroll 0% 0%;
    color: #890D75;
    font-size: 10px;
    height: 27px;
    border: 1px solid;
    padding: 2px 10px;
    position: absolute;
    bottom: 1em;
    right: 0.5em;
}

	/* Partners image size */
#black-studio-tinymce-2 a img {
	max-width: 150px;
	margin: 0 0.5em 1.5em;
	max-height: 90px;
	width: auto;
}

/* 6.1 Page.php styles */
/* ----------------------------------------------------------------------------- */

nav.breadcrumb, .breadcrumbish {
    font-family: Edmondsans;
    text-align: center;
    font-size: 0.65em;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.breadcrumbish .icon {
    font-size: 3em;
    position: absolute;
    line-height: 0.5em;
}

nav#page-parents { margin: 0 0 1em; }
nav#page-parents-bottom { margin: 2em 0 2em; }

div#content.site-content .entry-header .entry-title, div#content.site-content .page-header .page-title {
	font-size: 3.2em;
	text-align: center;
}
body.page div#content.site-content .entry-header .entry-title {
	border-bottom: 2px solid;
	padding-bottom: 0.75em;
	margin-bottom: 0.6em;
	margin-top: 0.5em;
}

div#primary,header.associations-header {
    width: 58%;
	max-width: 46em;
    margin: 0px auto 0px;
    box-sizing: border-box;
}
div#content-sidebar {
	width: 20%;
	float: right !important;
	clear: none !important;
	display: inline-block !important;
}
div#left-sidebar {
	width: 18%;
}

div#left-sidebar {
	clear: none;
	overflow-wrap: break-word;
	padding-right: 1em;
	font-size: 0.85em;
}

div#content article.page {
margin: 0 auto;
float: none;
}

article.page {
width: 100%;
}

div#content.site-content article {
/* float: left; */
/* clear: both; */
}

#childs-listing {
	text-align: center;
	width: 100%;
	margin: 3em 0 4em;
}

#childs-listing a {
	padding: 0.4em 0.8em 0.2em;
	display: inline-block;
	border: 1px solid;
	margin: 0 0.25em 0.5em 0;
	box-sizing: border-box;
	text-transform: uppercase;
	font-family: Edmondsans;
}
#childs-listing a:hover {
	text-decoration: none;
	color: white;
	background-color: rgb(166, 86, 166);
	border: 1px solid rgb(166, 86, 166);
}

/* Related posts, AKA "category-posts" */
.category-posts {
	font-family: 'Crimson Text'; 
	margin-bottom: 3em;
}
.category-posts h1.news-title {
	/* text-align: center; */
}
article.top-level-news {
    margin-bottom: 0.25em;
}
.top-level-news .entry-title {
	line-height: 1em;
	font-size: 1em;
	padding-top: 0.25em;
	margin-bottom: 0.5em;
}
.top-level-news-timestamp {
	margin-top: 0;
}
.top-level-news .cat-links {
	float: left;
}
section.category-posts .category-title {
	text-transform: lowercase;
}

/* 6.2 Single.php styles 
******************************************************************************************
*/

body.single-post div#content.site-content article.hentry .entry-header .entry-title {
	font-size: 3.2em;
	margin-top: 0;
	line-height: 1.05em;
	padding-bottom: 0.25em;
}

span.post-timestamp {
	display: block;
	text-align: center;
	font-size: 1.55em;
	font-family: Edmondsans;
	font-weight: bold;
	letter-spacing: 0.05em;
}
article .frontpage-news.entry-meta { 
	padding: 0em 0.5em 0.5em;
	text-align: center;
}
body.single-post header.entry-header div.entry-meta-date { 
	margin: 0 0; 
	padding: 0;
}
body.blog .entry-header, body.single-post .entry-header, body.archive .entry-header { padding-bottom: 1em; text-align: center; }

article p {
	margin-bottom: 1em;
	word-spacing: 1px;
}

article p:last-child { margin-bottom: 2em }

div.entry-content .yarpp-related {
	border-top: 1px dashed;
	padding-top: 1em;
}

div.entry-content {
	font-size: 1.1em;
	padding-top: 0.75em;
}

/* 6.3 Archive / category -pages 
*****************************************************************************/

div#content.site-content article.post .entry-header .entry-title {
	font-size: 2em;
	line-height: 1.25em;
	margin: 0;
	padding: 0em 0.5em 0.5em;
}
body.blog span.post-timestamp, body.archive span.post-timestamp, body.category span.post-timestamp {
	border-top: 1px solid;
	padding-top: 3em;
	line-height: 1.25em;
}

body.archive h1.entry-title.normal-title, body.category h1.entry-title.normal-title { display: none; }
body.archive h1.entry-title.dropdown-title, body.category h1.entry-title.dropdown-title { 
	margin: 1em auto 3em;
}

body.archive h1.entry-title.dropdown-title select, body.category h1.entry-title.dropdown-title select {
	transition: all 300ms; -webkit-transition: all 300ms; -moz-transition: all 300ms;
	border: 0;
}
h1.entry-title.dropdown-title select {
	font-size: 0.4em !important;
}

body.archive h1.entry-title .widget.widget_categories h2, body.category h1.entry-title .widget.widget_categories h2 {
	display: none;
}

/* 6.4 Independent page styles, separate pages, individual pages */

		/* Body.blog aka index.php */
body.blog #main-content {
	padding-top: 100px;
	background-image: url('/wp-content/themes/AYY2016/images/news_ico-10.png');
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 128px 73px;
}
body.blog article.post:first-child span.post-timestamp {
	border-top: 0;
}
body.blog span.post-timestamp {
	padding-top: 2em;
}

/* 6.4.1 -------------------------------- ASSOCIATIONS PAGE */

body.page-template-page-associations #primary {
    width: 100%;
    max-width: none;
}

section#associations_listing { width: 100% !important; }

div.asso_list_filters {
	margin: 0 auto;
	padding: 0.5em 0;
	text-align: center;
/*	width: 58%;
	max-width: 46em; */
}
.asso_list_filters.with {
    box-shadow: 0 0 2em 1.25em white;
}

div.asso_list_filters button {
	background-color: transparent;
	border: 1px solid transparent;
}

div#content div.asso_list_filters button img { max-width: 64px; width: 100%; }
div.asso_list_filters button span { display: none; }

div.asso_list_filters .button {
	max-width: 64px;
    padding: 0.55em;
    display: inline-block;
	transition: all 300ms;
}

div.asso_list_filters .button.is-checked {
    border: 1px solid #800080;
}

.button-group.rent, .button-group.link { display: inline-block; clear: none; }
.button-group.rent button, .button-group.link button {
    max-width: none;
    padding: 0.25em 0.5em;
    margin: 0 0.25em;
    border: 1px solid;
    color: #800080;
}

.button-group.rent .is-checked, .button-group.link .is-checked {
   background-color: #800080;
   color: white;
}

div.asso_search_wrap {
	display: inline-block;
	margin: 0.25em;
}

#asso_search {
    padding: 0.25em 0.5em;
}

div.association_box {
	display: inline-block;
	margin: 1%;
	background-color: #fff;
	border: 1px dotted #dadada;
	box-sizing: border-box;
	width: 31.33%;
	vertical-align: top;
/*	height: 220px; */
	padding: 1em;
}

@media (min-width: 1000px){
	div.association_box { width: 23%; }
}
@media (min-width: 1400px){
	div.association_box { width: 18%; }
}

div.association_box h2 {
	font-size: 1.1em;
	text-align: center;
	line-height: 1em;
}

div.assodesc {
	display: none;
	font-size: 0.85em;
	margin-top: 1em;
}

div.association_box:hover { z-index: 1; background-color: white; border: 1px solid #800080; }

section#associations_listing div.association_box:hover > .assodesc { display: block; }
section#associations_listing.loading div.association_box:hover > .assodesc { display: none; }

div#content div.association_box img.association_logo {
    margin: 0 auto 0;
    box-sizing: border-box;
    max-height: 250px;
}

img.association_logo {
    display: block;
    clear: both;
    margin: 2em auto;
}
.association-info {
    text-align: center;
    font-family: Edmondsans;
    font-size: 1.25em;
    text-transform: lowercase;
    margin: 0.5em 0 1em;
}
.association_category, .association_category a {
    color: #888;
}
div.association_contactdetails {
    text-align: center;
    line-height: 2em;
    margin: 1em 0;
    font-family: Edmondsans;
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 3px;
}
article.profiles img {
    margin: 2em auto 1em;
    display: block;
}
div.association_elsewhere {
	margin-bottom: 2em;
	text-align: center;
}
.association_contactdetails a { display: block; }

.association_elsewhere a {
	display: inline-block;
	width: 64px; height: 64px;
	background-size: 100%;
	vertical-align: top;
	margin: 0 8px;
	font-size: 2px; color: transparent;
}

.association_elsewhere a:hover {
	opacity: 0.4;
}

a.asso_fb, .icon-facebook { background-image: url('/wp-content/themes/AYY2016/images/ayy-facebook.png'); }
a.asso_web, .icon-www { background-image: url('/wp-content/themes/AYY2016/images/ayy-www.png'); }
a.asso_rss, .icon-rss { background-image: url('/wp-content/themes/AYY2016/images/ayy-rss.png'); }

.icon-youtube { background-image: url('/wp-content/themes/AYY2016/images/ayy-youtube.png'); }
.icon-twitter { background-image: url('/wp-content/themes/AYY2016/images/ayy-twitter.png'); }
.icon-instagram { background-image: url('/wp-content/themes/AYY2016/images/ayy-youtube.png'); }

/* 6.4.2 -------------------------------- CONTACTS PAGE */

div.contact-box {
    border-top: 1px dashed #000;
    padding-top: 4em;
    margin-bottom: 0;
    display: block;
    float: left;
    width: 100%;
}
p.contacts-parent {
	padding-top: 2em;
	margin-bottom: 0;
	float: left;
	width: 100%;
}
div.contact-box h2 {
    text-align: center;
    padding-bottom: 0.5em;
    font-weight: 300;
    font-size: 3em;
    letter-spacing: 1px;
    padding-top: 0;
    margin-top: 0;
}
div.contact-box h2 a {
/*	border-bottom: 3px double; */
}
div.contact-box.parent-Yhteystiedot,
div.contact-box.parent-Kontaktuppgifter,
div.contact-box.parent-Contact.Information {
	border-top: 5px double #800080;
	padding-top: 4em;
	float: left;
}
div.contact-box.parent-Yhteystiedot h2,
div.contact-box.parent-Kontaktuppgifter h2,
div.contact-box.parent-Contact.Information h2 {
	font-weight: 700;
	font-family: Edmondsans;
/*	text-transform: lowercase; */
}
div.contact-box h2 strong {
    font-family: Source Sans Pro;
    font-weight: 300;
}
div.contact-box h2 a:hover { text-decoration: none; opacity: 0.6; }
div.contact-box:first-child {
    border-top: 0 !important;
}

div.contact-box:last-child div.arr-up {
    display: none;
}
div.contact-box div.arr-up {
    margin: 2em 0px 0;
}
div.contact-box .up-arr {
    width: 2em;
    height: 2em;
    line-height: 1.7em;
    font-size: 0.8em;
}

nav.grabme {
    padding: 1em 0px;
    margin: 1em 0px;
    border-top: 1px solid rgb(128, 0, 128);
    border-bottom: 1px solid rgb(128, 0, 128);
    font-family: Source Sans Pro;
    font-weight: 300;
	-moz-column-count: 4;
	-webkit-column-count: 4;
	-o-column-count: 4;
	column-count: 4;
}
.grabme a {
    margin: 0px 0.5em 0.5em;
    display: block;
}

.jumptitle.parent-Yhteystiedot,
.jumptitle.parent-Kontaktuppgifter,
.jumptitle.parent-Contact.Information {
    font-weight: bold;
}

div.contact-box table {
    max-width: 100%;
}

div.contact-box img {
	border-radius: 100%;
	margin: 0 1em 3em 0 !important;
}

div.contact-box.Arabianranta p:first-child img:first-child, div.contact-box.Töölö p:first-child img:first-child, div.contact-box.Edustajisto p:first-child img:first-child {
	border-radius: 0;
	width: 100%;
	height: auto;
}

p.edit-entry {
    display: block;
    text-align: right;
	font-size: 1.25em;
	margin: 1em 0px;
	opacity: 1;
}
p.edit-entry i {
    font-size: 0.65em;
    font-style: normal;
	position: relative;
	top: -5px;
}
p.edit-entry .icon { font-family: Genericons !important; }
p.edit-entry a, p.edit-entry .close_editor { opacity: 0.6 }
p.edit-entry a:hover, p.edit-entry .close_editor:hover { opacity: 1; text-decoration: none; }
p.edit-entry a.active_edit, p.edit-entry a.active_edit:hover {
    opacity: 0.2;
}
p.edit-entry a.active_edit:hover { cursor:not-allowed }
p.edit-entry .close_editor { cursor: pointer }
iframe.editiframe {
    width: 100%;
    min-height: 20em;
    height: 60vh;
}

	/* Forced styling for BOLD items within TABLES (applies thru ALL CONTENT ANYWHERE) */

div.entry-content table tr td strong, div.entry-content table tr td strong span, div.entry-content table tr td strong span span b {
	font-size: 20px !important;
	line-height: 1em !important;
	font-family: 'Crimson Text';
}
div.entry-content table tr td, div.entry-content table tr td span {
	font-size: 14px !important;
	font-family: 'Source Sans Pro', sans-serif;
}


table, th, td {
	border: 0;
}

div.entry-content table tr td img {
	padding: 0 !important;
}

.strong-contact {
    display: block;
    text-align: center;
	font-weight: normal;
}
.strong-contact * { font-weight: normal !important; }

/* 6.4.3 -------------------------------- EVENTS PAGE */

/* FOR LISTALLEVENTS #1 */
article.fetchedevent {
	width: 100%;
	min-width: 10em;
	border: 1px solid #800080;
}
.dateorganiser {
    display: none;
}
/* FOR LISTALLEVENTS NU */

section.events-list h1 {
    text-align: center;
    margin: 2em 0 1.5em;
}

#events-content-wrap article {
	transition: all 400ms ease-out;
	overflow: hidden;
	max-height: 0;
}
#events-content-wrap.loaded article {
	max-height: 800px;
	max-height: 75vh;
	overflow: auto;
}
#events-content header.entry-header {
    margin-top: 1.5em;
}
body.page div#content.site-content #events-content .entry-title {
    display: block;
    font-size: 1.5em !important;
    padding: 1em;
    border: 0;
    margin: 0;
}
body.page div#content.site-content #events-content div.entry-content {
    padding-top: 0;
    padding-bottom: 2em;
}

body.page div#content.site-content a.cal_link .entry-header .entry-title {
    border-bottom: 0px none;
    margin-bottom: 0.4em;
}
section.events-calendar .fc-left h2 {
    font-family: Edmondsans;
    text-transform: capitalize;
    line-height: 1.5em;
    letter-spacing: 1px;
}

table#eventscalendarpeek #events-content .entry-title { display: block; font-size: 1.5em; }
table#eventscalendarpeek #events-content article p:last-child { margin-bottom: 0.5em; }

.loaderimage {
    margin: 0 auto;
    text-align: center;
    display: block;
    width: 64px;
}
#events-content .loaderimage { width: 64px; display: block; margin: 0 auto; }
#eventsTable #events-content { padding-bottom: 1em; }

.loader.loaderimage { width: 128px; margin: 2em 0; }
div.asso_list_filters img.loader {
    position: fixed;
    top: 50%;
    left: 50%;
    margin: -64px 0px 0px -64px;
	border-radius: 100%;
/*    box-shadow: 0px 0px 10em 15em #FFF; */
    z-index: 10;
}

.eventrow { }
tr.eventrow.AYY,tr.eventrow.AUS {
    background-color: rgba(207, 174, 255, 0.17);
    box-shadow: 0 0 1em 0.5em rgba(207, 174, 255, 0.17);
}
tr.eventrow td {
    padding: 0.45em 1em 0.45em 0;
    border-top: 1px solid #ddd;
}
div.front-box.events-box tr.eventrow:first-child td {
    border-top: 0;
}
div.front-box.events-box tr.eventrow td {
    padding-right: 0.5em;
}
div.front-box.events-box .td_eventorganiser { text-align: right; }
div.front-box.events-box .td_eventcategory {
    display: none;
}
div.front-box.events-box tr.eventrow {
    color: inherit;
}

.more-events {
    text-align: center;
}
tr.eventrow td:last-child {
    text-align: right;
    padding-right: 0;
}

.eventrow.Fun { color: #800080; }
.eventrow.Official { color: #5671B1; }
.eventrow.Sports { color: #5CB050; }

section#m #eventsTable .eventrow a { color: inherit; }

.eventtitle a { text-decoration: underline }
.eventtitle a:hover { opacity: 0.85 }
.eventtitle a.active-event {
    color: black;
}
a.fc-event {
    border-radius: 0 !important;
    font-size: 0.7em;
    font-family: Source Sans Pro;
}
a.fc-event.active-event {
    opacity: 0.5;
}
button.fc-button {
    background-color: rgb(128, 0, 128);
    text-shadow: none;
    color: white;
    background-image: none;
    border-radius: 0px !important;
    border: 1px solid #800080;
    opacity: 0.8;
    font-family: Edmondsans;
    text-transform: capitalize;
    font-weight: 800;
    line-height: 1em;
    box-shadow: none !important;
}
button.fc-button:hover {
	background-color: transparent;
	border: 1px solid #800080;
	color: #800080;
}
button.fc-prev-button {
    margin-right: 3px !important;
}
button.fc-today-button {  }
button.fc-today-button.fc-state-disabled, button.fc-today-button.fc-state-disabled:hover {
	background-color: rgb(128, 0, 128);
	color: white;
	border: 1px solid;
	opacity: 0.5;
}

#events-content .post-edit-link {
    padding: 0 0.5em;
    margin-top: 0px;
}

#eventsTable tr:first-child h3 { display: none }

.entry-event div {
    text-align: center;
}

.entry-header .eventorganiser {
    text-align: center;
    display: block;
}
article.events div.entry-content .entry-event div * {
    font-family: Crimson Text;
}
article.events div.entry-content .entry-event div.eventtime * {
    font-family: Edmondsans;
    font-weight: 600;
    letter-spacing: 0px;
    font-size: 1.5rem !important;
}
article.events div.entry-content .entry-event div.eventtime .eventhours { font-weight: 400; }

.eventtime.singleday td {
    width: 50%;
}
.eventtime.multiday td {
    width: 33%;
}

div.entry-content div.eventlocation tr td {
    text-align: center;
    font-size: 1em !important;
}
div.eventlocation .maps p {
    display: inline-block;
    padding-right: 0.25em;
    margin-bottom: 0;
}
div.eventlocation .maps i {
    font-style: normal;
}
div.eventlocation .maps a:hover {
    text-decoration: none; border-bottom: 1px solid;
}
.entry-event td.eventstarts {
    text-align: right;
    padding-right: 1em;
}
.multiday td.eventstarts { padding-right: 0; }
.multiday td.eventhours {
    text-align: center;
}
div.eventinfo {
    padding: 2em 1em 0;
    margin: 2em 0;
    border-top: 1px dashed #BBB;
    border-bottom: 1px dotted #BBB;
    text-align: left;
}
.entry-event div.eventcontact * {
    text-align: center;
    color: #999;
}
div.eventlinks .icon {
    font-size: 2em !important;
    height: 0.9em;
    width: 0.9em;
    background-size: 100% 100%;
}
div.eventlinks .icon:hover { opacity: 0.7 }
div.eventlinks .icon-www { border-radius: 4px; }

.eventlinks {
    padding-bottom: 2em;
    border-bottom: 3px double #C5B0C5;
}
body.page div#content.site-content #events-content div.entry-content .eventlinks {
    border-bottom: 0;
}

/* 6.4.4 -------------------------------- OTHER INDIVIDUAL PAGES */

img.notfoundbottle { max-height: 50vh; width: auto; }

/*			 6.7 Paging navigation etc 	*/

span.textnavi.nextpost {
float: right; text-align: right; 
}
span.textnavi.prevpost {
float: left; 
}
span.textnavi.prevpost a:before { content:'←'; padding-right: 0.5em; }
span.textnavi.nextpost a:after { content:'→'; padding-left: 0.5em; }

span.textnavi {
	font-weight: 700;
	font-size: 0.9em;
	width: 50%;
	text-transform: uppercase;
	/* margin-bottom: 1em; */
}

div.postnavi {
width: 100%;
margin: 0.5em 0; 
float: left;
clear: both;
box-sizing: border-box;
-moz-box-sizing: border-box;
}

div.postnavi a {
	padding: 1em 0 0.5em;
	display: block;
}

div.postnavi-top { 
	border-bottom: 1px dashed; 
	padding-bottom: 0;
	margin-bottom: 1em;
}
div.postnavi-bottom { border-bottom: 1px dashed; border-top: 1px dashed; }
/* body.single-post div.postnavi-top { border-top: 0; } */

/**
 * 6.14 Comments
 * -----------------------------------------------------------------------------
 */

#comments, .comments-link {
display: none;
}

/**
 * 8.0 Footer
 * -----------------------------------------------------------------------------
 */

#footer {
	float: left;
	width: 100%;
	text-align: center;
	box-sizing: border-box;
}
div#footer-sidebar {
/*	width: 50%; */
	margin: 0 auto;
/*	min-width: 800px; */
}
#footer-sidebar h1.widget-title {
	margin: 0.5em 0 1em;
}
#footer div, #footer div aside {
    position: relative !important;
    height: auto !important;
}
#servicepointmaps {
	margin: 0 auto;
	max-width: 32em;
}

#servicepointmaps td:first-child { text-align: left }
#servicepointmaps td { text-align: center; width: 33%; }
#servicepointmaps td:last-child { text-align: right }

#servicepointmaps p {
	white-space: pre-line;
}

#footer-sidebar .widget {
        border-top: 4px double white;
	box-sizing: border-box;
	padding: 2em;
	margin: 0;
}
#footer-sidebar .widget:first-child {
    border-top: 6px double #800080;
}


div.somelinks { margin: 2em 0px 4em; }
div.somelinks a:hover { text-decoration: none; opacity: 0.7; }
div.somelinks a img { margin: 0.5em; width: 64px; }

.site-info {
    padding: 0px 0px 2em;
    font-family: Edmondsans;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 0.65em;
    opacity: 0.5;
    transition: opacity 300ms;
}
.site-info:hover { opacity: 1; }

div.arr-up { float: left; width: 100%; text-align: center; margin: 3em 0 4em; }

.up-arr {
    display: block;
    cursor: pointer;
    width: 3em;
    line-height: 3em;
    vertical-align: middle;
    box-sizing: border-box;
    border-radius: 100%;
    background-color: #890D75;
    border: 1px solid #890D75;
    color: white;
    font-weight: bold;
    margin: 2.5em auto 2em;
    text-align: center;
}
.up-arr:hover {
	color: #890D75;
	background-color: transparent;
	text-decoration: none;
}

/**
 * 11.0 Media Queries
 * -----------------------------------------------------------------------------
 */
@media screen and (min-width: 680px) {
	#primary-navigation button.menu-toggle { display: none; }
	#primary-navigation ul.nav-menu { display: block; }
}
@media screen and (max-width: 679px) {
	#primary-navigation button.menu-toggle { display: block; }
	#primary-navigation ul.nav-menu { display: none; }
	#primary-navigation.toggled-on ul.nav-menu { display: block; }
}

.devnotes { color: red !important; }


@media screen and (max-width: 1500px){
	.front-box.frontpage-box {
	    margin: 0px 1%;
	    padding: 0;
	}
}

@media (min-width: 841px) and (max-width: 1000px){
	body.home div#primary {
	    padding: 0 8%;
	}
	.front-box {
	    width: 45%;
	    margin: 0% 2.5% 5%;
	}
	.front-box.frontpage-box,
	.front-box.widgets-box,
	#front-info
	{
	    width: 95%;
	}
	.front-box.front-slot.sata {
	    padding-right: 5%;
	}
	.front-box.frontpage-box { margin: 0 2.5% 2%; }
}


@media screen and (min-width: 1001px){
	.front-box.front-slot.sata {
	    padding-right: 2%;
	}
}

@media screen and (min-width: 1500px)
{
	.front-box {
	    width: 45%;
	    margin: 1% 2.5% 4%;
	}
	.front-box.frontpage-box,
	.front-box.widgets-box,
	#front-info
	{
	    width: 95%;
	}
	.front-box.frontpage-box {
	    margin: 0 2.5%;
	}
	.front-box.front-slot.sata {
	    padding-right: 5%;
	}
}

.showkids:after { content: "+"; }
.showkids.open:after { content: "–"; }

@media screen and (min-width: 840px) {
	section.frontpage div.front-box {
	    border: 0;
	    padding: 0em;
	}
	nav#page-family { padding: 0 0 2em 0 }
	nav#page-family ul:first-child {
	    display: table;
	    width: 90%;
	    max-width: 65em;
	}
	nav#page-family ul:first-child > li {
	    display: table-cell;
	    width: 20%;
	}
	nav#page-family ul.children ul.children {
		white-space: normal;
	    float: left;
	    box-sizing: border-box;
	    max-width: 95%;
		padding: 0 0 0 0;
	}
	nav#page-family ul.children ul.children > li a:before {
		content: "• ";
		padding-right: 0.15em;
	}
	nav#page-family ul.children ul.children ul.children {
	    padding-left: 0.8em;
	}
	nav#page-family ul.children ul.children ul.children > li a:before {
		white-space: nowrap;
	}
	nav#page-family ul li ul.children li {
	    padding: 0px;
	    display: block;
	    margin: 0.2em 0;
	    float: left;
	    width: 100%;
	}
	nav#page-family ul.children { 
		font-size: 0.9em;
	}
	.showkids {
    padding: 0px 4px;
    cursor: pointer;
    border: 2px solid white;
    margin-left: 0.4em;
    border-radius: 100%;
    font-size: 10px;
    text-align: center !important;
    opacity: 0.45;
    color: #800080;
    background-color: white;
}
	.showkids.open {
		opacity: 1;
	}
	.showkids:hover {
	    opacity: 1;
	}
	body.archive h1.entry-title.dropdown-title, body.category h1.entry-title.dropdown-title, .page-header h1 { 
		margin: 1em auto 2em;
	}
	.grabme a.jumptitle {
		font-size: 0.8em;
	}
	.grabme a.jumptitle.parent-Yhteystieto,
.grabme a.jumptitle.parent-Kontaktuppgifter,
.grabme a.jumptitle.parent-Contact.Information {
		font-size: 1em;
	}
	div#flags-container { position: absolute; right: 2em}
	div.contact-box.parent-Yhteystiedot, div.contact-box.parent-Kontaktuppgifter, div.contact-box.parent-Contact.Information, div.contact-box { padding-top: 6em; }
}

@media screen and (max-width: 840px) { 	/* Settings here apply generically for smartphones alike to the iPhone 6 */
	aside.fix {
	    top: 0.5em;
	}
	aside#toplogo { left: 0.5em; }
	aside#hop { right: 0.5em; }
	#header { position: relative; }
	div.header-main {
	    display: block;
	    text-align: center;
		margin: 3em 0 2em;
	}
	h1.site-title img {
	    width: 101px;
	    height: auto;
	    opacity: 1;
	    margin: 1em 0;
	}
	h1.site-title img:hover { opacity: 0.5 }
	h1.site-title a {
/*   	 height: 120px;
	    width: 120px;
	    vertical-align: middle;
	    margin: 0 auto;
	    display: inline-block;
	    border-radius: 100%;
	    padding: 0.5em;
	    background-color: rgba(255, 255, 255, 0.49); */
	}
	#search-box-container {
	    padding: 0px;
	    box-sizing: border-box;
	    width: 100%;
	    position: absolute;
	    right: 0px;
	    margin-top: 0.75em;
	    z-index: 1;
	}
	#header .search-field {
	    max-width: 2.5em;
	    background-color: rgba(255,255,255,0.4);
	}
	#header .search-field:focus { max-width: 100%; }
	div#flags-container {
	    display: block;
	    float: left;
	    text-align: center;
	    margin: 1em 0px;
	}
	.front-box.frontpage-box { margin: 0; }
	div.front-box {
	width: 100% !important;
	margin: 0 0 1em;
	    padding: 1em;
	    border-right: 0px none;
	    border-left: 0px none;
	}
	.front-scroll-box {
	    max-height: none;
	    overflow-y: inherit;
	}

	section.frontpage div.front-slot {
	/*	width: 48% !important; */
		width: 100% !important;
		margin: 0 0 1.5em;
	}
	section.frontpage div.front-slot.eka-slot { margin-right: 4%; }
	section.frontpage div.front-slot.eka-slot.sata, section.frontpage div.front-slot.toka-slot.sata { margin-right: 0; width: 100% !important; }
	.front-box.front-slot.toka-slot.sata {
	    margin-bottom: 2em;
	}
	.front-box.events-box { float: left; }
	section.frontboxes-secondrow { float: none; }
	div.front-box.facebookbox {
	width: 100% !important;
	}
	div.front-box span.alignleft {
	    float: right;
	}
	.front-box.events-box tr.eventrow {
	    font-size: 0.8em;
	}
	.facebookbox .fb_iframe_widget, .twitterbox iframe {
	    max-height: 50vh;
	    overflow: scroll;
	}
	.frontpage-news-text, .top-level-news-text {
	    padding: 0 1em 0 0.25em;
	}
	.fb_iframe_widget, .fb_iframe_widget span, .fb_iframe_widget iframe {
	height: 400px !important;
	}
	.col-title {
	    margin-top: 0.5em;
	    padding-bottom: 1em;
	}
	div.news-box .col-title {
	background-position: 100% 0.25em;
	}
	div#buttons .button-box {
	    max-width: 46%;
	    margin: 1%;
	}
	#viikkotiedote-form {
	    width: 100%;
	    margin-bottom: 1em;
	}
	div#buttons div#viikkotiedote {
	    margin-bottom: 3em;
	}
	nav#page-family span.page-family-toggle {
	display: block;
	margin: 1em auto 1em;
	width: 2.5em;
	border-top: 21px double #800080; border-bottom: 8px solid #800080;
	height: 6px;
	cursor: pointer; transition: all 800ms;
	}
	nav#page-family li.page_item_has_children { position: relative; }
	.showkids {
	    cursor: pointer;
	    position: absolute;
	    right: 0px;
	    width: 22px;
	    line-height: 22px;
	    border: 1px solid #800080;
	    font-weight: 300;
	    text-align: center !important;
	    height: 22px;
	    top: 0.15em;
	}
	.showkids.open {
	    background-color: #800080;
	    color: #FFF;
	}
	nav#page-family div.menu { width: 100% !important; opacity: 1 !important; padding: 0; }
/*	nav#page-family.shows div.menu { max-height: 0px; } */

	div.menu
	{
	display: none;
	}

	#front-info
	{
		clear: both;
		min-width: initial;
		width: 100%;
	}
	#front-info table td {
	    display: block;
	    padding-bottom: 1.5em;
	    border-bottom: 1px solid;
	    width: 100%;
	    margin: 0 0 1.5em;
	}
	#front-info table tr:last-child td {
	    border-bottom: 0;
	    margin-bottom: 0;
	    padding-bottom: 0.5em;
	}

	nav#page-family {
	    padding: 0px;
	    border-left: 0px none;
	    border-right: 0px none;
	    margin-top: 3em;
	}
	nav#page-family div.menu {
		padding-bottom: 1.5em;
	}

	nav#page-family span.bottom-toggle { border: 0; }
	nav#page-family.shows span.bottom-toggle { border-top: 21px double; border-bottom: 8px solid; }
	nav#page-family li.pagenav { max-height: 1px; transition: all 800ms; overflow: hidden; }
	nav#page-family.shows li.pagenav { max-height: 3000px; }
	nav#page-family li, nav#page-family ul.children /*, nav#page-family ul.children ul.children*/ {
	display: block;
	position: relative;
	margin: 0;
	}
	nav#page-family li a {
		font-size: 1.75em;
		display: block;
		text-align: center;
	}
	nav#page-family li {	
		box-sizing: border-box;
		float: none; text-align: center;
		width: 100%;
		padding: 1em;
	 }
	nav#page-family li.pagenav { padding-left: 0; }
	nav#page-family ul { padding: 1em 0 0 0; }
	nav#page-family ul.children {
		padding: 0px 0px 2em;
		border-bottom: 1px solid #DED0E6;
	}
	nav#page-family ul.children ul.children {
	        font-size: 0.9em;
	    padding: 0px 0px 1em;
	    border-bottom: 1px solid #DADADA;
	    margin-bottom: 1em;
	}
	nav#page-family ul.children ul.children ul.children {
    margin-bottom: 0.5em;
    padding-bottom: 0.5em;
    border-bottom: 1px solid #DADADA;
    border-top: 1px solid #dadada;
}
	nav#page-family ul.children li.page_item_has_children {
	}
	nav#page-family ul.children li { padding: 0; }
	nav#page-family ul.children li a {
		font-size: 1.15em;
	    padding: 0.125em 0;
		font-family: Crimson Text;
	}
	nav#page-family .children .children {
	display: none;
	}
	div#content.site-content .entry-header .entry-title {
		font-size: 1.75em;
	}
	#childs-listing {
		margin: 3em auto 5em;
	}
	#footer {
		padding: 0;
	}
	#servicepointmaps { max-width: none }
	#servicepointmaps td {
	    width: 100%;
	    display: block;
	    border-bottom: 1px dashed #DED0E6;
	    padding-top: 0.5em;
	    text-align: center;
	}
	#servicepointmaps td:first-child,#servicepointmaps td:last-child { text-align: center; }
	#footer-sidebar .widget {
	    margin: 1em 0;
	    padding: 1em;
	}
	#footer-sidebar .widget:first-child { margin-top: 0; padding-top: 2em; }


	div.association_box { width: 48%; }
	div.association_box h2 { font-size: 0.8em; }
	div.asso_list_filters {
	    width: 100%;
	    font-size: 0.85em;
	    margin-top: 0;
	    margin-bottom: -2em;
	}
	.button-group.categories { display: table; margin: 0 auto; }
	.button-group.rent, .button-group.link { margin-top: 1em; }
	#asso_search { margin-top: 1em; }
	.button-group.categories button {
	    max-width: 12.5% !important;
	    display: table-cell !important;
	    padding: 0;
	}
	.association_box .assodesc { display: none !important }
	#asso_list_wrap { padding-top: 4em; }

	div.asso_list_filters.with { 
		position: relative;
		margin-top: 2.5em;
		background-color: inherit;
		border-bottom: 0;
		float: left;
		}
	.with .button-group.categories {
	    position: fixed;
	    top: 0;
	    left: 0;
	    background: white;
	    width: 100%;
	    box-sizing: border-box;
	    padding: 0.25em 3em 0.25em 0.25em;
	}
	#asso_search { text-align: center; }
	.with #asso_search {
	    position: fixed;
	    bottom: 0;
	    left: 0;
	    width: 100%;
	    background-color: rgba(255,255,255,1);
	}
	body.page-template-page-associations aside#toplogo {
	    z-index: 1;
	}
	.with .button-group.rent, .with .asso_search_wrap { }

	nav.grabme, nav.grabme.with {
	-moz-column-count: 1;
	-webkit-column-count: 1;
	-o-column-count: 1;
	column-count: 1;
	}
	nav.grabme.nojs {
		max-height: 8em;
		max-height: 50vh;
		overflow-y: scroll;
	}
	nav.grabme {
		max-height: 2.2em;
		overflow-y: hidden;
	} 
	nav.grabme.with .menu-toggle {
		display: block;
		width: 100%;
		text-align: center; 
		position: fixed;
		background: white;
		z-index: 1;
		height: 2em;
		line-height: 1.75em;
		top: 0;
		left: 0;
	}
	nav.grabme.with a { display: block; text-align: center; }

	nav.grabme.with { max-width: 100%; max-height: 100%; overflow-y: scroll; transition: all 400ms 50ms; padding: 2em 0 1em; }
	nav.grabme.with.mini {
	    max-height: 0;
	    padding: 0;
	    overflow: hidden;
	}

	.fetched_subpages {
	    margin-top: 1em !important;
	}
	body.single-post div#content.site-content article.hentry .entry-header .entry-title {
	    font-size: 2em;
	    padding: 0 0 0.25em;
	}
	div.contact-box h2 {
	    font-size: 2em;
	}
div.contact-box .entry-content h2 {
	    font-size: 1.15em;
	}
	div.contact-box td {
	    width: 100% !important;
	}

	/* BIG STRUCTURAL RULES FOR RESPONSIVENESS */

	body {
	background-size: 110% auto;
	}
	div#primary {
	width: 100%;
	}
	div#primary, body.home div#primary {
	padding: 1em;
	}
	div#wrapper {
	width: 100%;
	border-top: 3px double #800080;
	margin-top: 3em;
	}
	div#buttons img {
	width: 100%;
	}
}


@media (min-width: 841px) and (max-width: 1000px){
	div#buttons .button-box {
	    max-width: 30%;
	}
	.front-scroll-box { font-size: 0.8em; }
}

@media screen and (max-width: 639px) {
	div.contact-box td {
	    display: block;
	    float: left;
	    width: 100%;
	    text-align: center;
	    border-bottom: 1px dashed #dadada;
	    padding-bottom: 1em;
	    margin-bottom: 1em;
	}
	div.contact-box img {
	    float: none;
	    display: block;
	    margin: 0 auto 1em !important;
	    text-align: center;
	    width: 160px;
	}
	div.contact-box tr:last-child td:last-child { border-bottom: 0; padding-bottom: 0; }
	div.entry-content table tr td, div.entry-content table tr td span {
	    font-size: 18px !important;
	}
	div.entry-content table tr td strong, div.entry-content table tr td strong span, div.entry-content table tr td strong span span b {
		font-size: 24px !important;
	}
}

@media screen and (max-width: 420px) {
	div#buttons .button-box {
		max-width: none;
		margin: 0 1em 1em;
	}
}

#wpadminbar { border-bottom: 4px solid #800080; 
max-height: 0; overflow: hidden; opacity: 0.4; transition: all 600ms 50ms;  }
#wpadminbar:hover { max-height: 100px; opacity: 1; }

	body.logged-in { margin-top: -32px !important; background-position: center -32px; }
	@media screen and ( max-width: 782px ) {
		body.logged-in { margin-top: -46px !important; background-position: center -46px; }
	}