/*
Theme Name: Divi Coffee Custom
Theme URI: ./style-custom.css
Version: 1.052
Author: Ralf Longwitz
Template: Divi Coffee Custom
Author URI: https://www.website-partner.ch
Last change: RL250427
*/
/* Content
Variablen
Typography
Header
Hero
Content
Footer
Media Queries
*/

/* Make pages fade in RL250427 */
body:not(.logged-in) {
	animation-name: pageappear;
	animation-duration: 0.8s;
	animation-delay: 0.3s;
	opacity: 0.01; /* > 0 - Lighthouse error */
	animation-fill-mode: forwards;
}
@keyframes pageappear {
	from {opacity: 0.01;}
	to {opacity: 1;}
}
/* Hyphenation RL250427 */
p, div, h2, h3,h4,h5,h6,li { hyphens:auto; hyphenate-limit-chars: 9 3 4; }


/*** Variablen ***/
:root {
	--braun: #d38f5e;
	--blau-hell: #9bdde5;
	--blau-heller: #0b87ba;
	--blau: #014d69;
	--hellbeige: #fffaef;
}
.min-height-300 { min-height: 300px; }
.nohyphen { hyphens: manual; }

/*** Layout ***/
.et_pb_section:not(.et_pb_fullwidth_section) {
	padding-left: 1rem;
	padding-right: 1rem;
}

/*** Typography ***/
/* Adobe Fonts */
/*@import url("https://p.typekit.net/p.css?s=1&k=kmk6dlj&ht=tk&f=26983&a=638253&app=typekit&e=css");*/
@font-face {
	font-family:"objektiv-mk2";
	src:url("./fonts/objektiv-mk2.woff") format("woff2"),url("./fonts/objektiv-mk2.woff2") format("woff"),url("./fonts/objektiv-mk2.opentype") format("opentype");
	font-display:auto;font-style:normal;font-weight:700;font-stretch:normal;
}
.tk-objektiv-mk2 { font-family: "objektiv-mk2",sans-serif; }
@font-face {
	font-family:"objektiv-mk2-thin";
	src:url("./fonts/objektiv-mk2-thin.woff") format("woff2"),url("./fonts/objektiv-mk2-thin.woff2") format("woff"),url("./fonts/objektiv-mk2-thin.opentype") format("opentype");
	font-display:auto;font-style:normal;font-weight:700;font-stretch:normal;
}
.tk-objektiv-mk2 { font-family: "objektiv-mk2-thin",sans-serif; }

h1, h2, .main-message h1 {
	font-family: "objektiv-mk2",'Cabin',Helvetica,Arial,Lucida,sans-serif;
	font-weight: 700;
	font-style: normal;
}
.header-content, et_pb_fullwidth_header_subhead, .et_pb_header_content_wrapper p {
	font-family: "objektiv-mk2-thin",'Cabin',Helvetica,Arial,Lucida,sans-serif;
	font-size: clamp(1.25rem, 0.136rem + 1.818vi, 1.5rem); /*20-24px*/
	font-weight: 300;
	font-style: normal;
	padding-top: 0.5em;
}
h1, h2, h3, h4, h5, h6 {
/*	font-family: "objektiv-mk2-thin",'Cabin',Helvetica,Arial,Lucida,sans-serif !important;
	font-weight: 300;
	font-family: "objektiv-mk2",'Cabin',Helvetica,Arial,Lucida,sans-serif !important;
	font-weight: 700 !important;*/
}
h3 { font-size: 24px !important; }
#section-headers {
	h1, h2, h3, h4, .RL { color: var(--blau) !important; }
}
body #coffee-news .post-content a { color: var(--braun) !important; margin-top: 1em !important; }
body #coffee-news .post-content a:hover { color: var(--braun) !important; }
#coffee-news .post-content a:after { display: none; }
#menu-item h3, #menu-item h4 {
	padding-bottom: 1em;
	background: #ffffff;
}
#menu-item h4 span {
	background: #fff;
	z-index: 1;
	position: absolute;
	right: 0;
	padding-left: 5px;
}

/* Buttons */
.et_button_no_icon #line.et_pb_button { padding: .3em 1em !important;}

/*** Header ***/
.et_pb_fullwidth_header .et_pb_fullwidth_header_container.center .header-content-container, .et_pb_fullwidth_header .et_pb_fullwidth_header_container.center .header-image-container {
	/*width: auto;
	max-width: 100%;*/
}
.et_fullwidth_nav #main-header .container { max-width: 1600px; }
div#et-top-navigation {
	z-index: 98;
	position: relative;
	width: 100%;
}
span.logo_helper { display: none; }
.et_header_style_left .logo_container {
	height: auto;
	width: auto;
	background: white;
	box-shadow: 0 0 10px var(--blau-hell);
	padding: 0;
	display: flex;
	justify-content: center;
	z-index: 99;
}
.et_header_style_left .logo_container:after {
	/*content: "";
	display: block;
	padding-bottom: 100%;*/
}
.logo_container a { display: flex; }
.et_pb_svg_logo #logo {
	display: block;
	margin: 0;
	padding: 6%;
	height: 20vw !important;
	width: 20vw;
	min-height: 120px;
	min-width: 130px;
	max-height: 200px !important;
	max-width: 200px;
}
.et_pb_svg_logo .et-fixed-header #logo {
	padding: 6%;
	height: 12vw !important;
	width: 12vw;
	max-height: 160px !important;
	max-width: 160px;
}
#top-menu, .et-menu, nav#top-menu-nav, nav.et-menu-nav { float: right; }
.et_header_style_left #et-top-navigation nav>ul>li>a { transition: padding-bottom 0.5s; }
#mobile_menu > li:first-child a { text-align: center; }
.et_mobile_menu .menu-item-has-children > a, .et_mobile_menu li a:hover, .nav ul li a:hover {
	background-color: var(--hellbeige);
	opacity: 1;
}

/* Page container */
.et_fixed_nav.et_show_nav #page-container { padding-top: 132px; }

/*** Hero ***/
.et_pb_fullwidth_header.et_pb_fullwidth_header_0 {
	width: 55vw;
	position: relative;
	left: 45vw;
	padding: 0;
	min-height: 540px;
	overflow-y: clip;
}
.et_pb_fullwidth_header .et_pb_fullwidth_header_container.center {
	position: relative;
	left: -45vw;
	background: white;
	height: 100%;
	width: 45vw;
	max-width: 45vw;
	min-height: 540px;
	box-shadow: 0 0 100px 150px white;
}
.header-content-container.center {
	margin-left: 0;
	margin-right: -4.5vw;
	margin-right: 0;
}
.et_pb_fullwidth_header .et_pb_fullwidth_header_container.center .header-content { width: 100%; }
.et_pb_fullwidth_header_0.et_pb_fullwidth_header .et_pb_fullwidth_header_subhead,
h1, h1.et_pb_contact_main_title, .et_pb_title_container h1 { font-size: clamp(26px,3.5vw,36px) !important; }
.et_pb_fullwidth_header_0.et_pb_fullwidth_header .header-content h1 {
	font-size: clamp(22px,3.5vw,36px) !important;
	border-bottom: none !important;
	margin-bottom: clamp(16px,3.5vw,40px) !important;
	margin-top: 20px;
}

.page-id-54 .et_pb_fullwidth_header.et_pb_fullwidth_header_0 {  background-position-x: 80px !important; } /* Ueber mich */

@media (max-width: 980px) {
	.et_pb_fullwidth_header.et_pb_fullwidth_header_0 {
		width: 100%;
		position: relative;
		left: 0;
		padding: 0;
		min-height: 700px;
		height: auto;
	}
	.et_pb_fullwidth_header .et_pb_fullwidth_header_container.center {
		left: 0;
		height: auto;
		width: 100%;
		max-width: 100%;
		min-height: 200px;
		/*top: 60%;*/
		box-shadow: 0 0 50px 75px white;
	}
	.et_pb_fullwidth_header.et_pb_fullwidth_header_0 { background-position: center  200px !important; }
	.et_fixed_nav.et_show_nav #page-container { padding-top: 80px; }
	.home .et_pb_fullwidth_header.et_pb_fullwidth_header_0 { background-position: center 136px !important; }

	.page-id-59 .et_pb_fullwidth_header.et_pb_fullwidth_header_0 { background-position-y: 154px !important; } /* Home */
	.page-id-807 .et_pb_fullwidth_header.et_pb_fullwidth_header_0 { min-height: 566px; background-position-y: 218px !important; } /* Angebote */
	.page-id-692 .et_pb_fullwidth_header.et_pb_fullwidth_header_0 { min-height: 750px; background-position: -262px 184px !important; } /* Coaching */
	.page-id-713 .et_pb_fullwidth_header.et_pb_fullwidth_header_0 { min-height: 670px; background-position: -342px 112px !important; } /* Familienstellen */
	.page-id-715 .et_pb_fullwidth_header.et_pb_fullwidth_header_0 { min-height: 656px; background-position: 0 155px !important;} /* Ernährung */
	.page-id-54 .et_pb_fullwidth_header.et_pb_fullwidth_header_0 { min-height: 634px; background-size: 132%; background-position: -51px  calc( -214px - clamp(-19.625rem, -45.909rem + 95.362vw, 12.5rem)) !important; } /* Ueber mich */
	.page-id-41 .et_pb_fullwidth_header.et_pb_fullwidth_header_0 { min-height: 545px; background-size: 125%; background-position: center 70px !important; } /* Kontakt */

	.et_pb_fullwidth_header .et_pb_fullwidth_header_container.center .header-content {
		margin: 40px auto 0;
		/*width: 80%;*/
		max-width: 800px;
	}
	.et_pb_fullwidth_header_0 .header-content .et_pb_fullwidth_header_subhead { margin-bottom: 20px !important; }
}
@media (max-width: 440px) {
	.et_pb_row { width: 94%; }
	.et_pb_fullwidth_header.et_pb_fullwidth_header_0 { min-height: 780px; background-position: center  280px !important; }

	.page-id-59 .et_pb_fullwidth_header.et_pb_fullwidth_header_0 { background-position-y: 154px !important; } /* Home */
	.page-id-807 .et_pb_fullwidth_header.et_pb_fullwidth_header_0 { min-height: 566px; background-position-y: 218px !important; } /* Angebote */
	.page-id-692 .et_pb_fullwidth_header.et_pb_fullwidth_header_0 { min-height: 750px; background-position: -582px 184px !important; } /* Coaching */
	.page-id-713 .et_pb_fullwidth_header.et_pb_fullwidth_header_0 { min-height: 670px; background-position: -431px 222px !important; } /* Familienstellen */
	.page-id-715 .et_pb_fullwidth_header.et_pb_fullwidth_header_0 { min-height: 600px; background-position: -266px 155px !important;} /* Ernährung */
	.page-id-54 .et_pb_fullwidth_header.et_pb_fullwidth_header_0 { min-height: 634px; background-size: 132%; background-position: -51px  calc( 297px - clamp(6.063rem, -11.104rem + 85.833vw, 12.5rem)) !important; } /* Ueber mich */
	.page-id-41 .et_pb_fullwidth_header.et_pb_fullwidth_header_0 { min-height: 545px; background-size: 150%; background-position: center 214px !important; } /* Kontakt */

}

/*** Content ***/
.et_pb_blurb_content { margin: unset; /* wg. Kontakt */ }
.page-template-page-template-blank .form-centered .et_pb_contact_field,
.page-template-page-template-blank .form-centered .et_contact_bottom_container {
	display: block;
	float: none!important;
	clear: both;
	margin: 0 auto!important;
	padding: 0!important;
}
.page-template-page-template-blank .et-pb-contact-message { text-align: center; }
.et_contact_bottom_container { margin-left: 3%; }
.et_pb_contact_reset, .et_pb_contact_submit { margin: 0; }

h1.entry-title.main_title, .page-id-227 h1.entry-title.main_title { margin-top: 2em; }
#menu-item h4 { padding-right: 5em; } /* Angebote */
.angebotstitelzeile.et_pb_text {
	border-bottom: 1px solid var(--blau);
	margin-bottom: 1em !important;
}
.angebotstitelzeile br { display: none; }
.angebotstitel {
}
.angebotspreis {
	display: inline-block;
	float: right;
	font-weight: normal;
	font-size: 80%;
}

/* Angebotsspalten */
#coffee-subscription .et_pb_column .et_pb_module {
	max-width: 640px;
	margin-left: auto;
	margin-right: auto;
}

/*** Footer ***/
#footer-widgets { line-height: 1.4; }
#main-footer { /*background-image: url();*/ }
.footer-logo {
	background: #fff;
	padding: 4%;
	display: inline-block;
	width: 100%;
	max-width: calc(160px + 8%);
}
.footer-logo img {
	max-width: 160px;
	width: 100%;
}
#footer-widgets .footer-widget a[data-type="tel"] { color: var(--blau-heller); font-size: 150%; }
.footer-widget:last-child {	text-align: right !important; }
#main-footer .fwidget { margin-bottom: 1em !important; }
#footer-info, #footer-info a { color: var(--blau-heller); font-weight: normal; }
#footer-info a:hover { color: var(--blau-hell); }
#main-footer p.phone { color: var(--blau-heller); }

/* RL250427 */
#coffee-subscription {
	.et_pb_image .et_pb_image_wrap {
		aspect-ratio: 3/2;
		display: flex;
		justify-content: center;
		align-items: center;
		overflow: hidden;
	}
	.et_pb_image img {
		flex-shrink: 1;
		min-width: 100%;
		min-height: 100%;
		object-fit: cover;
	}
}
#coffee-mega-tooltip .et_pb_row.et_pb_row_fullwidth, #coffee-mega-tooltip .et_pb_specialty_fullwidth>.et_pb_row {
	width: 100% !important;
	max-width: 100% !important;
}

#divimegapro-140 .divimegapro-close-container, #divimegapro-144 .divimegapro-close-container {
	position: absolute;
	right: -10px;
	top: -3px;
}

/*** Media Queries ***/
@media only screen and (max-width: 980px) {
	.et_pb_svg_logo #logo {
		padding: 6%;
		height: 12vw !important;
		width: 12vw;
		max-height: 160px !important;
		max-width: 160px;
	}
	/*#logo { content: url("https://divi.website-partner.ch/coffeeshop/wp-content/uploads/sites/3/2023/04/logo-prozessbegleitung-mensch-hund-mobile.svg"); }*/

	#best-coffee {
		margin-left: 0;
		max-width: 100%;
		width: 100%;
	}
	.footer-widget:nth-child(n) {
		width: 30%!important;
		margin: 0 7.5% 7.5% 0 !important;
	}
	.footer-widget:last-child {	margin-right: 0 !important; }
}
@media only screen and (max-width: 767px) {
	p:not(.has-background):last-of-type { padding-bottom: 0 !important; }
}
@media only screen and (max-width: 640px) {
	.angebotspreis {
		display: block;
		float: none;
	}
	.et_contact_bottom_container {
		float: none !important;
		display: block;
		text-align: center;
	}
}
@media only screen and (max-width: 480px) {
	.et_pb_fullwidth_header_container.center {width: 100%; }
	.et_pb_fullwidth_header_subhead { font-size: 37px !important; }
	.et_mobile_menu { padding-top: 3rem; }
	.et_section_regular .et_pb_text_8 {
		max-width: 100%;
		width: 100%;
	}
	.one_half { width: 100% !important; }
	.footer-widget:last-child {	text-align:center!important; }
	.hide-mobile { display: none; }
}

/* Experiment: gradient border https://css-tricks.com/gradient-borders-in-css */
a.xxx.et_pb_button_two {
	display: flex;
	align-items: center;
	width: 90%;
	height:100%;
	margin: auto;
	max-width: 22em;

	position: relative;
	padding: 30% 2em;
	box-sizing: border-box;

	color: #FFF;
	background: #000;
	background-clip: padding-box;
	border: solid 5px transparent;
}
a.xxx.et_pb_button_two:before {
	content: "\e013";
	position: absolute;
	top: 0; right: 0; bottom: 0; left: 0;
	z-index: -1;
	margin: -5px;
	border-radius: inherit;
	background: linear-gradient(to right, red, orange);
	height: 100%
}