/***************************************************************************
* Allgemeine Definitionen
****************************************************************************/

/* STANDARDS */
strong, b 										{font-weight: 600; font-family: inherit;}
em, i 											{}
sup, sub 										{line-height: 0 !important; font-size: 50%;}
img	 											{overflow: hidden;}
a, input, textarea, select  					{outline: 0 !important; border: 0;}

button:focus 									{outline: none;}
.btn 											{text-decoration: none !important;}
.btn:focus, .btn:active, .btn:active:focus 		{outline: none; box-shadow:none; text-decoration: none;}

a:focus:not(:focus-visible),
.custom-btn:focus:not(:focus-visible),
.nav-link:focus:not(:focus-visible)				{outline: none}

a:focus-visible									{color: var(--color-primary); border-color: var(--color-primary); outline: solid; outline-color: var(--color-primary); outline-width: 4px; outline-offset: 2px;}
.custom-btn:focus-visible						{outline: solid !important; outline-color: var(--color-black) !important; outline-width: 5px !important; outline-offset: 2px;}
.nav-link:focus-visible							{outline: solid; outline-color: var(--color-black) !important; outline-width: 4px; outline-offset: 0px}


/* PROJECT */
html											{overflow-y: scroll; scroll-behavior: smooth;}
body											{font-family: Verdana, sans-serif; line-height: 1; color: var(--color-primary); background-color: var(--color-white); min-height: 100vh;
												font-size: 100%; text-align: center; overflow: hidden;}
body main 										{width: 100%; max-width: 2560px; margin: 0 auto; padding-top: 10em;}
p, ul											{line-height: 1.5; margin-bottom: 1.5em;}
li, label										{line-height: 1.5;}
figcaption										{}


	@media screen and (min-width: 1200px) {
		
		body {background: var(--color-bg-lightest);}
		
	}	
	
	@media screen and (max-width: 1199px) {
		
		body main 										{padding-top: 7em;}
		
	}

	@media screen and (max-width: 991px) {
		
		body main 										{padding-top: 6em; overflow: visible;}
		
	}

	@media screen and (max-width: 767px) {
		
		html 											{scroll-padding-top: 1rem;} 
		body main 										{padding-top: 5em;}
		
	}
	
	
/* Einbindung Schrift "PT Sans Caption", LICENSE: /css/webfonts/OFL.txt */
@font-face {
	font-family: 'PTSansCaption';
	src: url('webfonts/PTSansCaption-Regular.woff') format('woff');
	font-weight: 400;
	font-style: normal;
}

@font-face {
	font-family: 'PTSansCaption';
	src: url('webfonts/PTSansCaption-Bold.woff') format('woff');
	font-weight: 700;
	font-style: normal;  
}


/* -----------------------------------------------------------------------------------------------------------------------------
 * COLORS
----------------------------------------------------------------------------------------------------------------------------- */
:root {

	--color-primary: 		#593f33;
	--color-secondary: 		#acb441;
	--color-white: 			#ffffff;
	--color-black:			#000000;
	--color-grey:  			#b3b3b3;
	--color-light: 			#f9f9f5;
	
	--color-bg-light: 		#f0f2d4;
	--color-bg-lightest: 	#fafbf4;

 }

.custom-color-grey  		{color: var(--color-grey);}
	
::-moz-selection	{background:  rgb(246, 255, 141); color: rgb(0, 0, 0);}
::selection      	{background:  rgb(246, 255, 141); color: rgb(0, 0, 0);}


/* -----------------------------------------------------------------------------------------------------------------------------
 * FONTS + SIZES + MARGINS
----------------------------------------------------------------------------------------------------------------------------- */
h1, .h1 	{margin: 0 0 .75em 0; font-family: 'PTSansCaption', sans-serif; font-size: 200%; font-weight: 700; line-height: 1.333; color: var(--color-primary); letter-spacing: -.015em;}
h2, .h2		{margin: 0 0 0.425em 0; font-family: 'PTSansCaption', sans-serif; font-size: 215%; font-weight: 700; line-height: 1.333; letter-spacing: -0.00375em;}
h3, .h3  	{margin: 0 0 0.75em 0; font-family: 'PTSansCaption', sans-serif; font-size: 195%; font-weight: 400; line-height: 1.3999; letter-spacing: -.0125em;}
h4, .h4  	{margin: 0 0 1.575em 0; font-size: 100%; font-weight: 700; line-height: 1.4444;}
p, ul		{line-height: 1.4444;}

.custom-size-xxs	{font-size: 85%;}
.custom-topic 		{margin: 0 0 .75em 0; font-family: 'PTSansCaption', sans-serif; font-size: 130%; font-weight: 400; line-height: 1.3999; letter-spacing: -0.00375em;}


/* -----------------------------------------------------------------------------------------------------------------------------
 * LAYOUT HELPER
----------------------------------------------------------------------------------------------------------------------------- */
.custom-divider-01 {width: 100%; display: block; height: 1em;}
.custom-divider-02 {width: 100%; display: block; height: .75em;}


/* -----------------------------------------------------------------------------------------------------------------------------
 * LINKS
----------------------------------------------------------------------------------------------------------------------------- */
a												{color: var(--color-primary); text-decoration: none;}
a:hover											{color: var(--color-primary);}
p a												{border-bottom: 1px dotted var(--color-primary); text-decoration: none;}
p a:hover, label a:hover, h1 a:hover			{opacity: .65;}

a:focus:not(:focus-visible),
iframe::focus:not(:focus-visible)				{outline: none}

a:focus-visible									{outline: solid; outline-color: var(--color-primary); outline-width: 4px; outline-offset: 2px;}
iframe:focus-visible 							{outline: solid; outline-color: var(--color-primary); outline-width: 5px; outline-offset: 2px;}

.custom-tel-link,
.custom-tel-link span							{color: var(--color-primary) !important;}

.custom-no-dec,
.custom-no-dec a								{border-bottom: none; text-decoration: none;}

.custom-icon-link-download						{position: relative; margin-left: 2em; }
.custom-icon-link-download img					{position: absolute; left: -2em; width: 1.5em; height: auto;}


/* -----------------------------------------------------------------------------------------------------------------------------
 * FORMS
----------------------------------------------------------------------------------------------------------------------------- */
::placeholder 			{color: var(--color-primary) !important; opacity: .35 !important;}
:-ms-input-placeholder 	{color: var(--color-primary) !important;}
::-ms-input-placeholder {color: var(--color-primary) !important;}

.form-check-input.is-valid ~ .form-check-label, .was-validated .form-check-input:valid ~ .form-check-label {color: inherit !important;}
.form-check-input.is-invalid ~ .form-check-label, .was-validated .form-check-input:invalid ~ .form-check-label {color: #B3205F;}
.form-control.is-valid, .was-validated .form-control:valid {background-image: none;}
.invalid-feedback 		{color: #B3205F; margin-top: .5rem; font-weight: 600; line-height: 1.4;}


.form-control,
.form-control:active,
.form-control:focus{
	padding: 8px 0px 6px 10px;
	border-radius: 6px;
	border: 1px solid var(--color-secondary) !important;
	box-shadow: none !important;
	font-family: 'WorkSans', sans-serif; 
	font-size: 100%;	
}

.form-control:focus {
	border: 1px solid var(--color-primary) !important;
	box-shadow: 0 4px 4px rgba(0, 0, 0, 0.05) inset !important; 
	-webkit-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.05) inset !important; 
	-moz-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.05) inset !important; 	
}


.form-control:disabled {
  opacity: .3;
  background: var(--color-white);
}

.form-check-inline {
	margin-right: 1.5em;
}

.form-check-label {
	padding-left: .125em;
}

.form-check-label:hover,
.form-check-input:hover {
	cursor: pointer;
}

.form-check-input {
	border-width: 2px;
}

.form-check-input,
.form-check-input.is-valid, .was-validated .form-check-input:valid{
    border-color: var(--color-secondary) !important;
	transform: scale(.9);
	box-shadow: none;
}

.form-check-input:checked,
.form-check-input.is-valid:checked, .was-validated .form-check-input:valid:checked {
    background-color: var(--color-primary) !important;
    border-color: var(--color-primary) !important;
	transform: scale(1.1);
	box-shadow: none;
}

.form-check-input:active,
.form-check-input:focus {
	box-shadow: none;
    border-color: var(--color-primary) !important;	
}

.form-check-input[type="radio"]:hover,
.form-check-input[type="checkbox"]:hover {
	cursor: pointer;
}

.custom-collapse {
	margin-top: 2em;
}

.custom-btn-add {
	display: inline-block;
	margin-top: 2em;
	padding-left: 1.5em;
	position: relative;
	color: var(--color-secondary);
	text-decoration: none;
}

.custom-btn-add:hover,
.custom-btn-add:active {
	color: var(--color-primary);
}

.custom-btn-add::before {
	content: ' ';
	position: absolute;
	left: 0;
	top: .05em;
	display: block;
	width: 1.5em; 
	height: .9em;
	background-image: url(/img/icon-plus-green.png);
	background-size: auto 100%;
	background-repeat: no-repeat;
}

.custom-btn-add:hover::before,
.custom-btn-add:active::before {
	background-image: url(/img/icon-plus-brown.png);
}

.custom-btn-add[aria-expanded="true"] {
	padding-left: 0;
	color: var(--color-primary);
	font-weight: 600;
}

.custom-btn-add[aria-expanded="true"]::before {
	display: none;
}

.custom-btn-add[aria-expanded="true"] span.d-none {
	display: inline !important;
}

.custom-form-title {
	margin-bottom: 1em;
}

.custom-form-title h3 {
	font-size: 130%;
	text-transform: uppercase;
	letter-spacing: .025em;
	font-weight: 600;
}

.custom-form-subtitle {
	margin-top: 3.5em;
	margin-bottom: .5rem;
	font-weight: 600;
}

.custom-line-height {
	display: inline-block;
	margin-bottom: 1.444em;
	line-height: 1.4444;
}

/* Form Messages */

.custom-error-msg {
	border: 1px solid #c2487cbf;
    color: #B3205F !important;
    background-color: #FFE6F1;
    border-radius: 12px;
    font-weight: 600;
}

.custom-login-form .custom-error-msg {
    font-size: 15px;
    background-color: var(--color-white);
}

/* Form sections */

.custom-form-section {
	margin-top: 1.5em;
	width: calc(100% + 7em);
	transform: translateX(-3.5em);
	padding: 3.25em 3.5em 3em 3.5em;
	background-color: var(--color-bg-lightest);
}

.custom-wrap-disabled {
	opacity: .35;
}

.custom-wrap-disabled .form-control:disabled {
  opacity: .9;
  background: #fff;
}

.form-control.custom-width-01 {width: 34.5em;}


/* -----------------------------------------------------------------------------------------------------------------------------
 * Lists
----------------------------------------------------------------------------------------------------------------------------- */
.custom-list-plain {
	margin: 0;
	padding: 0;
	list-style: none;
}

/* -----------------------------------------------------------------------------------------------------------------------------
 * BUTTONS
----------------------------------------------------------------------------------------------------------------------------- */
.custom-btn										{min-width: 100px; padding: 1.25em 1.425em; border-radius: 2.5em; /* font-family: 'PTSansCaption'; */ font-size: 120%; font-weight: 700; 
												 box-shadow: none !important; border: none !important; 
												background-color: var(--color-primary) !important; color: var(--color-white) !important; 
												-webkit-transition: all .25s ease;
												-moz-transition: all .25s ease;
												-o-transition: all .25s ease;
												 transition: all .25s ease;}

.custom-btn-outline								{background-color: var(--color-white) !important; color: var(--color-primary) !important; border: 1px solid var(--color-primary) !important;}												 
.custom-btn-transparent							{background-color: transparent !important;}	

.custom-btn:hover,												
.custom-btn:focus,
.custom-btn:active								{transform: scale(1.05);}

.custom-btn-close								{width: 2em; height: 2em; border-radius: 0; min-width: auto; background-color: transparent !important; opacity: 1; outline: none !important;}	
.custom-btn-close img							{width: 3.5em; height: auto;}			
.custom-btn-close:hover							{opacity: .35;}
.custom-btn-close:active,
.custom-btn-close:focus							{outline: none; box-shadow: none;}

.custom-btn-xl									{font-size: 125%;}
.custom-btn-xxl									{font-size: 150%;}
	
.custom-btn .custom-btn-loader 					{position: relative;}
.custom-btn-loader 								{position: relative;}
.custom-btn-loader .custom-btn-loader-wrap		{display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: var(--color-primary);
												border-radius: 8em; z-index: 1; overflow: hidden;}
.custom-btn-loader .custom-loader-size 			{display: block; width: 100%; height: 100%; position: relative; transform: scale(.5375);}

.custom-btn-loader .custom-loader 				{color: var(--color-secondary); margin-top: .5em; display: block !important;}


	@media screen and (max-width: 1850px) {
		
		.custom-btn-loader .custom-loader				{margin-top: 0;}
		
	}

	
	@media screen and (max-width: 1199px) {
		
		.custom-btn										{font-size: 110%;}
		.custom-btn-close								{width: 1.5em; height: 1.5em;}
		.custom-btn-close img							{width: 2.5em;}
		.custom-btn-loader .custom-loader				{margin-top: 0;}
		
	}
	
	@media screen and (max-width: 991px) {
		
		.custom-btn										{font-size: 90%; padding: 1.125em 1.425em;}
		.custom-btn-loader .custom-loader				{margin-top: -.375em;}
		
	}


/* -----------------------------------------------------------------------------------------------------------------------------
 * HEADER
----------------------------------------------------------------------------------------------------------------------------- */
.custom-header {
	height: 7em;
	position: absolute;
	top: 0;
	z-index: 100;
}

.custom-header .custom-logo {
	position: absolute;
	top: 50%;
	left: 1.5em;
	transform: translateY(-50%);
	width: 11.5em;
	height: auto;
	margin-right: 0;
	z-index: 1;
}

.custom-header .custom-logo img {
	height: auto;
	width: 100%;
}


	@media screen and (max-width: 1199px) {

		.custom-header 									{height: 80px; top: 0; width: 100%;}
		.custom-header .custom-logo						{width: 110px; left: 1.25rem;}
		
	}

	@media screen and (max-width: 991px) {
		
		.custom-header .custom-logo						{width: 110px; left: 1rem; z-index: 101;}
		
	}

	@media screen and (max-width: 767px) {
		
		.custom-header									{height: 54px; position: absolute; top: 0; width: 100%; z-index: 10;}
		.custom-header.custom-minified					{height: 54px;}
		.custom-header .custom-logo						{width: 100px; left: 10px; margin-top: 1px;}
		
		.custom-home .custom-header,
		.custom-404 .custom-header						{background-color: transparent;}
		
	}



/* -----------------------------------------------------------------------------------------------------------------------------
 * NAV
----------------------------------------------------------------------------------------------------------------------------- */

/* Social Nav --------------------------------------------------------------------------------------------------------------- */

.custom-navbar-nav-social										{margin-right: .5em;}
.custom-navbar-nav-social .nav-item								{margin-right: 1em;}
.custom-navbar-nav-social .nav-item	img							{width: auto; height: 2.25em; 
																  -webkit-transition: all .125s ease;
																  -moz-transition: all .125s ease;
																  -o-transition: all .125s ease;
																  transition: all .125s ease;}
																  
.custom-navbar-nav-social .nav-item:hover img					{transform: scale(1.15);}


.custom-navbar-nav-social .nav-item.nav-item-01					{width: 2.25em;}


	@media screen and (max-width: 991px) {
		
		.custom-navbar-nav-social								{padding-left: .275rem;}
		
	}


/* -----------------------------------------------------------------------------------------------------------------------------
 * WRAPPER
----------------------------------------------------------------------------------------------------------------------------- */

.custom-wrap-bg {
	margin: 0 auto;
	max-width: 2560px;
	width: 100%;
	min-height: 100vh;
	text-align: center;
	background-color: var(--color-white);
}

.custom-wrap-max {
	margin: 0 auto;
	max-width: 2560px;
	width: 100%;
	text-align: center;
}

.custom-wrap-xl {
	margin: 0 auto;
	padding: 0 2.5em 4.5em 2.5em;
	position: relative;
	width: 100%;
	text-align: left;
}

.custom-wrap-lg {
	margin: 0 auto;
	padding: 0 1.125em 0 1.125em;
	position: relative;
	width: 90%;
	max-width: 1150px;
	text-align: left;
}


/* -----------------------------------------------------------------------------------------------------------------------------
 * FOOTER
----------------------------------------------------------------------------------------------------------------------------- */
.custom-footer 										{z-index: 1; margin-top: auto;}
.custom-footer .custom-wrap-max						{position: relative;}
.custom-footer .custom-wrap-inner					{padding-top: 2.5em; padding-bottom: 4rem; z-index: 1;}

.custom-footer .custom-footer-nav 					{color: var(--color-primary);}

.custom-footer .custom-footer-nav li 				{display: inline; margin-left: .75em; margin-right: .75em;}
.custom-footer .custom-footer-nav li a				{text-decoration: none; font-weight: 400;}
.custom-footer .custom-footer-nav li a:hover		{text-decoration: underline;}

.custom-footer .custom-navbar-nav-social			{margin-top: 1rem; margin-bottom: 1.5rem; font-size: 120%;}
.custom-footer .custom-bg-img						{position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden; z-index: -1;}
.custom-footer .custom-bg-img img					{object-position: center 80%;}

.custom-footer .custom-cover 						{animation: ScaleImg 10s ease-out;
													 animation-delay: 0s;
													 animation-iteration-count: 1;
													 animation-fill-mode: none;
													 animation-delay: .3s;
													 animation-iteration-count: 1;
													 animation-fill-mode: both;}


	@media screen and (max-width: 1199px) 						{
		
		.custom-footer .custom-wrap-inner						{padding-top: 1em; padding-bottom: 2em;}
		
	}
	
	@media screen and (max-width: 767px) {
		
		.custom-footer .custom-wrap-max							{}
		.custom-footer .custom-btn-row							{padding: 0 0 1rem 0;}
		.custom-footer .custom-copyright,		
		.custom-footer .custom-navbar-nav-legal					{font-size: 90%;}
		.custom-footer .custom-navbar-nav-legal .nav-link		{margin-left: 0; margin-right: 0;}
		
	}


/* -----------------------------------------------------------------------------------------------------------------------------
 * EVENT * CONTACT INFO
----------------------------------------------------------------------------------------------------------------------------- */
.custom-event {
	margin-bottom: 3.5em;
}

.custom-event .custom-logo {
	height: 4.5em;
	margin-bottom: 1.75em;
}

.custom-event .custom-logo {
	height: 4.5em;
	margin-bottom: 1.75em;
}

.custom-event .custom-logo img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: left top;
}

.custom-wrap-contact {
	padding: 1.5em 2em 1em 2em;
	background-color: var(--color-bg-light);
	flex: 0 0 21em;
	text-align: center;
	transform: translateY(-1.5em);
}

.custom-wrap-contact h4 {
	margin-top: .125em;
	margin-bottom: .795em;
	font-size: 115%;
	font-weight: 700;
}

.custom-text-error .custom-size {
	margin-top: 2rem;
	font-size: 195%;
	font-family: 'PTSansCaption';
}


/* -----------------------------------------------------------------------------------------------------------------------------
 * SPINNER/LOADER
----------------------------------------------------------------------------------------------------------------------------- */

.custom-wrap-loader {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
    border: none;
	z-index: 1;
	overflow: hidden;
}

.custom-loader,
.custom-loader:before,
.custom-loader:after {
	border-radius: 50%;
	width: 2.5em;
	height: 2.5em;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation: loading 1.8s infinite ease-in-out;
	animation: loading 1.8s infinite ease-in-out;
}

.custom-loader {
	color: #d20000;
	font-size: 10px;
	margin: 80px auto;
	position: relative;
	text-indent: -9999em;
	-webkit-transform: translateZ(0);
	-ms-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-animation-delay: -0.16s;
	animation-delay: -0.16s;
}

.custom-loader:before,
.custom-loader:after {
	content: '';
	position: absolute;
	top: 0;
}

.custom-loader:before {
	left: -3.5em;
	-webkit-animation-delay: -0.32s;
	animation-delay: -0.32s;
}

.custom-loader:after {
	left: 3.5em;
}

@-webkit-keyframes loading {
  0%,
  80%,
  100% {
    box-shadow: 0 2.5em 0 -1.3em;
  }
  40% {
    box-shadow: 0 2.5em 0 0;
  }
}
@keyframes loading {
  0%,
  80%,
  100% {
    box-shadow: 0 2.5em 0 -1.3em;
  }
  40% {
    box-shadow: 0 2.5em 0 0;
  }
}



/* ********************************************************************************************************************
* Responsive Definitionen
******************************************************************************************************************** */

/* Font Sizes */
@media screen and (max-width: 420px) 							{ body {font-size: 16px;} }
@media screen and (min-width: 421px) 							{ body {font-size: 17px;} }
@media screen and (min-width: 768px)							{ body {font-size: 17px;} }
@media screen and (min-width: 992px)							{ body {font-size: 16px;} }
@media screen and (min-width: 1851px)							{ body {font-size: 18px;} }


@media screen and (min-width: 380px) {

	.custom-form-title{
		display: flex;
	}
}


@media screen and (min-width: 768px) and (max-width: 991px) {
	
	/* Overwrite Bootstrap gutter */
	.g-md-3, .gy-md-3 {
		--bs-gutter-y: .75rem;
	}
	
	.g-md-3, .gx-md-3 {
    --bs-gutter-x: .75rem;
	}
	
	.custom-wrap-xl,
	.custom-wrap-lg	{
		width: 100%;
		padding-left: 1.75em;
		padding-right: 1.75em;
	}
	
	.custom-page-registration {
		width: 100%;
	}
	
	.custom-wrap-contact {
	  flex: 0 0 19em;
	  font-size: 78%;
	}
	
	.custom-form-section {
		padding-top: 2.75em;
	}

	.custom-form-title {
		margin-bottom: 1.5em;
	}
	
	.form-control.custom-width-01 {
		width: calc(100vw - 12em);
	}

	
}

@media screen and (max-width: 991px) {
	
	.custom-wrap-xl {
		padding-left: 1.125em;
		padding-right: 1.125em;
	}
	
	.custom-wrap-contact {
		transform: translateY(-1em);
	}
	
	.custom-event .h1 {
		font-size: 190% !important;
	}

	.custom-event .h3 {
		font-size: 110% !important;
	}
	
	.custom-text-error .custom-size {
		font-size: 125%;
	}	

}

@media screen and (max-width: 767px) {

	.custom-wrap-xl,
	.custom-wrap-lg {
		width: 100%;
	}
	
	.custom-footer-nav {
		font-size: 90%;
	}

	.custom-topic {
		font-size: 110%;
	}
	
	.custom-event {
		margin-bottom: 2.5em;
	}
	
	.custom-event .h1 {
		font-size: 165% !important;
	}	
	
	.custom-wrap-contact {
		flex: 0;
		transform: translateY(0);
	}
	
	.custom-form-title {
		margin-bottom: .5em;
	}
	
	.custom-form-title h3 {
		padding-top: .25em;
		font-size: 125%;
	}
			
	.col-form-label {
		margin-top: .5em;
	}
	
	.form-control.custom-width-01 {
		width: calc(100vw - 3em);
	}
	
	.custom-form-section {
		padding-top: 1.5em;
	}
	
	.custom-mobile-block {
		display: block;
	}
		
	.custom-divider-01 {
		height: 0;
	}
	
	.custom-text-error .custom-size {
		margin-top: 0;
	}	
	


}


@media screen and (max-width: 567px) {

	.custom-footer-nav {
		font-size: 14px;
	}

}


/* -----------------------------------------------------------------------------------------------------------------------------
 * HOVER EFFECTS
------------------------------------------------------------------------------------------------------------------------------ */

@media screen and (min-width: 1025px) {
	
	/* Transition */
	
	.custom-btn {
		-moz-transition: all 400ms ease; -o-transition: all 400ms ease; transition: all 400ms ease;
	}
		
	.custom-link {
		 -moz-transition: all 400ms ease; -o-transition: all 400ms ease; transition: all 400ms ease;
	}
	
	.custom-footer-nav a {
		-webkit-transition: all 400ms ease; -moz-transition: all 400ms ease; -o-transition: all 400ms ease; transition: all 400ms ease; backface-visibility: hidden;
	}
	
	/* Scaling */

	.custom-btn:hover {
		transform: scale(1.115); backface-visibility: hidden;
	}
	
	.custom-link:hover {
		transform: scale(1.15); backface-visibility: hidden;
	}
		
	/* Opacity */
	
	.custom-footer-nav a:hover {
		opacity: .7;
	}
	
}	


/* -----------------------------------------------------------------------------------------------------------------------------
 * ANIMATED GRAPHICS
----------------------------------------------------------------------------------------------------------------------------- */

/* Graphics */
.custom-graphic-container							{position: absolute; left: 0; max-width: 2560px; width: 100%; z-index: 0; text-align: center; overflow: hidden;}
.custom-graphic-container div img:nth-child(2)		{display: none;}						
										
.custom-graphic-container img 						{width: 3300px; height: auto; position: absolute; left: 50%; top: 0; transform: translate(-50%, 0);}

.custom-graphic-container img.custom-anim-move-06	{animation: Move02 40s ease-out; animation-delay: .5s; animation-iteration-count: infinite; animation-fill-mode: both;}	
.custom-graphic-container img.custom-anim-move-07	{animation: Move03 70s ease-out; animation-delay: 0; animation-iteration-count: infinite; animation-fill-mode: both;}	


	@media screen and (min-width: 2560px) {
		
		.custom-graphic-container 								{}
		
	}

	@media screen and (max-width: 991px) {
		
		.custom-graphic-container img 							{width: 250vw;}
		
	}
	
	@media screen and (max-width: 767px) {
		
		.custom-graphic-container img 							{width: 200vw;}		
		.custom-graphic-container div img:nth-child(1)			{display: none;}
		.custom-graphic-container div img:nth-child(2)			{display: block;}
		
	}

	@media screen and (max-width: 576px) {
		
		.custom-graphic-container img 							{width: 300vw;}		
		
	}


/* Graphics: Registration */

.custom-page-registration .custom-wrap-registration								{z-index: 1;}
.custom-page-registration .custom-graphic-container-01							{height: 60em; top: -5em;}
.custom-page-registration .custom-graphic-container-02		 					{height: 55em; bottom: -5em;}


	@media screen and (max-width: 1799px) {
		
		.custom-page-registration .custom-graphic-container-01							{height: 70em; top: -11em;}

	}


	@media screen and (max-width: 991px) {
		
		.custom-page-registration .custom-graphic-container-01							{top: -7em;}
		.custom-page-registration .custom-graphic-container-02							{bottom: -12em; height: 50em;}

	}	

	@media screen and (max-width: 767px) {

		.custom-page-registration .custom-graphic-container-01							{top: -5em; height: 30em;}
		.custom-page-registration .custom-graphic-container-02							{bottom: -26em;}

	}	
	
	@media screen and (max-width: 576px) {
		
		.custom-page-registration .custom-graphic-container-02							{bottom: -24em;}

	}


/* Graphics: ANIMATION  */

@keyframes Move02 {
	0% 		{transform: scale(1, 1.05) rotate(0deg) translateX(-50%)}
	33%   	{transform: scale(1, .9) rotate(-1deg) translateX(-48%)}
	66%   	{transform: scale(1, .9) rotate(-.5deg) translateX(-49%)}
	100% 	{transform: scale(1, 1.05) rotate(0deg) translateX(-50%)}
}

@keyframes Move03 {
	0% 		{transform: scale(.9, 1) rotate(0deg) translateX(-49%)}
	33%   	{transform: scale(1, 1) rotate(-1deg) translateX(-50%)}
	66%   	{transform: scale(1, 1) rotate(-.5deg) translateX(-50%)}
	100% 	{transform: scale(.9, 1) rotate(0deg) translateX(-49%)}
}
