/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Handling Updates
-----------------------------------------------------------------*/

/* open-sans-regular - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/open-sans-v18-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/open-sans-v18-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/open-sans-v18-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/open-sans-v18-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('fonts/open-sans-v18-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/open-sans-v18-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
	font-display: swap;
}


body {
	line-height: 1.5;
	color: #555;
	font-family: 'Open Sans', sans-serif; font-display: swap; 
	font-size: 1rem;
	word-wrap: break-word;
	 -moz-hyphens: auto;
   -o-hyphens: auto;
   -webkit-hyphens: auto;
   -ms-hyphens: auto;
   hyphens: auto; 
}

  

.font-body { font-family: 'Open Sans', sans-serif; font-display: swap; }
.font-primary { font-family: 'Open Sans', sans-serif;  font-display: swap; }
.font-secondary { font-family: 'Open Sans', sans-serif;  font-display: swap; }

p, pre, ul, ol, dl, dd, blockquote, address, table, fieldset, form {
    margin-bottom: 20px;
}

h1, h2, h3, h4, h5, h6 {
	color: #bf1835;
	font-weight: 500;
	line-height: 1.5;
	margin: 0 0 30px 0;
	font-family: 'Open Sans', sans-serif; 
	font-display: swap; 
	word-wrap: break-word;
}
h2 { font-size: 36px; margin-bottom:20px;}
h3 { font-size: 28px; margin-bottom:20px;}
h4 { font-size: 22px; margin-bottom:10px;}

.promo h3 {  font-weight: 500; margin-bottom: 20px; text-transform: uppercase;letter-spacing: 1px; }
.promo .heading-block::after {
    content: '';
    display: block;
    margin-top: 20px;
    border-top: 2px solid #fff;
}

.lead {  font-size: 1.25rem;  font-weight: 400;}

a { color: #bf1835; text-decoration: underline;}

.pb-0 { padding-bottom: 0px!important}
.vh-70 { height: 70vh !important;}
.vh-20 { height: 20vh !important;}
.vh-35 { height: 35vh !important;}
.vh-40 { height: 40vh !important;}
.w-90 { width: 90%}

::selection {
	background: #bf1835;
	color: #FFF;
	text-shadow: none;
}

::-moz-selection {
	background: #bf1835; /* Firefox */
	color: #FFF;
	text-shadow: none;
}

::-webkit-selection {
	background: #bf1835; /* Safari */
	color: #FFF;
	text-shadow: none;
}


.stretched #wrapper {  margin: auto; max-width: 1920px!important;}


#header { padding: 20px 0px 20px 0px;}
#header-wrap { width: 100%;  max-width: 1920px; border-bottom: 1px solid #fff;}
.stretched .full-header #header-wrap > .container {
    width: 100%;
    max-width: none;
    padding: 0px;
}
.full-header #logo { border-right: 1px solid #fff;  margin-left: 50px;}

.sticky-header #header-wrap { box-shadow: none;}

.content-wrap {
    position: relative;
    padding: 50px 0;
    padding-bottom: 60px;
    overflow: hidden;
}

.full-header .primary-menu .menu-container { border-right: none;}

.menu-container li a:hover,
.menu-container li.current a {color: #bf1835;}

.menu-link {
    color: #876848;
    font-weight: 500;
    font-size: 1.1rem;  
    font-family: 'Open Sans', sans-serif;
}
.svg-trigger path {  stroke: #bf1835;  stroke-width: 8;  stroke-linecap: round;}
.svg-trigger {  width: 60px;  height: 60px;}
#primary-menu-trigger, #page-menu-trigger { width: 100px; height: 60px;}

.bg-beige { background-color: #f3eee4;}
.bg-red { background-color: #bf1835;}
.bg-grau { background-color: #f9f9f9;}

ul, ol, dl, dd, blockquote, address, table, fieldset, form {  margin-bottom: 20px;}
ol li { margin-left: 20px; line-height: 1.8em;}


/********************* content *******************/

#page-title p.title-start { font-size: 40px; background:rgba(135, 104, 72, 0.8); color: #fff; padding: 30px; border-radius: 10px; max-width: 700px; position: absolute; right: 150px; top: 40%; }

#page-title h1 {
    line-height: 1;
    font-weight: 500;
    letter-spacing: 1px;
    color: #bf1835;
    font-size: 1.8rem;
    text-transform: uppercase;
}

#page-title.page-title-parallax h1 { font-size: 44px; font-weight: 500;}
#page-title.page-title-parallax span { font-size: 1.3rem;}
#page-title span {
    margin-top: 12px;
    font-weight: 400;
    color: #876848;
    font-size: 16px;
}

.heading-block { margin-bottom: 40px;}

.heading-block h1, .heading-block h2, .heading-block h3, .heading-block h4, .emphasis-title h1, .emphasis-title h2 {
    margin-bottom: 0;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #bf1835;
}

.heading-block h1 { font-size: 44px;}
.heading-block h2 { font-size: 36px;}
.heading-block h3 { font-size: 28px;}

.heading-block > span:not(.before-heading) {
    display: block;
    margin-top: 10px;
    font-weight: 400;
    color: #876848;
}
.heading-block h1 + span { font-size: 1.5rem;}
.heading-block h2 + span { font-size: 1.3rem;}

.card-body { 
   -moz-hyphens: auto;
   -o-hyphens: auto;
   -webkit-hyphens: auto;
   -ms-hyphens: auto;
   hyphens: auto; 
}
.card-body .heading-block::after { margin-top: 30px; border-top: none;}
.card-body .heading-block > span:not(.before-heading) {  margin-top: 0px;}

blockquote { border-left: 5px solid #bf1835;}

.dropcap {  font-size: 56px; color: #bf1835;}

.owl-carousel .owl-dots .owl-dot {
    width: 20px;
    height: 20px;
    margin: 30px 4px 0 4px;
    background-color: #bf1835;
}
.owl-carousel .owl-nav [class*=owl-]:hover {background-color: #bf1835 !important;}

.testi-content p { font-size: 1.2em; line-height: 1.5;}
.testi-meta { font-size: 16px; font-weight: 500;}

.testi-meta span {
    color: #666;
    font-size: 16px;
    text-transform: none;
    padding-left: 0px;
	margin-top: 10px;
}

.testi-meta::before {  content: ' ';}
.testi-content p::before { content: '“';}
.testi-content p::after { content: '”';}


.iconlist { font-size: 1em; color: #555;}
.iconlist i {color: #d6c7a4;}

.card { background: #f8f5ef;   box-shadow: 0 0 0px rgba(214, 199, 164, 0.5);}
.card-header {background-color: #f2ede4; border-bottom: none; color: #bf1835; font-size: 34px;}
.card-text { color: #555;}

.grid-container {  overflow:visible;}

.section-features .card-header {background-color: #f3eee4; border-bottom: 1px solid #ccc; color: #bf1835;}
.section-features .card { background: #FFF;  box-shadow: 0 0 15px rgba(214, 199, 164, 0.5);}
.section-features .card-text { color: #555;}
.section-features .card-title { font-size: 28px;}

.section-features .heading-block::after { margin-top: 20px;}


.widget_links:not(.widget-li-noicon) li::before {
    padding-right: 4px;
    color: #bf1835;
}
.widget_links li { font-size: 16px; line-height: 1.6em;}


/********************* footer *******************/

#footer {
    position: relative;
    background-color: #bf1835;
    border-top: 2px solid #d6c7a4;
}

 #copyrights { background-color: #bf1835; color: #fff; font-size: 1rem; line-height: 1.8;}

 #copyrights .copyright-links a {
    display: inline-block;
    margin: 0 3px;
    border-bottom: 1px dotted #fff;
	color: #fff; text-decoration: underline;
}

#gotoTop:hover {  background-color: #bf1835;}


/********************* responsive *******************/


@media (min-width: 992px) and (max-width: 1440px) {	
	.menu-link {  padding: 20px 20px;}
	.primary-menu {position: relative;  margin: auto;}
	.full-header #logo { border-right: 1px solid #fff; margin: auto; padding-right: 0px;}
	.full-header #logo img { height: 90px!important;}
	#header { padding: 20px 0px 20px 0px;}
	.header-wrap-clone {height: calc( 152px + 1px );}
	
	#page-title p.title-start { font-size: 32px;  max-width: 460px; }
	#page-title {  padding: 2rem 0;}	

	.col-md-4 {-ms-flex: 0 0 50%; flex: 0 0 50%; max-width: 50%;}	
	
}

@media (min-width: 1280px) and (max-width: 1440px) {	
	.header-wrap-clone {height: calc( 90px + 1px );}
	#page-title p.title-start {max-width: 475px;}
}
@media (min-width: 1024px) and (max-width: 1280px) {	
	.header-wrap-clone {height: calc( 152px + 1px );}
}

/* ---------- bis 1280  ----------*/

@media  (max-width: 1280px) {
	#page-title p.title-start { font-size: 30px;  padding: 20px;  max-width: 450px;  top: 40%;  right: 30px;}
	.heading-block h1 { font-size: 34px;}
	.heading-block h2 {  font-size: 30px;}
	.heading-block h3 {  font-size: 26px;}
	.card-header { font-size: 26px;}
	h1 {font-size: 34px;}
	h2 {font-size: 30px;}
	h3 {font-size: 26px;}

}

/* ---------- bis 1024  ----------*/

@media  (max-width: 1024px) {
	.vh-35 { height: 25vh !important;}
	.col-md-4 {-ms-flex: 0 0 100%; flex: 0 0 100%; max-width: 100%;}
	.col-md-7 {  -ms-flex: 0 0 100%; flex: 0 0 100%; max-width: 100%;}
	.col-md-5 {  -ms-flex: 0 0 100%; flex: 0 0 100%; max-width: 100%;}
	.col-md-6 {  -ms-flex: 0 0 100%; flex: 0 0 100%; max-width: 100%;}
	.align-items-end { -ms-flex-align: start !important; align-items: flex-start !important;}
	
}

/* ---------- bis 992  ----------*/

@media  (max-width: 992px) {
	
	.primary-menu { margin-left: 62px;}
	
}

@media (min-width: 768px) and (max-width: 992px) {	
	.vh-70 { height: 40vh !important;}
	.vh-35 { height: 20vh !important;}
}


/* ---------- ab 768  ----------*/

@media  (min-width: 768px) {
	footer .col-md-4 { -ms-flex: 0 0 33.333333%; flex: 0 0 33.333333%; max-width: 33.333333%;}

}

/* ---------- bis 768  ----------*/

@media  (max-width: 768px) {
	.header-wrap-clone { display: none;}
	.vh-70 { height: 50vh !important;}	
	footer .col-md-4 { -ms-flex: 0 0 100%; flex: 0 0 100%; max-width: 100%;}
	}

/* ---------- bis 440  ----------*/

@media  (max-width: 440px) {
	
	.full-header #logo {   margin-left: 20px;}
	.primary-menu { margin-left: 33px;}
	.vh-70 { height: 30vh !important;}
	.full-header #logo img { height: 80px!important;}
	#page-title p.title-start { font-size: 20px;  padding: 15px;  max-width: 300px;  top: 40%;  right: 10px;}
	.heading-block h1 { font-size: 32px;}
	.heading-block h2 {  font-size: 26px;}
	.heading-block h3 {  font-size: 24px;}
	.card-header { font-size: 24px;}
	.section-features .card-title { font-size: 24px;}
}




/********************* font icons *******************/

@font-face {
	font-family: 'font-icons';
	src:url('fonts/font-icons.eot');
	src:url('fonts/font-icons.eot') format('embedded-opentype'),
		url('fonts/font-icons.woff') format('woff'),
		url('fonts/font-icons.ttf') format('truetype'),
		url('fonts/font-icons.svg') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'lined-icons';
	src:url('fonts/lined-icons.eot');
	src:url('fonts/lined-icons.eot') format('embedded-opentype'),
		url('fonts/lined-icons.woff') format('woff'),
		url('fonts/lined-icons.ttf') format('truetype'),
		url('fonts/lined-icons.svg') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Simple-Line-Icons';
	src:url('fonts/Simple-Line-Icons.eot');
	src:url('fonts/Simple-Line-Icons.eot?#iefix') format('embedded-opentype'),
		url('fonts/Simple-Line-Icons.woff') format('woff'),
		url('fonts/Simple-Line-Icons.ttf') format('truetype'),
		url('fonts/Simple-Line-Icons.svg#Simple-Line-Icons') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

[class^="icon-"], [class*=" icon-"],
[class^="icon-line-"], [class*=" icon-line-"],
[class^="icon-line2-"], [class*=" icon-line2-"],
.side-header #primary-menu ul > li.sub-menu > a:after,
.docs-navigation ul ul li.current a:after {
	display: inline-block;
	font-family: 'font-icons';
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: inherit;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}


.icon-lg {
  font-size: 1.3333333333333333em;
  line-height: 0.75em;
  vertical-align: -15%;
}

.iconlist {
	padding-left: 0;
	margin-left: 1.75em;
	list-style-type: none;
}

.iconlist li { position: relative; margin-bottom: 8px; }

.iconlist ul {
	list-style-type: none;
	margin: 5px 0 5px 25px;
}

.iconlist > li [class^="icon-"]:first-child, .iconlist > li [class*=" icon-"]:first-child {
	position: absolute;
	left: -1.75em;
	width: 1.75em;
	text-align: center;
	top: 1px;
}


.iconlist-color li i {
  color: #1ABC9C;
  color: var(--themecolor);
}

.icon-border {
  padding: .2em .25em .15em;
  border: solid 0.08em #eeeeee;
  border-radius: .1em;
}
.icon.pull-left {
  margin-right: .3em;
}
.icon.pull-right {
  margin-left: .3em;
}
.icon-spin {
  -webkit-animation: spin 2s infinite linear;
  -moz-animation: spin 2s infinite linear;
  -o-animation: spin 2s infinite linear;
  animation: spin 2s infinite linear;
}
@-moz-keyframes spin {
  0% {
    -moz-transform: rotate(0deg);
  }
  100% {
    -moz-transform: rotate(359deg);
  }
}
@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
  }
}
@-o-keyframes spin {
  0% {
    -o-transform: rotate(0deg);
  }
  100% {
    -o-transform: rotate(359deg);
  }
}
@-ms-keyframes spin {
  0% {
    -ms-transform: rotate(0deg);
  }
  100% {
    -ms-transform: rotate(359deg);
  }
}
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}

.i-circled {
    text-align: center !important;
    font-size: 20px;
    text-shadow: 1px 1px 1px rgba(255,255,255,0.3);
    color: #bf1835;
    width: 25px !important;
    height: 25px !important;
    line-height: 25px !important;
    background-color: #fff;
    float: none;
}

.icon-envelope2:before { content: "\e603";}
.icon-world:before { content: "\e697";}
.icon-angle-left:before { content: "\e7a4";}
.icon-angle-right:before { content: "\e7a5";}
.icon-angle-up:before { content: "\e7a6";}
.icon-user:before {content: "\ec07";}
.icon-calendar3:before {content: "\e728";}
.icon-lightbulb:before {content: "\eaac";}
.icon-link:before { content: "\eaad";}
.icon-line-grid:before {content: "\e102";}
.icon-call:before { content: "\e844";}
.icon-mobile:before { content: "\eadf";}
.icon-line-ellipsis:before {content: "\e129";}
.icon-reorder:before {content: "\e76d";}
.icon-line-cross:before {content: "\e117";}
.icon-ok-sign:before {content: "\e70f";}










