/*
Theme Name: DP Buzz
Theme URI: http://www.doppelpack.com
Author: Timon Scheibner | Doppelpack Werbeagentur
Author URI: http://www.doppelpack.com
Description: Fast and lightweight mobile first Wordpress theme.
Version: 1.0.6
Tested up to: 6.0
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: dp-buzz

DP Buzz is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
and DP Apollo Theme.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Bootstrap v5.2.1 (https://getbootstrap.com/)
Copyright 2011-2019 Twitter, Inc.
Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Base
# Site Content
# Site Footer
# Archives
# Numeric Posts Navigation
# Price tables
# Media Queries - Small devices (landscape phones, 576px and up)
# Media Queries - Medium devices (tablets, 768px and up)
# Media Queries - Large devices (desktops, 992px and up)
# Media Queries - Extra large devices (large desktops, 1200px and up)
---------------------------------------------------------------- */

/* ============================================================= */
/* Base
/* ============================================================= */

*, ::after, ::before {
	box-sizing: border-box;
}

html {
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	border: none;
	font-size: 16px;
}

body {
	width: 100%;
	height: 100%;
	word-wrap: break-word;
	word-break: break-word;
	overflow-x: hidden;
	color: var(--wp--preset--color--content, #333333);
}

#page {
	overflow: hidden;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

/* Alignment Styles */

.wp-site-blocks,
body>.is-root-container,
.edit-post-visual-editor__post-title-wrapper,
.wp-block-group.alignfull,
.wp-block-cover.alignfull,
.is-root-container .wp-block[data-align="full"]>.wp-block-group,
.is-root-container .wp-block[data-align="full"]>.wp-block-cover {
	padding-left: var(--wp--custom--spacing--outer);
	padding-right: var(--wp--custom--spacing--outer);
}

.wp-site-blocks .alignfull,
.wp-site-blocks>.wp-block-group.has-background,
.wp-site-blocks>.wp-block-cover,
.wp-site-blocks>.wp-block-template-part>.wp-block-group.has-background,
.wp-site-blocks>.wp-block-template-part>.wp-block-cover,
body>.is-root-container>.wp-block-cover,
body>.is-root-container>.wp-block-template-part>.wp-block-group.has-background,
body>.is-root-container>.wp-block-template-part>.wp-block-cover,
.is-root-container .wp-block[data-align="full"] {
	margin-left: calc(-1 * var(--wp--custom--spacing--outer)) !important;
	margin-right: calc(-1 * var(--wp--custom--spacing--outer)) !important;
	width: unset;
}


/* ============================================================= */
/* Site Content
/* ============================================================= */

.posted-on time:not(.updated) {
	display: none;
}

.entry-content .alignfull {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

.entry-content .alignwide {
	width: 100%;
}

.post-navigation .nav-links {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 10px;
}


/* ============================================================= */
/* Plugin Chauffeur Taxi Booking System
/* ============================================================= */

.chbs-main, .chbs-main input, .chbs-main select, .chbs-main textarea, .ui-menu .ui-menu-item, .ui-timepicker-wrapper, .chbs-datepicker.ui-datepicker th, .chbs-datepicker.ui-datepicker td, .chbs-datepicker.ui-datepicker td a, .chbs-datepicker.ui-datepicker td span {
	font-family: 'Montserrat','Arial' !important;
}

.chbs-layout-column-left .chbs-summary-price-element {
	background-color: #F6F6F6;
	padding-top: 20px;
}

.chbs-ride-info.chbs-box-shadow {
	background-color: #fff;
}




.chbs-payment-form {
	background-color: #fff;
}

.chbs-payment-form .chbs-payment-header {
	padding: 14px 21px 15px 21px;
}

.chbs-payment-form .chbs-payment {
	padding: 14px 21px 15px 21px !important;
}





.chbs-booking-complete h3 {
	color: #ffffff !important; 
}

.chbs-booking-complete .chbs-booking-complete-payment {
	display: none !important; 
}

/* Button */

a.chbs-button {
	border-radius: 0 !important;
	font-family: 'Prompt','Arial';
	font-size: 1.4em !important;
	line-height: 1 !important;
	padding: 0.75em 1.5em 0.75em 1.5em !important;
}

.chbs-summary-price-element {
	padding: 0 20px 20px 20px;
}

.dp-wrapper.has-background-color a.chbs-button {
	background-color: var(--wp--preset--color--bg-light);
	color: var(--wp--preset--color--primary);
	border: 2px solid var(--wp--preset--color--bg-light);
}

.dp-wrapper.has-background-color a.chbs-button:hover {
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--bg-light);

}


/* ============================================================= */
/* DP heading 2 rows
/* ============================================================= */

.dp-heading-2-rows.text-align-center {
	text-align: center;
}

/* ============================================================= */
/* Buttons
/* ============================================================= */

.wp-block-button .wp-block-button__link {
    background-color: var(--wp--preset--color--primary) !important;
    color: var(--wp--preset--color--bg-light) !important;
    border: var(--wp--preset--color--primary) solid 2px !important;
	letter-spacing: 1px;
}

.wp-block-button .wp-block-button__link:hover {
    background-color: var(--wp--preset--color--bg-light) !important;
    color: var(--wp--preset--color--primary) !important;
}

.wp-block-button.is-style-outline .wp-block-button__link {
    background-color: var(--wp--preset--color--bg-light) !important;
    color: var(--wp--preset--color--primary) !important;
    border: var(--wp--preset--color--bg-light) solid 2px !important;
	letter-spacing: 1px;
}

.wp-block-button.is-style-outline .wp-block-button__link:hover {
    background-color: var(--wp--preset--color--primary) !important;
    color: var(--wp--preset--color--bg-light) !important;
}


/* Call & book buttons icons
/* ------------------------------------------------------------- */

.call-taxi-content .wp-block-button__link::before,
.call-taxi-footer .wp-block-button__link::before {
	content: "\e901";
	font-family: "anis-taxi" !important;
	font-size: 1.5rem;
}

.book-taxi-content .wp-block-button__link::before,
.book-taxi-footer .wp-block-button__link::before {
	content: "\e90b";
	font-family: "anis-taxi" !important;
	font-size: 1.5rem;
}

.mail-taxi-content .wp-block-button__link::before,
.mail-taxi-footer .wp-block-button__link::before {
	content: "\e902";
	font-family: "anis-taxi" !important;
	font-size: 1.5rem;
}

.whatsapp-taxi-content .wp-block-button__link::before,
.whatsapp-taxi-footer .wp-block-button__link::before {
	content: "\ea93";
	font-family: "anis-taxi" !important;
	font-size: 1.5rem;
}

.call-taxi-content .wp-block-button__link::before,
.book-taxi-content .wp-block-button__link::before,
.mail-taxi-content .wp-block-button__link::before,
.whatsapp-taxi-content .wp-block-button__link::before {
	padding-right: 0.5rem;
}

.wp-block-button__link,
.call-taxi-content .wp-block-button__link,
.book-taxi-content .wp-block-button__link,
.mail-taxi-content .wp-block-button__link,
.whatsapp-taxi-content .wp-block-button__link {
    display: flex;
    align-items: center;
    padding: 0.75rem 1.5rem !important;
    transition: all 0.2s linear;
}

/* Formidable button
/* ------------------------------------------------------------- */

.frm_submit {
    display: flex;
    justify-content: center;
}

.frm_button_submit {
	display: flex;
    align-items: center;
	font-family: var(--wp--preset--font-family--headings) !important;
	text-transform: uppercase;
    letter-spacing: 1px;
	transition: all 0.2s ease-out;
}

.frm_button_submit:before {
	content: "\e911";
	font-family: 'anis-taxi';
	font-size: 1.5rem;
	padding-right: 0.5rem;
}

/* ============================================================= */
/* Service icons
/* ============================================================= */

h2.taxidienst,
h2.flughafen-transfer,
h2.hotel-transfer,
h2.bahnhof-transfer,
h2.auto-ueberstellung,
h2.sachtransport,
h2.krankentransport,
h2.tagestouren {
	display: flex;
	align-items: center;
	hyphens: auto;
}

h2.ski-transfer {
	display: flex;
	align-items: flex-end;
}

h2.taxidienst:before,
h2.flughafen-transfer:before,
h2.hotel-transfer:before,
h2.bahnhof-transfer:before,
h2.auto-ueberstellung:before,
h2.sachtransport:before,
h2.krankentransport:before,
h2.ski-transfer:before,
h2.tagestouren:before {
	font-family: 'anis-taxi';
	font-size: 2rem;
	padding-right: 1rem;
}

h2.taxidienst:before {
	content: "\e904";
}

h2.flughafen-transfer:before {
	content: "\e910";
}

h2.hotel-transfer:before {
	content: "\e90f";
}

h2.bahnhof-transfer:before {
	content: "\e915";
}

h2.auto-ueberstellung:before {
	content: "\e900";
}

h2.sachtransport:before {
	content: "\e91a";
}

h2.krankentransport:before {
	content: "\e903";
}

h2.ski-transfer:before {
	content: "\e90e";
}

h2.tagestouren:before {
	content: "\e916";
}


/* ============================================================= */
/* Dp icon grid block changes
/* ============================================================= */

.dp-icon-grid.taxi-leistungen .item {
	background-color: var(--wp--preset--color--bg-light);
	transition: all 0.2s ease-out;
}

.dp-icon-grid.taxi-leistungen .icon {
	display: flex;
    align-items: flex-end;
}

.dp-icon-grid.taxi-leistungen .icon > svg > * {
	fill: var(--wp--preset--color--primary);
}

.dp-icon-grid.taxi-leistungen h3 {
	font-size: 1.5em ;
	font-weight: bold;
	margin-bottom: 1em;
}

.dp-icon-grid.taxi-leistungen h3, 
.dp-icon-grid.taxi-leistungen p {
	color: var(--wp--preset--color--primary);
}

.dp-icon-grid.taxi-leistungen > .item:hover {
	transform: scale(1.075) !important;
}

.dp-icon-grid.taxi-leistungen > .item:hover {
	background-color: #ffffffee;
}


/* ============================================================= */
/* Dp icon grid (taxi-buchen) block changes
/* ============================================================= */

.dp-icon-grid.taxi-buchen {
	margin-top: clamp(30px, 6vw, 60px) !important;
	margin-bottom: clamp(10px, 6vw, 20px) !important;
}

.dp-icon-grid.taxi-buchen .item {
	padding: 0 !important;
	background-color: #3c66b7;
	box-shadow: unset !important;
}

.dp-icon-grid.taxi-buchen > .item:hover {
    transform: scale(1);
}

.dp-icon-grid.taxi-buchen .icon > svg > * {
	fill: #FFFFFF !important;
}

.dp-icon-grid.taxi-buchen h3 {
	color: #FFFFFF;
}


/* ============================================================= */
/* Archives
/* ============================================================= */

.articles-grid {
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	gap: 20px;
	margin-top: var(--wp--custom--spacing--medium, 40px);
	margin-bottom: var(--wp--custom--spacing--medium, 40px);
}

.articles-grid article {
	flex: 0 1 100%;
	display: flex;
	flex-flow: row nowrap;
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.3);
	border-radius: 10px;
	background-color: var(--wp--preset--color--bg-light, #eeeeee);
	overflow: hidden;
}

.articles-grid .article-content {
	flex: 1;
	padding: 2rem;
	margin: 0;
}

.articles-grid .entry-title {
	font-size: 1.7em;
	margin-top: 0;
}

.articles-grid .entry-title > a {
	text-decoration: none;
}

.articles-grid .entry-meta {
	font-size: 0.8em;
}

.articles-grid .entry-excerpt {
	font-size: 0.9em;
	margin-top: 0.5em;
	margin-bottom: 1em;
}

.articles-grid .article-thumbnail {
	position: relative;
	flex: 1;
	min-height: 200px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.articles-grid .article-thumbnail a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.articles-grid .article-thumbnail img {
	position: absolute;
	top: -1px;
	left: -1px;
	width: 1px;
	height: 1px;
}


/* ============================================================= */
/* Numeric Posts Navigation
/* ============================================================= */

.num-posts-navigation {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0 var(--wp--custom--spacing--medium, 40px);
	margin: var(--wp--custom--spacing--small, 15px) 0;
}

.num-posts-navigation ul {
	position: relative;
	display: flex;
	gap: 5px;
	list-style: none;
	padding: 0;
}

.num-posts-navigation li {
	display: flex;
	justify-content: center;
	align-items: center;
}

.num-posts-navigation > ul > li:before,
.num-posts-navigation > ul > li:after {
	display: none;
}

.num-posts-navigation li a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 30px;
	height: 30px;
	color: var(--wp--preset--color--primary, #f44e1e);
	line-height: 30px;
	border-radius: 50px;
	background-color: transparent;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition: all 0.15s linear;
}

.num-posts-navigation li a:hover {
	color: #fff;
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.3);
	background-color: var(--wp--preset--color--primary, #f44e1e);
}

.num-posts-navigation li.active a {
	color: #fff;
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.3);
	background-color: var(--wp--preset--color--primary, #f44e1e);
}

/* Previous and Next */
.num-posts-navigation li.previous {
	position: absolute;
	right: 100%;
}

.num-posts-navigation li.next {
	position: absolute;
	left: 100%;
}

.num-posts-navigation li.previous svg path,
.num-posts-navigation li.next svg path {
	fill: currentColor;
}

/* ============================================================= */
/* Price tables
/* ============================================================= */

.wp-block-table.price-table {
	margin: 1.5em 0;
}

.wp-block-table.price-table table {
	width: 100%;
	border-collapse: collapse;
	table-layout: auto;
}

.wp-block-table.price-table th,
.wp-block-table.price-table td {
	padding: 0.45em 0.3em;
	font-size: 0.9em;
	text-align: left;
	border: 0;
	border-bottom: 1px solid rgba(0, 0, 0, 0.12);
	overflow-wrap: normal;
	word-break: normal;
	-webkit-hyphens: none;
	hyphens: none;
}

.wp-block-table.price-table thead th {
	border-bottom: 2px solid currentColor;
}

.wp-block-table.price-table th:not(:first-child),
.wp-block-table.price-table td:not(:first-child) {
	width: 1%;
	text-align: right;
}

.wp-block-table.price-table td:not(:first-child) {
	white-space: nowrap;
}

.wp-block-table.price-table figcaption {
	margin-top: 0.5em;
	font-size: 0.85em;
	text-align: left;
}

/* ============================================================= */
/* WPML 
/* ============================================================= */

/* Language switcher */

#navigation-icons-language-wrapper ul {
	display: flex;
}


/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {

	/* ============================================================= */
	/* Price tables
	/* ============================================================= */

	.wp-block-table.price-table table {
		table-layout: fixed;
	}

	.wp-block-table.price-table th,
	.wp-block-table.price-table td {
		padding: 0.5em 0.6em;
		font-size: inherit;
	}

	.wp-block-table.price-table th:not(:first-child),
	.wp-block-table.price-table td:not(:first-child) {
		width: 9.5em;
	}

}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {

	/* ============================================================= */
	/* Base
    /* ============================================================= */

	html {
		font-size: 18px;
	}

	/* ============================================================= */
	/* Service icons
	/* ============================================================= */


	h2.taxidienst:before,
	h2.flughafen-transfer:before,
	h2.hotel-transfer:before,
	h2.bahnhof-transfer:before,
	h2.auto-ueberstellung:before,
	h2.sachtransport:before,
	h2.krankentransport:before,
	h2.ski-transfer:before,
	h2.tagestouren:before {
		font-size: 3rem;
	}


	/* ============================================================= */
	/* Archives
    /* ============================================================= */

	.articles-grid .article-content {
		flex: 2;
	}

}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {



}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {

	/* ============================================================= */
	/* Site Content
    /* ============================================================= */

	.entry-content .alignwide {
		width: calc(50% + 50vw);
		max-width: calc(50% + 50vw);
		margin-left: calc(25% - 25vw);
		margin-right: calc(25% - 25vw);
	}

	/* ============================================================= */
	/* Service icons
	/* ============================================================= */


	h2.taxidienst:before,
	h2.flughafen-transfer:before,
	h2.hotel-transfer:before,
	h2.bahnhof-transfer:before,
	h2.auto-ueberstellung:before,
	h2.sachtransport:before,
	h2.krankentransport:before,
	h2.ski-transfer:before,
	h2.tagestouren:before {
		font-size: 4rem;
	}


}

/* Extra large devices (large desktops, 1600px and up) */
@media (min-width: 1600px) {

	/* ============================================================= */
	/* Dp icon grid block changes
	/* ============================================================= */

	.dp-icon-grid[class*="alpha"] {
		gap: 30px !important;
	}

	.dp-icon-grid[class*="alpha"] > .item {
    	flex-basis: calc((100% - 90px) / 4) !important;
	}

	/* Tagestouren: 3 Karten pro Zeile */

	.dp-icon-grid.tagestouren-uebersicht[class*="alpha"] > .item {
		flex-basis: calc((100% - 60px) / 3) !important;
	}

}