/*
Theme Name:  Alexandrovna
Theme URI:  https://www.alexandrovna.at
Description:  The Theme Alexandrovna is a child theme for the Twenty Twenty-One theme.
Author:  Moritz Rathke
Textdomain:  alexandrovna
Author URI:  https://www.moritzrathke.at
Template:  twentytwentyone
Version:  1.0
License:  GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html                 
*/

@import "assets/fonts/noto-serif.css";

:root {
	--branding--logo--max-width: 350px !important;
	/*--branding--logo--max-height: 100px;
	--branding--logo--max-width-mobile: 96px;
	--branding--logo--max-height-mobile: 96px;*/
	
	--global--font-size-page-title: var(--global--font-size-xxl) !important;
	--global--font-size-page-title-resp: 3rem !important;
	--global--font-size-page-title-caps: var(--global--font-size-xxxl) !important;
	--heading--font-size-h3: calc(1.7 * var(--global--font-size-lg)) !important;
	--global--font-size-xxs: .8rem;
	--global--font-size-xxl: 4rem !important;
	--global--font-size-xxxl: 3.5rem !important;
	--entry-header--font-size-caps: var(--heading--font-size-h3) !important;
	
	--responsive--aligndefault-width: min(calc(100vw - 8 * var(--global--spacing-horizontal)), 80%) !important;
	--responsive--alignwide-width-single: min(calc(100vw - 5.5 * var(--global--spacing-horizontal)), 100%) !important;
	--responsive--aligndefault-width-text: min(calc(100vw - 8 * var(--global--spacing-horizontal)), 60%) !important;
	--responsive--aligndefault-width-text-resp: min(calc(100vw - 6 * var(--global--spacing-horizontal)), 90%) !important;
	
	--global--font-size-base: 1.1rem !important;
}

body,
a,
p,
div,
html,
h1,
h2,
h3,
h4,
h5,
h6,
li {
	font-family: NotoSerif-Regular !important;
}

.grecaptcha-badge {
	display: none !important;
}

/********
	Header
********/

#masthead {
	border-bottom: solid 2px black;
	max-width: 100%;
	padding-left: calc(2.4 * var(--global--spacing-horizontal));
	padding-right: 0;
	padding-top: calc(1.4 * var(--global--spacing-vertical));
	padding-bottom: calc(0.3 * var(--global--spacing-vertical));
}

.primary-navigation .primary-menu-container > ul > .menu-item > a {
	padding-left: calc(3.5 * var(--primary-nav--padding)) !important;
	padding-right: calc(3.5 * var(--primary-nav--padding)) !important;
	padding-bottom: calc(var(--primary-nav--padding) / 2) !important;
	
	font-size: var(--global--font-size-sm) !important;
}

.primary-navigation .current_page_item > a,
.primary-navigation .current_page_item > a:hover,
.primary-navigation .current_page_item > a:active,
.primary-navigation .current-menu-item > a,
.primary-navigation .current-menu-item > a:hover,
.primary-navigation .current-menu-item > a:active,
.primary-navigation .menu-item-object-page > a,
.primary-navigation .menu-item-object-page > a:hover,
.primary-navigation .menu-item-object-page > a:active,
.primary-navigation .menu-item:focus,
.primary-navigation .menu-item:active
{
	text-decoration: none !important;
	background-color: none !important;
}

.primary-navigation {
    position: relative;
    margin-left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    /* width: 100%; */
    flex-grow: 1;
}

.primary-navigation .primary-menu-container > ul > .menu-item > a + .sub-menu-toggle 
{
	display: none !important;
}

.primary-navigation > div > .menu-wrapper > li > .sub-menu {
	right: 0;
	padding-top: 0 !important;
}

.primary-navigation > div > .menu-wrapper > li > .sub-menu:after,
.primary-navigation > div > .menu-wrapper > li > .sub-menu:before {
	display: none !important;
}

.primary-navigation .primary-menu-container > ul > .menu-item > a:focus {
	background: white !important;
	color: black !important;
}

/********
	Homepage
********/

.home .entry-title,
.page-template-page-category article.type-page .entry-title {
	font-size: var(--entry-header--font-size) !important;
	padding-top: var(--global--spacing-unit) !important;
	padding-bottom: var(--global--spacing-unit) !important;
	margin-bottom: 0 !important;
	padding-right: calc(1.5 * var(--global--spacing-unit)) !important;
	padding-left: calc(6 * var(--global--spacing-unit)) !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: 100% !important;
}

.home .entry-title a,
.page-template-page-category article.type-page .entry-title a {
	display: block;
	max-width: 100%;
	text-decoration: none;
}

.home .entry-content {
	display: none !important;
}

.entry-footer {
	display: none !important;
}

.home .entry-title .film-title,
.page-template-page-category article.post-list-item .entry-title .film-title {
	text-transform: uppercase;
	/*font-size: var(--entry-header--font-size-caps) !important;*/
}

.home .entry-title .film-title span,
.page-template-page-category article.post-list-item .entry-title .film-title span {
	/*font-size: var(--entry-header--font-size) !important;*/
}

.home .entry-header .post-thumbnail,
.page-template-page-category article.post-list-item .entry-header .post-thumbnail {
	display: block;
    position: absolute;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
    background-color: white !important;
    
    opacity: 0;
	-webkit-transition:opacity 100ms ease-out;
	-moz-transition:opacity 100ms ease-out;
	-o-transition:opacity 100ms ease-out;
	transition:opacity 100ms ease-out;
}

.home .entry-header .post-thumbnail:hover,
.page-template-page-category article.post-list-item .entry-header .post-thumbnail:hover {
	opacity: 1;
	-webkit-transition:opacity 100ms ease-out;
	-moz-transition:opacity 100ms ease-out;
	-o-transition:opacity 100ms ease-out;
	transition:opacity 100ms ease-out;
}

.home article.post {
	border-bottom: solid 2px black;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.home .post-thumbnail .wp-post-image,
.page-template-page-category article.post-list-item .post-thumbnail .wp-post-image {
    width: 100% !important;
    height: auto !important;
    display: block; /* remove extra space below image */
	margin-top: 0 !important;
}

.home .entry-header,
.page-template-page-category article.post-list-item .entry-header {
	display: block;
	position: relative;
	margin: 0;
	padding: 0;
}

.home .site-main,
.page-template-page-category .site-main {
	padding: 0 !important;
}

.singular .entry-header {
	border-bottom: 2px solid black !important;
}

/******
	Category Page Template	
******/

.page-template-page-category article.type-page > .entry-header {
	display: none;
}

.page-template-page-category article.type-page > .entry-content {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.page-template-page-category article.type-page .entry-content .category-post-list {
	max-width: 100% !important;
	width: 100% !important;
}

.page-template-page-category .category-post-list {
	margin-bottom: 0 !important;
}

.page-template-page-category .site-footer > .site-info {
	/*margin-top: 0 !important;*/
}

/******
	Single Page
******/

.page-template-default .entry-header.alignwide  {
	max-width: var(--responsive--alignwide-width-single) !important;
	padding-bottom: 0 !important;
	border-bottom: 0 !important;
	margin-bottom: 0 !important;
}

.page-template-default .entry-content > p,
.page-template-default .entry-content > h2,
.page-template-default .entry-content > h3,
.page-template-default .entry-content > ul {
	max-width: var(--responsive--aligndefault-width-text) !important;
}

.page-template-default .entry-content > .wpcf7 {
	max-width: var(--responsive--aligndefault-width-text) !important;
}

.page-template-default .entry-content > .wpcf7 .form-field-flex {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	justify-content: space-between;
}

.page-template-default .entry-content > .wpcf7 .form-field-flex label {
	flex: 0 1 48%;
}

.page-template-default .entry-content > .wpcf7 .form-field-column {
	margin-bottom: calc(0.5 * var(--global--spacing-unit)) !important;
}

.page-template-default .entry-content > .wpcf7 .full-form-field {
	width: 100%;
}

.page-template-default .entry-content > .wpcf7 .form-field-flex input,
.page-template-default .entry-content > .wpcf7 .full-form-field input {
	width: 100%;
}

.page-template-default .entry-content > blockquote {
	text-align: right;
	margin-top: calc(1.5 * var(--global--spacing-unit)) !important;
	margin-bottom: calc(1.5 * var(--global--spacing-unit)) !important;
}

.page-template-default .entry-content > blockquote p {
	margin-bottom: calc(.25 * var(--global--spacing-unit)) !important;
}

.page-template-default .entry-content > blockquote:before {
	display: none !important;
}

/******
	Single Post
******/

.single-post .entry-header {
	border-bottom: none !important;
}

.single-post .entry-header .entry-title {
	font-size: var(--global--font-size-page-title) !important;
	padding-top: 0.3rem !important;
}

.single-post .entry-header.alignwide  {
	max-width: var(--responsive--alignwide-width-single) !important;
	padding-bottom: 0 !important;
}

.single-post .entry-content > p {
	max-width: var(--responsive--aligndefault-width-text) !important;
}

.single-post .entry-content > figure {
	max-width: var(--responsive--aligndefault-width-text) !important;
}

.single-post .entry-content > div.wp-block-group {
	max-width: var(--responsive--aligndefault-width-text) !important;
}

.single-post .entry-content > .mgl-cascade-container {
	max-width: var(--responsive--aligndefault-width-text) !important;
}

.single-post .mgl-cascade .mgl-row {
    display: block;
}

.single-post .entry-header .entry-title br,
.type-post .entry-header .entry-title br {
    display: inline-block;
}

.single-post .entry-title .film-title {
	text-transform: uppercase;
	/*font-size: var(--global--font-size-page-title-caps) !important;*/
}

/*.single-post .entry-title .film-title span {
	font-size: var(--global--font-size-page-title) !important;
}*/

.single-post .site-main {
	padding-top: 1rem !important;
}

.single-post .post-thumbnail {
	display: none;
}

.single-post figure.is-style-image-right,
.page-template-default figure.is-style-image-right {
	transform: translateX(calc(100% - 122px));
	right: 0;
}

.single-post figure.is-style-image-right:hover,
.page-template-default figure.is-style-image-right:hover {
	-moz-transform:translateX(calc(-27px));
	-ms-transform:translateX(calc(-27px));
	-webkit-transform:translateX(calc(-27px));
	transform:translateX(calc(-27px));
}

.single-post figure.is-style-image-left,
.page-template-default figure.is-style-image-left {
	transform: translateX(calc(-100% + 122px));
	left: 0;
}

.single-post figure.is-style-image-left:hover, 
.page-template-default figure.is-style-image-left:hover {
	-moz-transform:translateX(calc(27px));
	-ms-transform:translateX(calc(27px));
	-webkit-transform:translateX(calc(27px));
	transform:translateX(calc(27px));
}

.single-post figure.is-style-image-right,
.single-post figure.is-style-image-left,
.page-template-default figure.is-style-image-right,
.page-template-default figure.is-style-image-left {
	display: block;
	
	-moz-transition: -moz-transform 250ms ease;
    -o-transition: -o-transform 250ms ease;
    -webkit-transition: -webkit-transform 250ms ease;
    transition: transform 250ms ease;
    position: absolute;
    width: 40%;
    z-index: 10;
}

.single-post figure.wp-block-image,
.page-template-default figure.wp-block-image {
	background-color: #fff;
    box-shadow: 0 0 10px rgb(0 0 0 / 75%);
}

.single-post figure.wp-block-image figcaption,
.page-template-default figure.wp-block-image figcaption {
	font-size: var(--global--font-size-xxs) !important;
    text-align: left !important;
}

.single-post figure.wp-block-image.is-style-default figcaption,
.page-template-default figure.wp-block-image.is-style-default figcaption {
	padding-bottom: calc(0.5 * var(--global--spacing-unit)) !important;
    padding-left: calc(1 * var(--global--spacing-unit)) !important;
}

.single-post figure.is-style-image-right figcaption,
.single-post figure.is-style-image-left figcaption,
.page-template-default figure.is-style-image-right figcaption,
.page-template-default figure.is-style-image-left figcaption {
	margin-bottom: calc(0.5 * var(--global--spacing-unit)) !important;
    margin-left: calc(0.5 * var(--global--spacing-unit)) !important;
}

.single-post .is-style-project-footer {
	font-size: 15px;
    line-height: 24px;
    margin-top: calc(1.5 * var(--global--spacing-unit)) !important;
}

.single-post .is-style-project-footer .wp-block-group__inner-container {
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    padding-top: calc(1.5 * var(--global--spacing-unit)) !important;
    padding-bottom: calc(1.5 * var(--global--spacing-unit)) !important;
    padding-left: calc(0.5 * var(--global--spacing-unit)) !important;
    padding-right: calc(0.5 * var(--global--spacing-unit)) !important;
}

.single-post .is-style-project-footer .wp-block-group__inner-container > p {
	margin-left: 0 !important;
	margin-right: 0 !important;
	margin-top: calc(0.35 * var(--global--spacing-vertical)) !important;
    margin-bottom: calc(0.35 * var(--global--spacing-vertical)) !important;
}

.single-post .is-style-project-footer h3 {
	margin-left: 0 !important;
	font-size: var(--global--font-size-lg) !important;
}

.single-post .blocks-gallery-grid, .singular .wp-block-gallery {
	
}

.page-id-11 .grecaptcha-badge {
	display: block !important;
}

/******
	Footer	
******/

.no-widgets .site-footer {
    margin-top: 0 !important;
    padding-bottom: 0 !important;
}

.site-footer > .site-info {
	border-top: 0 !important;
}

#colophon {
	/*display: none !important;*/
	margin-left: calc(2.4 * var(--global--spacing-horizontal));
	margin-right: calc(2.4 * var(--global--spacing-horizontal));
}

.footer-menu ul {
	list-style: none;
	padding-left: calc(0.5 * var(--global--spacing-horizontal));
	display: flex;
}

.footer-menu ul li:last-child {
	margin-left: 1rem;
}

.footer-menu ul li:last-child:before {
	content: '|';
    display: block;
    position: absolute;
    margin-left: -.8rem;
}

.footer-menu:before {
	content: '|';
    display: block;
    position: absolute;
}

/******
	Responsiv Design	
******/

@media only screen and (max-width: 1260px) {
	
	.home .entry-title,
	.page-template-page-category article.type-page .entry-title {
		font-size: 2.5rem !important;
	}
}

@media only screen and (max-width: 1070px) {
	.home .post-thumbnail .wp-post-image,
	.page-template-page-category article.post-list-item .post-thumbnail .wp-post-image {
    	width: calc(100% + 3rem) !important;
		background-color: white !important;
	}
	
	.home .entry-title,
	.page-template-page-category article.type-page .entry-title {
		font-size: 2.3rem !important;
	}
}

@media only screen and (max-width: 1000px) {
	.home .post-thumbnail .wp-post-image,
	.page-template-page-category article.post-list-item .post-thumbnail .wp-post-image {
    	width: auto !important;
		height: 100% !important;
		margin-left: auto !important;
		margin-right: auto !important;
		background-color: white !important;
	}
}

@media only screen and (max-width: 710px) {
	.primary-navigation > div > .menu-wrapper {
		justify-content: center !important;
	}
}

@media only screen and (max-width: 600px) {
	.primary-navigation .primary-menu-container > ul > .menu-item > a {
    	padding-left: calc(2 * var(--primary-nav--padding)) !important;
    	padding-right: calc(2 * var(--primary-nav--padding)) !important;
    }
}

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

	#masthead {
		min-height: 4rem;
	}
	
	.site-header.has-logo:not(.has-title-and-tagline).has-menu .site-logo {
		left: 2rem;
	}
	
	.site-header.has-logo:not(.has-title-and-tagline).has-menu .site-logo img {
		max-height: calc(var(--button--padding-vertical) - (0.25 * var(--global--spacing-unit)) + 3.7em) !important;
		max-width: 14rem !important;
	}
	
	.menu-button-container {
		top: -0.3rem;
	}
}


@media only screen and (max-width: 944px) {
	#masthead {
		padding-top: calc(.8 * var(--global--spacing-vertical));
		padding-bottom: calc(.6 * var(--global--spacing-vertical));
		padding-right: calc(2.4 * var(--global--spacing-horizontal));
	}
	
	.site-branding {
		margin-left: auto !important;
		margin-right: auto !important;	
	}
	
	.home .entry-title, .page-template-page-category article.type-page .entry-title {
		padding-right: calc(1.5 * var(--global--spacing-unit)) !important;
		padding-left: calc(1.5 * var(--global--spacing-unit)) !important;
	}
	
	.single-post figure.is-style-image-right,
	.single-post figure.is-style-image-left,
	.page-template-default figure.is-style-image-right,
	.page-template-default figure.is-style-image-left {
	    position: relative;
	    width: 100%;
	    transform: translateX(0);
	}
	
	.single-post figure.is-style-image-right:hover,
	.single-post figure.is-style-image-left:hover,
	.page-template-default figure.is-style-image-right:hover,
	.page-template-default figure.is-style-image-left:hover {
		transform: translateX(0);
	}
	
	.single-post .entry-content > p,
	.single-post .entry-content > h2,
	.single-post .entry-content > h3,
	.single-post .entry-content > ul,
	.single-post .entry-content > figure,
	.single-post .entry-content > div.wp-block-group,
	.single-post .entry-content > .mgl-cascade-container,
	.page-template-default .entry-content > p,
	.page-template-default .entry-content > h2,
	.page-template-default .entry-content > h3,
	.page-template-default .entry-content > ul,
	.page-template-default .entry-content > figure,
	.page-template-default .entry-content > div.wp-block-group,
	.page-template-default .entry-content > .wpcf7  {
		max-width: var(--responsive--aligndefault-width-text-resp) !important;
	}
	
	.page-template-default .entry-content > .wpcf7 label {
    	font-size: 1rem;
    }
	
	.single-post .entry-header .entry-title,
	.page-template-default .entry-header .entry-title {
		font-size: var(--global--font-size-page-title-resp) !important;
	}
}