/* BASIC LAYOUT */

:root
{
	--page-width: 92vw;
	--grid-gap: 20px;
}

body, html
{
	width: 100%;
	margin: 0;
	padding: 0;
	font-family: Courier;
}

/* TEXT SIZES */
h1
{
	font-size: 24px;
}

h2
{
	font-size: 18px;
}

p,
ul,
span
{
	font-size: 18px;
	margin-left: auto;
	margin-right: auto;
}

a
{
	color: #000;
}

a:hover
{
	color: red;
}

strong
{
	text-transform: uppercase;
	font-style: normal;
	font-weight: bold;
}

i
{
	text-transform: uppercase;
}

/* ALIGNMENT CLASSES */
.align-right
{
	justify-content: right;
	text-align: right;
}

/* PAGE LAYOUT */
.wrapper
{
	display: block;
	width: var(--page-width);
	max-width: 760px;
	margin: 40px auto 0 auto;
	padding-bottom: 100px;
}

article
{
	margin: 20px 0 20px 0;
}

/* HEADER */
header
{
	margin-bottom: 40px;
}

header h1
{
	text-align: center;
	text-transform: uppercase;
}

header ul
{
	list-style: none;
	margin: auto;
	text-align: center;
}

header ul li
{
	display: inline;
	text-align: center;
	text-transform: lowercase;
}

.current
{
	text-transform: uppercase;
}

/* CONTENT LAYOUT */

.grid
{
	display: grid;
	position: relative;
	grid-gap: var(--grid-gap);
	margin-left: auto;
	text-align: left;
}

.grid-widegap
{
	grid-gap: 50px;
}

.grid-1
{
	grid-template-columns: repeat(1, 1fr);
}

.grid-2
{
	grid-template-columns: repeat(2, 1fr);
}

.grid-3
{
	grid-template-columns: repeat(3, 1fr);
}

.grid-4
{
	grid-template-columns: repeat(4, 1fr);
}

.grid-1-3
{
	grid-template-columns: 1fr 3fr;
}

.address p
{
	text-align: center;
	font-style: italic !important;
}

/* EQUIPMENT PAGE GRID */
.gearlist
{
	margin-left: auto;
	margin-right: auto;
}

.gearlist .grid
{
	grid-template-columns: 5fr 1fr 1fr;
	grid-gap: 0 20px;
}

.gearlist .grid span
{
	width: 100%;
	text-align: right;
}

.gearlist .grid span:nth-of-type(n)
{
	text-align: right;
}

.gearlist .grid span:nth-of-type(3n+1)
{
	text-align: left;
}

/* CONDITIONS PAGE */
.conditions .grid
{
	text-align: left;
	justify-items: left;
	grid-row-gap: 0;
}

.conditions .grid p
{
	text-align: left;
	width: 100%;
}

.conditions .grid p:nth-of-type(2n+1)
{
	font-weight: bold !important;
	text-transform: uppercase;
}

/* LISTS */

ul
{
	margin: 0;
	padding: 0;
	list-style: circle;
}

ul li
{
	margin: 0 0 0 20px;
	padding: 0 0 0 5px;
}

.whoweare ul
{
	list-style: none;
}

.whoweare ul li
{
	margin: 0;
	line-height: 1.25em;
}

.whoweare section ul li:first-of-type
{
	line-height: 2em;
	text-transform: uppercase;
}

/* IMAGE SIZES */

picture
{
	display: flex;
	width: 100%;
	height: auto;
	margin: auto;
}

picture img
{
	width: 100%;
	height: auto;
	margin: auto;
}

@media (max-width: 650px)
{
	:root
	{
		--page-width: calc(100vw - 2 * var(--grid-gap));
		--grid-gap: 10px
	}
}