
/* font integration "M PLUS Rounded 1c", SIL OPEN FONT LICENSE: /css/webfonts/OFL.txt */
@font-face {
	font-family: 'M PLUS Rounded 1c';
	src: url('/css/webfonts/RoundedMplus1c-Bold.woff2') format('woff2');
	font-weight: 700;
	font-style: normal;
}

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

/* HTML FONT SIZES */
@media screen and (max-width: 767px)			{ html {font-size: 17px;} }
@media screen and (min-width: 768px) 			{ html {font-size: 17px;} }
@media screen and (min-width: 992px) 			{ html {font-size: 17px;} }
@media screen and (min-width: 1200px)			{ html {font-size: 1vw;} }
@media screen and (min-width: 1700px)			{ html {font-size: 16px;} }
@media screen and (min-width: 1900px)			{ html {font-size: 17px;} }

/* STANDARDS */
strong 											{font-weight: 700; font-family: inherit;}
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  					{border: 0; text-dahsow: none !Important;}

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

a:focus:not(:focus-visible),
.custom-btn:focus:not(:focus-visible),
.nav-link::focus:not(:focus-visible),
.navbar-expand-xl .navbar-nav .nav-link::focus:not(:focus-visible)	{outline: none; backgound-color: inherit;}

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


/* PROJECT */
html											{overflow-y: scroll; scroll-behavior: smooth;}
body											{font-family: 'Arial', 'Helvetica', sans-serif; font-weight: 400; line-height: 1; color: var(--black); 
												background: var(--white); font-size: 100%; overflow: hidden;}

p, ul											{line-height: 1.5; margin-bottom: 1.5em;}
li, label										{line-height: 1.5;}
figcaption										{color: var(--grey);}


	@media screen and (max-width: 767px) {
		body									{overflow: hidden; min-width: 300px;}
	}
	
/* -----------------------------------------------------------------------------------------------------------------------------
 * COLORS
----------------------------------------------------------------------------------------------------------------------------- */

:root {
  --black: 			rgba(60, 60, 59, 1);
  --white: 			rgba(255, 255, 255, 1);
  
  --purple:			rgba(101, 60, 172, 1);
  --purple-dark:	rgba(80, 48, 137, 1);
  --purple-darker:	rgba(65, 39, 111, 1);
  --purple-light:	rgba(101, 60, 172, 0.15);
  --purple-lighter:	rgba(101, 60, 172, 0.05);
  
  --cyan:			rgba(88, 191, 202, 1);
  --cyan-dark:		rgba(70, 153, 162, 1);
  --cyan-darker:	rgba(57, 124, 131, 1);
  --cyan-light:		rgba(88, 191, 202, 0.2);
  --cyan-lighter:	rgba(88, 191, 202, 0.1);
  
  /*
  --cyan:			rgba(62, 201, 207, 1);
  --cyan-dark:		rgba(55, 181, 186, 1);
  --cyan-darker:	rgba(40, 130, 134, 1);
  --cyan-light:		rgba(62, 201, 207, 0.2);
  --cyan-lighter:	rgba(62, 201, 207, 0.1);
  */
  
  --green:			rgba(191, 207, 22, 1);
  --green-dark:		rgba(172, 186, 19, 1);
  --green-darker:	rgba(124, 120, 12, 1);
  --green-light:	rgba(191, 207, 22, 0.2);
  --green-lighter:	rgba(191, 207, 22, 0.1);
  
  --orange:			rgba(222, 90, 20, 1);
  --orange-dark:	rgba(178, 72, 16, 1);
  --orange-darker:	rgba(144, 58, 13, 1);
  --orange-light:	rgba(222, 90, 20, 0.1); 
  --orange-lighter:	rgba(222, 90, 20, 0.05);
  
  /*
  --orange:			rgba(217, 74, 11, 1);
  --orange-dark:	rgba(195, 66, 10, 1);
  --orange-darker:	rgba(141, 43, 7, 1);
  --orange-light:	rgba(217, 74, 11, 0.1); 
  --orange-lighter:	rgba(217, 74, 11, 0.05);
  */
  
   --red:			rgba(232, 55, 79, 1); 
   --red-dark:		rgba(190, 45, 65, 1);
   --red-light:		rgba(232, 55, 79, 0.15);   
   --yellow:		rgba(251, 226, 19, 1); 
   --yellow-light:	rgba(251, 226, 19, 0.15);  
   --pink:			rgba(234, 76, 150, 1); 
   --pink-light:	rgba(234, 76, 150, 0.15); 
   
  --grey-dark:		rgba(120, 120, 110, 1);
  --grey-light:		rgba(247, 247, 247, 1);
  --border-grey:	rgba(220, 220, 215, 1);

  --info:			rgba(22, 82, 225, 1);
  --info-bg:		rgba(22, 82, 225, .1);  
  --success: 		rgba(28, 100, 40, 1);
  --error:			rgba(190, 45, 65, 1);
  --error-bg:		rgba(232, 55, 79, 0.11);
}

.custom-bg-white		{background-color: var(--white);}
.custom-bg-black		{background-color: var(--black);}
.custom-bg-purple		{background-color: var(--purple); color: var(--white) !important;}
.custom-bg-purple-light	{background-color: var(--purple-light);}
.custom-bg-purple-lighter	{background-color: var(--purple-lighter);}
.custom-bg-cyan			{background-color: var(--cyan); color: var(--white) !important;}
.custom-bg-cyan-dark	{background-color: var(--cyan-dark); color: var(--white) !important;}
.custom-bg-cyan-light	{background-color: var(--cyan-light);}
.custom-bg-green		{background-color: var(--green); color: var(--white) !important;}
.custom-bg-green-dark	{background-color: var(--green-dark); color: var(--white) !important;}
.custom-bg-green-light	{background-color: var(--green-light);}
.custom-bg-orange		{background-color: var(--orange); color: var(--white) !important; }
.custom-bg-orange-light	{background-color: var(--orange-light);}
.custom-bg-red			{background-color: var(--red); color: var(--white) !important;}
.custom-bg-red-light	{background-color: var(--red-light);}
.custom-bg-yellow-light	{background-color: var(--yellow-light);}
.custom-bg-pink-light	{background-color: var(--pink-light);}

.custom-bg-grey-light	{background-color: var(--grey-light);}

.custom-bg-info			{background-color: var(--info-bg);}

.custom-white			{color: var(--white) !important;}
.custom-black			{color: var(--black) !important;}
.custom-grey			{color: var(--grey-dark) !important;}
.custom-purple			{color: var(--purple) !important;}
.custom-cyan			{color: var(--cyan) !important;}
.custom-green			{color: var(--green) !important;}
.custom-orange			{color: var(--orange) !important;}
.custom-red				{color: var(--red) !important;}
.custom-yellow			{color: var(--yellow) !important;}
.custom-pink			{color: var(--pink) !important;}
.custom-grey			{color: var(--grey-dark) !important;}

a.custom-purple:hover	{color: var(--purple-darker) !important;}
a.custom-cyan:hover		{color: var(--cyan-dark) !important;}
a.custom-green:hover	{color: var(--green-dark) !important;}
a.custom-orange:hover	{color: var(--orange-dark) !important;}
a.custom-red:hover		{color: var(--red-dark) !important;}

.custom-purple-dark		{color: var(--purple-dark) !important;}
.custom-cyan-dark		{color: var(--cyan-dark) !important;}
.custom-green-dark		{color: var(--green-dark) !important;}
.custom-orange-dark		{color: var(--orange-dark) !important;}

a.custom-purple-dark:hover	{color: var(--purple-darker) !important;}
a.custom-cyan-dark:hover	{color: var(--cyan-darker) !important;}
a.custom-green-dark:hover	{color: var(--green-darker) !important;}
a.custom-orange-dark:hover	{color: var(--orange-darker) !important;}


.custom-info		{color: var(--info);}
.custom-error		{color: var(--error);}

::-moz-selection	{background:  rgb(67, 42, 113); color: rgb(255, 255, 255);}
::selection      	{background:  rgb(67, 42, 113); color: rgb(255, 255, 255);}

/* -----------------------------------------------------------------------------------------------------------------------------
 * FONTS + SIZES + MARGINS
----------------------------------------------------------------------------------------------------------------------------- */

h1, .h1											{font-size: 380%; font-weight: 700; font-family: 'M PLUS Rounded 1c'; line-height: 1.2; letter-spacing: -.03em; margin-bottom: 2rem;}
h2, .h2											{font-size: 260%; font-weight: 700; font-family: 'M PLUS Rounded 1c'; line-height: 1.2; letter-spacing: -.022em; margin-bottom: 1.5rem;}
h3, .h3											{font-size: 190%; font-weight: 700; font-family: 'M PLUS Rounded 1c'; line-height: 1.2; margin-bottom: 1.5rem; letter-spacing: -.022em;}										
h4, .h4											{font-size: 135%; font-weight: 600; font-family: 'M PLUS Rounded 1c';}
h5, .h5											{font-size: 110%; font-weight: 400; font-family: 'Arial', 'Helvetica', sans-serif;}

.custom-size-xxl								{font-size: 360%;}
.custom-size-xl									{font-size: 300%;}
.custom-size-lg									{font-size: 135%; line-height: 1.4;}
.custom-size-md									{font-size: 100%;}
.custom-size-sm									{font-size: 85%;}
.custom-size-xs									{font-size: 71%;}

h3.custom-icon img								{height: 1.95em; width: auto;}


	@media screen and (max-width: 1199px) {	
		h1, .h1											{font-size: 250%;}
		h2, .h2											{font-size: 150%;}
		h3, .h3											{font-size: 135%;}
		.custom-size-xxl								{font-size: 220%;}
		.custom-size-xl									{font-size: 110%;}
		.custom-size-lg									{font-size: 105%;}
	}

	@media screen and (max-width: 991px) {
		h1, .h1											{font-size: 220%; margin-bottom: 1.75rem;}
		h2, .h2											{font-size: 150%;}
		h3, .h3											{font-size: 135%;}		
		.custom-size-xl									{font-size: 110%;}
		.custom-size-lg									{font-size: 105%;}
	}

	@media screen and (max-width: 767px) {
		h1, .h1											{font-size: 200%;}
		h2, .h2											{font-size: 150%;}
		h3, .h3											{font-size: 135%;}
		h4, .h4											{font-size: 110%;}
		.custom-size-xxl								{font-size: 190%;}
		.custom-size-xl									{font-size: 110%;}
		.custom-size-lg									{font-size: 105%;}
		.custom-size-sm									{font-size: 95%;}
		.custom-size-xs									{font-size: 90%;}
	}



/* -----------------------------------------------------------------------------------------------------------------------------
 * LINKS
----------------------------------------------------------------------------------------------------------------------------- */

a												{color: var(--purple); transition: all 0.20s ease-in-out; text-decoration: none;}
a:hover											{color: var(--purple-dark);}
p a, label a, li a 								{border-bottom: 1px solid var(--purple);}
p a:hover, label a:hover, h1 a:hover, li a:hover {color: var(--purple-darker); border-color: var(--purple-dark);}

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

.custom-icon-link img							{width: auto; height: 2.875em;}
.custom-icon-link:hover .custom-icon-01 		{display: none !important;}
.custom-icon-link:hover .custom-icon-02 		{display: inline-block !important;}

a .custom-icon-02								{display: none !important;}
a[aria-expanded="true"] .custom-icon-01 		{display: none !important;}
a[aria-expanded="true"] .custom-icon-02 		{display: inline-block !important;}

a .custom-icon img 								{position: relative; vertical-align: top; z-index: 1;}

/* Special Icon BG Styles */
a .custom-bg-icon								{position: relative;}
a .custom-bg-icon::before						{content: ' '; display: block; position: absolute; width: 100%; height: 100%; top: 0; left: 0; background-color: inherit;
												border-radius: 50px; z-index: 0; border: 2px solid var(--white);
												webkit-transition: all .2s ease;
												-moz-transition: all .2s ease;
												-o-transition: all .2s ease;
												 transition: all .2s ease;}

a.custom-purple .custom-bg-icon::before 		{background-color: var(--purple);}	
a.custom-cyan .custom-bg-icon::before 			{background-color: var(--cyan);}
a.custom-green .custom-bg-icon::before 			{background-color: var(--green);}
a.custom-orange .custom-bg-icon::before 		{background-color: var(--orange);}

a.custom-purple:hover .custom-bg-icon::before 	{background-color: var(--purple-dark);}	
a.custom-cyan:hover .custom-bg-icon::before 	{background-color: var(--cyan-dark);}
a.custom-green:hover .custom-bg-icon::before 	{background-color: var(--green-dark);}
a.custom-orange:hover .custom-bg-icon::before 	{background-color: var(--orange-dark);}

.custom-btn-outline-purple .custom-bg-icon::before 			{background-color: var(--purple);}	
.custom-btn-outline-cyan .custom-bg-icon::before 			{background-color: var(--cyan-dark);}
.custom-btn-outline-green .custom-bg-icon::before 			{background-color: var(--green-dark);}
.custom-btn-outline-orange .custom-bg-icon::before 			{background-color: var(--orange);}

.custom-btn-outline-purple:hover .custom-bg-icon::before 	{background-color: var(--purple-darker);}	
.custom-btn-outline-cyan:hover .custom-bg-icon::before 		{background-color: var(--cyan-darker);}
.custom-btn-outline-green:hover .custom-bg-icon::before 	{background-color: var(--green-darker);}
.custom-btn-outline-orange:hover .custom-bg-icon::before 	{background-color: var(--orange-darker);}



	@media screen and (min-width: 1200px) {
		.custom-tel-link									{color: var(--black) !important; border-bottom: none;}
		.custom-tel-link span								{color: var(--black) !important;}
	}	


	@media screen and (max-width: 1199px) {
		.custom-icon-link img								{height: 2.25em;}	
	}

/* -----------------------------------------------------------------------------------------------------------------------------
 * BUTTONS
----------------------------------------------------------------------------------------------------------------------------- */

.custom-btn										{padding: .75em 1.125em; border-radius: 5em; font-size: 100%; font-weight: 700; box-shadow: none !important; 
												outline: none !important; border: none !important;}
.custom-btn .custom-icon 						{display: inline-block; position: relative; width: 1em; height: 1em; padding: 0;}
.custom-btn .custom-icon-xl 					{transform: scale(2); transform-origin: center;  margin-left: -4px;}
											
.custom-btn.custom-bg-purple:hover,
.custom-btn.custom-bg-purple:focus,
.custom-btn.custom-bg-purple:active				{background-color: var(--purple-darker) !important;}	

.custom-collapse-link-offer.custom-bg-purple:hover,
.custom-collapse-link-offer.custom-bg-purple:focus,
.custom-collapse-link-offer.custom-bg-purple:active	{background-color: var(--purple-dark) !important;}


.custom-btn.custom-bg-cyan:hover,
.custom-btn.custom-bg-cyan:focus,
.custom-btn.custom-bg-cyan:active				{background-color: var(--cyan-dark) !important;}

.custom-btn.custom-bg-cyan-dark:hover,
.custom-btn.custom-bg-cyan-dar:focus,
.custom-btn.custom-bg-cyan-dar:active			{background-color: var(--cyan-darker) !important;}

.custom-btn.custom-bg-green:hover,
.custom-btn.custom-bg-green:focus,
.custom-btn.custom-bg-green:active				{background-color: var(--green-dark) !important;}

.custom-btn.custom-bg-green-dark:hover,
.custom-btn.custom-bg-green-dark:focus,
.custom-btn.custom-bg-green-dark:active			{background-color: var(--green-darker) !important;}

.custom-btn.custom-bg-orange:hover,
.custom-btn.custom-bg-orange:focus,
.custom-btn.custom-bg-orange:active				{background-color: var(--orange-dark) !important;}

.custom-btn.custom-bg-red:hover,
.custom-btn.custom-bg-red:focus,
.custom-btn.custom-bg-red:active				{background-color: var(--red-dark) !important;}

.custom-btn.custom-bg-red						{font-size: 105%; padding: .7rem 1.125em; letter-spacing: .025em;}

.custom-btn.custom-btn-outline-purple			{border: 2px solid var(--purple) !important; color: var(--purple);}
.custom-btn.custom-btn-outline-cyan				{border: 2px solid var(--cyan) !important; color: var(--cyan-dark);}
.custom-btn.custom-btn-outline-green			{border: 2px solid var(--green) !important; color: var(--green-dark);}
.custom-btn.custom-btn-outline-orange			{border: 2px solid var(--orange) !important; color: var(--orange);}

.custom-btn.custom-btn-outline-purple:hover		{border-color: var(--purple-darker) !important; color: var(--purple-darker); background-color: var(--purple-lighter);}
.custom-btn.custom-btn-outline-cyan:hover		{border-color: var(--cyan-darker) !important; color: var(--cyan-darker); background-color: var(--cyan-lighter);}
.custom-btn.custom-btn-outline-green:hover		{border-color: var(--green-darker) !important; color: var(--green-darker); background-color: var(--green-lighter);}
.custom-btn.custom-btn-outline-orange:hover		{border-color: var(--orange-dark) !important; color: var(--orange-dark); background-color: var(--orange-lighter);}

.custom-btn.custom-btn-outline-size-xl			{font-size: 135%;}

.custom-btn.custom-btn-bg-light-purple			{color: var(--purple); background-color: var(--purple-lighter);}
.custom-btn.custom-btn-bg-light-cyan			{color: var(--cyan-dark); background-color: var(--cyan-lighter);}
.custom-btn.custom-btn-bg-light-green			{color: var(--green-dark); background-color: var(--green-lighter);}
.custom-btn.custom-btn-bg-light-orange			{color: var(--orange); background-color: var(--orange-lighter);}

.custom-btn.custom-btn-bg-light-purple:hover	{color: var(--purple-dark); background-color: var(--purple-light);}
.custom-btn.custom-btn-bg-light-cyan:hover		{color: var(--cyan-darker); background-color: var(--cyan-light);}
.custom-btn.custom-btn-bg-light-green:hover		{color: var(--green-darker); background-color: var(--green-light);}
.custom-btn.custom-btn-bg-light-orange:hover	{color: var(--orange-dark); background-color: var(--orange-light);}

.custom-container-collapse						{}
.custom-container-collapse .custom-text			{color: var(--black);}

.custom-container-collapse.custom-purple		{border-color: var(--purple);}
.custom-container-collapse.custom-cyan			{border-color: var(--cyan-dark);}
.custom-container-collapse.custom-green			{border-color: var(--green-dark);}
.custom-container-collapse.custom-orange		{border-color: var(--orange);}

.custom-container-collapse .custom-btn.custom-collapse-link					{width: 100%; border-radius: 0 !important;}
.custom-container-collapse .custom-btn.custom-collapse-link .custom-icon	{flex: 0 0 1.5em; height: 1.5em; display: block;}

.custom-container-collapse .custom-collapse-link.custom-purple 	{color: var(--purple) !important;}
.custom-container-collapse .custom-collapse-link.custom-cyan 	{color: var(--cyan-dark) !important;}
.custom-container-collapse .custom-collapse-link.custom-green 	{color: var(--green-dark) !important;}
.custom-container-collapse .custom-collapse-link.custom-orange 	{color: var(--orange) !important;}

.custom-container-collapse .custom-collapse-link.custom-purple:hover 	{color: var(--purple-darker) !important; background-color: var(--purple-lighter);}
.custom-container-collapse .custom-collapse-link.custom-cyan:hover 		{color: var(--cyan-darker) !important; background-color: var(--cyan-lighter);}
.custom-container-collapse .custom-collapse-link.custom-green:hover 	{color: var(--green-darker) !important; background-color: var(--green-lighter);}
.custom-container-collapse .custom-collapse-link.custom-orange:hover	{color: var(--orange-darker) !important; background-color: var(--orange-lighter);}

.custom-container-collapse .custom-collapse-link.custom-purple .custom-bg-icon::before 			{background-color: var(--purple);}	
.custom-container-collapse .custom-collapse-link.custom-cyan .custom-bg-icon::before 			{background-color: var(--cyan-dark);}
.custom-container-collapse .custom-collapse-link.custom-green .custom-bg-icon::before 			{background-color: var(--green-dark);}
.custom-container-collapse .custom-collapse-link.custom-orange .custom-bg-icon::before 			{background-color: var(--orange);}

.custom-container-collapse .custom-collapse-link.custom-purple:hover .custom-bg-icon::before 	{background-color: var(--purple-darker);}	
.custom-container-collapse .custom-collapse-link.custom-cyan:hover .custom-bg-icon::before 		{background-color: var(--cyan-darker);}
.custom-container-collapse .custom-collapse-link.custom-green:hover .custom-bg-icon::before 	{background-color: var(--green-darker);}
.custom-container-collapse .custom-collapse-link.custom-orange:hover .custom-bg-icon::before 	{background-color: var(--orange-darker);}

.custom-btn-cancel								{color: var(--grey-dark); border: 2px solid var(--border-grey) !important; font-size: 100% !important; font-weight: 400 !important;
												padding: .5em 1.25em;}
		
.custom-btn-close								{width: 1.5em; height: 1.5em; border-radius: 0; min-width: auto; background-color: transparent !important;
												 background-image: url(/img/icons/x-lg.svg); background-size: auto 25px; opacity: 1; transform: none !important;}				
.custom-btn-close:hover							{opacity: .35;}

.custom-btn-xl									{font-size: 125%;}
.custom-btn-xxl									{font-size: 150%;}

.custom-btn.custom-line-height					{line-height: 1.222;}
	
	@media screen and (max-width: 1399px) {
		.custom-btn-xxl									{font-size: 125%;}
	}
	
	@media screen and (max-width: 1199px) {
		.custom-btn										{font-size: 100%;}
		.custom-btn-xl									{font-size: 110%;}
		.custom-btn-xxl									{font-size: 120%;}
		.custom-container-collapse .custom-btn.custom-collapse-link					{padding: 1em .75em;}
	}
	
	@media screen and (max-width: 991px) {
		.custom-btn										{font-size: 100%;}
		.custom-btn-xxl									{font-size: 110%;}
	}


	@media screen and (max-width: 576px) {
		.custom-btn										{padding: .75em 1em;}
		.custom-btn .custom-icon-mobile					{display: block; margin-left: auto !important; margin-right: auto !important; margin-bottom: .75rem;font-size: 135%;}
		.custom-container-collapse .custom-btn.custom-collapse-link					{padding: .825em .75em;}
		.custom-container-collapse .custom-btn.custom-collapse-link .custom-icon 	{font-size: 90%;}
	}	
	

/* -----------------------------------------------------------------------------------------------------------------------------
 * FLAGS
----------------------------------------------------------------------------------------------------------------------------- */
.custom-flag 											{display: inline-flex; align-items: start; line-height: 1.3;}
.custom-flag .custom-icon								{display: inline-block; transform: translateY(-.075em);}
.custom-flag .custom-icon img							{vertical-align: top; margin-top: .15em;}
.custom-flag-info										{padding: .325em .5em; font-size: 90%; border-radius: 4px;
														color: var(--info);}



/* -----------------------------------------------------------------------------------------------------------------------------
 * BORDER
----------------------------------------------------------------------------------------------------------------------------- */

.custom-no-border								{border: none !important;}
.custom-border-top								{border-top: 2px solid var(--grey-02);}


/* -----------------------------------------------------------------------------------------------------------------------------
 * WRAPS + CONTAINER + DIVIDER
----------------------------------------------------------------------------------------------------------------------------- */

.custom-wrap-max								{padding-left: 2rem; padding-right: 2rem; text-align: center; margin-left: auto; margin-right: auto;}
.custom-wrap-xl									{max-width: 1903px; padding-left: 4rem; padding-right: 4rem; text-align: center; margin-left: auto; margin-right: auto;}
.custom-wrap-md									{max-width: 1380px; padding-left: 2rem; padding-right: 2em; text-align: left; margin-left: auto; margin-right: auto;}
.custom-wrap-text								{max-width: 900px; margin-left: auto; margin-right: auto;}

.custom-header .custom-wrap-xl					{padding-right: 0;}


	@media screen and (max-width: 1199px) {
		.custom-wrap-xl							{padding-left: 2.5em; padding-right: 2.5em;}
		.custom-wrap-md							{padding-left: 10px; padding-right: 10px;}
		.custom-wrap-text 						{max-width: 700px;}
	}

	@media screen and (max-width: 991px) {
		.custom-wrap-xl							{padding-left: 1em; padding-right: 1em;}
		.custom-wrap-text 							{max-width: 600px;}
	}

	@media screen and (max-width: 767px) {
		.custom-wrap-xl							{padding-left: 10px; padding-right: 10px;}	
		.custom-wrap-md							{padding-left: 5px; padding-right: 5px;}
		.custom-wrap-text						{padding-left: 15px; padding-right: 15px;}
		.custom-header .custom-wrap-xl			{padding-left: 5px; padding-right: 5px;}

	}


.custom-bg-container							{border-radius: 30px; padding: 1em 1.25em;}
.custom-bg-container-02							{border-radius: 12px; padding: .5em 1em;}
.custom-bg-container-02	p						{line-height: 1.387;}
	
.custom-divider									{height: 5px; border-radius: 5px; opacity: .3;}
	
/* -----------------------------------------------------------------------------------------------------------------------------
 * IMAGES
----------------------------------------------------------------------------------------------------------------------------- */

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

div.custom-img-cover							{display: block; overflow: hidden; position: relative; height: 0; padding-bottom: 44%;}
div.custom-img-cover img						{position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%;}

img.custom-cover								{width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%;}
img.custom-contain								{width: 100%; height: 100%; object-fit: contain; object-position: 50% 50%;}

.custom-slide-items								{position: relative;}
.custom-slide-items .custom-slide				{position: absolute; top: 0; left: 0; width: 100%; height: 100%;}

.custom-width-01								{width: 70%;}
.custom-width-02								{width: 55%;}

.custom-max-width								{}	

	
	@media screen and (max-width: 991px) {
		.custom-width-01								{width: 100%}
		.custom-width-02								{width: 95%;}
	}
	
	@media screen and (max-width: 767px) {
		.custom-width-01								{width: 100%; max-width: 30rem;}
		.custom-width-02								{width: 95%; max-width: 25rem;}
		.custom-max-width								{width: 80%; max-width: 25rem;}	
	}


/* -----------------------------------------------------------------------------------------------------------------------------
 * FORMS
----------------------------------------------------------------------------------------------------------------------------- */

::placeholder 			{color: var(--grey-dark); opacity: 1;}
::-ms-input-placeholder {color: var(--grey-dark);}


textarea,
select,
input[type="search"],
input[type="text"],
input[type="number"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="url"]								{font-size: 100%;
												box-shadow: none !important;  
												border-radius: 6px !important; 
												-webkit-border-radius: 6px !important; 
												-moz-border-radius: 6px !important;
												color: var(--black);
												padding: .5em !important; 
												border: 2px solid var(--purple-light) !important;
												background-color: var(--purple-lighter) !important;}

select											{padding-right: 2.5em !important; cursor: pointer;}												

textarea:focus,
select:focus,
input[type="search"]:focus,
input[type="text"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="password"]:focus,
input[type="url"]:focus,
textarea:active,
select:active,
input[type="search"]:active,
input[type="text"]:active,
input[type="number"]:active,
input[type="email"]:active,
input[type="tel"]:active,
input[type="password"]:active,
input[type="url"]:active 						{box-shadow: none !important; 
												border-color: var(--purple) !important; 
												outline: none;  
												background-color: var(--white) !important;
												-webkit-transition: border-color 500ms ease;
												-moz-transition: border-color 500ms ease;
												-o-transition: border-color 500ms ease;
												transition: border-color 500ms ease;}

input[type="radio"]:focus,
input[type="checkbox"]:focus 					{box-shadow: none !important;}

input[type="checkbox"]							{border-radius: 0 !important;}


.form-label										{color: var(--black); margin-bottom: .25rem;}
.form-check label								{color: var(--black);}
.form-check label:hover							{cursor: pointer;}


.form-check-input								{border: none;}
.form-check-input[type="checkbox"]				{border-radius: 3px !important; border: 1px solid var(--purple-dark) !important; background-color: var(--purple-lighter) !important;}
.form-check-input[type="checkbox"]:hover		{cursor: pointer;}

.form-check-input:active,	
.form-check-input:focus							{background-color: var(--purple-dark) !important;}

.form-check-input:checked						{background-color: var(--purple-dark) !important;}
.form-radio-input:checked						{}

.form-control::placeholder						{color: var(--grey); opacity: .5 !important;}
.form-control::-webkit-input-placeholder		{color: var(--grey); opacity: .5 !important;}
.form-control::-moz-placeholder					{color: var(--grey); opacity: .5 !important;}
.form-control::-ms-input-placeholder			{color: var(--grey); opacity: .5 !important;}

.custom-form .custom-required					{color: var(--red);}

.custom-form .custom-disabled					{color: var(--grey-01); background-color: rgb(234, 234, 234) !important;}
.custom-form .custom-disabled:active,
.custom-form .custom-disabled:focus				{background-color: rgb(234, 234, 234) !important; border-color: #e2e2e2 !important;}

.custom-form .input-group-text					{color: var(--grey); border-radius: 0; border: none; background-color: #fff;}


.birthday_chk, 
.birthday_spmchk								{padding: 0 !important; margin: 0 !important; width: 100%; font-size: 1px !important; visibility: hidden;}

/* Checked + Feedback */
.invalid-feedback								{margin-top: 8px; padding: .5em; background-color: var(--error-bg); text-align: start; line-height: 1.2; font-size: 1rem; color: var(--error); border-radius: 6px;
												border: 2px dotted var(--red);}

.form-check-input:checked,
.form-check-input.is-valid:checked,
.was-validated .form-check-input:valid:checked {background-color: var(--purple); border-color: var(--purple);}												
	
.form-check	.invalid-feedback					{margin-left: -1.5em; width: calc(100% + 2.25em);}											

.custom-error									{margin-top: 1rem; padding: 1em; background-color: rgba(232, 55, 79, 0.11); text-align: start; line-height: 1.3; font-size: 1rem; color: var(--error); border-radius: 6px;
												border: 2px dotted var(--red);}

.custom-error a 								{color: var(--error); border-bottom: 1px solid var(--error);}

.custom-success									{margin-top: 1rem; padding: 1em; background-color: rgb(234, 251, 237); text-align: start; line-height: 1.3; font-size: 1rem; color: var(--success); border-radius: 6px;
												border: 1px solid #32823f;}


/* Form Validation */

.form-control.is-invalid, .was-validated .form-control:invalid,
.form-select.is-invalid, .was-validated .form-select:invalid {
	border-color: var(--error);
	border-width: 1px;
	background-image: none;
}

.form-select.is-invalid:not([multiple]):not([size]), 
.form-select.is-invalid:not([multiple])[size="1"], 
.was-validated .form-select:invalid:not([multiple]):not([size]), 
.was-validated .form-select:invalid:not([multiple])[size="1"] {
	background-image: none;
}

.was-validated .form-control:valid,
.was-validated .form-control:valid:active,
.was-validated .form-control:valid:focus {
	border-color: #e2e2e2 !important;
	background-image: none !important;
	padding-right: .75rem !important;
}

.form-select.is-valid, .was-validated .form-select:valid,
.form-select.is-valid, .was-validated .form-select:valid:active,
.form-select.is-valid, .was-validated .form-select:valid:focus {
	border-color: #e2e2e2 !important;
	background-image: none !important;
	padding-right: .75rem !important;
}

.was-validated .custom-control-input:valid ~ .custom-control-label {
	color: inherit;
}

.was-validated .form-check-input:valid,
.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before,
.was-validated .custom-control-input:valid ~ .custom-control-label::before {
	border-color: rgba(0,0,0,.25);
	color: inherit;
}
.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before {
	border-color: #e2e2e2 !important;
	background-color: rgba(104, 44, 118, 1);
}

.form-select.is-valid, .was-validated .form-select:valid {
	border-color: #e2e2e2 !important;
	background-image: none;
	padding-right: .75rem;	
}

.form-check-input.is-invalid ~ .form-check-label, 
.was-validated .form-check-input:invalid ~ .form-check-label,
.form-check-input.is-valid ~ .form-check-label, 
.was-validated .form-check-input:valid ~ .form-check-label {
	color: var(--black) !important;
}

.form-check-input.is-invalid, .was-validated .form-check-input:invalid {
	border-width: 2px;
}



/* -----------------------------------------------------------------------------------------------------------------------------
 * HEADER + LOGO + BODY TOP PADDING
----------------------------------------------------------------------------------------------------------------------------- */

 body 											{}
.custom-header 									{height: 5em; position: relative;}

.custom-header .custom-logo						{position: absolute; top: 0; left: 0; width: 27em; height: auto; margin-right: 0; z-index: 1; transition: none;}
.custom-header .custom-logo img					{height: auto; width: 100%;}
.custom-header .custom-logo.custom-logo-01		{opacity: 1;}
.custom-header .custom-logo.custom-logo-02		{opacity: 0; top: .5em; left: 1.5em;}
.custom-header .custom-logo-awo					{position: absolute; top: .75em; right: 6em; margin-right: 0; z-index: 1; transition: none;}
.custom-header .custom-logo-awo img				{width: 11.25em; height: auto;}

.custom-header.custom-minified .custom-wrap-navbar-expand		{width: auto !important;}

.custom-header.custom-minified .custom-logo						{width: 3.875rem;}									 
.custom-header.custom-minified .custom-logo.custom-logo-01		{opacity: 0;}
.custom-header.custom-minified .custom-logo.custom-logo-02		{opacity: 1;}
.custom-header.custom-minified .custom-logo-awo					{display: block !important; top: 1em; right: 1em;}
.custom-header.custom-minified .custom-logo-awo	img				{width: 14em;}
.custom-header.custom-minified .custom-logo-awo .custom-size-sm	{display: none !important;}
.custom-header.custom-minified .custom-navbar-social			{display: none !important;}

.custom-header.custom-minified					{position: fixed !important; top: 0; display: block !important; width: 100% !important;
												margin-top: -10em; opacity: 0; background-color: var(--white); z-index: 4; 
												box-shadow: 0px 0px 17px -7px rgba(0,0,0,0.25);
												animation-name: NavSlideIn; animation-duration: .5s; animation-iteration-count: 1;
												animation-fill-mode: forwards; -webkit-transition: all .5s ease;
												-moz-transition: all .5s ease;
												-o-transition: all .5s ease;
												 transition: all .5s ease;}

.custom-header.custom-minified > .container		{justify-content: center !important;}											 
.custom-header.custom-minified-visible			{margin-top: 0; opacity: 1;}


	@media screen and (min-width: 1200px) and (max-width: 1700px) {
		.custom-header.custom-minified .custom-wrap-navbar-expand		{margin-left: -9em;}
	}


	@media screen and (max-width: 1199px) {
		 body 											{}
		.custom-header									{height: 54px; top: 0; width: 100%;}
		.custom-header .custom-logo						{width: 24vw; left: 0;}
		.custom-header .custom-logo-awo .custom-size-sm	{font-size: 70%;}				
				
		.custom-header.custom-minified .custom-logo		{width: 3.625vw; top: .35em; left: .5em;}
		.custom-header.custom-minified > .container		{justify-content: right !important;}
		.custom-header.custom-minified .custom-logo-awo		{top: .5em; right: auto; left: 50%; transform: translateX(-50%);}
		.custom-header.custom-minified .custom-logo-awo img	{width: 11.5em;}

	}


	@media screen and (max-width: 991px) {
		 body 											{}
		.custom-header									{height: 54px; top: 0; width: 100%;}
		.custom-header.custom-minified .custom-logo		{width: 40px; top: 6px; left: 16px;}
	}


	@media screen and (max-width: 767px) {
		 body 											{padding-top: 60px;}
		.custom-header									{height: 54px; position: absolute; top: 0; width: 100%; background-color: var(--white); z-index: 10;}
		.custom-header .custom-logo						{width: 26vw;}
		.custom-header .custom-logo-awo					{right: 5em;}
	}
	
	@media screen and (max-width: 575px) {
		 body 											{padding-top: 150px;}
		.custom-header .custom-logo						{width: 210px;}
		.custom-header .custom-logo-awo 				{display: none;}
	}
	
	@media screen and (max-width: 420px) {
		.custom-header .custom-logo-awo					{right: 4.5em; top: .8em;}
		.custom-header .custom-logo-awo	img				{width: 9.5em}
	}
	
	

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

nav a											{color: var(--black) !important; font-family: 'M PLUS Rounded 1c';}
nav a:hover										{color: var(--purple) !important; opacity: 1 !important;}


/* Main Nav ------------------------------------------------------------------------------------------------------------------ */

.custom-wrap-navbar-expand										{}

.custom-navbar-expand											{flex: 1; margin-left: -1.25em;}

.custom-navbar-expand a											{font-weight: 700;}
.custom-navbar-expand a.nav-link:hover							{color: var(--purple) !important; background-color: var(--purple-light) !important;}
.custom-navbar-expand a.nav-link:focus,
.custom-navbar-expand a.nav-link:active							{color: var(--purple) !important; background-color: var(--purple-light) !important;}

.custom-navbar-expand .nav-item									{}
.custom-navbar-expand .nav-link									{font-size: 110%; border-radius: 1.5em; padding-left: .75em !important; padding-right: .75em !important; line-height: 1.5;
																box-shadow: none !important; outline: none !important;}
																
.navbar-nav .dropdown-item:hover								{background-color: var(--purple-lighter);}																
.navbar-nav .dropdown-item:active								{border: none; background-color: var(--purple-lighter);}	
.navbar-nav .dropdown-item:focus:not(:focus-visible)			{outline: none; background-color: var(--purple-lighter);}
.navbar-nav .dropdown-item:focus-visible						{outline: solid; outline-color: var(--black); outline-width: 4px; background-color: var(--purple-lighter); border-radius: 6px;}

.custom-header .custom-mobile 									{display: none;}
.custom-header .nav-item.custom-active a						{color: var(--purple) !important; background-color: var(--purple-light);}
																	
.custom-navbar-social											{padding-left: 1em; padding-right: 2em;}
.custom-navbar-social img										{height: 2.125em; width: auto;}


	@media screen and (min-width: 1200px) {
		.custom-wrap-navbar-expand										{min-width: calc(72% + 1rem);}
		.custom-navbar-expand .nav-item									{margin-right: .5rem; margin-left: .5rem;}
		.custom-navbar-expand .nav-item.custom-last						{margin-right: 0;}
		
		.custom-navbar-expand .navbar-nav .dropdown-menu				{border-radius: 1.25em; border: 5px solid #e8e2f3; background-color: #fcfaff; font-size: 110%;}
		
	}

	@media screen and (min-width: 1200px) and (max-width: 1699px) {
		.custom-navbar-expand											{margin-left: -.825rem;}
		.custom-navbar-expand .nav-item									{font-size: 100%; margin-right: 0em; margin-left: 0em;}
	}		
	
	@media screen and (max-width: 1199px) {	
			
		.custom-navbar-expand {
			margin-left: auto;
		}
		
		 .custom-navbar-expand .navbar-collapse {
			position: fixed;
			left: 0;
			top: 0;
			background: #fcfaff;
			width: 346px;
			max-width: 100%;
			z-index: 1;
			box-shadow: 0px 0px 50px -7px rgba(0,0,0,0.25);
		}
		
		.custom-navbar-expand .custom-navbar-nav-main {
			margin-top: 17px;
			width: 100%;
			height: 100vh;
			padding-left: 15px;
			padding-bottom: 50px;
			overflow-y: auto;
			overflow-x: hidden;
		}
		
		.custom-navbar-expand .nav-item {
			margin-left: 0;
			margin-right: 0;
			margin-bottom: 2px;
			padding-left: 0;
			padding-right: .75rem;
			display: inline-block;
			text-align: left;
		}
		
		.custom-navbar-expand .nav-item .nav-link {
			font-size: 115%;
			letter-spacing: -.015em;
		}
		
		  .custom-navbar-expand .navbar-nav .dropdown-menu {
			border-radius: 1.25em;
			border: 5px solid #e8e2f3;
			background-color: #fcfaff;
			font-size: 100%;
		  }
		  
		  .custom-navbar-expand .navbar-nav .dropdown-menu .dropdown-item {
			  white-space: normal;
		  }
		
		.custom-navbar-expand .custom-nav-link-home {
			margin-top: .5rem;
			margin-bottom: 1.5rem;
			margin-right: 0;
			padding-left: 0;
			display: inline-block;
			text-align: left;
			font-weight: 400;
			color: var(--purple !important);
			font-size: 100%;
			font-family: 'Arial', 'Helvetica', sans-serif;
		}

		.custom-navbar-expand .custom-nav-link-home:hover {
			text-decoration: underline;
			color: var(--purple-darker !important);
		}		
		
		.custom-navbar-expand .custom-navbar-legal {
			margin-top: 1rem;
		}
		
		.custom-navbar-expand .custom-navbar-legal a {
			text-transform: none;
			font-family: 'Arial', 'Helvetica', sans-serif;
		}
		
		.custom-navbar-expand .custom-navbar-legal .nav-item {
			display: block;
		}
		
		.custom-navbar-expand .custom-navbar-legal .nav-item .nav-link {
			font-weight: 400;
			font-size: 100%;
		}
		
		.custom-navbar-expand .custom-navbar-legal .nav-item .nav-link:hover {
			background-color: transparent !important;
			text-decoration: underline;
		}
		
		.custom-navbar-expand .custom-navbar-legal .nav-item.custom-copyright {
			display: none;
		}
		
		.custom-navbar-expand .custom-contact-data {
			text-align: left;
		}
		
		.custom-navbar-expand .custom-contact-data a {
			display: inline-block;
			padding-left: .75em !important;
			padding-right: .75em !important;
			padding-top: .5rem;
			padding-bottom: .5rem;
			line-height: 1.5;
			font-weight: 400;
			font-family: 'Arial', 'Helvetica', sans-serif;
		}
		
		.custom-navbar-expand .custom-contact-data a:hover {
			text-decoration: underline;
		}
		
		.custom-navbar-social {
			padding-left: .75em;;
			padding-top: 1em;
		}
		
		.custom-navbar-expand .custom-navbar-social a 											{display: block;}

		.custom-navbar-expand .close-navbar-toggler 											{border: none; border-radius: 0; margin-top: 2px; margin-right: 10px;}
		.custom-navbar-expand .custom-toggler-icon 												{display: inline-block; width: 42px; height: 42px;																						  background: url(/img/bars-solid-purple.svg) center center no-repeat; background-size: auto 30px;}

		.custom-navbar-expand .close-navbar-toggler[aria-expanded="true"] 						{position: fixed; top: .5rem; right: calc(100% - 342px); z-index: 100;}
		.custom-navbar-expand .close-navbar-toggler[aria-expanded="true"] .custom-toggler-icon	{background-image: url(/img/circle-xmark-regular-purple.svg); background-size: auto 30px; margin-top: -6px;}
		
	}
	
	
	
	@media screen and (max-width: 767px) {	
		.custom-navbar-expand .close-navbar-toggler 											{margin-right: 6px;}
		.custom-navbar-expand .navbar-nav .dropdown-menu										{margin-bottom: .75rem;}
		
	}
	
	
	
	
/* Main Nav: Toggler (mobile) ------------------------------------------------------------------------------------------------------ */




/* Legal Nav ------------------------------------------------------------------------------------------------------------------ */

.custom-navbar-nav-legal .nav-item								{margin-right: 1em; margin-left: 1em;}
.custom-navbar-nav-legal .nav-link								{font-weight: 400; text-transform: none; font-family: 'Arial', 'Helvetica', sans-serif;}
.custom-navbar-nav-legal .nav-item.custom-copyright				{padding-top: .5rem;}

	@media screen and (max-width: 767px) {
		.custom-navbar-nav-legal										{font-size: 90%;}
		.custom-navbar-nav-legal .nav-item								{display: inline-block; margin-left: 0; margin-right: 0;}
		.custom-navbar-nav-legal .nav-item.custom-copyright				{display: block; text-align: center;}
	}
	


/* Anchor Aims ------------------------------------------------------------------------------------------------------------------ */

#aktuelles,
#angebote,
#mosaik,
#downloads,
#coperations,
#contact											{scroll-margin-top: 40px;}

#angebote01, #angebote02, #angebote03, #angebote04 	{scroll-margin-top: 0px;}
#mosaik01, #mosaik02, #mosaik03						{scroll-margin-top: 0px;}

footer #mosaik,
footer #angebote									{scroll-margin-top: 80px;}


/* -----------------------------------------------------------------------------------------------------------------------------
 * LAYOUT ELEMENTS
----------------------------------------------------------------------------------------------------------------------------- */

.custom-seal							{display: inline-block; background-color: var(--purple-dark); text-align: center; padding: 1em 1.5em; font-size: 100%;}
.custom-seal span						{padding: .5em 0; color: var(--white); text-transform: uppercase; font-size: 1em; line-height: 1.2; letter-spacing: .1em;
										font-family: 'M PLUS Rounded 1c'; border-top: 1px solid var(--white); border-bottom: 1px solid var(--white);}	
a.custom-seal:hover						{background-color: var(--black);}


	@media screen and (max-width: 1199px) {
		.custom-seal							{font-size: 80%;}
	}
	
	
	@media screen and (max-width: 767px) {
		.custom-seal							{font-size: 66%; padding: 1em;}
	}


.custom-title-bar						{display: block; background-color: var(--purple); height: 8px; width: 60px; margin-bottom: 22px; border-radius: 8px;}	

.custom-topic							{display: block; position: relative; padding-top: .425em; margin-bottom: 2rem; color: var(--purple); 
										 font-size: 310%; font-weight: 600; font-family: 'M PLUS Rounded 1c'; text-transform: uppercase;}

.custom-topic::before					{content: ' '; display: block; position: absolute; top: 0; left: 0;  height: .15em; width: 1.125em; border-radius: 8px;
										background-color: var(--purple);}

	@media screen and (max-width: 1199px) {
		.custom-topic							{font-size: 190%; margin-bottom: 1.5rem;}
	}

	@media screen and (max-width: 767px) {
		.custom-topic							{font-size: 190%; margin-bottom: 1.5rem;}
	}


.table-striped										{border-top: 1px solid #dee2e6;}
.table-striped th,
.table-striped td									{line-height: 1.222;}
.table-striped > tbody > tr:nth-of-type(2n+1) > * 	{--bs-table-bg-type: var(--grey-light-02);}
.table > :not(caption) > * > *						{padding: .625em .5em;}

/* -----------------------------------------------------------------------------------------------------------------------------
 * CONTENT ROWS
----------------------------------------------------------------------------------------------------------------------------- */

.custom-row											{padding-top: 9em; padding-bottom: 0;}

	@media screen and (max-width: 1199px) {
		.custom-row											{padding-top: 7em;}
	}

	@media screen and (max-width: 991px) {
		.custom-row											{padding-top: 5em;}
	}	
		
	@media screen and (max-width: 767px) {
		.custom-row											{padding-top: 3em;}
	}

/* -----------------------------------------------------------------------------------------------------------------------------
 * CONTENT WRAPS
----------------------------------------------------------------------------------------------------------------------------- */
/* Wrap Top */
.custom-wrap-top 									{padding-top: 2em;}

.custom-wrap-top  .custom-logo-awo					{position: absolute; bottom: 0; right: 2em; animation: SlideDown .875s ease-out; animation-delay: .05s; animation-iteration-count: 1;
													 animation-fill-mode: both;}
.custom-wrap-top  .custom-logo-awo img				{width: 20em;}


/* Hero */
.custom-home  .custom-wrap-hero 					{position: relative; width: 72%; margin-left: auto;}

.custom-home  .custom-wrap-hero .custom-hero-text	{animation: SlideDown .875s ease-out; animation-delay: .05s; animation-iteration-count: 1;
													 animation-fill-mode: both;}

.custom-home .custom-wrap-hero .custom-wrap-inner 	{max-width: 80em;}
.custom-home .custom-wrap-hero h1,
.custom-home .custom-wrap-hero .h1					{font-size: 400%;}
.custom-home .custom-wrap-hero .h1					{margin-bottom: 2.5rem;}

.custom-home .custom-wrap-hero-img					{max-width: 1903px; margin-left: auto; margin-right: auto; margin-top: 4rem; height: auto;}
.custom-home .custom-wrap-hero-img > div 			{flex: 0 0 25%;}


														@-webkit-keyframes MoveIn-01 { 
														   0% {transform: translateY(-5em); opacity: 0;}
														   100%{transform: translateY(0); opacity: 1;}
														 }
														 
														@-webkit-keyframes MoveIn-02 { 
														   0% {transform: translateY(3.5em); opacity: 0;}
														   100%{transform: translateY(0); opacity: 1;}
														 } 
														 
														@-webkit-keyframes MoveIn-03 { 
														   0% {transform: translateY(-3.5em); opacity: 0;}
														   100%{transform: translateY(0); opacity: 1;}
														 } 
														
														@-webkit-keyframes MoveIn-04 { 
														   0% {transform: translateY(3em); opacity: 0;}
														   100%{transform: translateY(0); opacity: 1;}
														 } 


.custom-home .custom-wrap-hero-img .custom-anim-01 		{animation: MoveIn-01 1s ease-out; animation-delay: .5s; animation-iteration-count: 1;
														animation-fill-mode: both;}
.custom-home .custom-wrap-hero-img .custom-anim-02 		{animation: MoveIn-02 .875s ease-out; animation-delay: .75s; animation-iteration-count: 1;
														animation-fill-mode: both;}
.custom-home .custom-wrap-hero-img .custom-anim-03 		{animation: MoveIn-03 .875s ease-out; animation-delay: .85s; animation-iteration-count: 1;
														animation-fill-mode: both;}
.custom-home .custom-wrap-hero-img .custom-anim-04 		{animation: MoveIn-04 .875s ease-out; animation-delay: 1s; animation-iteration-count: 1;
														animation-fill-mode: both;}													

	@media screen and (max-width: 1199px) {
		.custom-wrap-top 									{padding-top: 1.5em;}
		.custom-wrap-top .custom-logo-awo					{font-size: 70%;}
		.custom-home .custom-wrap-hero .custom-hero-img		{height: 18em;}
		.custom-home .custom-wrap-hero h1,
		.custom-home .custom-wrap-hero .h1					{font-size: 250%; margin-bottom: 1rem;}
		.custom-home .custom-wrap-hero-img					{margin-top: 2.5rem;}
	}

	@media screen and (max-width: 991px) {
		.custom-home .custom-wrap-hero h1,
		.custom-home .custom-wrap-hero .h1					{font-size: 200%; margin-bottom: 1rem;}
	}
	
	@media screen and (max-width: 767px) {
		.custom-home .custom-wrap-hero						{width: 100%}
		.custom-home .custom-wrap-hero .custom-hero-text	{padding-left: 1rem; padding-right: 1rem;}
		.custom-home .custom-wrap-hero h1,
		.custom-home .custom-wrap-hero .h1					{font-size: 210%; margin-bottom: .5em; padding-left: 25vw;}		
		.custom-home .custom-wrap-hero-img					{margin-top: 2rem;}
	}
	
	@media screen and (max-width: 576px) {
		.custom-wrap-top 									{padding-top: 1.5em; padding-bottom: 4em;}
		.custom-wrap-top .custom-logo-awo					{bottom: -.5em; right: auto; left: 50%; transform: translateX(-50%) !important;}
		.custom-wrap-top .custom-logo-awo .custom-size-sm	{font-size: .8rem;}
		.custom-home .custom-wrap-hero						{width: 100%;}
		.custom-home .custom-wrap-hero .custom-hero-text	{text-align: center; padding-left: 1rem; padding-right: 1rem;}
		.custom-home .custom-wrap-hero h1,
		.custom-home .custom-wrap-hero .h1					{font-size: 8.15vw; line-height: 1.1; padding-left: 0;}			
	}	


.custom-page.custom-page-legal h1				{font-size: 260%;}
.custom-page.custom-page-legal h2				{font-size: 160%;}
.custom-page.custom-page-legal h3				{font-size: 120%;}


	@media screen and (max-width: 1199px) {	
		.custom-page.custom-page-legal h1				{font-size: 220%;}
		.custom-size-xl									{font-size: 105%;}
		.custom-page.custom-page-legal .custom-size-lg 	{font-size: 100%;}
	}

	@media screen and (max-width: 991px) {
		.custom-page.custom-page-legal h1				{font-size: 200%;}
		.custom-size-xl									{font-size: 105%;}
	}


	@media screen and (max-width: 767px) {
		.custom-page.custom-page-legal h1				{font-size: 180%;}
		.custom-page.custom-page-legal h2				{font-size: 125%;}
		.custom-page.custom-page-legal h3				{font-size: 105%;}
	}



/* Page Intro */
.custom-page .custom-intro						{max-width: 58em;}

	@media screen and (max-width: 1399px) {
		.custom-page .custom-intro						{max-width: 60em;}
	}

	@media screen and (max-width: 1199px) {
		.custom-page .custom-intro						{max-width: 75vw;}
	}

	@media screen and (max-width: 991px) {
		.custom-page .custom-intro						{max-width: 70vw;}
	}
	
	@media screen and (max-width: 767px) {
		.custom-page .custom-intro						{max-width: none;}
	}
	

/* Page Content width */
.custom-content-width								{max-width: 76em;}

	@media screen and (max-width: 1399px) {
		.custom-page .custom-intro						{max-width: 60em;}
	}

	@media screen and (max-width: 1199px) {
		.custom-page .custom-intro						{max-width: 70vw;}
	}

	@media screen and (max-width: 991px) {
		.custom-page .custom-intro						{max-width: 70vw;}
	}
	
	@media screen and (max-width: 767px) {
		.custom-page .custom-intro						{max-width: none;}
	}
	


/* Lists */
.custom-page .custom-list-container				{max-width: 66em; padding: 3em 5em 1.5em 5em; background-color: var(--grey-light-02);}
.custom-page .custom-list-container ul			{margin: 0; padding: 0; list-style: none; font-size: 115%;}
.custom-page .custom-list-container ul li		{padding-left: 2.45em; margin-bottom: 1em; background: url(/img/check-square-fill-blue.svg) left .115em no-repeat;
												background-size: 1.375em auto;}
													
	@media screen and (max-width: 1399px) {
		.custom-page .custom-list-container				{max-width: 80vw }
	}												
													
	@media screen and (max-width: 1199px) {
		.custom-page .custom-list-container				{max-width: 80vw;}
	}														
	
	@media screen and (max-width: 991px) {
		.custom-page .custom-list-container				{ padding: 2em 3em 1.5em 3em; font-size: 90%;}
	}	
													
	@media screen and (max-width: 767px) {
		.custom-page .custom-list-container				{max-width: none; padding: 2em 1em 1.5em 1em;}
		.custom-page .custom-list-container ul			{font-size: 100%;}
	}													



/* Photo wallpaper */
.custom-photo-wallpaper								{padding-top: 6em; height: 40em;}

	@media screen and (max-width: 1199px) {
		.custom-photo-wallpaper								{padding-top: 5em; height: 34vw;}
	}
	
	@media screen and (max-width: 991px) {
		.custom-photo-wallpaper-container 					{height: 93vw;}
		.custom-photo-wallpaper								{padding-top: 3em; height: 50vw;}
	}

	@media screen and (max-width: 767px) {
		.custom-photo-wallpaper-container 					{height: 132vw; width: calc(100% + 36px); margin-left: -18px;}
		.custom-photo-wallpaper								{padding-top: 3em; height: 70vw;}
	}
	
	@media screen and (max-width: 576px) {
		.custom-photo-wallpaper-container 					{height: 128vw;}
		.custom-photo-wallpaper								{}
	}


/* Teaser */
.custom-wrap-teaser h2								{font-size: 200%;}
.custom-wrap-teaser div.custom-img-cover			{padding-bottom: 70%;}
.custom-wrap-teaser .custom-position				{margin-top: -6rem;}
.custom-wrap-teaser .custom-height					{height: 27em;}
		
.custom-wrap-teaser .custom-img.custom-height 		{height: 26em;}	
	
	@media screen and (max-width: 1903px) {
		.custom-wrap-teaser .custom-position				{margin-top: -3.5vw;}
		.custom-wrap-teaser .custom-height 					{height: 22vw;}

	}
	

	@media screen and (max-width: 1199px) {
		.custom-wrap-teaser h2								{font-size: 150%;}
		.custom-wrap-teaser .custom-height					{height: 22vw;}
		.custom-wrap-teaser .custom-img.custom-height 		{height: 24vw;}	
	}
	
	@media screen and (max-width: 991px) {
		.custom-wrap-teaser h2								{font-size: 150%;}
		.custom-wrap-teaser .custom-position				{margin-top: -4.5vw;}
		.custom-wrap-teaser .custom-height					{height: 24.5vw;}
		.custom-wrap-teaser .custom-img.custom-height 		{height: 30vw;}
	}
	
	@media screen and (max-width: 767px) {
		.custom-wrap-teaser h2								{font-size: 140%; line-height: 1.255;}
		.custom-wrap-teaser .custom-position				{margin-top: -7vw;}	
		.custom-wrap-teaser .custom-height					{height: 21em;}
		.custom-wrap-teaser .custom-img.custom-height 		{height: 55vw;}
	}
	
	@media screen and (max-width: 567px) {
		.custom-wrap-teaser .custom-height					{height: 62vw;}
		.custom-wrap-teaser .custom-img.custom-height 		{height: 68vw;}	
	}


/* Teaser About us */
.custom-wrap-teaser-about-us								{margin-top: 4rem;}
.custom-wrap-teaser-about-us h3								{margin-bottom: 1.25rem;}
	
	@media screen and (max-width: 1199px) {
		.custom-wrap-teaser-about-us								{margin-top: 2.5rem;}
	}
	
	@media screen and (max-width: 991px) {
		.custom-wrap-teaser-about-us								{margin-top: 2rem;}
	}
	
	@media screen and (max-width: 767px) {
		.custom-wrap-teaser-about-us								{max-width: 90%;}
	}

	

/* News */
.custom-wrap-news											{margin-top: 5.5rem; padding-bottom: 2rem;}
.custom-wrap-news > .row									{padding-top: 1rem; margin-left: auto; margin-right: auto;}
.custom-wrap-news > .row.custom-width						{max-width: 1620px;}
.custom-wrap-news > .row .custom-col						{height: 100%; padding: 2rem 2rem 1rem 2rem; border-radius: 18px; background-color: var(--purple-lighter);}
.custom-wrap-news .custom-img								{flex: 0 0 45%; margin-right: 2rem; margin-bottom: 0;}
.custom-wrap-news .custom-text								{text-align: left;}
.custom-wrap-news .custom-text .h3							{margin-bottom: 1rem;}
.custom-wrap-news .custom-description .custom-text			{margin-bottom: -1.5rem;}
.custom-wrap-news .custom-btn.custom-bg-red					{font-size: 105%; padding: .6rem 1.125em;}
.custom-wrap-news .custom-flag								{white-space: nowrap;}

	@media screen and (min-width: 991px) and (max-width: 1700px) {
		.custom-wrap-news .custom-flag								{white-space: normal;}
	}

	
	@media screen and (max-width: 1199px) {
		.custom-wrap-news											{margin-top: 3rem;}
		.custom-wrap-news											{margin-top: 3rem;}
		.custom-wrap-news .custom-img								{flex: 0 0 100%; margin-right: 0; margin-bottom: 1.5rem;}
		.custom-wrap-news > .row .custom-col						{padding: 1.25rem 1.25rem .5rem 1.25rem;}
	}
	
	@media screen and (max-width: 991px) {
		.custom-wrap-news .custom-flag								{white-space: normal;}
	}
	
	@media screen and (max-width: 767px) {
		.custom-wrap-news											{margin-top: 3rem; padding-bottom: 1rem;}
		.custom-wrap-news > .row									{padding-top: 0;}
		.custom-wrap-news > .row .custom-col						{padding: 1.5rem 1.5rem .5rem 1.5rem; border-radius: 20px; background-color: var(--purple-lighter);}
	}
	
		@media screen and (max-width: 575px) {
		.custom-wrap-news > .row .custom-col						{height: auto; width: calc(100% + 40px); margin-left: -20px; padding: 1.5rem 1.5rem 0 1.5rem; border-radius: 0; 
																	background-color: var(--purple-lighter);}
	}


/* Offers */
.custom-wrap-offers													{max-width: 83%; margin-top: 5.5rem; margin-left: auto; margin-right: auto; padding-bottom: 2rem;}
.custom-wrap-offers .custom-section-offers							{margin-bottom: 1rem;}

.custom-wrap-offers	.custom-collapse-link-offer						{padding: 1.75rem 1.5rem 1.75rem 2.5rem; border-radius: 20px; font-size: 125%; text-align: left;}
.custom-wrap-offers	.custom-collapse-link-offer .custom-icon		{width: 3rem; height: 3rem;}

.custom-wrap-offers	.custom-collapse-link-offer	.custom-underline 	{border-bottom: 1px solid var(--white);}


.custom-wrap-offers	.custom-collapse-link-offer[aria-expanded="true"].custom-bg-cyan:focus {background-color: var(--cyan) !important;}
.custom-wrap-offers	.custom-collapse-link-offer[aria-expanded="true"].custom-bg-cyan:hover {background-color: var(--cyan-dark) !important;}
.custom-wrap-offers	.custom-collapse-link-offer[aria-expanded="true"].custom-bg-purple:focus {background-color: var(--purple) !important;}
.custom-wrap-offers	.custom-collapse-link-offer[aria-expanded="true"].custom-bg-purple:hover {background-color: var(--purple-dark) !important;}
.custom-wrap-offers	.custom-collapse-link-offer[aria-expanded="true"].custom-bg-green:focus {background-color: var(--green) !important;}
.custom-wrap-offers	.custom-collapse-link-offer[aria-expanded="true"].custom-bg-green:hover {background-color: var(--green-dark) !important;}
.custom-wrap-offers	.custom-collapse-link-offer[aria-expanded="true"].custom-bg-orange:focus {background-color: var(--orange) !important;}
.custom-wrap-offers	.custom-collapse-link-offer[aria-expanded="true"].custom-bg-orange:hover {background-color: var(--orange-dark) !important;}

.custom-wrap-offers	.custom-collapse-body							{padding: 1.5rem 5rem; text-align: left; border-radius: 20px;}

.custom-wrap-offers	.custom-offer									{padding: 1rem 1rem 0 1rem; background-color: var(--white); border-radius: 12px; margin-bottom: .75rem;}
.custom-wrap-offers	.custom-offer:last-of-type						{margin-bottom: 0;}
.custom-wrap-offers	.custom-offer .custom-description				{margin-top: -.5rem; position: relative;}
.custom-wrap-offers	.custom-offer .custom-description .custom-text	{padding-top: 0}
.custom-wrap-offers	.custom-offer .custom-sign-in					{}
.custom-wrap-offers	.custom-offer .custom-collapse-link-description {margin-bottom: 1rem;}



	@media screen and (max-width: 1199px) {
		.custom-wrap-offers													{margin-top: 2rem; max-width: 95%;}
		.custom-wrap-offers	.custom-collapse-link-offer						{padding: 1.25rem 1.25rem 1.25rem 1.5rem;}
		.custom-wrap-offers .custom-collapse-link-offer span				{font-size: 1rem; white-space: nowrap; margin-left: 2rem;}
		.custom-wrap-offers	.custom-collapse-body							{padding: 2rem 3rem;}
	}

	@media screen and (max-width: 991px) {
		.custom-wrap-offers	.custom-collapse-body							{padding: 2rem 1rem;}
	}

	@media screen and (max-width: 767px) {
		.custom-wrap-offers													{margin-top: 2rem; max-width: none;}
		.custom-wrap-offers	.custom-collapse-link-offer						{padding: 1rem 1rem 1rem 1.25rem; border-radius: 20px; font-size: 115%; text-align: left;}
		.custom-wrap-offers	.custom-collapse-link-offer .custom-icon		{width: 2.5rem; height: 2.5rem;}
		.custom-wrap-offers	.custom-offer									{padding-bottom: .5rem;}
		.custom-wrap-offers	.custom-offer .custom-sign-in					{}
		.custom-wrap-offers	.custom-collapse-body							{padding: 1rem 1rem;}
	}





/* About us */
.custom-wrap-about-us												{margin-top: 5.5rem;}
.custom-wrap-about-us .custom-section								{padding: 2.5em 3em 4em 3em;}
.custom-wrap-about-us .custom-section > h3							{margin-bottom: 2.5rem;}
.custom-wrap-about-us .custom-section .custom-wrap-inner			{max-width: 1580px; padding: 2.5em 4em; margin: auto; background-color: var(--white); border-radius: 2em; overflow: hidden;}
.custom-wrap-about-us .custom-container-collapse					{margin-top: 1.5em; margin-bottom: 1em;}
.custom-wrap-about-us .custom-container-collapse .custom-collapse-content {padding-top: 2rem; padding-bottom: 1rem; color: var(--black);}

.custom-wrap-about-us img.custom-img-01								{width: 85%; height: auto; margin-top: -3em; margin-right: -4em;}
.custom-wrap-about-us img.custom-img-02								{width: calc(100% + 4em); height: auto; margin-left: -4em;}
.custom-wrap-about-us img.custom-img-03								{width: 100%; height: auto; margin-top: -1em;}
.custom-wrap-about-us img.custom-img-04								{width: 95%; height: auto; object-position: top right; margin-top: -46.25%; margin-right: -2rem;}
.custom-wrap-about-us img.custom-img-05								{width: calc(100% + 4em); height: auto; margin-top: -3em; margin-right: -4em;}
.custom-wrap-about-us img.custom-img-06								{width: 90%; max-width: 35em; height: auto; margin: 2rem auto 0 auto;}
.custom-wrap-about-us img.custom-img-07								{width: 60%; margin: 0 auto 3rem auto; transform: translateX(-1rem);}
	
	@media screen and (max-width: 1199px) {
		.custom-wrap-about-us												{margin-top: 1rem;}
		.custom-wrap-about-us .custom-section								{padding: 2em 4.5em 1.5em 4.5em;}
		.custom-wrap-about-us .custom-section .custom-wrap-inner			{padding: 2.5em 1.5em;}
		.custom-wrap-about-us .custom-container-collapse .custom-collapse-content .custom-collapse-link-description {font-size: 110%;}
		.custom-wrap-about-us img.custom-img-07								{width: 80%;;}
	}
	
	@media screen and (max-width: 991px) {
		.custom-wrap-about-us .custom-section								{padding: 2em 1.5em 1.5em 1.5em;}
		.custom-wrap-about-us img.custom-img-07								{width: 98%; margin-left: 3%;}
	}


	
	@media screen and (max-width: 767px) {
		.custom-wrap-about-us												{margin-top: 1rem;}		
		.custom-wrap-about-us .custom-section								{padding: 2em .5em 2em .5em;}
		.custom-wrap-about-us .custom-section > h3							{margin-bottom: 2rem; padding-left: 20px; padding-right: 20px;}
		.custom-wrap-about-us .custom-section .custom-wrap-inner			{padding: 1.5em 1em .5em 1em;}
		.custom-wrap-about-us .custom-container-collapse .custom-collapse-content {padding-top: 1rem}	
		.custom-wrap-about-us .custom-container-collapse .custom-collapse-content .custom-collapse-link-description {font-size: 100%;}
		.custom-wrap-about-us img.custom-img-02								{width: calc(100% + 2em); margin-top: -.5rem; margin-left: -1rem; margin-bottom: .5rem;}
		.custom-wrap-about-us img.custom-img-03								{margin-bottom: 1.5rem;}
		.custom-wrap-about-us img.custom-img-05								{width: calc(100% + 2em); margin: .5rem 0 -1rem -1rem !important;}
		.custom-wrap-about-us img.custom-img-06								{width: 100%; max-width: 35em;}
		.custom-wrap-about-us img.custom-img-07								{width: 100%; margin: 1rem auto 2rem auto; transform: translateX(0);}		
	}


/* Downloads */
.custom-wrap-downloads												{margin-top: 5.5rem; padding-bottom: 2rem;}
.custom-wrap-downloads .custom-icon-link							{padding: .625rem .25rem .85rem .25rem;}
.custom-wrap-downloads .custom-icon-link:hover						{background: var(--purple-lighter);}
.custom-wrap-downloads .custom-icon									{flex: 0 0 3em;}

.custom-wrap-downloads .custom-container-downloads .custom-item		{font-size: 65%;}
.custom-wrap-downloads .custom-container-downloads .custom-divider  {padding: 0 1.5em; margin-top: -4px; opacity: 1; background-color: #c9bbe2; height: 4px;}

	@media screen and (max-width: 1199px) {
		.custom-wrap-downloads												{margin-top: 3.5rem; padding-bottom: 0rem;}
		.custom-wrap-downloads .custom-container-downloads .custom-item		{font-size: 80%;}
	}

	@media screen and (max-width: 767px) {
		.custom-wrap-downloads												{margin-top: 3rem; padding-bottom: 0;}
		.custom-wrap-downloads .custom-container-downloads .custom-item		{font-size: 80%;}
	}
	

/* Contact */
.custom-wrap-contact												{margin-top: 5.5rem;}
.custom-wrap-contact .custom-img									{flex: 0 0 6em; margin-right: .5em; margin-top: -2em;}
.custom-wrap-contact .custom-img img.custom-img-size-01				{width: 100%; margin-top: .25em;}
.custom-wrap-contact .custom-img img.custom-img-size-02				{width: 80%; margin-top: .75em;}

	
	@media screen and (min-width: 768px) {
		.custom-wrap-contact .custom-contact-container						{}
		.custom-wrap-contact .custom-contact-container p 					{white-space: nowrap; padding-right: 20px;}
	}
	
	@media screen and (max-width: 1199px) {
		.custom-wrap-contact												{padding-left: 10px; padding-right: 10px;}
		.custom-wrap-contact .custom-position								{margin-left: -3.25em;}
		.custom-wrap-contact .custom-img									{flex: 0 0 4em;}
	}
	
	@media screen and (max-width: 767px) {
		.custom-wrap-contact												{margin-top: 4rem; padding-bottom: 0;}
		.custom-wrap-contact .custom-img									{flex: 0 0 4em;}
		.custom-wrap-contact .custom-text									{padding-right: 1em;}
	}
	

/* Cooperations */
.custom-wrap-cooperations											{margin-top: 6.5rem; padding-bottom:0;}
.custom-wrap-cooperations a 										{display: block; height: 100%;}
.custom-wrap-cooperations a:hover									{opacity: .6;}

.custom-wrap-cooperations .custom-logos-01 > div					{width: calc(20% - 3em); height: 4.5em; margin: 0 1.5em 3em 1.5em;}
.custom-wrap-cooperations .custom-logos-01 > div img				{width: 100%; height: 100%; object-fit: contain; transform-origin: center center;}
.custom-wrap-cooperations .custom-logos-01 > div.custom-size-01	a  {transform: scale(1.1);}
.custom-wrap-cooperations .custom-logos-01 > div.custom-size-02	a  {transform: scale(.75);}
.custom-wrap-cooperations .custom-logos-01 > div.custom-size-03 a 	{transform: scale(1.1);}
.custom-wrap-cooperations .custom-logos-01 > div.custom-size-04 a 	{}
.custom-wrap-cooperations .custom-logos-01 > div.custom-size-05 a 	{transform: scale(1.3);}
.custom-wrap-cooperations .custom-logos-01 > div.custom-size-06 a 	{}
.custom-wrap-cooperations .custom-logos-01 > div.custom-size-07 a 	{}
.custom-wrap-cooperations .custom-logos-01 > div.custom-size-08 a 	{}
.custom-wrap-cooperations .custom-logos-01 > div.custom-size-09 a 	{}
.custom-wrap-cooperations .custom-logos-01 > div.custom-size-10 a 	{}
.custom-wrap-cooperations .custom-logos-01 > div.custom-size-11 a 	{}
.custom-wrap-cooperations .custom-logos-01 > div.custom-size-12 a 	{}
.custom-wrap-cooperations .custom-logos-01 > div.custom-size-13 a 	{transform: scale(.85);}
.custom-wrap-cooperations .custom-logos-01 > div.custom-size-14 a 	{transform: scale(1.2);}
.custom-wrap-cooperations .custom-logos-01 > div.custom-size-15 a 	{}
.custom-wrap-cooperations .custom-logos-01 > div.custom-size-16 a 	{transform: scale(1.2);}
.custom-wrap-cooperations .custom-logos-01 > div.custom-size-17 a	{transform: scale(1.25);}
.custom-wrap-cooperations .custom-logos-01 > div.custom-size-18 a	{}
.custom-wrap-cooperations .custom-logos-01 > div.custom-size-19 a	{transform: scale(1.25);}
.custom-wrap-cooperations .custom-logos-01 > div.custom-size-20 a	{transform: scale(1.5);}

.custom-wrap-cooperations .custom-logos-02 > div					{width: calc(20% - 3.5em); height: 4.5em; margin: 0 1.75em 3em 1.75em;}
.custom-wrap-cooperations .custom-logos-02 > div img				{width: 100%; height: 100%; object-fit: contain;}
.custom-wrap-cooperations .custom-logos-02 > div.custom-size-01 a 	{transform: scale(1.1);}
.custom-wrap-cooperations .custom-logos-02 > div.custom-size-02 a 	{transform: scale(1.5);}
.custom-wrap-cooperations .custom-logos-02 > div.custom-size-03 a 	{}
.custom-wrap-cooperations .custom-logos-02 > div.custom-size-04 a 	{transform: scale(1.2);}
.custom-wrap-cooperations .custom-logos-02 > div.custom-size-05	a 	{}
.custom-wrap-cooperations .custom-logos-02 > div.custom-size-06	a 	{transform: scale(.825);}
.custom-wrap-cooperations .custom-logos-02 > div.custom-size-07 a 	{}
.custom-wrap-cooperations .custom-logos-02 > div.custom-size-08 a 	{}
.custom-wrap-cooperations .custom-logos-02 > div.custom-size-09 a 	{}
.custom-wrap-cooperations .custom-logos-02 > div.custom-size-10 a 	{}
.custom-wrap-cooperations .custom-logos-02 > div.custom-size-11	a  	{}
.custom-wrap-cooperations .custom-logos-02 > div.custom-size-12	a 	{transform: scale(2.1);}
.custom-wrap-cooperations .custom-logos-02 > div.custom-size-13	a  	{transform: scale(1.8);}
.custom-wrap-cooperations .custom-logos-02 > div.custom-size-14	a 	{transform: scale(1.8);}



	@media screen and (max-width: 1199px) {
		.custom-wrap-cooperations											{margin-top: 5rem; padding-bottom: 0;}
		.custom-wrap-cooperations .custom-logos-01 > div					{width: calc(20% - 2rem); height: 4.5em; margin: 0 2em 3.5em 2em;}		
		.custom-wrap-cooperations .custom-logos-02 > div					{width: calc(20% - 2rem); height: 4.5em; margin: 0 2em 3.5em 2em;}
		.custom-wrap-cooperations .custom-logos-01 > div.custom-size-03 a 	{transform: scale(1);}
	}

	@media screen and (max-width: 767px) {
		.custom-wrap-cooperations											{padding-bottom: 0;}
		.custom-wrap-cooperations .custom-logos-01 > div					{width: calc(33.333% - 4em); height: 4em; margin: 0 2em 3.5em 2em;}
		.custom-wrap-cooperations .custom-logos-02 > div					{width: calc(33.333% - 4em); height: 4em; margin: 0 2em 3.5em 2em;}

	}
	
	@media screen and (max-width: 576px) {
		.custom-wrap-cooperations .custom-logos-01 > div					{width: calc(50% - 4em); height: 4em; margin: 0 2em 2em 2em;}
		.custom-wrap-cooperations .custom-logos-01 > div.custom-size-01	a  	{transform: scale(1.45);}
		.custom-wrap-cooperations .custom-logos-01 > div.custom-size-02	a  	{transform: scale(.9);}
		.custom-wrap-cooperations .custom-logos-01 > div.custom-size-16 a 	{transform: scale(1);}
		.custom-wrap-cooperations .custom-logos-01 > div.custom-size-17 a 	{transform: scale(1.2);}

		.custom-wrap-cooperations .custom-logos-02 > div					{width: calc(50% - 4em); height: 4em; margin: 0 2em 2em 2em;}
		.custom-wrap-cooperations .custom-logos-02 > div.custom-size-12	a  	{transform: scale(1.5);}
		.custom-wrap-cooperations .custom-logos-02 > div.custom-size-13	a  	{transform: scale(1.3);}
		.custom-wrap-cooperations .custom-logos-02 > div.custom-size-14	a  	{transform: scale(1.3);}

	}
			

/* Form */
.custom-wrap-form .custom-form-contact				{}
.custom-wrap-form .custom-form-contact .custom-wrap-message	{width: calc(100% + 1.5em); margin-left: -.75rem;}
.custom-wrap-form .custom-form-row 					{font-size: 120%;}

	@media screen and (max-width: 1199px) {
		.custom-wrap-form .custom-form-row 					{font-size: 100%;}
	}

	@media screen and (max-width: 991px) {
		.custom-wrap-form .custom-form-row 					{font-size: 100%;}
	}

	@media screen and (max-width: 767px) {
		.custom-wrap-form .custom-form-row 					{font-size: 100%;}
	}


/* -----------------------------------------------------------------------------------------------------------------------------
 * MODALS
----------------------------------------------------------------------------------------------------------------------------- */
 
.custom-modal {
	overflow-x: hidden !important;
	overflow-y: auto !important;
	background-color: rgba(65, 39, 111, .85);
	backdrop-filter: blur(7px); 
	-webkit-backdrop-filter: blur(7px);
}

.modal::backdrop {
  background-color: rgba(255, 0, 0, 0.5);
}

.custom-modal .modal-content {
	border-radius: .5rem;
}
 
.custom-modal .modal-dialog {
	width: 95%;
	max-width: 1000px;
}

.custom-modal.custom-modal-md .modal-dialog {
	max-width: 650px;
}

.custom-modal.custom-modal-lg .modal-dialog {
	max-width: 960px;
}

.custom-modal.custom-modal-xl .modal-dialog {
	max-width: 1148px;
}
 
.custom-modal .modal-header {
	align-items: inherit;
	border-bottom: 0;
}

.custom-modal .modal-header .custom-btn-close:hover {	
	transform: scale(1.1);
}

.custom-modal .modal-header,
.custom-modal .modal-body,
.custom-modal .modal-footer {
	padding-left: 2em;
	padding-right: 2em;
}

.custom-modal .modal-body {
	padding-bottom: 2em;
}

.custom-modal .modal-body .custom-btn {
}

.custom-modal .modal-footer {
	padding-top: 2em;
	padding-bottom: .75em;
	padding-right: 1em;
	border-color: #E5E5E5;	
}

.custom-modal .modal-footer > * {
	margin: .375rem;
}
 
.custom-modal .modal-header .custom-btn-close {
	background-image: url(/img/circle-xmark-regular-red.svg);
	background-size: 90% auto;
	margin: 0 0 0 auto;
	transform: translateX(.825em) !important;
}

.custom-modal .modal-header .custom-btn-close:hover {
	background-image: url(/img/circle-xmark-regular-red-dark.svg);
	opacity: 1 !important;
}

.custom-modal .custom-container-info {
	margin-top: 0;
}


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

		.custom-modal .modal-title {
			font-size: 175%;
		}
	
	}

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

		.custom-modal .modal-header, .custom-modal .modal-body, .custom-modal .modal-footer {
			padding-left: 1em;
			padding-right: 1em;
		}
		
		.custom-modal .modal-header .custom-btn-close {
			transform: translate(.25em, -.325em) !important;
		}
	
	}



/* -----------------------------------------------------------------------------------------------------------------------------
 * PAGES
----------------------------------------------------------------------------------------------------------------------------- */
.custom-page .custom-page-content						{padding-top: 50px; min-height: calc(100vh - 15em); padding-bottom: 2em;}
.custom-page .custom-page-content .custom-wrap-text		{width: 72%; margin-left: auto;  text-align: left; margin-right: 0; max-width: none; padding-right: 14vw;}

	@media screen and (max-width: 1199px) {
		.custom-page .custom-page-content							{padding-top: 0; min-height: calc(100vh - 10.25em);}
	}

	@media screen and (min-width: 768px) and (max-width: 1199px) {
		.custom-page .custom-page-content							{padding-top: 0;}
		.custom-page .custom-page-content .custom-wrap-text 		{padding-right: 10vw;}
	}

	@media screen and (min-width: 576px) and (max-width: 767px) {
		.custom-page .custom-page-content						{padding-top: 0; padding-bottom: .25em; min-height: calc(100vh - 9.75em);}
		.custom-page .custom-page-content .custom-wrap-text 	{width: 100%; padding-right: 10px;}
		.custom-page .custom-page-content h1					{padding-left: 30vw; margin-bottom: 10vw;}
	}
	
	@media screen and (max-width: 575px) {
		.custom-page .custom-page-content						{padding-top: 20px; padding-bottom: .25em; min-height: calc(100vh - 9.75em);}
		.custom-page .custom-page-content .custom-wrap-text 	{width: 100%; padding-right: 10px;}
		.custom-page .custom-page-content h1					{padding-left: 0;}
	}
	
/* 404 */
.custom-page .custom-page-content.custom-page-404 h1			{font-size: 900%;}

	@media screen and (max-width: 1199px) {
		.custom-page .custom-page-content.custom-page-404 h1			{font-size: 400%; padding-left: 0;}
	}

	
/* -----------------------------------------------------------------------------------------------------------------------------
 * FOOTER
----------------------------------------------------------------------------------------------------------------------------- */

.custom-footer										{margin-top: 4em; background-color: var(--purple-lighter);}
.custom-footer .navbar								{padding: .25em;}
.custom-footer .custom-navbar-nav-main .nav-link 	{margin-left: 1rem; margin-right: 1rem;}
.custom-footer .custom-navbar-nav-legal	.nav-link	{font-family: 'Arial', 'Helvetica', sans-serif;}
.custom-footer .custom-navbar-nav-legal > div > div {flex-direction: row !important;}	
.custom-footer .custom-navbar-social				{padding: .75em 1em 1em 1em; justify-content: center;}
.custom-footer .custom-navbar-social img			{height: 2.65em;}

	@media screen and (max-width: 1199px) {
		.custom-footer										{margin-top: 0; font-size: 90%;} 
		.custom-footer .custom-navbar-nav-legal				{margin-top: 0;}
		.custom-footer .custom-navbar-nav-legal > div 		{flex-direction: row !important;}
	}


	@media screen and (min-width: 768px) and (max-width: 991px) {
		.custom-footer										{margin-top: 2em; font-size: 90%;} 
		.custom-footer .custom-navbar-nav-legal				{margin-top:0;}
		.custom-footer .custom-navbar-nav-legal > div 		{flex-direction: row !important;}
	}

		.custom-footer .custom-navbar-nav-legal > div 		{flex-direction: row !important;}
	}

/* -----------------------------------------------------------------------------------------------------------------------------
 * ANIMATIONS
----------------------------------------------------------------------------------------------------------------------------- */

@keyframes NavSlideIn {
	from {transform: translateY(-4em); opacity: 1;}
	to   {transform: translateY(0); opacity: 1;}
}

@-webkit-keyframes SlideDown { 
   0% {transform: translatey(-2.5em); opacity: 0;}
   100%{transform: translatey(0); opacity: 1;}
 }

	@media screen and (max-width: 767px) {
		
		@-webkit-keyframes SlideDown { 
		   0% {transform: translatey(-1.5em); opacity: 0;}
		   100%{transform: translatey(0); opacity: 1;}
		 }

	}


/* */
.custom-anim-container											{padding-top: 3em; 
																-webkit-transition: all 1000ms ease; 
																-moz-transition: all 1000ms ease; 
																-o-transition: all 1000ms ease;
																transition: all 1000ms ease;}
.custom-anim-container.custom-anim								{padding-top: 0;}


.custom-anim .custom-anim-move-up 								{animation-name: MoveUpText;
																animation-duration: 1s;
																animation-delay: .5s;
																animation-iteration-count: 1;
																animation-fill-mode: both;}
														
																	@-webkit-keyframes MoveUpText { 
																	   0% {transform: translate(0, 5em); opacity: 0;}
																	   100%{transform: translate(0, 0); opacity: 1;}
																	 }
