/*
BREAKPOINTS:
	Mobile	< 640px
	Tablet	< 1280px
	Desktop	< 2560px
	Large	> 2580px
*/





/** VARIABLES **/
:root{
	--white: #EEEEEE;
	--black: #121212;
}





/** RESET **/
*{
	margin: 0px;
	padding: 0px;
	border: 0px;
	outline: 0px;
	box-sizing: border-box;
}
html, body{
	width: 100%;
	min-width: 360px;
	height: 100%;
	scroll-behavior: smooth;
	background: var(--white);
}





/** MAIN LAYOUT **/
main{
	background: var(--white);
	display: flex;
	flex-direction: column;
	gap: 100px;
	padding: 200px 0px 100px 0px;
}
.fixedWidth{
	max-width: 2000px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 50px;
	padding-right: 50px;
}
@media (max-width: 1280px){
	main{
		padding: 100px 0px 50px 0px;
		gap: 50px;
	}
	.fixedWidth{
		padding-left: 20px;
		padding-right: 20px;
	}
}





/** GRID **/
.grid{
	display: grid;
	justify-content: space-between;
	place-items: center;
	gap: 20px;
}

.colOne{	grid-template-columns: 1fr }
.colTwo{	grid-template-columns: 1fr 1fr }
.colThree{	grid-template-columns: 1fr 1fr 1fr }
.colFour{	grid-template-columns: 1fr 1fr 1fr 1fr }
.colFive{	grid-template-columns: 1fr 1fr 1fr 1fr 1fr }
.colSix{	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr }
.colSeven{	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr }
.colEight{	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr }
.colNine{	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr }
.colTen{	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr }

@media (max-width: 1280px){
	.colOne, .colTwo{	grid-template-columns: 1fr }
	.colThree, .colFour{	grid-template-columns: 1fr 1fr }
	.colFive, .colSix{	grid-template-columns: 1fr 1fr 1fr }
	.colSeven, .colEight{	grid-template-columns: 1fr 1fr 1fr 1fr }
	.colNine, .colTen{	grid-template-columns: 1fr 1fr 1fr 1fr 1fr }
}
@media (max-width: 640px){
	.colOne,
	.colTwo,
	.colThree,
	.colFour,
	.colFive,
	.colSix,
	.colSeven,
	.colEight,
	.colNine,
	.colTen{ 
		grid-template-columns: 1fr;
		gap: 10px;
	}
}





/** TEXT **/
p, a, label, li, input, textarea, button{
	font-family: Montserrat, sans-serif;
	font-size: 18px;
	word-spacing: 0.1rem;
	line-height: 1.75rem;
	color: var(--black);
}
p{
	text-align: justify;
}
p + p{
	margin-top: 20px;
}
a{
	font-weight: bold;
	color: var(--black);
}

h1, h2, h3{
	font-family: futura-pt, sans-serif;
	font-weight: 400;
	text-transform: uppercase;
	color: var(--black);
}
h1{
	font-size: 40px;
	margin-bottom: 10px;
}
h2{
	font-size: 30px;
	margin-bottom: 10px;
}
h3{
	font-size: 20px;
	color: var(--black);
}

@media (max-width: 640px){
	p, a, label, li, input, textarea, button{
		font-size: 16px;
	}
	h1{
		font-size: 30px;
	}
	h2{
		font-size: 20px;
	}
	h3{
		font-size: 18px;
	}
}





/** LISTS **/
ul{
	list-style-position: outside;
}
li{
	margin: 5px 0px;
}





/** INPUT **/
input, textarea, button, a.button{
	padding: 10px;
	border-radius: 5px;
}
button, a.button{
	text-transform: uppercase;
	cursor: pointer;
	background: var(--black);
	color: #FFF;
	box-shadow: 0px 0px 0px 0px rgba(0,0,0,0.25);
	transition: box-shadow 0.3s;
}
button:hover, a.button:hover{
	box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.25);
}
input, textarea{
	width: 100%;
	color: #333;
	border: 2px solid #DDD;
	resize: vertical;
}





/** OVERRIDES **/
.marginNone{
	margin: 0px					!important;
}
.marginTopNone{
	margin-top: 0px				!important;
}
.marginBottomNone{
	margin-bottom: 0px			!important;
}
.paddingNone{
	padding: 0px				!important;
}
.paddingTopNone{
	padding-top: 0px			!important;
}
.paddingBottomNone{
	padding-bottom: 0px			!important;
}

.hidden{
	display: none				!important;
}
.disabled{
	cursor: default				!important;
	opacity: 0.75				!important;
	background: #AAA			!important;
	color: #DDD					!important;
	box-shadow: none			!important;
}

.uppercase{
	text-transform: uppercase	!important;
}
.lowercase{
	text-transform: lowercase	!important;
}

.circle{
	border-radius: 50%			!important;
}