/*
- - - > |  @font-face  | < - - - 
*/
/* Seravek Web Basic Light */
	@font-face {
	font-family: 'SeravekWebBasicLight';
	src: url('SeravekWebBasicLight.eot');
	src: url('SeravekWebBasicLight.eot?#iefix') format('embedded-opentype'),
         url('SeravekWebBasicLight.woff2') format('woff2'),
         url('SeravekWebBasicLight.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	}

/*
- - - > |  Font Classes  | < - - - 
*/
.SeravekWebBasicLight {
	font-family: 'SeravekWebBasicLight';
	font-weight: normal;
	font-style: normal;
	}


/* Seravek Web Basic Regular */
	@font-face {
	font-family: 'SeravekWebBasic';
	src: url('SeravekWebBasicRegular/SeravekWebBasicRegular.eot');
	src: url('SeravekWebBasicRegular/SeravekWebBasicRegular.eot?#iefix') format('embedded-opentype'),
         url('SeravekWebBasicRegular/SeravekWebBasicRegular.woff2') format('woff2'),
         url('SeravekWebBasicRegular/SeravekWebBasicRegular.woff') format('woff');
	font-weight: 400;
	font-style: normal;
	}

/* Seravek Web Basic Regular Italic */
	@font-face {
	font-family: 'SeravekWebBasic';
	src: url('SeravekWebBasicRegularItalic/SeravekWebBasicRegularItalic.eot');
	src: url('SeravekWebBasicRegularItalic/SeravekWebBasicRegularItalic.eot?#iefix') format('embedded-opentype'),
         url('SeravekWebBasicRegularItalic/SeravekWebBasicRegularItalic.woff2') format('woff2'),
         url('SeravekWebBasicRegularItalic/SeravekWebBasicRegularItalic.woff') format('woff');
	font-weight: 400;
	font-style: italic;
	}

/* Seravek Web Basic Bold */
	@font-face {
	font-family: 'SeravekWebBasic';
	src: url('SeravekWebBasicBold/SeravekWebBasicBold.eot');
	src: url('SeravekWebBasicBold/SeravekWebBasicBold.eot?#iefix') format('embedded-opentype'),
         url('SeravekWebBasicBold/SeravekWebBasicBold.woff2') format('woff2'),
         url('SeravekWebBasicBold/SeravekWebBasicBold.woff') format('woff');
	font-weight: 700;
	font-style: normal;
	}

/* Seravek Web Basic Bold Italic */
	@font-face {
	font-family: 'SeravekWebBasic';
	src: url('SeravekWebBasicBoldItalic/SeravekWebBasicBoldItalic.eot');
	src: url('SeravekWebBasicBoldItalic/SeravekWebBasicBoldItalic.eot?#iefix') format('embedded-opentype'),
         url('SeravekWebBasicBoldItalic/SeravekWebBasicBoldItalic.woff2') format('woff2'),
         url('SeravekWebBasicBoldItalic/SeravekWebBasicBoldItalic.woff') format('woff');
	font-weight: 700;
	font-style: italic;
	}

.SeravekWebBasicRegular {
	font-family: 'SeravekWebBasic';
	font-weight: 400;
	font-style: normal;
	}

.SeravekWebBasicRegularItalic {
	font-family: 'SeravekWebBasic';
	font-weight: 400;
	font-style: italic;
	}

.SeravekWebBasicBold {
	font-family: 'SeravekWebBasic';
	font-weight: 700;
	font-style: normal;
	}

.SeravekWebBasicBoldItalic {
	font-family: 'SeravekWebBasic';
	font-weight: 700;
	font-style: italic;
	}

html, body {
	scroll-behavior: smooth;
}

html {
	scrollbar-width: thin;
	max-width: 100%;
    overflow-x: hidden;

}

body {
	font-family: 'SeravekWebBasic';
	letter-spacing: 0.02rem;
	hyphens: auto;
}

footer {
	height: 4rem;
}


h1 {

	font-family: 'SeravekWebBasic';
	color: white;
	font-weight: 700;
	font-style: italic;
	text-transform: uppercase;
	font-size: calc( (1vw + 1vh) * 3.5);
	letter-spacing: 0;
}

h2 {
	font-family: 'SeravekWebBasicLight';
	font-weight: normal;
	font-style: normal;
	font-size: calc( (1vw + 1vh) * 2.5);
	letter-spacing: 0rem;

}

h4 {
	font-family: 'SeravekWebBasic';
	font-weight: bold;
	font-style: normal;
	font-size: calc( 1vw + 1vh * 1.5);
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-color: #00ffe6;
	text-decoration-thickness: 0.2em;
}

a {
	text-decoration: none;
	color: white;
}

a:hover {
	text-decoration: none;
	color: white;
}

b, strong {
	font-family: 'SeravekWebBasic';
  font-weight: bolder;
}

p {
	font-family: 'SeravekWebBasicLight';
	font-size: calc( 1vw + 1vh);
	padding-top: 2vh;
	letter-spacing: 0;
}

.enterpage {
	position: fixed;
bottom: 5%;
left: 40vw;
right: auto;
width: 20vw;
text-align: center;
}

.text-white {
	text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.2);
}

.bulletpoint {
	color: #00ffe6;
}

.btn-dark {
	font-family: 'SeravekWebBasic';
	color: white;
	font-weight: 700;
	letter-spacing: 0.1rem;
	text-transform: uppercase;
	border-radius: 0;
	padding:1vh;
	padding-left:2.5vw;
	padding-right:2.5vw;
}

.next-btn, .prev-btn {
	position: absolute;
	top: 0;
	height: 100%;
	z-index: 0;
	background:none;
	border:none;
}

.next-btn {
	right: 0;
	margin-right: -30px;
}

.prev-btn {
	left: 0;
  	margin-left: -30px;
}

.lead {
	font-family: 'SeravekWebBasic';
		font-size: 1.2em;
		text-transform: uppercase;
		font-weight: bolder;
}

.triangle {
	font-size: 0.9em;
}

.lead p {
	margin-top:2rem;
}


::selection {
  background: #00ffe6; /* WebKit/Blink Browsers */
}
::-moz-selection {
  background: #00ffe6; /* Gecko Browsers */
}

.startline {
	height: 100vh
}

.bgimage {		
	/*  background-image: url(../img/BVG_Messestaende_hintergrund.png); */
	background-color: #F0D722;
  	background-position: bottom center; 
	background-repeat: no-repeat; 
	background-size:cover; 
	background-attachment:fixed;
}

.starthead {
	visibility: hidden;
	opacity: 0;
  	transition: visibility 0s, opacity 0.5s linear;
}



.rotate {
	
	padding-top: 27vh;
	margin-top: 6rem;
 	transform: rotate(-8deg);
 	text-shadow: 0em 0.1em 0.3em rgb(0 0 0 / 20%); 


  /* Legacy vendor prefixes that you probably don't need... */

  /* Safari */
  -webkit-transform: rotate(-8deg);

  /* Firefox */
  -moz-transform: rotate(-8deg);

  /* IE */
  -ms-transform: rotate(-8deg);

  /* Opera */
  -o-transform: rotate(-8deg);

  /* Internet Explorer */
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);

}

.rotate h1{
	
	padding-top: 27vh;
	margin-top: 6rem;
 	transform: rotate(-8deg);
 	text-shadow: 0em 0.1em 0.3em rgb(0 0 0 / 20%); 


  /* Legacy vendor prefixes that you probably don't need... */

  /* Safari */
  -webkit-transform: rotate(-8deg);

  /* Firefox */
  -moz-transform: rotate(-8deg);

  /* IE */
  -ms-transform: rotate(-8deg);

  /* Opera */
  -o-transform: rotate(-8deg);

  /* Internet Explorer */
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);

}


.lotsen-headline h1{
	padding-top: 0;
  padding-bottom: 1em;
}



.button404 {
	background-color: black;
	cursor: pointer;
		font-weight: 400;
	border: none;
	text-decoration: none;
	transition: all 160ms linear;
	font-family: 'SeravekWebBasic';
	color: white;
	letter-spacing: 0.1rem;
	text-transform: uppercase;
	border-radius: 0;
	padding: 1vh;
	  padding-right: 1vh;
	  padding-left: 1vh;
	padding-left: 2.5vw;
	padding-right: 2.5vw;
}

.rotatesub {
	padding-top: 0 ;
	padding-bottom:2rem;
}

.modal-body {
	padding:0 !important;
}

.reveal {
  position: relative;
  display: flex;
  color: #6ee1f5;
  font-size: 2rem;

  letter-spacing: 3px;
  white-space: pre;
}


.reveal   span {
    opacity: 0;
    transform: scale(0);
    animation: fade-in 2.4s forwards;
  }

@keyframes fade-in {
  to {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes slide-left {
  to {
    left: -6%;
    opacity: 1;
    transform: scale(0.9);
  }
}

@keyframes slide-right {
  to {
    right: -6%;
    opacity: 1;
    transform: scale(0.9);
  }
}


.overlay {
  height: 100%;
  width: 0;
  position: fixed;
  z-index: 3; 
  left: 0;
  top: 0;
  background-color: rgb(0,0,0); 
  background-color: rgba(14,20,20, 0.85); 
  overflow-x: hidden; 
  transition: 0.6s; 
}


.overlay-content {
	color: white;
  position: relative;
  top: 6vh;
  right: 0.8rem;
  width: 100%; 
  text-align: right; 
  margin-top: 5vh;
  padding-right: 1.8rem;
}


.overlay a {
		line-height: 1.2;
  text-decoration: none;
  color: white;
  display: block; 
  transition: 0.3s;
  font-family: 'SeravekWebBasic';
	color: white;
	font-weight: 700; 
	text-transform: uppercase;
	font-size: 10vh;
	letter-spacing: 0.4rem;


}

.imprint {
	font-size: 2em !important;
	position: unset;
	bottom: 0;
	font-weight: normal !important;
	letter-spacing: 0.2rem !important;
	opacity: 0.4;
}

.imprint-wrap {
	bottom: 2rem;
top: auto;
position: absolute;
}

.imprintpg{
	padding-bottom:5rem !important;
}

.overlay a:hover, .overlay a:focus {
	font-style: italic;
	letter-spacing: 0.2rem;
	opacity: 0.5;
	
}

.current {
	cursor: inherit; 
	opacity: 0.1 !important;
	letter-spacing: 0.3rem !important;
	font-style: italic !important;
}

 .openbtn {
 	color: white;
    top: 0;
    right: 0;
    text-align: center;
    cursor: pointer;
    font-size: calc(100% + 3vw + 3vh);

    height: 100%;	
        display: inherit;
}


.openbtn img {
	width: auto;
		top: 0;
		right: 0;
		position: absolute;
		height: 100%;
		min-height: 60px;
	padding-right: 1.5rem;
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
	
}

.closebtn {
	color: white;
    top: 0;
    right: 0;
    text-align: center;
    cursor: pointer;
    font-size: calc(100% + 3vw + 3vh);
    width: 80%;
    height: 100%;
    margin: 0 10%;
        padding: 0 20px;	
        display: inherit;
}

.closebtn img {
	width: auto;
		top: 0;
		right: 0;
		position: absolute;
		height: 100%;
		min-height: 60px;
	padding-right: 1.8rem;
	padding-top: 1.5rem;
	padding-bottom:1.5rem;
}

#rivalogo {
	color: white;  
  	transition: 0.4s;
  	    height: 100%;
}


#rivalogo img {
	height: 100%;
	padding-left:1.4rem;
	padding-bottom:1.4rem;
	padding-top: 0.8rem;
    position: relative;
    max-width: 100%;
}


#rivalogomenu {
  color: white;
  position: absolute;
   top: 2.5vw;
    height: 100%;
    left: 2.5vw;
  transition: 0.4s;

}

@media screen and (max-height: 450px) {
  .overlay a {font-size: 20px}
 .imprint {font-size: 20px !important;}
} 





body {
  background-color: rgba(14,20,20); 
  color: black;
  
}

main {
  height: 100vh;
}

nav {
	z-index: 3;
	width: 100%;
    position: fixed;
    height: 14vh;
    top: 0;
    background-color: transparent;
    display: flex;
    min-height: 60px;
}

.menuwrap {
	width: 15vw;
	display: inline-block;
	height: 100%;
}

.turquoise {
  background-color: #45B5AA; 
}

.container  {
	max-width: 70vw;
	
}

.container-last {
	padding-bottom: 3rem !important;
}

.row>* {
	padding-top: calc(var(--bs-gutter-x) * .1);
    padding-right: calc(var(--bs-gutter-x) * .1);
    padding-left: calc(var(--bs-gutter-x) * .1);
    padding-bottom: calc(var(--bs-gutter-x) * .2);
    margin-top: calc(var(--bs-gutter-x) * .1);



}

.row {
	margin-right: calc(var(--bs-gutter-x) * -.1);
    margin-left: calc(var(--bs-gutter-x) * -.1);
}

.container {
	padding-right: calc(var(--bs-gutter-x) * .1);
    padding-left: calc(var(--bs-gutter-x) * .1);
    padding-bottom: calc(var(--bs-gutter-x) * .1);
    margin-top: calc(var(--bs-gutter-x) * .1);
}


/* 1.  LANDINGPAGE */

 /* Style the video: 100% width and height to cover the entire window */
#myVideo {
	position: fixed;
	top: 50%;
	left: 50%;
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
	z-index: -100;
	-webkit-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
	background-size: cover;
}

.workvid {
	opacity: 0.5 !important;
}

.startbox {
	margin-top: -36vh; 
	padding-bottom: calc(var(--bs-gutter-x) * .1);
}

.content-box {
	padding: 6% 21% 6% 10%;
    background-color: rgba(255, 255, 255, 0.95);
    /* box-shadow: 0em 0.1em 0.4em rgb(0 0 0 / 20%); */
}

.container-start {
	visibility: hidden;
	opacity: 0;
  transition: visibility 0s, opacity 0.3s linear;
}

/* 1.1 LOTSENPRINZIP */

.container-lotsen {
	
}

.lotsen-grafik {
	padding-top: 5vw;
}

.lotsen-desc {
	margin-top: 2rem;
	margin-left: -5px;
}

.lotsen-desc h3 {
	font-size: calc(100% + 2vw + 2vh);
	text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.2);
}

#asprofilimg {
	max-width: 100%;
	padding-right: 10%
}

.teamprofilimg {
	max-width: 100%; 
	padding: 5vh;
}

#rivalogostart {
	width: 33vw;
	height: auto;
}

.rivalogostartwrap {
	height: 100%;
	width: 100%;
}

.lotsen-desc p {
	font-family: 'SeravekWebBasicLight';
    font-weight: normal;
    font-style: normal;
    padding-top: 0;
    text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.2);

}

/* 1.2 SERVICES */

.logo-slide {
	width: 100%;
}

.logo-slider-wrap {
	padding: 0% 10% 6% 10%;
}


.slick-slide {
  margin: 0px 0px;
}



/* 2.1 AGENCY */

.project-wrap {
	position: relative;
	height: auto;
	overflow: hidden;
	border: 0;

	padding:1em;
	background-color: white;
	opacity: 0.9;

}


.project-box {
	  position: relative;
	  overflow: hidden;

}

.project-box img {
	width: 100%;
	height: 100%;
	opacity: 1;
	transition: 0.3s;

}

.project-head {
		  padding-bottom: 1em;
	  text-transform: uppercase;
}

/*
.justify-content-center:hover img {
	opacity: 1;
	transition: 0.3s;
	transform: scale(1.1); 
	 filter: brightness(80%); 
}
*/
.mob-desc {
	display: none;
	}


.project-desc {
	color: black;
	font-size: 6rem;


	bottom: 0;
	background-color: rgba(0, 0, 0, 0);
	pointer-events: none;
	transition: 0.4s;


			width: 100%;
		padding: 0;
		position: relative;
}

	.project-desc h3 {
		font-size: calc(3% + 1vw + 1vh);
		margin-bottom: 0;
		padding-top: 0.9em;
		height: 3.3em;
		text-transform: uppercase;
	}
	.project-desc p {
    	font-size: calc(10% + 0.5vw + 0.5vh);
    	margin-bottom: 0;
    	padding-top:0;
    	padding-bottom: 0.3em;
	}

.row.custom-gutter {
  --bs-gutter-x: 6rem; /* Increase horizontal gap */
}

.row.custom-gutter .col-12 {
	margin-bottom: 0;
  padding-bottom: 0;
}

.row.gallery-gutter {
  --bs-gutter-x: 6rem; /* Increase horizontal gap */ 
}


.row.gallery-gutter a {
	padding-bottom: 0;
}

.project-desc h3 b{

	
  background-position: -0% 0;
  background-size: 220% auto;
  transition: background-position 0.3s ease-out;
}



.justify-content-center:hover h3 b{

 background-position: -90% 0;

}

.justify-content-center:hover .project-desc{
	/* width: calc(18vw  * 1);
	background-color: rgba(0, 0, 0, 0.95);
*/
}



.container-fluid a{
		text-decoration: none !important;
}

/* 2.2 PROJECTS */

.closeproj {
float: right;
  padding: 0;
}

.closeproj a {
	color: black;
}

.agency-wrap {
	margin-top: 36vh; 
	margin-bottom: 50px;
}

.agency-wrap img {
	width: 100%;
}

.agency-wrap {
	position: relative;
	height: auto;
	overflow: hidden;
}

.gallery-wrap {
	margin-top: 24vh; 
	margin-bottom: 50px;
}

.gallery-wrap img {
	width: 100%;
}

.gallery-wrap {
	position: relative;
	height: auto;
	overflow: hidden;
}


.gallery-box {
	background-color: rgba(255, 255, 255, 0.95);
	 padding: 0% 10% 6% 10%;
}

.agency-box {
		padding: 6% 10% 6% 10%;
    background-color: rgba(255, 255, 255, 0.95);
}


.gallery-box .col-12, .col-6, .col-md-6 {
	/* overflow: hidden; */
	padding: 0;
	margin: 0;	

}

.gallery-box img{
	opacity: 1;
	transition: 0.6s;
	transform: scale(1); 
}

.gallery-box img:hover {
	opacity: 1;
	transition: 0.6s;
	transform: scale(1.2); 
	 margin-left: calc(var(--bs-gutter-x) * -.1);
	 margin-right: calc(var(--bs-gutter-x) * -.1);
	 z-index: 20;
	 position: relative;
}




/* *** FORWARD BOX *** */

.forw {
	padding-right: calc(var(--bs-gutter-x) * .1);
padding-left: calc(var(--bs-gutter-x) * .1);

max-width: 93vw;
margin-bottom: 3vw;
margin-top: 3vw;
}

.forw-spec {
	background-image: url(../img/1000_F_114357212_OcOKoEk1fjI10sIY31Km1BhaErBPfYgt.jpeg);
	background-size: cover;
	border: 0.1em solid #14FAF8 !important;
	color:#14FAF8 !important;
}

.forw-box {
	/* margin: 0.2em 0.2em 0.2em 0.2em; */
    /* height: 66vh; */
    background-color: rgba(255, 255, 0, 0);
    border: 0.1em solid #f0fc00;
    font-size: 18px;
    font-size: 6.4vw;
    /* max-width: 70vw; */
    font-weight: bold;
    color: #f0fc00;
    max-width: 100vw;
    line-height: 1;
    padding:2.1em 0;
        max-height: 81vh;
}



.forw-box h3 {
	color: #f0fc00;
	font-weight: 800;
	font-size: 5rem;
	text-align: center;
	text-transform: uppercase;
	margin-top: 3.5rem;

}

.float-1 {
  -webkit-animation-name: Floating;
    -webkit-animation-duration: 6s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: ease-in-out;
}

@-webkit-keyframes Floating{
    from {-webkit-transform:translate(0, 0px);}
    65% {-webkit-transform:translate(0, 50px);}
    to {-webkit-transform: translate(0, -0px);    }    
}

.float-2 {
  -webkit-animation-name: Floating;
    -webkit-animation-duration: 5s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: ease-in-out;
}

@-webkit-keyframes Floating{
    from {-webkit-transform:translate(0, 0px);}
    65% {-webkit-transform:translate(0, 50px);}
    to {-webkit-transform: translate(0, -0px);    }    
}

.float-3 {
  -webkit-animation-name: Floating;
    -webkit-animation-duration: 6s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: ease-in-out;
}

@-webkit-keyframes Floating{
    from {-webkit-transform:translate(0, 0px);}
    65% {-webkit-transform:translate(0, 50px);}
    to {-webkit-transform: translate(0, -0px);    }    
}

.float-4 {
  -webkit-animation-name: Floating;
    -webkit-animation-duration: 5s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: ease-in-out;
}

@-webkit-keyframes Floating{
    from {-webkit-transform:translate(0, 0px);}
    65% {-webkit-transform:translate(0, 50px);}
    to {-webkit-transform: translate(0, -0px);    }    
}

.float-5 {
  -webkit-animation-name: Floating;
    -webkit-animation-duration: 6s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: ease-in-out;
}

@-webkit-keyframes Floating{
    from {-webkit-transform:translate(0, 0px);}
    65% {-webkit-transform:translate(0, 50px);}
    to {-webkit-transform: translate(0, -0px);    }    
}



.creative img {
  transition: transform .7s ease-in-out;

    margin-left: 0;

}


.creative:hover {
	/* font-size: calc(30% + 1.5vw); */
	transition: 0.4s;
	
}

.creative  h3{
	margin-left: -0.2vw;
	margin-top: -0.2vw;

}


.comp {
	transition: transform 0.4s ease-in-out;

}

.dots {
	min-height: 100px;   
	height: 100%;
	background-image: url(../img/dotted_icon.svg);"
}

.creative {
	transition: 0.4s;
	min-height: 20em;
}

.comp img {
	transition: transform 0.4s ease-in-out;
	transform:translate(0,0) scale(1);
}

.creative:hover .comp img {
	transition: transform 0.4s ease-in-out;
	  transform: rotate(360deg);
	  

    transform:translate(0,0px) scale(1.2);

}

.creative-2 img {
  transition: transform .7s ease-in-out;

    margin-left: 0;

}


.creative-2:hover {
	/* font-size: calc(30% + 1.5vw); */
	transition: 0.4s;
	
}


.creative-2 {
	transition: 0.4s;
	min-height: 20em;
}

.creative-2:hover .comp img {
	transition: transform 0.4s ease-in-out;
	  transform: rotate(360deg);
	  

    transform:translate(0,0px) scale(1.2);

}

.umbruch {
	display: inherit;
}





*,*::before,*::after { box-sizing:border-box; }
*:focus { outline:none; }

input,textarea { appearance:none; background:none; }
input::-moz-focus-inner { border:0; padding:0; }

#form {


font-size: calc( 1vw + 1vh * 0.5);
position:relative;
}

#form table { margin:0; padding:0; }

#form input[type="submit"],#form input[type="reset"] {
	background-color:black;
	cursor:pointer;
	float:right;
	font-weight:400;
	border:none;
	text-decoration:none;
	transition:all 160ms linear;
	font-family: 'SeravekWebBasic';
	color: white;
	letter-spacing: 0.1rem;
	text-transform: uppercase;
	border-radius: 0;
	padding:1vh;
	padding-left:2.5vw;
	padding-right:2.5vw;
}

#form input[type="submit"]:hover,#form input[type="reset"]:hover { background-color:#888; }

#form input[type="text"],#form input[type="email"] {

	background-color:#ebebeb !important;
	border:none;
	color:black;

	font-size: calc( 1vw + 1vh * 0.5);
	font-weight:400;
	height:2.5em;
	margin:0px 0 10px;
	overflow:auto;
	padding:8px 0 8px 13px;
	width:100%;
}

input[type="email"]:required:invalid,input[type="email"]:focus:invalid {
	background-image:url("http://www.markhillard.com/images/lock.svg");
	background-position:right 8px center;
	background-repeat:no-repeat;
	background-size:23px 23px;
	box-shadow:none;
}

input[type="email"]:required:valid,input[type="email"]:focus:valid {
	background-image:url("http://www.markhillard.com/images/unlock.svg");
	background-position:right 8px center;
	background-repeat:no-repeat;
	background-size:23px 23px;
}

#form textarea {
	background-color:#ebebeb;
	border:none;
	clear:left;
	color:black;
	display:block;
	float:left;

	font-size: calc( 1vw + 1vh * 0.5);
	font-weight:400;
	height:241px;
	margin:0;
	overflow:auto;
	padding:8px 0 8px 13px;
	resize:none;
	width:100%;
}

.responsive-map{
overflow: hidden;
padding-bottom:56.25%;
position:relative;
height:0;
}
.responsive-map iframe{
left:0;
top:0;
height:100%;
width:100%;
position:absolute;
}


.scroll-downs {
  position: absolute;

  right: 0;
  bottom: 5vh;
  left: 0;
  margin: auto;
  
  width :34px;
  height: 55px;
  opacity: 1;
}
.mousey {
  width: 3px;
  padding: 10px 15px;
  height: 35px;
  border: 2px solid #fff;
  border-radius: 25px;
  opacity: 0.75;
  box-sizing: content-box;
}
.scroller {
  width: 3px;
  height: 10px;
  border-radius: 25%;
  background-color: #fff;
  animation-name: scroll;
  animation-duration: 2.2s;
  animation-timing-function: cubic-bezier(.15,.41,.69,.94);
  animation-iteration-count: infinite;
}
@keyframes scroll {
  0% { opacity: 0; }
  10% { transform: translateY(0); opacity: 1; }
  100% { transform: translateY(15px); opacity: 0;}
}

.cookie-container {
	display: flex;
	align-content: center;
	align-items: center;
	padding: 1rem 2rem;
	background: darkgrey;
	color: var(--white-text);
	position: fixed;
	bottom:0;
	font-size: 1rem;
	gap: 2rem;
	opacity: 1;
	visibility: visible;
	flex-wrap: wrap;
}

.cookie-container.hide {
	opacity: 0;
	visibility: hidden;
}

.cookie-container a {
	color: var(--white-color);
}

.cookie-container a:hover {
	color: var(--hover-text);
}

.cookie-container .cookie-text {
	flex: 8 768px;
}

.cookie-container .agree {
	flex: 1 150px;
	text-align: center;
}

.agree button {
	background: #00ffe6;
	color: black;
	border: none;
	padding: 0.4rem 1.2rem;
	cursor: pointer;
	border-radius: 20px;
	font-size: 1rem;
}

.agree button:hover {
	background: black);
		color: #00ffe6;
}

.freeprivacypolicy-com---nb-simple { 
	max-width: 100% !important;
}

.freeprivacypolicy-com---palette-light .cc-nb-okagree {
	color: black !important;
	background-color: #00ffe6 !important;
}

.freeprivacypolicy-com---palette-light .cc-nb-reject{
	background-color: #00ffe6 !important;
	color: black !important;
}

#open_preferences_center {
	font-size: 1em;
	line-height: 1.2;
	text-decoration: none;
	color: white;
	display: block;
	transition: 0;
	font-family: 'SeravekWebBasic';
	color: white;
	font-weight: 300;
	text-transform: uppercase;
	opacity: 0.4;
	letter-spacing: 0.1rem;
}

.lightbox-image {
	width: 100%;
  height: auto;
}

/* X-Small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
	h1 {
		font-size: calc( (1vw + 1vh) * 3);
		letter-spacing: 0;
		margin-left: -2rem;

	}
	h2 {
		letter-spacing: 0;
		font-size: calc( (1vw + 1vh) * 2.2);
	}
	p {
		font-size: calc(40% + 1vw + 1vh);
	}
	.as-desc {
		padding-left: 20px;
	}
	#rivalogo {

	}
	.rotate {

	}
	h4 {
		font-size:calc(1.275rem + .3vw)
	}
	.lotsen-desc h3 {
		padding-top: 0.5em;
  		font-size: calc(100% + 2vw + 2vh);
	}
	.lotsen-desc p {
		font-size: calc(40% + 1vw + 1vh);
	}
	
}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {
	.content-box {
		padding:6% 10% 6% 10%;
	}
	.umbruch {
		display: none;
	}
	.lotsen-desc {
		margin: 0;
	}
	.lotsen-desc h3 {
		padding-top: 0.5em;
  		font-size: calc(120% + 2vw + 2vh);
	}
	.lotsen-desc p {
		font-size: calc(30% + 1vw + 1vh);
	}
	.comp img{
		height: auto;
		width: 100%;

	}
	.creative-2 img {
		height: auto;
		width: 100%;
	}
	.creative {
		min-height: 10em;
	} 
	.creative-2 {
		min-height: 10em;
	
	} 
	p {		
    	font-size: calc(25% + 1vw + 1vh);
	}
	#rivalogo {

	}
	h4 {
		font-size:calc(1.275rem + .3vw)
	}
	.project-desc h3 {
		
	}
	.project-desc h3 {
		margin-bottom: 0;
	}
	.mob-desc {
		display: inherit;
	}
	.pc-desc {
		display: none;
	}
	
	#asprofilimg {
		max-width: 100%; 
	padding: 5vh;
	}
 }

/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {
	.project-desc {
		width: 100%;
		padding: 0;
		position: relative;
	}
	.project-desc h3 {
		font-size: calc(5% + 1vw + 1vh);
		height: auto;
	}
	.project-desc p {
    	font-size: calc(1% + 1vw + 1vh);
    	margin-bottom: 0;
	}
	.project-box  {
    	width: 100%;
	}
	.project-box img {
    	width: 100%;
	}

	.gallery-wrap {
	margin-top: 11vh; 
	}

	.project-desc {
		color: black;
	}

	.row.custom-gutter {
		--bs-gutter-x: 3rem;
	}

	
	.slick-slide {
    	margin: 0px 5px;
	}
	nav {
		height: 8vh;
	    background-color: rgba(0,0,0, 0.95);
	}
	.openbtn img {
		width: auto;
		top: 0;
		right: 0;
		position: absolute;
		height: 100%;
		min-height: 60px;
		padding-right: 0.5rem;
		padding-top: 0.5rem;
		padding-bottom:0.5rem;
	}
	.closebtn img {
		width: auto;
		top: 0;
		right: 0;
		position: absolute;
		height: 100%;
		min-height: 60px;
		padding-right: 0.8rem;
		padding-top: 0.5rem;
		padding-bottom:0.5rem;

	}
	#rivalogo img {
		width: auto;
		left: 0;
		height: 100%;
		top: 0;
		position: relative;
		min-height: 60px;
		padding-left:0.4rem;
		padding-bottom:0.4rem;
		padding-top:0.2rem;
		max-width: inherit;
	}
	.container {
    max-width: 93vw;
	}
	.lead {
		font-size: calc( (1vw + 1vh) * 1.2);
	}
	.overlay-content {
  		padding-right: 0.8em;
  		margin-top: 4em;
	}
	#rivalogostart {
	width: 66vw ;

	}

}

/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {
	
	.project-desc p {	
		padding-top: 0;
	}
}

/* X-Large devices (large desktops, less than 1400px) */
@media (max-width: 1399.98px) { ... }


