/*!
Theme Name: pvz
Theme URI: https://www.martin-hammerschmidt.com
Author: Martin Hammerschmidt
Author URI: https://www.martin-hammerschmidt.com
Description: 
Version: 3.5.4
Requires at least: 5.0
Tested up to: 6.7
Requires PHP: 7.2
License: GPL version 2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0
Text Domain: pvz
*/

/* Don't overwrite this file. Compile "/assets/main.scss" to "/build/main.css" */

/* From http://codex.wordpress.org/CSS */

.alignnone {
	margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
	display: block;
	margin: 5px auto 5px auto;
}

.alignright {
	float: right;
	margin: 5px 0 20px 20px;
}

.alignleft {
	float: left;
	margin: 5px 20px 20px 0;
}

a img.alignright {
	float: right;
	margin: 5px 0 20px 20px;
}

a img.alignnone {
	margin: 5px 20px 20px 0;
}

a img.alignleft {
	float: left;
	margin: 5px 20px 20px 0;
}

a img.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption {
	max-width: 96%;
	/* Image does not overflow the content area */
	padding: 5px 3px 10px;
	text-align: center;
}

.wp-caption.alignnone {
	margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
	margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
	margin: 5px 0 20px 20px;
}

.wp-caption img {
	border: 0 none;
	height: auto;
	margin: 0;
	max-width: 98.5%;
	padding: 0;
	width: auto;
}

.wp-caption p.wp-caption-text {
	font-size: 11px;
	line-height: 17px;
	margin: 0;
	padding: 0 4px 5px;
}

.gallery-item {
	display: inline-block;
	text-align: left;
	vertical-align: top;
	width: 50%;
}

.gallery-item a,
.gallery-item a:hover,
.gallery-item a:focus {
	-webkit-box-shadow: none;
	box-shadow: none;
	background: none;
	display: inline-block;
	max-width: 100%;
}

.gallery-item a img {
	display: block;
	-webkit-transition: -webkit-filter 0.2s ease-in;
	transition: -webkit-filter 0.2s ease-in;
	transition: filter 0.2s ease-in;
	transition: filter 0.2s ease-in, -webkit-filter 0.2s ease-in;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.gallery-item a:hover img,
.gallery-item a:focus img {
	-webkit-filter: opacity(60%);
	filter: opacity(60%);
}

.gallery-caption {
	display: block;
	text-align: left;
	padding: 0 10px 0 0;
	margin-bottom: 0;
}

.gallery-columns-1 .gallery-item {
	max-width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-columns-6 .gallery-caption,
.gallery-columns-7 .gallery-caption,
.gallery-columns-8 .gallery-caption,
.gallery-columns-9 .gallery-caption {
	display: none;
}

.bypostauthor {
	font-weight: bold;
}

/* Text meant only for screen readers. */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
	/* Above WP toolbar. */
}

/* costum css */

:root {
	--color-gold: #c9ae5c;
	--color-green: #1B4841;
	--color-light-green: #d1e0da;
	--color-gold-matt: #A69989;
	--color-white: #ffffff;
	--text-size: 16px;
	--h1: clamp(2rem, 1rem + 3.2vw, 4rem);
	--h2: clamp(1.75rem, 0.75rem + 3.2vw, 3.75rem);
	--h3: clamp(1.375rem, 0.8125rem + 1.8vw, 2.5rem);
	--team-size: clamp(1.625rem, 1.375rem + 0.8vw, 2.125rem);
}

body {
	color: var(--color-green);
	font-family: acumin-pro, sans-serif;
	font-size: var(--text-size);
	line-height: calc(var(--text-size) * 1.7);
}

main p {
	margin-bottom: calc(var(--text-size) * 2);
}

h1,
.h1 {
	font-size: var(--h1);
	font-weight: 400;
}

h2,
.h2 {
	font-size: var(--h2);
	font-weight: 400;
}


h3,
.h3 {
	font-size: var(--h3);
	font-weight: 400;
	margin-bottom: calc(var(--h3) * 0.7);
}

strong {
	font-weight: 600;
}

.bg-green {
	background-color: var(--color-green) !important;
}

.bg-light-green {
	background-color: var(--color-light-green) !important;
}

.bg-gold {
	background-color: var(--color-gold) !important;
}

.bg-gold-matt {
	background-color: var(--color-gold-matt) !important;
}

.text-green {
	color: var(--color-green) !important;
}

.text-light-green {
	color: var(--color-light-green) !important;
}

.text-gold {
	color: var(--color-gold) !important;
}

.text-gold-matt {
	color: var(--color-gold-matt) !important;
}

.border-green {
	border-color: var(--color-green) !important;
}

small {
	font-size: 12px;
}

main,
#main {
	margin: 0;
	max-width: 100vw;
}

/*header*/

header {
	font-size: 12px;
}

@media all and (max-width: 500px) {
	.header-mobile {
		height: 80px;
	}
}


.h-100vh {
	height: 100%;
	min-height: 100vh;
}

.h-75vh {
	height: 100%;
	min-height: 75vh;
}

.h-50vh {
	height: 100%;
	min-height: 50vh;
}

.h-25vh {
	height: 100%;
	min-height: 25vh;
}

main a {
	color: var(--color-green);
	text-decoration: underline;
	text-underline-offset: 4px;
	text-decoration-thickness: 2px;
	font-weight: 600;
}

.shift-top-100 {
	margin-top: -100px;
}


/*btn*/

.btn,
.btn-outline.active,
.btn-outline:hover {
	background-color: var(--color-gold);
	color: var(--color-green);
	letter-spacing: 2.5px;
	text-transform: uppercase;
	border-radius: 100px;
	border: 1px solid var(--color-gold);
	box-shadow: none;
	text-shadow: none;
	background-image: none;
	padding: 5px 25px;
	transition: all ease-in-out 0.5s;
	filter: brightness(1);
	text-decoration: none;
}

.btn:disabled {
	background-color: var(--color-gold);
	border-color: var(--color-gold);
}

.btn-outline:hover {
	color: white;
}

.btn-outline {
	background-color: transparent;
	border: 1px solid var(--color-green);
	color: var(--color-green);
	letter-spacing: 2.5px;
	text-transform: uppercase;
	border-radius: 100px;
	transition: all ease-in-out 0.2s;
	padding: 5px 25px;
}

.wpcf7-submit .ajax-loader {
	background: var(--color-gold);
	border: none !important;
	border-radius: 100px;
}

.letter-spacing {
	letter-spacing: 2.5px;
}

header .btn {
	font-size: 12px;
}

.btn:hover {
	filter: brightness(1.05);
	background-color: var(--color-gold);
	color: var(--color-green);
	border-color: var(--color-gold);
}

/*hero*/

.background-hero-pattern {
	background-image: url(images/logo-outline.svg);
	background-size: cover;
	background-position: center left;
}

.hero-image {
	width: 100%;
	object-fit: cover;
}

.hero-section-1 {
	margin-bottom: -25vh;
}

.hero-section-2 {
	z-index: 0;
}

.hero-section-2 h2 {
	max-width: 740px;
}

.hero-section-3 video {
	aspect-ratio: 16 / 9;
	width: 100%;
	height: auto;
	margin-bottom: calc(var(--text-size) * 1.6);
	margin-top: -10vh;
	position: relative;
	z-index: 3;
	object-fit: cover;
}

/*slider*/

.show-more {
	text-decoration: underline;
	text-underline-offset: 4px;
	text-decoration-thickness: 2px;
	margin-bottom: 20px;
	display: inline-block;
	font-weight: 600;
}

.show-more-content {
	transition: all ease-in-out 0.5s;
	max-height: 0;
}

/*kontaktformular*/

.form-control {
	background: none;
	border: none;
	border-bottom: 1px solid var(--color-green);
	border-radius: 0;
	padding: 8px 0;
	box-shadow: none;
}

.form-control::placeholder {
	color: var(--color-green);
	opacity: 0.13;
}

.form-control:focus {
	box-shadow: 0 0 0 0.25rem rgba(209, 224, 218, 0.8) !important;
	border-bottom: 1px var(--color-gold) solid;
}

.form-label {
	text-transform: uppercase;
	letter-spacing: 2.5px;
	font-size: 12px;
}

textarea.growingtextarea {
	width: 100%;
	min-height: 40px;
	max-height: 300px;
	overflow: hidden;
	resize: none;
	font-size: 16px;
}

/*team*/

.team-size {
	font-size: var(--team-size);
}

#filterDropdown {
	background-color: transparent;
	border: 1px solid var(--color-green);
	color: var(--color-green);
	letter-spacing: 2.5px;
	text-transform: uppercase;
	border-radius: 100px;
	transition: all ease-in-out 0.2s;
	padding: 5px 25px;
	width: auto;
	text-align: left;
	letter-spacing: 1px
}

@media all and (max-width: 500px) {
	#filterDropdown {
		width: 100% !important;
	}
}

/*oeffnungszeiten*/

.oeffnungszeiten table tr>td.text-start {
	border-left: none !important;
}

.oeffnungszeiten table tr>td:last-child {
	border-right: none !important;
}

@media all and (max-width: 500px) {

	.oeffnungszeiten table,
	.oeffnungszeiten thead,
	.oeffnungszeiten tbody,
	.oeffnungszeiten tr,
	.oeffnungszeiten td {
		display: block;
		width: 100%;
		text-align: center;
		border: 0;
	}


	.oeffnungszeiten .date-cell {
		display: block !important;
		width: 100% !important;
		background-color: var(--color-green);
		color: var(--color-light-green);
		text-align: center;
	}

	.oeffnungszeiten .time-cell{
		border-bottom: 1px solid;
	}

}

/*rezeptanfordern*/

.wpcf7-field-group-add, .wpcf7-field-group-remove {
  width: 40px;
  height: 40px;
  border-radius: 40px;
  border: var(--color-gold) 2px solid;
  color: var(--color-gold);
  margin-top: 10px;
  margin-right: 5px;
  background: transparent;
  margin-bottom: 20px;
}

/*2colstext*/

.cols2 {
	columns: 2;
	column-gap: 40px;
}

@media all and (max-width: 500px) {

	.cols2 {
		columns: 1;
	}
}

/*footer*/

#footer {
	padding-top: 120px;
	padding-bottom: 25px;
}

.footer-contact-info {
	font-size: 20px;
	font-weight: bold;
}

#footer a {
	color: white !important;
}