@font-face {
    font-family: "Playfair";
    src: url("../assets/Playfair_Display/static/PlayfairDisplay-Regular.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Playfair";
    src: url("../assets/Playfair_Display/static/PlayfairDisplay-Bold.ttf") format("truetype");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Playfair";
    src: url("../assets/Playfair_Display/static/PlayfairDisplay-Regular.ttf") format("truetype");
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Playfair";
    src: url("../assets/Playfair_Display/static/PlayfairDisplay-Regular.ttf") format("truetype");
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Montserrat";
    src: url("../assets/Montserrat/static/Montserrat-Regular.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Montserrat";
    src: url("../assets/Montserrat/static/Montserrat-Bold.ttf") format("truetype");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Montserrat";
    src: url("../assets/Montserrat/static/Montserrat-Light.ttf") format("truetype");
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

body, p {
    font-family: "Montserrat", sans-serif;
    font-size: 20px;
}
.bricklayer p {
    font-size: 18px;
}
@media screen and (max-width: 840px) {
    body, p {
    font-family: "Montserrat", sans-serif;
    font-size: 16px;
}
}
h1, h2, h3, h4, h5, h6 {
    font-family: "Playfair", sans-serif;
	font-weight: bold;
}

.bottom-bar {
    background-color: #000000;      
    color: #fafafa;                    
    text-align: center;              /* Zentrierter Text */
    padding: 1rem 0;                 /* Vertikales Padding */
    font-size: 0.9rem;               /* Schriftgröße leicht verkleinert */
    border-top: 1px solid rgba(0,0,0,0.1); /* Dezente obere Linie */
}

#footer {
	color: #aaa;
	padding:0;
}
#footer .footer-headline{
	font-size: 16px;
	line-height: 28px;
	color: #fafafa;
	border-bottom: 1px solid #fafafa;
	font-weight: bold;
	padding-bottom: 5px;
}
#footer p{
	font-size: 16px;
}
#footer a{
	color: #aaa;
}
#footer a:hover{
	color: #fff;
}
#footer p.footer-headline a {
	color: #fafafa;
}

#footer .footer-container {
	color: #fafafa;
	background-color: #231F20;
	text-align: left;
}
#footer .columns {
	padding: 95px 0;
}
p {
	margin: 0 0 26px !important;
}
.center{
	text-align: center;
}
.modular-features .feature-content, .modular-features .feature-icon h6{
	color: #231F20;
}
.dark .modular-features .column:hover .feature-icon {
    color: #fafafa;
}
.dark, .dark h2, .dark h3, .dark.modular-features .feature-content, .dark.modular-features .feature-icon h6{
	color: #fafafa;
	background-color: #231F20;
}
.modular-default{
	padding: 50px 0;
}
.modular-default.small{
	padding: 0;
}
.modular-features.small .frame-box{
	padding-bottom: 0;
}
.modular.dark.special {
	padding: 100px 0px;
	background-color: #231F20;
}
.modular.dark.special .container {
	padding: 25px;
    border-radius: 15px;
}
.modular.dark.special .container,
.modular.dark.special .container h1,
.modular.dark.special .container h2,
.modular.dark.special .container h3,
.modular.dark.special .container p {
    background-color:#fafafa;
	color: #231F20;
}
/** SBS **/
section.sbs .sbs {
    margin: 0;
    padding: 1rem 3rem;
    gap: 2rem;
}
section.sbs.wide-content .sbs-content{
	width:60%;
}
section.sbs.wide-content .sbs-image{
	width:40%;
}
.sbs-image img{
	box-shadow: 0 0 15px 0 rgba(69, 77, 93, 0.4);
}
.noshadow .sbs-image img{
    box-shadow: none;
}
	
@media (max-width: 840px) {

	section.sbs .sbs,
	section.sbs .sbs.layout-right {
		display: flex;
		flex-direction: column !important;
	}

	section.sbs .sbs .sbs-content, section.sbs .sbs .sbs-image {
		width: 100%;
	}
	section.sbs.image-bottom .sbs .sbs-content {
		order: 1;
	}

	section.sbs.image-bottom .sbs .sbs-image {
		order: 2;
	}
	section.sbs .sbs {
    	padding: 1rem 0;
	}
	section.sbs.center .sbs .sbs-content.center-left {
	    text-align: center;
	}
	
	#breadcrumbs {
		display: none;
	}
}



/** CARD **/
.card{
	border-radius: 15px;
	box-shadow: 0 0 15px 0 rgba(69, 77, 93, 0.4);
	background-color:white;
	margin: 25px 5px 5px 5px;
	border:0px;
}
.card .card-image:first-child img {
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
}
.card .card-body {
	    padding: 20px 30px 40px 30px;
}

.vertical-align{
	vertical-align: middle;
}

.hero{
	padding-top:0px;
	background-color: rgba(69, 77, 93, 0.4);
}
.hero .container {
	padding-top: 6rem;
	inset: 0;
}
.NLPM{
	color:#a47936;
	font-weight: bold;
	white-space: nowrap;
}
.nowrap{
	white-space: nowrap;
}

.modular-features .feature-icon h4 {
    line-height: 1;
    z-index: 1;
    font-weight: 600;
    margin: 0;
    display: block;
    color:#a47936;
}
#header {
	height: 100px;
	font-weight: 500;
}

body.header-fixed.header-animated #header.scrolled {
    height: 80px;
}
#header .container{
	margin-top: 10px;
    max-width: none;
}
#header .logo svg, #header .logo img {
    height: 60px;
}
.header-dark.header-transparent #header{ 
    background: rgba(25, 37, 67);
}
.header-dark.header-transparent #header:not(.scrolled) {
    background: rgba(25, 37, 67, 0.7);
}
body.header-fixed.header-animated #header.scrolled .logo img {
    height: 50px;
    margin-top: 15px;
}
body:is(.header-light) #header .navbar-brand.inverted img, body:not(.header-dark, .header-transparent) #header .navbar-brand.inverted img, body #header.scrolled .navbar-brand.inverted img {
    filter: drop-shadow(2px 4px 6px black);
}
#header ul li a.active {
    border-bottom: 3px solid #a47936;
    font-weight: 700;
}
#header ul ul li a.active {
    border-bottom: none;
}
.menu-category {
	font-weight: 700;
	padding: 0.5rem 1rem 0.5rem 15px;
	cursor: default;
	color:  rgba(25, 37, 67);
}
.treemenu .menu-category {
	color:  #fafafa;
}
.treemenu .menu-category .toggler{
	display: none;
}
body.header-fixed.header-animated #header.scrolled ~ .mobile-menu .button_container {
    top: 20px;
}
h2.smallh2{
	margin-top:0px;
}
.btn{
	background-color:  #a47936;
    color: #fafafa !important;
    border-radius: 6px;
    padding-top: 17px;
    padding-bottom: 17px;
    font-weight: bold;
    border-style: none;
    padding-right: 45px;
    padding-left: 45px;
    border-top-width: 1px;
    border-right-width: 1px;
    border-left-width: 1px;
    box-shadow: 0px 0px 15px 0px #231F20;
    height: unset !important;
    width:100%;
    margin-top: 20px;
    white-space: break-spaces;
}
.btn:focus, .btn:hover, .button:focus, .button:hover {
    text-decoration: none;
    border-color: rgba(25, 37, 67);
    background: rgba(25, 37, 67);
}
.active.button,.btn.active,.btn:active,.button:active {
    text-decoration: none;
    color: #fff;
    border-color: rgba(25, 37, 67);
    background: rgba(25, 37, 67);
}

.center ul, .center ol {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding-left: 0;
}

.center ul li, .center ol li {
	text-align: left;
}

@media (max-width: 840px) {
	.center ul, .center ol {
		display: block;
		padding-left: 0;
	}
}

.lSSlideOuter a{
	display: none;
}
.dropmenu ul {
    flex-direction: row;
    align-items: unset;
}
.overlay-menu ul {
    align-items: normal;
}
.treemenu li a.active {
    color: #a47936 !important;
}


.header-dark #header:not(.scrolled) a, #header a {
    color: #fafafa !important;
}
.header-dark #header .dropmenu ul ul a {
    color: #454d5d !important;
}

@media screen and (max-width: 840px) {
    section.cards .cards-list {
        grid-template-columns: 100%;
    }
}
.modular-default.offset-box .container{
	margin-top: -90px;
	border-radius: 20px;
	background-color: #fafafa;
}

.video-thumb img{
	display:block;
	width:100%;
	cursor:pointer;
}

.video-lightbox{
	display:none;
}

.video-lightbox video{
	width:90vw;
	max-width:1200px;
	height:auto;
}

.featherlight .featherlight-content, .featherlight .featherlight-inner {
	height: stretch; 
	width: stretch;
}

#breadcrumbs {
    padding-inline-start: 0;
    font-size: 12px;
}
#breadcrumbs span{
	padding: 0;
}
#breadcrumbs span:not(:first-child)::before, #breadcrumbs a:not(:first-child)::before {
    padding-right: 0;
}
.page-toc {
	font-size: 14px;
}

.jqmodal
 {
    max-width: unset;
}

.section.blog-listing section.section, .section.blog-listing section.sbs .sbs{
	padding:0;
}