/* CSS Document */
.grid-main:not(:last-child) {
    margin-bottom: 30px;
}
.grid-sizer,
.grid-item { width: calc(25% - 8px);
}
.grid-item {
  margin-bottom: 10px;
}
.grid-item .caption {
    color:black;
    padding: 0 5px;
    text-align: right;
    line-height: 1.3em;
}
.grid-item .caption:not(:last-child) {
    margin-bottom: 10px;
}
.grid-item img {
  display: block;
}
@media screen and (max-width: 850px) {
    .grid-sizer,
.grid-item { width: 100%; }
}
body {
	font-family: Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 18px;
	line-height: 1.4em;
	margin: 0;
}
    img {
        max-width: 100%;
        height: auto;
    }
.caption {
	display: block;
	font-size: 10px;
    line-height: 12px;
}
a {
	color: rgb(51, 0, 102);
}
    a:visited, a:active {
       color: rgb(51, 0, 102);
    }
a:hover {
	color: black;
}
.indent {
    margin-left: 5px;
}
.spacing {
	max-width: 1200px;
	margin: auto;
}
.flex-boxes {
    display: flex;
    flex-wrap: wrap;
    gap:30px;
}
.flex-boxes > div {
    flex-basis: calc(33% - 20px);
    text-align: center;
}
@media screen and (max-width: 850px) {
.flex-boxes > div {
    flex-basis: calc(100%);
}
}
header {
	background: rgb(255,255,255);
	background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(101,0,0,1) 0%, rgba(101,0,0,0) 100%);
}
.grid {
	min-height: 20vh;
	background-image: linear-gradient(rgba(255,255,255,.3) 2px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.3) 2px, transparent 1px);
	background-size: 20px 20px;
	padding: 20px;
}
.header-info {
	display: flex;
	justify-content: space-between;
	gap: 20px;
}
h1, .header {
	font-size: 40px;
	line-height: 1.1em;
	color: #330066;
	flex-basis: 400px;
	display: flex;
	align-items: center;
}
@media screen and (max-width: 850px) {
h1, .header {
	flex-basis:auto;
}
h1 {
        font-size: 25px;
    }
}
article h1 {
    margin-top: 0;
}
header .subtitle {
	font-size: 28px;
	line-height: 1.1em;
	color: #330066;
	flex-basis: 800px;
}
.subtitle br {
	margin-bottom: 10px;
}
.header, .white-background {
	margin: 10px 0;
	background-color: rgba(255,255,255,.5);
	padding: 10px 20px;
	border-radius: 20px;
}
main {
	padding: 50px 20px;
	display: flex;
	gap: 50px;
}
@media screen and (max-width: 850px) {
    main {
	gap: 25px;
}
}
main nav {
	flex-basis: 200px;
}
main nav ul {
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: .9em;
	line-height: 1em;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
@media screen and (max-width: 850px) {
   main nav ul {
	font-size:.75em;
}
}
main nav a {
	text-decoration: none;
}
    main nav a:hover {
	text-decoration: underline;
}
main article {
	flex-basis: 1000px;
}
main article p {
	clear:both;
}
    figure {
        margin: 0;
        margin-bottom: 20px;
        text-align: center;
    }
    figure.align-right {
        float: right;
       margin-left: 20px; 
    }
footer {
	padding: 20px;
	background-color: #999999;
	color: white;
	text-align: center;
}
footer a {
	color: white;
}

@media screen and (max-width: 850px) {
.header-info {
	flex-direction: column;
}
h1, header .subtitle {
	flex-basis: auto;
}
    figure.align-right {
        float: none;
       margin-left: 0; 
    }
}

.sl-overlay {
  background: #a1a1a1 !important;
}

