@import url("fonts.css");
@import url("utilities.css");
@import url("base.css");

/* variables */
:root {
	/* colors */
	--color-primary-procore-black: #000000;
	--color-primary-asphalt: #181818;
	--color-primary-slate: #282828;
	--color-primary-concrete: #555555;
	--color-primary-rebar: #63656A;
	--color-primary-steel: #898B8E;
	--color-primary-stone: #9FA2A3;
	--color-primary-iron: #A3A4A6;
	--color-primary-granite: #C2C6C9;
	--color-primary-aluminum: #E3E4E6;
	--color-primary-glass: #F3F4F6;
	--color-primary-white: #FFFFFF;
	--color-primary-procore-orange: #FF5200;
	--color-primary-flare: #E14504;
	--color-primary-cone: #FF6C00;
	--color-primary-traffic: #FF6D37;

	--color-secondary-brick: #a12b2f;
	--color-secondary-mud: #802629;
	--color-secondary-clay: #bd3c4b;
	--color-secondary-crane: #ff9f19;
	--color-secondary-flashlight: #ed7800;
	--color-secondary-roadway: #ffb648;
	--color-secondary-viridian: #005c5e;
	--color-secondary-forest: #004c46;
	--color-secondary-tractor: #007574;
	--color-secondary-tarp: #0033a1;
	--color-secondary-cobalt: #002f6d;
	--color-secondary-painters-tape: #435cc8;
}

/* layout  */
body {
	display: grid;
	grid-template-areas:
  'header'
  'bar'
	'main'
	'aside'
	'footer';
}

header {
	grid-area: header;
}

.title-bar {
  grid-area: bar;
}

main {
	grid-area: main;
}

aside {
	grid-area: aside;
}

footer {
	grid-area: footer;
}

@media screen and (min-width: 768px) {
	body {
		display: grid;
		grid-template-areas:
    'header header'
    'bar bar'
		'main aside'
		'footer footer';
	}
}

@media screen and (min-width: 1024px) {
  body {
    display: grid;
    grid-template-areas: 
    'header header header'
    'bar bar bar'
    'main main aside'
    'footer footer footer';
  }
}

/* nav bar */
nav .container {
  margin-left: auto;
  margin-right: auto;
  padding: 1rem;
  max-width: 1400px;
}

.nav-logo {
	width: 70%;
}

.nav-ctas {
	display: flex;
  /* justify-content: space-between; */
  justify-content: flex-start;
	margin-top: .5rem;
}

.nav-ctas a:nth-child(2) {
  margin-left: .5rem;
}

.nav-menu {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: var(--color-primary-glass);
  /* display: none; */
  justify-content: center;
  align-items: center;
  text-align: center;
  transform: translateX(+100%);
  transition: 0.5s;
  z-index: 1;
}

.nav-menu.active {
  transform: translateX(0%);
}

.nav-menu-items {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100vh;
  align-items: center;
}

.visible {
	display: block;
}

.flex {
  display: flex;
}

.nav-menu-items li a.active-menu-item {
  color: var(--color-primary-traffic);
}
.nav-menu-items li a:hover {
  text-decoration-color: var(--color-primary-traffic) !important;
  text-decoration: underline;
  text-decoration-thickness: 2px;
}

#nav-button {
	position: absolute;
	top: 1rem;
  right: 1rem;
  z-index: 2;
}

.hamburger {
	padding: 0;
}

#nav-button,
.hamburger:focus,
.hamburger-box:focus {
	outline: none;
}

.hamburger-box {
	width: 22px;
}

.hamburger-inner {
  background-color: var(--color-primary-traffic) !important;
}

.nav-menu-items {
	min-width: 100%;
}

.nav-menu-items li a {
	color: var(--color-primary-concrete);
}

.nav-dropdown-menu {
    position: relative;
}

.nav-dropdown-menu-item.aboutus {
  background: var(--color-primary-white);
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  font-size: 12px;
  width: 16rem;
  padding: 1rem;
  box-shadow: 0 6px 12px rgba(0,0,0,.175);
  opacity: 0;
  transition: all .5s;
  z-index: -1;
}
.nav-dropdown-menu-item {
    /*left: 50%;*/
    /*transform: translateX(-50%);*/
    font-size: 12px;
    padding: 0.5rem 1rem 0.5rem 1rem;
    /*transition: all .5s;*/
    z-index: -1;
}
.nav-menu-wrapper {
    position: absolute;
    opacity: 0;
    box-shadow: 0 6px 12px rgba(0,0,0,.175);
    background: var(--color-primary-white);
    display: flex;
    flex-direction: column;
    width: 12rem;
}
.nav-dropdown-menu:hover .nav-dropdown-menu-item.aboutus, .nav-dropdown-menu:hover .nav-menu-wrapper {
    opacity: 1;
    z-index: 3;
}

@media screen and (min-width: 768px) {
	nav {
		max-height: 80px;
	}

	nav .container {
		padding: 1rem 2rem;
	}

	header .container div:first-child {
		display: flex;
		align-items: center;
	}

	.nav-procore-logo {
		flex: 1;
	}

	.nav-logo {
		width: 100%;
	}

	.nav-ctas {
		flex: 3;
		justify-content: flex-start;
		margin-top: 0;
		margin-left: 1.5rem;
	}

	.nav-ctas a:nth-child(2) {
		margin-left: .5rem;
	}
	#nav-button {
		top: 1.5rem;
		right: 2rem;
	}
}

@media screen and (min-width: 1024px) {
	nav .container {
		display: flex;
		align-items: center;
		padding: 1rem 1.5rem;
	}

	header .container div:first-child {
		flex: 1;
	}

	.nav-ctas button {
		font-size: 16px;
	}

	.nav-menu.right {
    flex: 1;
    position: static;
    background-color: transparent;
    display: block;
    transform: none;
	}

	#nav-button {
		display: none;
	}

	.nav-menu-items {
    display: flex;
    flex-direction: row;
    height: 100%;
    justify-content: space-around;
	}

	.nav-menu-items li {
		font-weight: 400;
		font-size: 16px;
	}
}

@media screen and (min-width: 1200px) {
  nav .container {
    padding-right: 4rem;
    padding-left: 4rem;
  }
}

/* hero section */
.hero {
	background: url('../assets/icons/JobBoard_LP_hero.jpg') top center no-repeat;
	background-size: cover;
	padding: 1.5rem;
}

.form-container {
	background-color: var(--color-primary-white);
	/* border-radius: 10px; */
	margin: 0 auto;
  padding: 2rem 1rem;
  max-width: 400px;
  box-shadow: 0 6px 12px rgba(0,0,0,.175);
}

.form-container h5 {
  font-weight: 600;
  font-size: 21px;
}

.form-container p {
  font-size: 14px;
  text-align: center;
}

/* image discontinued replaced with link */
.form-container img {
  width: 40%;
  /* max-width: 100px; */
  max-width: 80px;
  transform: translateY(1px);
}

.form-container a {
  cursor: pointer;
  color: var(--color-secondary-painters-tape);
}

.form-container form {
  margin-top: .5rem;
}


.form-container input[type="text"] {
	height: 40px;
	width: 100%;
	padding: 10px 10px;
	background-color: var(--color-primary-white);
	border: none;
	border-bottom: 2px solid #d1d1d1;
	box-shadow: none;
	margin-bottom: .5rem;
	font-size: 16px;
}

@media screen and (min-width: 760px) {
  .form-container {
    margin: 0 1rem 0 auto;
  }
}

@media screen and (min-width: 1024px) {
	.hero {
		padding: 5rem;	
	}

	.form-container {
		width: 33%;
		margin-left: auto;
		margin-right: 5rem;
		padding: 1.5rem 1.5rem 2.5rem;
	}

	.form-container form {
		display: grid;
		grid-template-areas:
		'keyw keyw keyw'
		'loc loc search';
	}

	.form-container form input:first-child {
		grid-area: keyw;
	}

	.form-container form input:nth-child(2) {
    grid-area: loc;
    margin-bottom: 0;
    align-self: end;
	}

	.form-container form button {
    grid-area: search;
    display: block;
    margin: 0 auto;
    padding: 10px 25px;
    border-radius: 2px;
	}
}

/* main */
main p:first-child {
	margin-top: 2rem;
}

main p:nth-child(2),
main p:nth-child(3) {
	margin-top: .5rem;
}

.post-resume {
	font-weight: 400;
	width: 60%;
	text-align: center;
	display: block;
	margin: .5rem auto;
	text-decoration: none;
}

.title-bar {
	background-color: var(--color-primary-glass);
}

@media screen and (min-width: 1024px) {
  .title-bar {
    background-color: var(--color-primary-glass);
    padding-top: 2rem;
    padding-bottom: 1rem;
  }
  .title-bar .container {
    display: flex;
    margin-left: 0;
    align-items: center;
    justify-content: space-between;
  }
  .title-bar .container p {
    margin-bottom: 0;
    width: 800px;
  }
  .title-bar .container,
	main.container {
		padding: 0 6rem;
	}

	main p:first-child {
		/* line-height: 0.9; */
		font-size: 18px;
		margin: 2rem 0;
	}

	main p:nth-child(2) {
		font-size: 18px;
	}
}

@media screen and (min-width: 2560px) {
	.title-bar .container {
		margin-left: 580px;
		padding-left: 2rem;
	}
	main.container {
		margin-right: 0;
	}
}

/* job board */
#job-board h1, .job-board h1{
	margin-top: 2rem;
}
#job-board table, .job-board table {
	margin-top: .5rem;
	border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}
/* #job-board tbody { */
/* 	display: table-row-group; */
/* } */

#job-board thead th, .job-board thead th {
    border-bottom: 1px solid var(--color-primary-granite);
    color: var(--color-primary-asphalt);
}

#job-board tbody td, .job-board tbody td {
    font-weight: 400;
    border-bottom: 1px solid var(--color-primary-granite);
    font-size: 14px;
}

@media screen and (min-width: 1024px) {
  .post-resume {
    display: none;
  }

    #job-board h3, .job-board h3 {
        font-size: 36px;
    }

    #job-board tbody td, .job-board tbody td {
        font-size: 16px;
        font-weight: 300;
    }

    #job-board td,
    #job-board th, .job-board td,
    .job-board th {
        padding: 12px 15px;
        text-align: left;
    }
}

/* aside */
.aside-post-resume {
  display: none;
}

aside h2 {
	margin-top: 2rem;
}

aside .aside-icon-list {
	margin-top: .5rem;
}
aside a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	text-decoration: none;
}

aside img {
	width: 25%;
	background-size: contain;
	flex: 1;
}

aside li a p {
	flex: 3;
	margin-left: 1rem;
	font-size: 18px !important;
}

@media screen and (min-width: 1024px) {
  .aside-post-resume-wrapper {
    text-align: center;
		/* margin-top: 2rem; */
  }
  .aside-post-resume {
    display: inline-block;
    /* margin-top: 2rem; */
  }
	aside h3 {
		font-size: 36px;
  }

  aside .aside-icon-list {
    margin-top: 1.5rem;
  }
  
  aside img {
    /* max-width: 110px; */
		max-width: 70px;
  }
}

@media screen and (min-width: 1440px) {
	aside.container {
		max-width: 800px;
	}
}

/* job alerts */
.job-alert {
	/* background-color: var(--color-primary-glass); */
	border-radius: 2px;
	/* border: 1px solid var(--color-primary-aluminum); */
	padding: 20px;
	margin-top: 2rem;
	text-align: center;
  box-shadow: 0 6px 12px rgba(0,0,0,.175);
}

.job-alert h5,
.job-alert p {
	margin-top: .5rem;
	text-align: center;
}

.job-alert a {
	font-weight: 400;
	width: 50%;
	text-align: center;
	display: block;
	margin: .5rem auto;
}

@media screen and (min-width: 1024px) {
  .job-alert {
    width: 400px;
  }
}


/* footer */
footer {
	background-color: var(--color-primary-glass);
	margin-top: 2rem;
  padding: 2rem 0 4rem;
  height: 350px;
}

footer .container {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
}

.footer-social-menu {
  display: flex;
  width: 55%;
  max-width: 185px;
  justify-content: space-between;
}


.footer-social-menu i {
	color: var(--color-primary-concrete);
  text-decoration: none;
  font-weight: 600;
  font-size: 18px;
}
.footer-social-menu i:hover {
  color: var(--color-primary-procore-orange);
}

.footer-language-menu {
  position: relative;
}

.footer-language-menu button {
  display: flex;
  align-items: center;
  background-color: var(--color-primary-glass);
  color: var(--color-primary-concrete);
  outline: none;
  border: none;
  font-weight: 600;
  font-size: 14px;
  width: 200px;
  text-align: left;
  transition: color .5s;
  cursor: pointer;
}

.footer-language-menu button:focus,
.footer-language-menu button:hover {
  color: var(--color-primary-procore-orange);
}

.footer-language-menu button span {
  margin-left: 4px;
}

.footer-dropdown-language-menu {
  opacity: 0;
  position: absolute;
  left: 0;
  bottom: 0;
  background-color: var(--color-primary-white);
  box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
  padding: 2rem;
  transform: translateY(-10%);
  transition: opacity .5s;
  z-index: -1;
}

.footer-dropdown-language-menu li {
  font-size: 14px;
  font-weight: 600;
  padding: 8px 12px;
}
.footer-dropdown-language-menu li:hover {
  background: var(--color-primary-glass);
  color: var(--color-primary-procore-black);
}

.footer-language-menu button:hover + ul,
.footer-language-menu button:focus + ul {
  opacity: 1;
  z-index: 1;
}

.footer-powered {
  font-size: 14px;
}
.footer-powered a {
  font-size: 18px;
}
.footer-powered a img {
  max-width: 100px;
  transform: translateY(1px);
}

a.footer-contactus,
a.footer-privacy,
a.footer-terms {
  color: var(--color-primary-concrete);
  font-weight: 600;
  font-size: 14px;
}

a.footer-contactus:hover,
a.footer-privacy:hover,
a.footer-terms:hover {
  color: var(--color-primary-procore-orange);
}

p.page-content a,
.page-info a,
.page-form a {
    color: var(--color-primary-procore-orange);
    cursor: pointer;
}
p.footer-copyright {
  font-weight: 400;
  font-size: 14px;
}

@media screen and (min-width: 1024px) {   
  footer {
    height: auto;
    padding: 2rem 0 4rem;
  }
  footer .container {
    flex-direction: row-reverse;
    align-items: center;
  }

  .footer-powered {
    margin-left: auto;
    margin-right: 1rem;
  }
  .footer-language-menu {
    display: inline;
    margin-right: 1.5rem;
  }

  .footer-language-menu button {
    width: 100%;
  }

  .footer-social-menu {
    width: 150px;
  }

  .footer-terms,
  .footer-privacy,
  .footer-contactus {
    margin-left: 1rem;
  }
}



/* register page */

/* register page layout */
.register-body {
  display: grid;
  grid-template-areas:
  'header'
  'title'
  'info'
  'signinform'
  'footer';
}

.register-page-title {
  grid-area: title;
}

.register-page-info {
  grid-area: info;
}
.register-page-form {
  grid-area: signinform;
}

/* register page styling */
.register-page-title {
  background-color: var(--color-primary-glass);
  padding: 1rem 0;
}

/* privacy policy page */

/* privacy policy page layout */
.privacy-body {
  display: grid;
  grid-template-areas:
  'header'
  'title'
  'info'
  'footer';
}

.privacy-page-title {
  grid-area: title;
}

.privacy-page-info {
  grid-area: info;
}

/* register page styling */
.privacy-page-title {
  background-color: var(--color-primary-glass);
  padding: 1rem 0;
}

/* terms page */

/* terms page layout */
.terms-body {
  display: grid;
  grid-template-areas:
  'header'
  'title'
  'info'
  'footer';
}

.terms-page-title {
  grid-area: title;
}

.terms-page-info {
  grid-area: info;
}

/* register page styling */
.terms-page-title {
  background-color: var(--color-primary-glass);
  padding: 1rem 0;
}

p.page-content a,
.page-info a,
.page-form a {
    color: var(--color-primary-procore-orange);
    cursor: pointer;
}