/*!
Theme Name: capevulture
Theme URI: https://them.es/starter
Author: Martin Hammerschmidt
Author URI: https://them.es/
Description: Cape Vulture
Version: 3.6.0
Requires at least: 5.0
Tested up to: 6.8
Requires PHP: 7.2
License: GPL version 2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0
Tags: custom-background, custom-colors, featured-images, flexible-header, microformats, post-formats, rtl-language-support, theme-options, translation-ready, accessibility-ready
Text Domain: capevulture
*/

/* 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. */
}


/*custom styles*/

/* nunito-sans-200 - latin */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Nunito Sans';
	font-style: normal;
	font-weight: 200;
	src: url('./fonts/nunito-sans-v18-latin-200.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* nunito-sans-regular - latin */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Nunito Sans';
	font-style: normal;
	font-weight: 400;
	src: url('./fonts/nunito-sans-v18-latin-regular.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* nunito-sans-italic - latin */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Nunito Sans';
	font-style: italic;
	font-weight: 400;
	src: url('./fonts/nunito-sans-v18-latin-italic.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* nunito-sans-600italic - latin */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Nunito Sans';
	font-style: italic;
	font-weight: 600;
	src: url('./fonts/nunito-sans-v18-latin-600italic.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* nunito-sans-700italic - latin */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Nunito Sans';
	font-style: italic;
	font-weight: 700;
	src: url('./fonts/nunito-sans-v18-latin-700italic.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* nunito-sans-900 - latin */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Nunito Sans';
	font-style: normal;
	font-weight: 900;
	src: url('./fonts/nunito-sans-v18-latin-900.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


:root {
	--body-font: 'Nunito Sans';
	--body-font-weight: 400;
	--body-font-size: 15px;
	--headline-font: 'Canto';
	--headline-weight: 800;
	--h1-size: 36px;
	--color-green: #4c4c3d;
	--color-beige: #a5927e;
	/*#b5a492*/
	--color-brown: #503e33;
	--color-white: white;
	--color-light-green: #a29a31;
	--h2-letterspacing: 12px;
	--letterspacing-subheadline: 5px;
	--h3-size: 22px;
	--overlay-text: clamp(1.375rem, 0.8636rem + 1.6364vw, 2.5rem);
}

body {
	font-family: var(--body-font);
	font-weight: var(--body-font-weight);
	font-size: var(--body-font-size);
	line-height: 1.45rem;
	background-color: var(--color-green);
	color: var(--color-white);
}

body,
html {
	width: 100vw;
	max-width: 100vw;
	overflow-x: hidden;
}

main {
	min-height: 100vh;
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
	font-family: var(--headline-font);
	font-weight: var(--headline-weight);
	font-size: var(--h1-size);
}

.font-serif {
	font-family: var(--headline-font);
}



h3,
.h3 {
	font-size: var(--h3-size);
}

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

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

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

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

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

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


.max-w-600 {
	max-width: 700px;
}

.min-h-25,
.vh-25 {
	min-height: 25vh;
	height: auto !important;
}

.min-h-50,
.vh-50 {
	min-height: 50vh;
	height: auto !important;
}

.min-h-75,
.vh-75 {
	min-height: 75vh;
	height: auto !important;
}

.min-h-100,
.vh-100 {
	min-height: 100vh;
	height: auto !important;
}


/*feather headline*/

h2,
.featherheadline {
	margin-top: 55px;
	position: relative;
	display: inline-block;
	letter-spacing: var(--h2-letterspacing);
}

.h2letterspacing {
	letter-spacing: var(--h2-letterspacing);
}

h1,
.h1 {
	letter-spacing: var(--h2-letterspacing);
}

.subheadline {
	letter-spacing: var(--letterspacing-subheadline);
	text-transform: uppercase;
	margin-bottom: 40px;
}

h2::before,
.featherheadline::before {
	content: "";
	position: absolute;
	transform: translateX(-50%);
	transform-origin: center center;
	top: -55px;
	left: 50%;
	width: 71px;
	height: 41px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	background-image: url(img/feder.svg);
}

.just-text h2::before,
.just-text .featherheadline::before {
	content: none;
}

.just-text h2{
	letter-spacing: normal;
}

/*hero*/

.hero-block {
	height: 100vh;
	min-height: 500px;
}

.hero-block h1 {
	max-width: 1000px;
}

.hero-video video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

/*cite*/

.citeblock.feather .h2 {
	background-image: url(img/feather-background.svg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}

.cite-block .h2 {
	font-size: 34px;
}

/*more links*/

.more-link-item {
	aspect-ratio: 550 / 600;
	overflow: hidden;
	position: relative;
}

.more-link-item img {
	position: absolute;
	top: 0;
	left: 0;
	transform: scale(1);
	transition: 1s ease-in-out all;
	transform-origin: center center;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.more-link-item:hover img {
	transform: scale(1.1);
}

.more-link-item .text-top-horizontal,
.more-link-item .text-left-vertical,
.more-link-item .text-bottom-horizontal {
	display: inline-block;
	z-index: 10;
	font-size: var(--overlay-text);
	font-weight: 900;
	text-transform: uppercase;
	padding: 20px;
	letter-spacing: 5px;
}

.more-link-item .text-top-horizontal {
	position: absolute;
	top: 0;
	right: 0;
}

.more-link-item .text-left-vertical {
	position: absolute;
	top: 0;
	transform: rotate(-90deg) translate(-100%);
	transform-origin: left top;
	left: 0;
	margin-top: -9px;
	text-align: right;
	line-height: 1;
}

.more-link-item .text-bottom-horizontal {
	position: absolute;
	bottom: 0;
	left: 0;
}



/*booknowbutton*/

.book-now-btn {
	background-color: var(--color-light-green);
	color: white;
	font-weight: 900;
	width: 100px;
	height: 100px;
	border-radius: 120px;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	font-size: 18px;
	line-height: 1.1;
	text-transform: uppercase;
	transition: all ease-in-out 0.5s;
	transform: scale(1) rotate(0deg);
	padding: 10px;
}

.book-now-btn:hover {
	transform: scale(1.1) rotate(5deg);
}

/*navigation*/
#navbar a {
	color: white;
	font-size: 14px;
	font-weight: 500;
}

#navbar .dropdown-menu {
	background: none;
	border: none;
	box-shadow: none;
}

.dropdown-menu.show {
	background: rgba(76, 76, 61, 0.56) !important;
	box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1) !important;
	backdrop-filter: blur(8.5px) !important;
	-webkit-backdrop-filter: blur(8.5px) !important;
}

#navbar .dropdown-menu a {
	background: none;
	border: none;
	box-shadow: none;
	padding: 10px 0.5rem;
}

.navbar-brand img {
	width: 200px;
	height: auto;
}

.dropdown-toggle::after {
	background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="white" class="bi bi-chevron-down" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708"/></svg>');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	border: none;
	width: 10px;
	height: 10px;
	color: white;
	vertical-align: 0;
	transform: scaleY(1);
	transition: all ease-in-out 0.5s;
}

.dropdown-toggle.show::after {
	transform: scaleY(-1);
}

.menubutton {
	border: none;
	background: none;
}


#mobilenavbar .dropdown-toggle::after {
	content: none;
}

#mobilenavbar .dropdown-menu.show,
#mobilenavbar .dropdown-menu {
	position: relative !important;
	transform: none !important;
	display: block;
	background: none;
	box-shadow: none;
	border: 0;
}


#mobilenavbar,
#offcanvasMenu {
	text-align: center;
	background-color: var(--color-green);
	color: white;
}

#mobilenavbar .dropdown-item {
	text-align: center;
	color: white;
}

#mobilenavbar .dropdown-item.active,
#mobilenavbar .dropdown-item:active {
	background: transparent;
	font-weight: bold;
}

#mobilenavbar .nav-link {
	font-family: var(--headline-font);
	font-size: 25px;
	text-align: center;
}

#mobilenavbar .wpml-ls-display {
	display: block;
	text-align: center;
	width: 100%;
	font-size: 17px;
	font-family: var(--body-font);
}

#header {
	transition: all ease-in-out 1s;
	/*background: linear-gradient(180deg, rgba(76, 76, 61, 0.8) 15%, rgba(76, 76, 61, 0) 82%);*/
	background: linear-gradient(180deg,rgba(0, 0, 0, 0.6) 15%, rgba(0, 0, 0, 0) 82%);
	}

.scrolled #header {
	background: rgba(76, 76, 61, 0.56);
	box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
	backdrop-filter: blur(8.5px);
	-webkit-backdrop-filter: blur(8.5px);
}

#header .navbar-brand img {
	transition: all ease-in-out 1s;
}

.scrolled #header .navbar-brand img {
	width: 100px;
	height: auto;
}

/*help item */
.help-item .number {
	color: var(--color-light-green);
	font-size: 67px;
	font-style: italic;
	line-height: 1;
	padding-right: 15px;
}

.help-item .headlines {
	display: flex;
	flex-direction: column;
}

.help-item .headlines span {
	display: flex;
	flex-direction: column;
	font-size: 20px;
	line-height: 1;
	text-transform: uppercase;
}

.help-item .headlines span:first-child {
	font-size: 40px;
}

/*accordion*/
.accordion,
.accordion-body,
.accordion-header button,
.accordion-button:not(.collapsed),
.accordion-item {
	background-color: var(--color-green);
	color: white;
	border: 0;
}

.accordion-button::after {
	background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" fill="white" class="bi bi-chevron-down" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708"/></svg>') !important;
}

.accordion-body {
	padding-left: 120px;
}

/*formular*/

input {
	padding: 20px;
	background-color: white;
	border: none;
	width: 100%;
}

input[type="submit"] {
	padding: 20px;
	background-color: var(--color-light-green);
	color: white;
	font-weight: bold;
	border: none;
}

/*activity*/

.acitvity-headline {
	position: absolute;
	left: calc(var(--overlay-text) + 10px);
	top: 10px;
	display: inline-block;
	transform: rotate(90deg);
	transform-origin: left;
	font-size: var(--overlay-text);
	font-weight: var(--headline-weight);
	display: inline-block;
}

.text-md-end ul {
	list-style-position: inside;
}

/*booknow*/

.bookbutton {
	height: 60px;
	width: 60px;
	transform-origin: center center;
	animation: booknow 15s infinite linear;
}

@keyframes booknow {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}

/*imageslider*/
.swiper-button-prev,
.swiper-button-next {
	color: white;
}

/*image-text-image*/

.image-text-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	position: absolute;
}

.imagecontain .image-text-image {
	object-fit: contain !important;
	padding: 40px 0 40px 0;
}

/* rates */

.rates-column li {
	margin-top: 15px;
}

/*footer*/
#footer {
	background-color: var(--color-brown);
}

.important-information {
	list-style-position: inside;
}

.important-information li {
	padding-top: 10px;
	padding-bottom: 10px;
}

.important-information ul {
	margin-left: 0;
	padding-left: 0;
}

.bottom-menu a,
.footer-menu a,
.bottom-menu a:hover,
.footer-menu a:hover,
#footer .current-menu-item a {
	color: white !important;
}

.social-media-icon {
	width: 25px;
	height: 25px;
}

/*timetable*/

.timetable,
.table> :not(caption)>*>*,
.wp-block-table table> :not(caption)>*>* {
	background-color: transparent;
	border-color: white;
	color: white;
	font-size: clamp(1rem, 0.858rem + 0.4545vw, 1.3125rem);
}

/*slider*/

.slide-images {
	aspect-ratio: 16/9;
	width: 100%;
	height: auto;
	object-fit: cover;
	object-position: center center;
}

/*newsletterblock*/

.newsletter-block h2 {
  font-size: calc(var(--h1-size) * 0.80);
}

.newsletter-block .subheadline{
	font-size: calc(var(--body-font-size) * 0.80);
}

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

	.more-link-item .text-top-horizontal,
	.more-link-item .text-left-vertical,
	.more-link-item .text-bottom-horizontal {
		letter-spacing: 1px;
	}

	.max-w-600 {
		max-width: 600px;
	}
}

@media all and (max-width: 500px) {
	.navbar-brand img {
		width: 120px;
		height: auto;
	}

	.important-information ul {
		list-style-position: inherit;
		padding-left: 15px;
	}

	.acitvity-headline {
		max-width: 200px;
		transform: rotate(0deg);

	}

	.acitvity-headline span {
		transform: rotate(0deg);
	}

	.image-text-image {
		width: 100%;
		height: auto;
		object-fit: cover;
		object-position: center center;
		position: relative;
	}
}