* {
	box-sizing:border-box;
}

@media screen and (min-width: 601px) and (max-width: 992px) {
	.w3-hide-medium {
		display: none !important;
	}
}

body {
    font-family: sans-serif;
	background-color:var(--color-background);
	color:#222;
	font-size:100%;
	line-height:1.7;
}

h1, h2, h3, h4, h5, h6 {
  font-family: sans-serif;
  font-weight:bold;
  color:#111;
}

h1 {
  line-height:1.1;
}

hr.w3-color-accent {
	border-color:var(--color-accent) !important;
}

.w3-hxlarge {
	font-size:16px;
}

.w3-xlargeresponsive {
	font-size:17px;
}

.w3-hxlargeresponsive {
	font-size:17px;
}

.w3-white-text-dp h3 {color:white;}
.w3-white-text-dp h4 {color:white;}

nav {
	color:white;
}

header a {
    color: var(--color-accent-gradient2) !important;
}

.w3-dropdown-hover:hover > .w3-button:first-child, .w3-dropdown-click:hover > .w3-button:first-child {
    background-color: var(--color-accent-light) !important;
    color: white !important;
}

.w3-button:hover {
    color: white !important;
    background-color: var(--color-accent-light) !important;
}

.ribbon {
  width: 60px;
  font-size: 14px;
  padding: 4px;
  position: absolute;
  right: -25px;
  top: -12px;
  text-align: center;
  border-radius: 25px;
  transform: rotate(20deg);
  background-color: #ff9800;
  color: white;
}

.mytitles {
	width: 100%;
	object-fit:cover;
	height:60vh;
	min-height:600px;
	max-height:600px;
}
.w3-row.custom-flex  {display: flex; flex-wrap: wrap;}
.w3-row.custom-flex > .w3-col {flex: 1 0 290px;}
.w3-row-padding.custom-flex  {display: flex; flex-wrap: wrap;}
.w3-row-padding.custom-flex > .w3-col > div{height:100%}

.w3-hover-accent-light:hover {
	background-color:var(--color-accent-light)!important;
}

.w3-noshadow {
	-webkit-box-shadow: none !important;
	-moz-box-shadow: none !important;
	box-shadow: none !important;
}

.glow {
	text-shadow: 0px 0px 5px #000;
}

.noglow {
	text-shadow: 0px 0px 0px #000 !important;
}

.w3-card-8 {box-shadow:0 4px 20px 0 rgba(0,0,0,.6),0 4px 20px 0 rgba(0,0,0,.5)}

.text-justify-initials::first-letter {
	initial-letter:2;
}

.text-justify-initials {
	text-align:justify;
	hyphens:auto;
	
}

.text-justify {
	text-align:justify;
	hyphens:auto;
}

.pagetitleimage {
	width: 100%;
	object-fit:cover;
	height:480px;
}




a {
	color:var(--color-accent);
	
}

p > a {
	font-weight:bold;
}

footer a {
	color:#fff;
	font-weight:normal;
}


footer h1,footer h2, footer h3, footer h4, footer p {
	color:#fff;
}

footer div.w3-accent {
	background: linear-gradient(0deg, var(--color-accent-gradient1) 0%, var(--color-accent) 100%);
}

p.pagetitle {
	color:white;
	margin-bottom:0px;
	text-shadow: 2px 2px 12px #000000;
	font-size:360% !important;
	font-weight:bold;
	line-height:1.1;
}
p.pagesubtitle {
	color:white;
	font-style:italic;
	margin-top:0px;
	text-shadow: 2px 2px 12px #000000;
	font-size:170% !important;
	margin-bottom:0px;
}


.lh1-3 {line-height:1.3 !important}

.w3-input {
	outline: none;
	caret-shape:block;
}

textarea {
	background-color:white !important;
}

.nounderline {
	text-decoration:none !important;
}

.hk-color-border-cyan {
	border-color:#37858b !important;
}

.hk-color-bg-gray {
	background: #fff;
	abackground: linear-gradient(0deg, rgba(125,125,125,1) 0%, rgba(160,160,160,1) 100%);
}

.hk-color-bg-gray1 {
	background: #FFF;
	abackground: linear-gradient(0deg, rgba(242,244,243,1) 0%, rgba(255,255,255,1) 50%);
}


.header {
	background: var(--background-gradient1);
}

header button .w3-button {
	color:white;
}

.soma-logo {
	margin-left:16px;
	margin-top:15px;
	height:65px;
}

.fdk-title {
	color:#f6eb4a;
	margin-top:10px;
	margin-bottom:2px;
	font-size:180%;
	font-weight:bold;
}
.fdk-subtitle {
	color:#f6eb4a;
	margin-top:-14px;
	margin-bottom:0px;
	font-size:120%;
	font-weight:bold;
}


.mobilemenu {
	font-size:175% !important;
	margin-top:-10px;
	padding-top:4px !important;
	padding-bottom:4px !important;
	color:white !important;
}

.w3-display-responsive-bottommiddle {
	position:absolute;left:0;bottom:0;
	margin-left:20px;
	margin-bottom:20px;
}

.w3-contentnarrow {
	max-width:1120px !important;
}

.w3-btnlight {
	color:#444;
	background:linear-gradient(0deg, rgba(242,244,243,1) 0%, rgba(255,255,255,1) 100%);
	transition: background-color 0.2s ease-in-out 0ms, color 0.2s ease-in-out 0ms;
}
.w3-btnlight:hover{
		background:inherit;
		background-color:var(--color-accent) !important;
		color:white;
		box-shadow:0 2px 5px 0 rgba(0,0,0,0.26),0 2px 10px 0 rgba(0,0,0,0.22)
}

.w3-btnlight-red {
	color:#444;
	background:linear-gradient(0deg, rgba(242,244,243,1) 0%, rgba(255,255,255,1) 100%);
	transition: background-color 0.2s ease-in-out 0ms, color 0.2s ease-in-out 0ms;
}
.w3-btnlight-red:hover{
		background:inherit;
		background-color:rgba(250,157,173) !important;
		color:white;
		box-shadow:0 2px 5px 0 rgba(0,0,0,0.26),0 2px 10px 0 rgba(0,0,0,0.22)
}


@media (max-height:900px) {
	.w3-display-responsive-bottommiddle {
		margin-top:-160px !important;
	}	
}


/* Anpassungen für SMALL */
@media (max-width:650px) {
	.mobilemenu {
		font-size:33px !important;margin-top:8px;margin-bottom:7px;
	}
	h1 {
		font-size:30px;
	}
	h2 {
		font-size:25px;
	}
	h3 {
		font-size:20px;
	}
	h4 {
		font-size:18px;
	}
	.w3-hxlargeresponsive {
		font-size:17px;
	}
	.w3-xlargeresponsive {
		font-size:19px;
	}
	.w3-display-responsive-bottommiddle {
		position:absolute;top:50%;left:50%;
		transform:translate(-55%,-99%);
		-ms-transform:translate(-55%,-82%);
		width:86%;
		text-align:center;
		margin-top:-105px !important;
	}
	p.fadertitle {
		font-size:240% !important;
	}
	p.pagetitle {
		font-size:240% !important;
	}
	#booking {
		min-width:90%;
		max-width:100%;
		position:absolute;left:50%;bottom:0;transform:translate(-50%,0%);-ms-transform:translate(-50%,0%);
	}

	#booking > div >div {
		min-width:120px;
		width:50%;
		height:80px;
		padding-left:5px;
		padding-right:5px;
	}

	#booking > div div div  {
		width:100%;
		min-width:160px;
		height:45px;
		text-align:center;
		padding-top:10px;
	}	

	#registering {
		min-width:90%;
		max-width:100%;
		position:absolute;left:50%;bottom:0;transform:translate(-50%,0%);-ms-transform:translate(-50%,0%);
	}

	#registering > div >div {
		min-width:120px;
		width:100%;
		height:80px;
		padding-left:5px;
		padding-right:5px;
	}

	#registering > div div div  {
		width:100%;
		min-width:160px;
		height:45px;
		text-align:center;
		padding-top:10px;
	}	

	.mytitles {
		width: 100%;
		object-fit:cover;
		height:60vh;
		min-height:450px;
		max-height:450px;
	}
}

/* Anpassungen für MEDIUM */
@media (min-width:651px) and (max-width:992px) {
	h1 {
		font-size:33px;
	}
	h2 {
		font-size:27px;
	}
	h3 {
		font-size:22px;
	}
	h4 {
		font-size:19px;
	}
	.w3-xlargeresponsive {
		font-size:20px;
	}
	.w3-hxlargeresponsive {
		font-size:18px;
	}
	.w3-display-responsive-bottommiddle {
		position:absolute;
		top:50%;
		left:50%;
		transform:translate(-55%,-50%);
		-ms-transform:translate(-55%,-50%);
		width:80%;
		text-align:center;
		margin-top:-145px !important;
	}
	.mobilemenu {
		font-size:33px !important;margin-top:8px;margin-bottom:7px;
	}
}

.w3-margin-8 {
	margin:8px !important;
}

.w3-margin-top16 {
	margin-top:16px;
}

.w3-margin-top2 {
	margin-top:2px;
}

.w3-margin-top20 {
	margin-top:20px;
}

.w3-margin-top4 {
	margin-top:4px;
}

.w3-margin-top40 {
	margin-top:40px !important;
}

.w3-margin-top30 {
	margin-top:30px !important;
}

.w3-margin-top3 {
	margin-top:3px;
}

.w3-margin-left8 {
	margin-left:8px;
}

.w3-margin-right8 {
	margin-right:8px;
}

.w3-margin-right16 {
	margin-right:16px;
}

.w3-margin-right20 {
	margin-right:20px;
}

.zindex10 {
	z-index:10 !important;
}

.vsize40 {
	height:40px;
}

.w3-marginvertical0 {
	margin-top:0px;
	margin-bottom:0px;
}

.w3-marginvertical8 {
	margin-top:8px;
	margin-bottom:8px;
}

.w3-paddingvertical1 {
	padding-top:1px;
	padding-bottom:1px;
}

.w3-paddingvertical2 {
	padding-top:2px;
	padding-bottom:2px;
}

.w3-paddingvertical3 {
	padding-top:3px;
	padding-bottom:3px;
}

.w3-paddingvertical8 {
	padding-top:8px;
	padding-bottom:8px;
}

.w3-paddingvertical20 {
	padding-top:20px;
	padding-bottom:20px;
}

.w3-paddingvertical0 {
	padding-top:0px !important;
	padding-bottom:0px !important;
}

.w3-paddinghorizontal0 {
	padding-left:0px !important;
	padding-right:0px !important;
}

.w3-paddinghorizontal10 {
	padding-left:10px !important;
	padding-right:10px !important;
}

.w3-padding0 {
	padding-top:0px !important;
	padding-bottom:0px !important;
	padding-left:0px !important;
	padding-right:0px !important;
}

.w3-padding-bottom0 {
	margin-bottom:0px !important;
}

.w3-padding-top8 {
	padding-top:8px !important;
}

.w3-padding-top16 {
	padding-top:16px !important;
}

.w3-padding-right16 {
	padding-right:16px !important;
}

.w3-padding-right32 {
	padding-right:32px !important;
}

.w3-padding-left52 {
	padding-left:52px !important;
}


.w3-margin-bottom48 {
	margin-bottom:48px !important;
}

.w3-margin-bottom24 {
	margin-bottom:30px !important;
}

.w3-margin-bottom20 {
	margin-bottom:20px !important;
}

.w3-margin-bottom16 {
	margin-bottom:16px !important;
}

.w3-margin-bottom12 {
	margin-bottom:12px !important;
}

.w3-margin-bottom3 {
	margin-bottom:3px !important;
}

.w3-margin-bottom0 {
	margin-bottom:0px !important;
}
.w3-margin-top0 {
	margin-top:0px !important;
}

@media (min-width:993px) {
	.w3-paddingright15-large {
		margin-right:24px !important;
	}
}

@media (max-width:993px) {
	.w3-panel-notopmargin-mediumorless {
		margin-top:0px !important;
	}
}

.w3-content {
	max-width:var(--width-content);
}

.w3-panel {
	margin-top: 12px;
    margin-bottom: 12px
}

.w3-panelex {
	margin-bottom:24px !important;
}

.w3-small {
	font-size:13px !important;
}

.w3-bar-item-padl {
	padding-right:0px !important;
}

.w3-opacity-90 {
	opacity:90% !important;
}

.slide {
	height:450px;
}

.w3-box-gray {
	border:1px solid #ccc;
}

.w3-box-bottombar {
	border-bottom:6px solid #ccc!important;
}

.w3-accent {
	color:#fff!important;background-color:var(--color-accent)!important;
}

.w3-text-accent {
	color:var(--color-accent)!important;
}

.w3-accentbar {
	border-bottom:4px solid var(--color-accent)!important;
}

.w3-bottomaccentbar {
	border-bottom:5px solid var(--color-accent)!important;
}

.w3-leftaccentbar {
	border-left:5px solid var(--color-accent)!important;
}

.w3-leftaccentbar-8 {
	border-left:6px solid var(--color-accent)!important;
}

.w3-leftaccentbar-red {
	border-left:5px solid rgb(250,157,173)!important;
}

.w3-leftaccentbar-red-8 {
	border-left:6px solid rgb(250,157,173)!important;
}


@media (max-width:992px) {
	.w3-accentbar {
		border-left:4px solid var(--color-accent)!important;
	}
}

.w3-image-widthhalf {
	width:50% !important;
}

.boximg img {
    width: 100%;
	object-fit:cover;
	min-height:270px;
	max-height:270px;
}

#booking {
	position:absolute;right:0;bottom:0;
	max-width:420px;
	margin-right:20px;
}

#booking > div >div {
	min-width:120px;
	height:74px;
	padding-left:5px;
	padding-right:5px;
}

#booking > div div div  {
	width:100%;
	min-width:160px;
	height:45px;
	text-align:center;
	padding-top:10px;
}

#registering {
	position:absolute;right:0;bottom:0;
	max-width:420px;
	margin-right:20px;
}

#registering > div >div {
	min-width:120px;
	height:74px;
	padding-left:5px;
	padding-right:5px;
}

#registering > div div div  {
	width:100%;
	min-width:160px;
	height:45px;
	text-align:center;
	padding-top:10px;
}


.separator img {
	padding-top:10px;
	width:200px;
}

/* Anpassungen */
@media (min-width:901px){.w3-col.m1{width:8.33333%}.w3-col.m2{width:16.66666%}.w3-col.m3,.w3-quarter{width:24.99999%}.w3-col.m4,.w3-third{width:33.33333%}}

.image-height-200 {
	width:100%;
	height:200px;
	object-fit:cover;
	max-height:200px;
}

.image-height-100 {
	width:100%;
	height:100px;
	object-fit:cover;
	max-height:100px;
}

.imagelayout1 {
	height:450px;
	width:100%;
	object-fit:cover;
	min-width:100%;
}

.imagelayout1 img {
	height:750px;
	width:100%;
	object-fit:cover;
	min-width:100%;
}

.imagelayout2 {
	height:450px;
	width:100%;
	object-fit:cover;
	object-position:10% 0%;
	min-width:100%;
}

.imagelayout2 img {
	height:750px;
	width:100%;
	object-fit:cover;
	min-width:100%;
	object-position:10% 0%;
}

#watermark
{
 position:fixed;
 bottom:5px;
 right:5px;
 opacity:0.5;
 z-index:99;
 color:white;
}


/* Helper */
.width50pminus32 {
   width: -webkit-calc(50% - 32px);
   width:    -moz-calc(50% - 32px);
   width:         calc(50% - 32px);
}

.width100pminus100 {
   width: -webkit-calc(100% - 100px);
   width:    -moz-calc(100% - 100px);
   width:         calc(100% - 100px);
}

.width100pminus150 {
   width: -webkit-calc(100% - 150px);
   width:    -moz-calc(100% - 150px);
   width:         calc(100% - 150px);
}

.width100pminus210 {
   width: -webkit-calc(100% - 182px);
   width:    -moz-calc(100% - 182px);
   width:         calc(100% - 182px);
}



@keyframes gradient {
    0% {
        background-position: 0% 0%;
    }
    50% {
        background-position: 100% 100%;
    }
    100% {
        background-position: 0% 0%;
    }
}

.wave {
    background: rgb(70 70 70 / 25%);
    border-radius: 1000% 1000% 0 0;
    position: fixed;
    width: 200%;
    height: 32em;
    animation: wave 20s -23s linear infinite;
    transform: translate3d(0, 0, 0);
    opacity: 0.8;
    bottom: 0px;
    left: 0;
    z-index: -1;
}

.wave:nth-of-type(2) {
    bottom: -4.25em;
    animation: wave 18s linear reverse infinite;
    opacity: 0.9;
}

.wave:nth-of-type(3) {
    bottom: -8.5em;
    animation: wave 20s -1s reverse infinite;
    opacity: 0.95;
}

@keyframes wave {
    2% {
        transform: translateX(1);
    }

    25% {
        transform: translateX(-25%);
    }

    50% {
        transform: translateX(-50%);
    }

    75% {
        transform: translateX(-25%);
    }

    100% {
        transform: translateX(1);
    }
}

.flat-list {
	margin-left: 0;
	padding-left: 0.1em;
	list-style-position: inside;
}

.background-fill {
	position: absolute;
	top: 100px;
	left: 0;
	right: 0;
	bottom: 0;
	background-image: url('/templates/default/_assets/img/jobadvert0001.png');
	background-size: cover;
	background-position: top; 
	background-repeat: no-repeat;
	z-index: 1;
}

@media (max-width:992px) {
	.background-fill {
		top:80px;
	}
	.jobadvert1 {
		min-height:500px !important;
	}
}

.jobadvert-link:hover .w3-card-2 {
	box-shadow: 0 0 12px rgba(230, 121, 43, 0.5);
	transform: scale(1.01);
	transition: all 0.2s ease-in-out;
	cursor: pointer;
	border-color: #e6792b;
}

.section-icon {
	display: inline-block;
	margin-right: 0.5em;
	font-size: 1.2em;
	background: linear-gradient(135deg, #d76014, #b54a06);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	filter: drop-shadow(1px 1px 1px rgba(0, 0, 0, 0.3));
}


