/*************** General ****************/


:root {
	--color: 210, 29%;
	--l: 24.3%;

	--primary-color: hsl(var(--color), var(--l));
	--primary-color-dark : hsl(var(--color), calc(var(--l) - 12%));

	--secondary-color: #FCD95A;
	--border-img-color: #f1f1f1;
}

	/*************** General ****************/

body {
	font-family: "Roboto Slab","Helvetica Neue",Helvetica,Arial,sans-serif;
	overflow-x: hidden;
	webkit-tap-highlight-color: var(--secondary-color);
}

::selection {
	background: var(--secondary-color);
	text-shadow: none;
	color:var(--primary-color);
}

p {
	font-size: 1em;
	line-height: 1.75;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;
	font-weight: 700;
}

h3 {
	font-size: 1.5em;
	align-content: end;
}

@media (max-width:768px) 
{
	h3 {
		font-size: 1em;
	}
}

p:has(+ h3),
h3 + p {
	font-family: "Droid Serif","Helvetica Neue",Helvetica,Arial,sans-serif;
	font-size: 1em;
	font-style: italic;
	margin: 0;
	margin-bottom: 0.5em;
}

.container, .container-lg, .container-md, .container-sm, .container-xl {
    max-width: 1500px;
}

ul {
	margin-bottom: 0px;
}


@font-face {
	font-family: pixel;
	src: url(../fonts/PressStart2P.ttf);
}

@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400 700;
  src: url(../fonts/Montserrat-VariableFont_wght.ttf);
}

@font-face {
  font-family: 'Roboto Slab';
  font-style: normal;
  font-weight: 100 700;
  src: url(../fonts/RobotoSlab-VariableFont_wght.ttf);
}

@font-face {
 font-family: 'Kaushan Script';
 src: url(../fonts/KaushanScript-Regular.ttf);
}

@font-face {
 font-family: 'Droid Serif';
 src: url(../fonts/DroidSerif-Regular.ttf);
}

.row.display-flex {
  display: flex;
  flex-wrap: wrap;
}
.row.display-flex > [class*='col-']:not(.text-center) {
  display: flex;
  flex-direction: column;
}

	/*************** Section ****************/

section {
	padding: 5em 0;
}

section header {
	margin-bottom: 3em;
}

section header > h2 {
	font-size: 3em;
	margin-top: 0;
	text-transform: uppercase;
}

section header > h2 + p {
	font-family: "Droid Serif","Helvetica Neue",Helvetica,Arial,sans-serif;
	font-size: 1.2em;
	font-style: italic;
	font-weight: 400;
	text-transform: none;
}

section:nth-child(even) 
{
	background-color: #f7f7f7;
}

@media (max-width:768px) {

	section {
		padding: 3em 0;
	}

	section header {
		margin-bottom: 2em;
	}

	section .section-heading {
		font-size: 1.8em;
	}
	
}

@media (max-width:576px)
{
	section header > h2 {
		font-size: 2em;
	}

	p {
		line-height: 1.5;
	}
}

	/*************** link / a ****************/

a {
	outline: 0;
	color: var(--primary-color);
}

.more-hover {
	background: var(--secondary-color);
	height: 100%;
	opacity: 0;
	position: absolute;
	transition: all ease .5s;
	webkit-transition: all ease .5s;
	width: 100%;
	border: 3px solid var(--border-img-color);
	border-radius: 2em;
	text-align: center;
}
.more-hover:hover,
.more-hover:focus,
* > a:focus > .more-hover,
* > a:hover > .more-hover
{
	opacity: 0.90;
	border-color: var(--primary-color) ;
}
.more-hover-content {
	color: var(--primary-color);
	font-size: 1.2em;
	height: 100%;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	justify-content: center;
}
.more-hover-content i {
	font-size: 1.8em;
}

	/*************** image / img ****************/

a img
{
	margin: 0 auto;
	padding: 5%;
	border: 3px solid var(--border-img-color);
	object-fit: contain;
	background: white;
	border-radius: 2em;
}

.img-centered
{
	margin: 0 auto;
}
img::selection {
	background: 0 0;
}
img::-moz-selection {
	background: 0 0;
}

	/*************** button / btn ****************/

.btn:focus,
.btn:active,
.btn:active:focus {
	outline: 0;
}

.btn-primary
{
	background-color: var(--secondary-color);
	border-color: var(--secondary-color);
	color: var(--primary-color);
	font-family: Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;
	font-weight: 700;
	text-transform: uppercase;
}
.btn-primary:hover,
.btn-primary:focus
{
	background-color: var(--primary-color);
	border-color: var(--primary-color);
	color: var(--secondary-color);
	box-shadow: 0 0 0 .2rem var(--primary-color);
}

.btn-xl {
	background-color: var(--secondary-color);
	border-color: var(--secondary-color);
	color: var(--primary-color);
	border-radius: 3px;
	font-family: Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;
	font-size: 1.2em;
	font-weight: 700;
	padding: 20px 40px;
	text-transform: uppercase;
}

.btn-xl:hover,
.btn-xl:focus
{
	background-color: var(--primary-color);
	border-color: var(--primary-color);
	color: var(--secondary-color);
	box-shadow: 0 0 0 .2rem var(--primary-color);
}

.form-group textarea,
.form-group input,
.form-group button,
fieldset button
{
	padding: 2%;
}

	/*************** navbar / nav ****************/

.nav .active{
	background-color: var(--secondary-color);
	color: var(--primary-color);
	border-radius: 3px;
}

.nav .active:hover,
.nav .active:focus
{
	background-color: var(--secondary-color);
	color: var(--primary-color);
}

.nav-link
{
	color: var(--secondary-color);
}
.nav-link:hover,
.nav-link:focus,
.nav-link:active
{
	color: var(--secondary-color);
	background-color: var(--primary-color);
}

nav {
	background-color: var(--primary-color);
	border-color: transparent;
}
nav .navbar-name {
	color: var(--secondary-color);
	font-family: "Kaushan Script","Helvetica Neue",Helvetica,Arial,cursive;
	transition: box-shadow .15s ease-in-out;
}
nav .navbar-name:hover,
nav .navbar-name:focus {
	color: var(--secondary-color);
	background-color: var(--primary-color);
	text-decoration: none;
	box-shadow: 0 0.3rem 0 -0.1em var(--secondary-color);
}
nav .navbar-collapse {
	border-color: var(--primary-color);
}
nav .navbar-toggler {
	background-color: var(--secondary-color);
	border-color: var(--secondary-color);
}
nav .navbar-toggler .icon-bar {
	background-color: white;
}
nav .navbar-toggler:hover,
nav .navbar-toggler:focus {
	background-color: var(--secondary-color);
}
nav .nav li a {
	font-family: Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;
	font-weight: 1000;
	letter-spacing: 1px;
	text-transform: uppercase;
	transition: box-shadow .15s ease-in-out;
}
nav .nav li a:hover,
nav .nav li a:focus {
	box-shadow: 0 0.3rem 0 -0.1em var(--secondary-color);
}

nav .nav li a.active:hover,
nav .nav li a.active:focus {
	box-shadow: 0 0.3rem 0 -0.1em var(--secondary-color);
}

@media (min-width:768px) {
	nav .navbar-name {
		font-size: 2em;
	}
}
@media (max-width:768px) {
	nav .navbar-name {
		font-size: 1.2em;
	}
}

/*************** header section ****************/

header#page-top  {
  text-align: center;
  background: var(--primary-color);
  color: white;
}

header#page-top  .container {
  padding-top: 100px;
  padding-bottom: 5em;
}

header#page-top .intro-text .name {
  display: block;
  font-family: "Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 1.75em;
  margin-bottom: 0.25em;
}

header#page-top .intro-text .skills {
  font-size: 1.25em;
  font-weight: 300;
}

header#page-top .intro-text .skills abbr {
	text-decoration: none;
}

header#page-top .konami-hint {
	color: hsl(var(--color), calc(var(--l) - 2%));
	width: 100%;
	display: inline-block;
	text-align: left;
	padding-left: .55em;
	padding-bottom: .2em;
	font-weight: bolder;
}

header#page-top .konami-hint i
{
	clip-path: circle(50px);
}

@media (min-width: 768px)
{
  header#page-top .intro-text .name {
    font-size: 4.5em;
  }
  header#page-top .intro-text .skills {
    font-size: 1.5em;
  }
}

@media (max-width:576px)
{
	header#page-top .container {
		padding-top: 75px;
		padding-bottom: 50px;
	}
	
	header#page-top .intro-text .skills {
    	font-size: 1.0em;
  	}
}



/*************** project section ****************/

	/*************** search form ****************/

.searchForm {
	margin: 15px 0px 30px 0px;
	display: flex;
	justify-content: center;
}

@media (min-width: 1000px)
{
	.searchForm fieldset button
	{
		padding: 3.5%;
	}
}


@media (max-width: 768px)
{
	.searchForm fieldset button
	{
		padding: 3%;
	}

	.searchForm .form-group input
	{
		padding: 3.5%;
	}

	.searchForm {
		margin: 0px 0px 30px 0px;
	}
}

.search-bar-container {
	display: flex;
	line-height: 1em;
	height: auto;
}

.search-icon { 
	border: 2px solid var(--primary-color);
	background: var(--primary-color);
	text-align: center;
	color:  white;
	border-radius: 0 5px 5px 0;
	cursor: pointer;
	font-size: 150%;
}

.search-bar {
	width: 100%;
	border: 2px solid var(--primary-color);
	border-right: none;
	border-radius: 5px 0 0 5px;
	outline: none;
	transition: box-shadow .15s ease-in-out;
}

fieldset legend{
	margin: 0px;
	border: none;
	font-size: inherit;
}

.search-bar-container,
.select-list {
	padding:0;
	margin: 0px 15px 0px 15px;
}

.dropdown-title {
	display: flex;
	cursor: pointer;
	background: white;
	border: 2px solid var(--primary-color);
	border-radius: 5px;
	width: 100%;
	text-align: left;
	transition: box-shadow .15s ease-in-out;
}

.dropdown-title span
{
	width: 95%;
}

.dropdown-title i
{
	width: 5%;
	color: var(--primary-color);
	cursor: pointer;
	font-size: 1.5em;
}

.search-bar:hover,
.search-bar:focus,
.dropdown-title:hover,
.dropdown-title:focus
{
	box-shadow: inset 0 0 0 .2rem var(--primary-color);
}

.select-options {
	width: 100%;
	margin-top: -2.5px;
	position: absolute;
	border: 2px solid var(--primary-color);
	background-color: white;
	border-radius: 5px;
}

#optionsTechnology {
	z-index: 10;
} 
#optionsProjectType {
	z-index: 5;
} 

#optionsProjectType input[type="checkbox"],
#optionsTechnology input[type="checkbox"]
{
	accent-color: var(--primary-color);
}

.option > span
{
	position: absolute;
	z-index: -1;
	height: inherit;
	width: 100%;
	transition: box-shadow .15s ease-in-out;
}

.option {
	display: flex;
	transition: box-shadow .15s ease-in-out;
	height: 3em;
}

.option:hover,
.option input:focus ~ span
{
	background: lightgray;
	/* box-shadow: inset 0 0 0 .2rem var(--primary-color); */
}

.option label {
	padding: 0.6em 0.6em 0.6em 0.6em;
	width: 100%;
	display: inline-block;
	margin: 0;
}
        
.option input {
	margin: 0.4em 0 0.4em 0.4em;
	width: 15%;
	float: left;
}

	/*************** project item ****************/

.project {
	margin-bottom: 2em;
	right: 0;
	display: flex;
	flex-direction: column;
}

.project > a
{
	position: relative;
	margin: auto;
}

.project a img {
	width: 100%;
	height: 100%;
	padding: 0%;
}

.project-strip
{
	position: absolute;
	color:var(--secondary-color);
	background-color: var(--primary-color);
	font-size: 1.2em;
	padding: 10px;
	transform: rotate(28deg);
	-webkit-transform: rotate(28deg);
	top: 6%;
	left: 30%;
	width: 100%;
	clip-path: polygon(69% 0%, 36% 0%, 9% 100%, 76.5% 100%);
	-webkit-clip-path: polygon(69% 0%, 36% 0%, 9% 100%, 76.5% 100%);
}

.project h3 {
	font-size: 1.5em;
	display: inline;
	margin-bottom: 0.1em;
}

#projects-search-results-plus,
#projects-search-results-plus-button
{
	margin-top: 2em;
}

@media (min-width:1200px)
{
	.project:nth-last-child(-n + 4)
	{
		margin-bottom: 0em;
	}
}

@media (max-width:1200px) AND (min-width:576px)
{
	.project:nth-last-child(-n + 3)
	{
		margin-bottom: 0em;
	}
}

@media (max-width:1200px)
{
	.project > a
	{
		width: 12em;
	}

	.project-strip
	{
		font-size: .8em;
		padding: 5px;
		width: 100%;
		transform: rotate(20deg);
		-webkit-transform: rotate(20deg);
		top: 6%;
		left: 25%;
		clip-path: polygon(73% 0%, 35% 0%, -8% 100%, 78.5% 100%);
		-webkit-clip-path: polygon(73% 0%, 35% 0%, -8% 100%, 78.5% 100%);
	}

	.project h3 {
		font-size: 1em;
	}

	.project h3 + p {
		font-size: 0.7em;
	}
}

@media (max-width:576px)
{
	.project
	{
		margin-bottom: 2em;
	}

	.project:last-child
	{
		margin-bottom: 0em;
	}

	.project > a
	{
		width: 16em;
	}

	.project-strip
	{
		clip-path: polygon(74% 0%, 34% 0%, 1% 100%, 78% 100%);
		-webkit-clip-path: polygon(74% 0%, 34% 0%, 1% 100%, 78% 100%);
	}
}

	/*************** project details ****************/


.project-detail {
	background-clip: border-box;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	min-height: 100%;
	padding: 100px 0;
	text-align: center;
	webkit-box-shadow: none;
	padding: 6em 2.5em 3em 2.5em;
}

.project-detail h1 {
	font-size: 3em;
}

.project-detail-demo
{
	margin: 2em 0em 2.5em 0em;
	float: left;
	width: 100%;
}

:root {
	--plyr-color-main: var(--primary-color);

	--plyr-tooltip-background: var(--primary-color);
	--plyr-tooltip-color: white;

	--plyr-menu-background: var(--primary-color);
	--plyr-menu-color: white;

	--plyr-control-toggle-checked-background: white;

	--plyr-video-control-background-hover: var(--primary-color-dark);
	--plyr-range-fill-background: var(--primary-color-dark);
	--plyr-tab-focus-color: var(--secondary-color);

	--plyr-font-family: "Roboto Slab","Helvetica Neue",Helvetica,Arial,sans-serif;

	--plyr-video-controls-background: linear-gradient(0deg, hsla(var(--color), var(--l), 0.95) 0%,hsla(var(--color), var(--l), 0.95) 60%, hsla(var(--color), var(--l), 0.0) 65%);

	--plyr-font-size-small : 0.9em;
}

.plyr__menu__container .plyr__control[role="menuitemradio"]:focus::before,
.plyr__menu__container .plyr__control[role="menuitemradio"]:hover::before,
.plyr__menu__container .plyr__control[role="menuitemradio"]::before
{
	background: white;
}

.plyr__menu__container .plyr__control[role="menuitemradio"]::after
{
	background: var(--primary-color);
}

.project-detail-demo img
{
	margin: 0px auto 0px auto;
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 40em;
}

.plyr video
{
	height: 550px;
}
.plyr 
{
	width: max-content;
	margin: auto;
}

.project-detail-demo .btn-primary{
	text-indent: 0;
	font-size: 1.5em;
	margin: 1em 0em 0em 0em;
}

.project-detail-text
{
	margin-top: 30px;
	width: 100%;
}

.project-detail-text aside
{
	width: 35%;
	padding-left: .5rem;
	margin-left: 5em;
	float: right;
	box-shadow: inset 7px 0 0px -6px var(--primary-color);
	font-style: italic;
	color: var(--primary-color);
	text-align:left;
	line-height: 2.5em;
	font-size:1.1em;
}

.project-detail-text p {
	margin-bottom: 30px;
	text-align: left;
	text-indent: 1em;
	font-size: 1.2em;
}

.project-detail-text p code
{
	background-color: lightgray;
	/* outline: 0.3em solid lightgray; */
	border-radius: 0.3em;
	padding: 4px 5px 5px;
	color: black;
}

.project-detail-text figure {
	width: max-content;
	display: inline-block;
	margin-left: 0.5em;
	margin-right: 0.5em;
}

.project-detail-text p i{
	text-indent: 0em;
}

.project-detail-text p a {
	color: var(--primary-color);
	text-decoration: underline;
}
.project-detail-text p a:hover,
.project-detail-text p a:focus
{
	background-color: var(--secondary-color);
}

.project-detail-text p a span{
	white-space: nowrap;
}

@media (min-width: 768px)
{
	.project-detail-text aside
	{
		margin-left: 2em;
		line-height: 1.2em;
	}

	.project-detail-text aside ul
	{
		padding-right: 1.5em;
	}

	.project-detail-text aside ul li
	{
		margin-bottom: 1em;
	}
}

@media (max-width:576px)
{
	.plyr video {
		height: 100%;
	}

	.project-detail h1
	{
		font-size: x-large;
	}

	.project-detail-demo
	{
		margin-bottom: 2em;
	}

	.project-detail-demo .btn-primary
	{
		font-size: medium;
	}
	
	.project-detail-text aside
	{
		width: 100%;
		box-shadow: none;
		padding-left: 0em;
		line-height: 1.5em;
		margin-bottom: 1.5em;
	}

	.project-detail-text aside ul
	{
		list-style: none;
		padding: 0;
	}

	.project-detail-text
	{
		font-size: small;
	}

	.project-detail-text figure 
	{
		width: 100%;
	}
	
	.project-detail-text figure img
	{
		width: 100%;
		height: auto;
	}
}

/*************** scientificPaper ****************/

.scientificPaper {
	text-align: left;
	list-style: none;
	margin-bottom: 2em;
}

.scientificPaper a {
	color: var(--primary-color);
	text-decoration: underline;
}

.scientificPaper a:hover,
.scientificPaper a:focus
{
	background-color: var(--secondary-color);
}

#scientificPapers ul
{
	padding : 0em 1em; 
}

.scientificPaper p
{
	margin-left: 2em;
	margin-bottom: 0px;
}

.scientificPaper:last-child 
{
	margin-bottom: 0px;
}

@media (max-width:768px) {

	.scientificPaper h3 {
		text-align: justify;
		display: inline;
		font-weight: normal;
	}

	.scientificPaper {
		margin-bottom: 1em;
	}

}


/*************** Experiences section ****************/

.experience {
	text-align: center;
}

.experience h3 {
	text-transform: none;
}
.experience li {
	line-height: 1.75em;
	text-align: left;
}

.experience > a {
	width: 100%;
	margin: auto;
	padding: 0;
	position: relative;
}

.experience ul a {
	color: var(--primary-color);
	text-decoration: underline;
}
.experience ul a:hover,
.experience ul a:focus
{
	background-color: var(--secondary-color);
}

.experience a img {
	width: 100%;
	height: 10em;
}

.experience:last-child 
{
	margin-bottom: 0px;
}

@media (max-width:1200px) {

	.experience:nth-child(-n + 2)
	{
		margin-bottom: 2em;
	}

	.experience > a
	{
		height: 8em;
		width: 70%;
		margin: 0.5em auto;
	}

	.experience a img {
		height: 8em;
	}
}

@media (max-width:576px) {

	.experience h3,
	.experience p
	{
		margin: 0px;
	}

	.experience:nth-child(-n + 3)
	{
		margin-bottom: 1em;
	}
}

/*************** Studies section ****************/

.timeline {
	list-style: none;
	padding: 0;
	position: relative;
}

.studies:last-child {
	margin-bottom: 0;
}

@media (max-width:1200px)
{
	#studies .timeline:before {
		height: 80%;
	}
	
	.timeline>div .studies-image
	{
		height: 6em;
		width: 6em;
		margin-left: -3em;
	}

	.timeline-heading h3
	{
		font-size: larger;
	}

	.timeline-body
	{
		font-size: small;
	}

	.studies-image .more-hover-content
	{
		font-size: x-small;
	}
}

@media (min-width:576px)
{
	.timeline:before {
		background-color: var(--border-img-color);
		content: "";
		left: 50%;
		margin-left: -1.5px;
		position: absolute;
		top: 0;
		width: 2px;
		height: 90%;
	}

	.timeline>div .studies-panel {
		float: left;
		text-align: right;
		width: 41%;
	}

	.studies
	{
		min-height: 12em;
	}

	.studies-image {
		height: 10em;
		width: 10em;
		left: 50%;
		margin-left: -5em;
	}
	
	.studies-image {
		position: absolute;
		text-align: center;
		z-index: 100;
	}

	.studies-image img
	{
		width: 100%;
		height: 100%;
	}
	
	.timeline>div:nth-child(even)>.studies-panel {
		float: right;
		text-align: left;
	}
}

@media (max-width:574px)
{
	.timeline-heading h3
	{
		font-size: 1em;
	}

	.timeline-heading p,
	.timeline-heading h3
	{
		margin: 0px;
		padding: 0px;
	}

	.studies-panel {
		padding: 0px;
	}
	.studies
	{
		text-align: center;
		margin-bottom: 1em;
	}
}

/*************** Other diploma section ****************/

.other-diploma {
	text-align: center;
	margin-bottom: 0px;
}
.other-diploma img {
	width: 200px;
	height: 200px;
}

.other-diploma h3 {
	text-transform: none;
	font-size: larger;
	height: 3em;
}

.other-diploma a {
	display: inline-block;
    margin: auto;
    padding: 0;
    max-width: 400px;
    position: relative;
	border: none;
	width: max-content;
}

@media (max-width:1200px) {
	
	.other-diploma a img
	{
		height: 8em;
		width: 8em;
	}

	.other-diploma:nth-child(-n + 3)
	{
		margin-bottom: 1em;
	}

	.other-diploma .more-hover-content
	{
		font-size: small;
	}
}

@media (max-width:576px) {

	.other-diploma h3 {
		min-height: 5em;
		font-size: large;
	}

	.other-diploma h3,
	.other-diploma p
	{
		margin: 0px;
	}

	.other-diploma
	{
		margin-bottom: 1em;
	}

	.other-diploma:nth-child(-n + 4)
	{
		margin-bottom: 1em;
	}
}

/*************** Contact section ****************/

section#contact {
	background-color: var(--primary-color-dark);
	background-image: url(../img/map-image.png);
	background-position: center;
	background-repeat: no-repeat;
}
section#contact header,
section#contact header{
	color: #fff;
}

section#contact .form-group {
	margin-bottom: 0;
}

section#contact label
{
	color: var(--secondary-color);
	font-family: Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;
	font-size: 1em;
	font-weight: 1000;
}

section#contact label abbr
{
	text-decoration: none;
}

section#contact .form-control:focus,
section#contact .form-control:hover,
section#contact .form-control:active
{
	box-shadow: 0 0 0 .2rem var(--secondary-color);
	border-color: var(--secondary-color);
}

section#contact .form-group:has(textarea)
{
	height: 100%;
	display: flex; 
	flex-direction: column;
}

section#contact .form-group textarea 
{
	resize: none;
	flex:auto;
	min-height: 10em;
}

section#contact .form-group input.form-control {
	height: auto;
}
section#contact ::-webkit-input-placeholder {
	color: #bbb;
	font-family: Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;
	font-weight: 700;
	text-transform: uppercase;
}
section#contact :-moz-placeholder {
	color: #bbb;
	font-family: Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;
	font-weight: 700;
	text-transform: uppercase;
}
section#contact ::-moz-placeholder {
	color: #bbb;
	font-family: Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;
	font-weight: 700;
	text-transform: uppercase;
}
section#contact :-ms-input-placeholder {
	color: #bbb;
	font-family: Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;
	font-weight: 700;
	text-transform: uppercase;
}
section#contact .text-validation-alert {
	color: #FF2E2E;
	font-size: 1em;
	font-weight: bold;
	margin: 0;
	height: 2.5em;
}
section#contact .text-validation-alert > ul {
	margin: 0;
	list-style-type: none;
}

@media (max-width:1200px) {
	section#contact button
	{
		padding: 15px 30px;
	}
}	

@media (max-width:576px) {

	section#contact button
	{
		padding: 10px 20px;
	}
}

/*************** Footer section ****************/

footer {
	padding: 2em 0;
	text-align: center;
	background-color: var(--primary-color);
	color: var(--secondary-color);
	font-weight: 1000;
}
footer div {
	font-family: Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;
	line-height: 40px;
	text-transform: none;
	text-transform: uppercase;
	align-content: center;
}
footer ul.quicklinks {
	font-family: Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;
	line-height: 40px;
	margin-bottom: 0;
	text-transform: none;
	text-transform: uppercase;
}

.copyright
{
	color: var(--secondary-color);
}

.copyright:focus,
.copyright:hover
{
	text-decoration: underline;
	color: var(--secondary-color);
	background-color: var(--primary-color);
}

@media (max-width:576px) {

	footer
	{
		padding: 1em;
		font-size: smaller;
	}

	footer .list-inline-item
	{
		margin-right: 0em !important;
	}
}


	/************** social buttons ****************/

ul.social-buttons {
	margin-bottom: 0;
}
ul.social-buttons li a {
	background-color: #222;
	border-radius: 100%;
	color: white;
	display: block;
	font-size: 1.3em;
	height: 40px;
	line-height: 40px;
	moz-transition: all .3s;
	outline: 0;
	transition: all .3s;
	webkit-transition: all .3s;
	width: 40px;
}
ul.social-buttons li a:hover,ul.social-buttons li a:focus,ul.social-buttons li a:active {
	background-color: var(--secondary-color);
	color: #222;
}