@charset "UTF-8";
/* CSS Document */

/* ------------------------------

agenturwitt
Sasbacher Str. 8
79111 Freiburg

Tel. +49 761 55 62 410
www.agenturwitt.de

--------------------------------- */

:root {
    --primary: #004f7f!important;
    --grey: #878787!important;
	--dark: #002a43!important;
}

/* PDF-Links */
a[href$=".pdf"] {
    padding-left: 20px;
    background-image: url(../img/icn_pdf.png);
    background-position: center left;
    background-repeat: no-repeat;
}

html { font-size: 1.4rem; }

body { font-family: 'Source Sans 3', sans-serif; height: 100%; }

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3 .h4, .h5, .h6 {
	color: var(--primary);
}

h1 { font-weight: 500; font-size: 1.4rem; }

h2 { font-weight: 600; font-size: 2.2rem; margin-bottom: 1rem; }

p {  }

a { color: var(--primary); text-decoration: none; }
a:hover { color: var(--dark); text-decoration: underline; text-decoration-color: var(--dark); text-underline-offset: .5rem; }

strong { font-weight: 600; color: var(--primary); }

.versal { text-transform: uppercase; }

.pads { padding-block: 100px; }
.overlay { background-color: rgba(0,42,67,.90); width: 100%; height: 100%; }
.flex { display: flex; }

summary { padding: 50px 30px; background-color: var(--primary); color: #fff; }
summary strong { color: #fff; margin-left: 15px; }

.logo { height: 40px; }

.navbar.navbar-no-bg { height: 80px; }

.navbar {
	background: var(--primary);
	-o-transition: all .6s;
	-moz-transition: all .6s;
	-webkit-transition: all .6s;
	-ms-transition: all .6s;
	transition: all .6s;
	backface-visibility: hidden;
	height: 60px;
	backdrop-filter: blur(5px);
	background-color: rgba(0, 79, 127, .6);
	text-transform: uppercase;
	font-size: 0.9rem;
}

.nav-link { font-size: .7rem; letter-spacing: .06rem; }
.nav-link:hover { color: #fff; text-decoration-color: #fff; }

.nav-language a { padding: .5rem; }

.section-image { margin-bottom: 80px; max-width: 100%; }
.section-image img { width: 100%; }

#header { height: 100%; width: 100%; background-image: url(../img/header_steine_impressum.jpg); background-position: center; background-size: cover; background-repeat: no-repeat; }
.header-flex { height: 100%; display: flex; justify-content: center; align-items: flex-end; }
.header-content { color: #fff; text-align: center; /*text-shadow: 0px 0px 5px #000;*/ text-wrap: balance; }

.header-overline { font-size: 1.6rem; font-weight: 400; }

/* Variante 1
.header-headline { font-size: 2.5rem; line-height: 2.5rem; font-weight: 600; } */

/* Variante 2
.header-headline { font-size: 2rem; line-height: 2rem; font-weight: 600; background-color: var(--primary); padding: 15px 25px; } */

/* Variante 3 */
.header-headline { font-size: 1.5rem; line-height: 2rem; font-weight: 600; padding-bottom: 200px; }
.header-headline img { padding-bottom: 5px; height: 45px; }


#header-impressum { height: 750px; width: 100%; background-image: url(../img/header_steine_impressum.jpg); background-position: center center; background-size: cover; background-repeat: no-repeat; }

.field { width: 100%; display: flex; align-items: center; justify-content: space-around; }

.scroll {
	width: 60px;
	height: 60px;
	border: 2px solid #fff;
	border-radius: 50%;
	position: absolute;
	bottom: 50px;
	animation: down 1.5s infinite;
	-webkit-animation: down 1.5s infinite;
	&::before {
		content: '';
		position: absolute;
		top: 15px;
		left: 18px;
		width: 18px;
		height: 18px;
		border-left: 2px solid #fff;
  		border-bottom: 2px solid #fff;
		transform: rotate(-45deg);
	}
}

@keyframes down {
	0% { transform: translate(0); }
	20% { transform: translateY(15px); }
	40% { transform: translate(0); }
}

@-webkit-keyframes down { 
	0% { transform: translate(0); }
	20% { transform: translateY(15px); }
	40% { transform: translate(0); }
}

#ueberuns {  }

.icon img { height: 50px; }

.description {
    max-height: 0; /* Anfangszustand */
    opacity: 0;
    overflow: hidden;
    transition: max-height 0.3s ease, opacity 0.3s ease;
}

.karte:hover .description {
    max-height: 500px; /* Ein ausreichend hoher Wert für den Inhalt */
    opacity: 1;
}

.portrait { background-position: center center; background-size: cover; }

#leistungen { background-color: #fafafa; }
.acc { margin-top: 50px; }
.acc-inner { padding: 30px; }

.investoren { background-position: center center; background-size: cover; }
.assetmanager { background-position: center center; background-size: cover; }

#partner {  }
.partner-row { margin-top: 50px; }
.partner-item { margin-bottom: 80px; }
.partner-item-inner {  }
.partner-details {  }
.partner-details-inner { font-size: .7rem; padding-block: 20px; }
.partner-summary { display: flex; justify-content: center; align-items: center; align-content: center; height: 100px; background-color: transparent; }
.partner-summary img { width: 100%; }
.partner-content { text-align: justify;  }
.partner-website {  }

#kontakt {  }

#footer { background-color: var(--primary); color: #f2f2f2; }

#footer h1 { font-size: 1.2rem; font-weight: 700; color: #f2f2f2; text-align: left; margin-bottom: 30px;  }

footer a { color: #fff; text-decoration: none; }
a:hover { color: #dadada; text-decoration: underline; text-decoration-color: #dadada; text-underline-offset: .5rem; }

footer strong { color: #fff; }

footer .logo { margin-bottom: 30px; }
footer .logo img { max-width: 450px; }

.claim { margin-bottom: 50px; }

.footer-nav { display: flex; justify-content: flex-end; }
.footer-nav span { margin-left: 20px; font-size: .8rem; }

address span { display: block; }
span { display: block; }

.copyright { background-color: var(--dark); text-align: center; padding-block: 30px; font-size: .8rem; }

.copyright a { color: #69747a; text-decoration: none; }
.copyright a:hover { color: #8ea2ad; text-decoration: none; text-decoration-color: #414141; text-underline-offset: .5rem; }




/* ****** MEDIA QUERIES ****** */

@media (min-width: 576px) {
	.dropdown:hover > .dropdown-menu { 
		display: block; margin-top: 0;
	}
}

@media (max-width: 767px) {
	.logo { height: 25px; }
	
	h1 { font-size: 1.2rem; }
	h2 { font-size: 1.8rem; }
	
	.navbar { padding-top: .5rem; }	
	
	.navbar.navbar-no-bg { 
	background: var(--primary);
	-o-transition: all .6s;
	-moz-transition: all .6s;
	-webkit-transition: all .6s;
	-ms-transition: all .6s;
	transition: all .6s;
	backface-visibility: hidden;
	backdrop-filter: blur(5px);
	background-color: rgba(0, 79, 127, .6)!important;
	text-transform: uppercase;
	font-size: 0.9rem; }
	
	li.nav-item { background-color: #2A2A2A; padding-left: 15px; }
	
	#header-impressum { height: 400px; }
	
	.section-image { margin-bottom: 40px; }
	.portrait { height: 300px; }
	
	fieldset { padding: 10px; }
	
	footer { text-align: center!important; }
	#footer h1 { font-size: 32px!important; text-align: center; margin-inline: auto; }
	
	.footer-nav { display: block; }
	.footer-nav span { display: block; margin-bottom: 5px; }
	
	footer .logo { margin-bottom: 60px; display: block; }
	.social { display: block; margin-bottom: 50px; }
	.facebook, .instagram, .divider { display: inline!important; }
}
	
@media (min-width: 992px) {}
@media (min-width: 1200px) {}
@media (min-width: 1400px) {}


/* ****** BREAKPONTS ******

X-Small	None	<576px
Small	sm	≥576px
Medium	md	≥768px
Large	lg	≥992px
Extra large	xl	≥1200px
Extra extra large	xxl	≥1400px

****** */



/* ***** GOOGLE FONTS ***** */

/* source-sans-3-300 - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/source-sans-3-v15-latin_latin-ext-300.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/source-sans-3-v15-latin_latin-ext-300.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* source-sans-3-regular - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/source-sans-3-v15-latin_latin-ext-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/source-sans-3-v15-latin_latin-ext-regular.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* source-sans-3-500 - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/source-sans-3-v15-latin_latin-ext-500.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/source-sans-3-v15-latin_latin-ext-500.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* source-sans-3-600 - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/source-sans-3-v15-latin_latin-ext-600.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/source-sans-3-v15-latin_latin-ext-600.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* source-sans-3-700 - latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/source-sans-3-v15-latin_latin-ext-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/source-sans-3-v15-latin_latin-ext-700.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}