/*
Theme Name:     Bauhaus Theme
Theme URI:      https://se-bau.de
Description:    Child Theme for DIVI Theme
Author:         Frank Rumler
Author URI:     https://rumler.com
Template:       Divi
Version:        2025.12.06
License: 		GNU General Public License
*/

html, body {
	max-width: 100%;
	overflow-x: hidden;
	color: #363636;
	line-height: normal;
	font-size: 1em;
	font-family: 'Montserrat Variable', Helvetica, Arial, sans-serif
}

/* montserrat-latin-wght-normal */
@font-face {
  font-family: 'Montserrat Variable';
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  src: url('https://unpkg.com/@fontsource-variable/montserrat@5.1.1/files/montserrat-latin-wght-normal.woff2') format('woff2-variations');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}


/* -- CALCULATE FLUID-RESPONSIVE FONT-SIZE VALUE
	https://websemantics.uk/tools/responsive-font-calculator
-------------------------------------------------------------- */

/* 16px @ 480px increasing to 22px @ 1920px */
@media (min-width: 480px) {
  :root {
    font-size: calc(1rem + ((1vw - 4.8px) * 0.4167));
    /* Where: * 0.4167 = 100 * font_Size_Difference / viewport_Width_Difference */
  }
}
/* Prevent font scaling beyond this breakpoint */
@media (min-width: 1920px) {
  :root {
    font-size: 1.5em;
  }
}

/* HEADER FONT
-------------------------------------------------------------- */
h1, h2, h3, h4, h5, h6 {
	-webkit-font-smoothing: antialiased;
	font-smooth: grayscale;
	-moz-osx-font-smoothing: grayscale;
	font-smoothing: antialiased;
	word-wrap: break-word;
	line-height: normal;
}

@media (min-width: 981px) {
	.et_pb_gutters3 .et_pb_column_3_4,
	.et_pb_gutters3.et_pb_row .et_pb_column_3_4 {
		width: auto;
	}
}

/* TOP MENU
-------------------------------------------------------------- */
#et-top-navigation {
    font-family: inherit;
    font-weight: 300;
    text-transform: uppercase;
}
@media only screen and (min-width: 981px) {
	#top-menu>li>a {
    padding-bottom: 0 !important;
	}
}

#top-menu li.current-menu-item>a,
#top-menu li.current-menu-ancestor>a {
	color: #0173BC !important;
}
#top-menu li.current-menu-item>a {
	border-bottom: thin solid #0173BC;
}
#top-menu li>a {
	padding: 10px 5px 10px 5px;
}
#top-menu li>a:hover {
	color: #1995d3 !important;
	opacity: 1 !important;
}
#top-menu-nav>ul>li>a:link,
#top-menu-nav>ul>li>a:visited {
	opacity: 1 !important;
}

/* TOP MENU ADJUST FONT SIZE
-------------------------------------------------------------- */
#top-menu li {
	font-size: 1.5vw;
	margin-right: 25px;
	padding-right: 0;
	padding-bottom: 3vh;
}
/*
@media screen and (min-width: 1280px) {
	#top-menu li {
		font-size: 1.25vw;
	}
}
*/
/* SECONDARY MENU CTA
header ln 80
https://www.elegantthemes.com/blog/divi-resources/customizing-divis-secondary-menu-bar-with-a-call-to-action
-------------------------------------------------------------- */
#et-info,
#et-secondary-menu,
#custom-secondary-info {
	font-size: 1.25em;
}

/* FONT AWESOME ICONS
-------------------------------------------------------------- */
.fontawe, .fa, .fab, .fal, .far, .fas {
	font-family: 'Font Awesome 6 Free', 'Font Awesome 5 Free', FontAwesome;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	font-size: normal;
}
.space-r, .space-right {
    margin-right: 0.5em;
}
.space-l, .space-left {
    margin-left: 0.5em;
}

/* FONT SIZE & COLORS
-------------------------------------------------------------- */
.larger {
	font-size: larger !important;
}
.smaller {
	font-size: smaller !important;
}
.sm-txt {
	font-size: calc(11px + 2 * ((100vw - 320px) / 680));
	letter-spacing: -0.2px;
}
@media screen and (max-width: 320px) {
	.sm-txt {
		font-size: 0.9em !important;
	}
}
.blu {
	color: #0173BC !important;
}
.red {
	color: #CD0000 !important;
}
.gray {
	color: #707070 !important;
}
.bold {
	font-weight: bold !important;
}
abbr, abbr[title], acronym[title] {
	border-bottom: 1px #0099CC dotted !important;
	cursor: help;
	text-decoration: none !important;
}
blockquote {
	border-left: 3px #0173BC solid;
}

.center {
	text-align: center !important;
}
.valign-center {
	display: flex;
	flex-direction: column;
	justify-content: center;
	flex-wrap: wrap;
	align-content: center;
}
.valign-bottom {
	display: flex;
	justify-content: center;
	margin-top: auto;
}
.margin-top {
	margin-top: 1em;
}

/* SUPERSCRIPT
-------------------------------------------------------------- */
sup {
	position: relative;
	top: -0.5em;
	font-size: 75%;
}

/* MOBILE NAV ICON
-------------------------------------------------------------- */
.mobile_menu_bar:before {
	color: #0173BC;
}

/* DROPCAP FIRST LETTER
-------------------------------------------------------------- */
.et-dropcap {
	color: #345168;
	font-size: 300%;
	font-weight: inherit;
	margin-right: .05em;
}

/* LINKS
-------------------------------------------------------------- */
a,
footer a.footer {
	transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
}
a,
footer a.footer {
	text-decoration: none;
}

/* GOOGLE MAP
-------------------------------------------------------------- */
iframe#map {
	width: 100%;
	border-radius: 10px;
}

/* FOOTER
-------------------------------------------------------------- */
footer, footer p,
footer .et_pb_text_inner,
footer a.footer,
footer a.footer:visited {
    color: #8e8e8e !important;
}

footer a.footer:hover,
footer a.footer:active {
	color: #efefef !important;
}

/* 404 PAGE
-------------------------------------------------------------- */
.error404 #main-content .container,
.error404 #content-area,
.error404 #left-area {
	padding: 0 !important;
	margin: 0 ;
	width: 100% !important;
	max-width: none;
}
.error404 #sidebar {
	display: none;
}
.error404 .et_pb_post:last-child {
	margin-bottom: 0;
}