:root {
  --mspink: #ca0164;
  --msyellow: #fff200;
  --ask: #fbe5ea;
}

/* defaults */

body {
	font-size: 62.5%;
	font-family: 'Source Sans Pro', sans-serif;
	line-height: 0px;
	margin: 0px;
	padding: 0px;
	background-color: #fff !important;
}

a img {
	border: 0px;
}

a, a:visited {
	text-decoration: none;
	color: #4A0404;
}

.contain {
	max-width: 1300px;
	padding: 0 50px;
	margin: 0 auto;
}

.content-area {
	width: auto;
	margin-right: 0;
}

article {
	text-align: center;
	padding-bottom: 100px;
}

#page > header {
	background-color: #fff;
	padding: 20px;
}

header .contain {
	display: grid;
	column-gap: 30px;
	grid-template-columns: .5fr auto .5fr;
	grid-template-rows: auto;
	grid-template-areas:
	'. title .';
	align-items: center;
}

header h2 {
	grid-area: partners;
	display: flex;
	margin: 0;
}

header h2 > span {
	display: block;
	margin-right: 40px;
	height: 50px;
	position: relative;
}

header h2 > span a {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-size: contain;
	background-position: center center;
	text-indent: -8000px;
	display: block;
}

header h1 {
	grid-area: title;
	background-image: url(https://msmagazine.com/wp-content/uploads/2023/01/ms-logo-raspberry.png);
	background-size: contain;
	background-repeat: no-repeat;
	height: 0;
	padding-bottom: 43.44%;
	width: 100px;
	text-indent: -9000px;
	line-height: 1.1;
	margin: 0;
	position: relative;
}

header h1 a {
	color: #000;
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	display: block;
}

header h1 a:hover {
	transition: all .3s;
	color: var(--mspink);
}

header h1 span {
	color: var(--mspink);
}

.about {
	display: flex;
	width: 100%;
	align-items: start;
}

.titles {
	  width: 100vw;
	  position: relative;
	  left: 50%;
	  right: 50%;
	  margin-left: -50vw;
	  margin-right: -50vw;
	  padding: 50px 60px;
	  font-family: "Source Sans 3", sans-serif;
	  background: #EEE;
	  background: linear-gradient(180deg,rgba(238, 238, 238, 1) 0%, rgba(255, 255, 255, 0) 100%);
	  background-size: 100% auto;
	  background-repeat: no-repeat;
	  background-position: center bottom;
}

.titles .contain {
	display: grid;
	grid-template-columns: .5fr .5fr;
	column-gap: 50px;
	grid-template-rows: auto;
	grid-template-areas:
	"gname gphoto"
	". pcred"
	"gquest gquest"
	"gdesc gdesc"
	"gbutton gbutton";
	align-items: center;
	row-gap: 25px;
}

.titles .photocredit {
	grid-area: pcred;
	font-size: 2em;
	font-style: italic;
	text-align: center;
	justify-self: center;
	font-family: "EB Garamond", serif;
	margin-right: 10%;
	margin-top: -20px;
}

.titles .cycle-slideshow {
	grid-area: gphoto;
}

.titles .description {
	grid-area: gdesc;
	font-size: 3.8em;
	line-height: 1.3;
	margin: 0 auto;
	max-width: 80%;
	color: #444;
	text-align: center;
	font-family: "EB Garamond", serif;
}

.cycle-slideshow img {
	border-radius: 50%;
	max-width: 90%;
	height: auto;
	border: 3px solid #FDDC5C;
}

.titles .contain > div.names {
	grid-area: gname;
}

.about .descr {
	padding-left: 5%;
}

.titles h2, .titles h3 {
	font-family: "EB Garamond", serif;
}

.titles h2 {
	color: #444;
	font-size: 20em;
	line-height: .8;
	margin: 0;
}




.titles h3 {
	font-family: "EB Garamond", serif;
	font-style: italic;
	font-size: 4.5em;
	line-height: 1.1;
	font-weight: 400;
	margin: 20px 0 0px 0;
	color: #7f2121;
}

.titles h4 {
	font-family: "EB Garamond", serif;
	font-size: 10.5em;
	text-wrap: balance;
	line-height: 1;
	font-weight: 400;
	margin: 0px 0 0px 0;
	color: #444;
	grid-area: gquest;
}

p.button {
	margin: 0;
	text-align: center;
	margin: 0 auto;
	color: #fff;
	text-transform: uppercase;
	letter-spacing: .125em;
	grid-area: gbutton;
}

p.button a {
	display: inline-block;
	background-color: #7f2121;
	color: #e8c190;
	padding: 20px 30px;
	font-family: "EB Garamond", serif;
	font-size: 3em;
	line-height: 1;
	text-transform: uppercase;
	letter-spacing: .25em;
	border-radius: 2px;
	margin: 10px auto 0 auto;
	transition: all .3s;
}
p.button a:hover {
	background-color: #4A0404;
}

.divi::before {
	content: '\00A0';
	border-bottom: 2px solid var(--mspink);
	display: block;
	width: 50px;
	margin: 0 auto 30px auto;
}

.descr {
	display: grid;
	column-gap: 30px;
	grid-template-columns: 1fr;
	grid-template-rows: auto;
	grid-template-areas:
	'descrtext' 'descrbutton';
	row-gap: 30px;
	justify-content: left;
	align-items: start;
	padding-top: 20px;
}


.descr p.description {
	grid-area: descrtext;
	justify-self: left;
	text-align: left;
	margin: 0;
	font-family: 'Vollkorn', serif;
}

.descr p.button {
	grid-area: descrbutton;
	justify-self: left;
	margin-bottom: 0;
}

.descr p.button a {
	background-color: var(--mspink);
	color: #fff;
	transition: all .3;
	margin-top: 0;
}

.descr p.button a:hover {
	background-color: var(--msyellow);
	color: var(--mspink);
}

.testimonials {
}

.testimonial {
	background-color: #fff;
	padding: 30px 25px 25px 25px;
	break-inside: avoid;
	text-align: left;
	box-sizing: border-box;
	margin-bottom: 35px;
	-webkit-box-shadow: 0px 0px 10px 5px rgba(0,0,0,0.08);
	box-shadow: 0px 0px 10px 5px rgba(0,0,0,0.08);
	max-height: 500px;
	overflow: auto;
}

.testimonials > div:nth-of-type(even) {
	background-color: #fff7eb;
}

.testimonial a {
	overflow-wrap: break-word;
}

/*

.testimonials > div:nth-of-type(even)::before {
	background-color: #f9e1bd;
}

.testimonial::before {
	content: '\00A0';
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background-color: #ccc;
	display: block;
	margin: -40px auto 15px auto;
}

*/

.testimonial p {
	font-family: "EB Garamond", serif;
	font-size: 3em;
	line-height: 1.4;
	margin: 0 0 1em 0;
	color: #444;
}

.testimonial .meta {
	font-size: 2.75em;
	line-height: 1.1;
	font-family: "EB Garamond", serif;
	font-style: italic;
	text-align: right;
	color: #4A0404;
	font-weight: 400;
}

.testimonial .meta::before {
	content: '-';
	padding-right: 2px;
}

.testimonial .meta span::before {
	content: ', ';
}

.testimonial .meta span:first-of-type::before {
	content: none;
}

.testimonial .artwork {
	padding-bottom: 15px;
}

.testimonial .artwork div {
	font-size: 2.5em;
	line-height: 1;
	margin: 0;
	text-align: center;
	padding: 10px 0 0 0;
	font-family: "EB Garamond", serif;
	font-style: italic;
}

.testimonial img {
	max-width: 70%;
	margin: 0 auto;
	max-height: 200px;
	width: auto;
	height: auto;
}


/* footer */

footer {
	display: block;
	background-color: #444;
	width: 100%;
	max-width: 100%;
	padding: 0 0px;
	box-sizing: border-box;
	text-align: center;
}

footer .contain {
	padding: 80px 0 30px 0;
	display: grid;
	grid-template-columns: .5fr .5fr;
	grid-template-rows: auto;
	grid-template-areas:
	  "ownership contact";
	grid-gap: 20px;
	align-items: end;
}

.ownership {
	grid-area: ownership;
}

.ownership p {
	text-align: left;
	font:  italic 400 15px/1.3 'Vollkorn', serif;
	color: #fff;
	margin: 0;
}

.ownership p em {
	font-style: normal;
}

.contact {
	grid-area: contact;
}

.contact p {
	text-transform: uppercase;
	text-align: right;
	font:  normal 900 14px/1.5 'Source Sans Pro', sans-serif;
	margin: 0;
}

.contact p a {
	color: #fff;
}

.contact img {
	width: 19px;
	height: auto;
	margin-left: 10px;
	display: inline;
}

.hentry {
	margin-bottom: 0;
}

.hideme {
	display: none;
}

#submission {
	font-size: 2.2em;
}

body .featherlight .gform_wrapper form.is-vc-form {
	opacity: 1;
}

body .featherlight .gform_wrapper form.is-vc-form .gform_button.gform_vc_button:not(.show) {
	display: inline-block !important;
}

.page-template-template-majoritycampsub #primary {
	max-width: 1200px;
	margin: 0 auto;
}

.page-template-template-majoritycampsub #primary header h2 {
	font-family: 'Vollkorn', serif;
	color: #000;
	text-align: center;
	font-size: 9.5em;
	line-height: 1.1;
	margin: 0 0 40px 0;
	font-style: italic;
	font-weight: 400;
	display: block;
}

.page-template-template-majoritycampsub #primary header h2 a, .page-template-template-majoritycampsub #primary header h2 a:hover {
	text-decoration: none;
	color: #000;
}

.page-template-template-majoritycampsub h2.wp-block-heading {
	font-family: 'Vollkorn', serif;
	text-align: center;
	font-size: 6em;
	line-height: 1.1;
	margin: 20px auto 50px;
	font-style: italic;
	font-weight: 400;
	color: #4A0404;
}

.page .gform_wrapper .gfield_label {
	display: block;
}

.page-template-template-majoritycampsub #primary .entry-content p {
	font-family: 'Vollkorn', serif;
	color: #000;
	text-align: left;
	font-size: 3em;
	line-height: 1.5;
	font-weight: 300;
}

.page .gform_confirmation_message_7 {
	font-family: "EB Garamond", serif;
	color: #000;
	text-align: left;
	font-size: 3em;
	line-height: 1.5;
	font-weight: 300;
	margin: 100px 0;
}

.page-template-template-tributesub article {
	max-width: 1200px;
	margin: 0 auto;
}

.entry-content ul, .entry-content ol {
	max-width: none;
	padding: 0 15% !important;
}

.page-template-template-tributesub header h2 {
	font-family: "EB Garamond", serif;
	color: #4A0404;
	text-wrap: balance;
	font-size: 13em;
	line-height: 1;
	text-align: center !important;
	display: block;
	margin-bottom: 40px;
}

.page-template-template-tributesub #primary {
	background: linear-gradient(180deg,rgba(238, 238, 238, 1) 0%, rgba(255, 255, 255, 0) 100%);
	padding: 50px 0;
}

.page .gform_wrapper {
	margin: 0 auto;
}

.page .gform_wrapper .gform_fields {
	margin: 0 auto 2rem auto !important;
}

.page .gform_wrapper .gfield_label {
	font-family: "EB Garamond", serif;
	color: #444;
	text-align: left;
	font-size: 3em;
	line-height: 1.5;
	font-weight: 700;
}

.page .gform_wrapper.gravity-theme .gfield_description {
	font-family: "EB Garamond", serif;
	color: #444;
	text-align: left;
	font-size: 2.8em;
	line-height: 1.3;
	font-weight: 100;
	font-style: italic;
}

.gform_legacy_markup_wrapper ul.gform_fields li.gfield select {
	font-size: 2.8em;
}

p.backwards {
	font-size: 2.8em;
	font-family: "EB Garamond", serif;
}

.gform_wrapper .gform_footer {
	max-width: 820px;
	margin: 0 auto 2rem auto;
}

.page .gform_wrapper.gravity-theme .gform_footer button {
	font-size: 2.6em;
	margin-left: 20px;
	background-color: #4A0404;
	color: #fff;
	border: 0;
	padding: 1rem 1.6rem 1rem;
	font-family: "EB Garamond", serif;
}

.testimonials {
	columns: 3;
	column-gap: 50px;
	clear: both;
	padding-bottom: 65px;
	position: relative;
	z-index: 5000;
	padding-top: 20px;
}

#testage, #teststate {
	display: none;
}

#testdefbutton {
	background-color: #fff;
}

h4.pitch {
	font-family: 'Vollkorn', serif;
	color: #000;
	text-align: center;
	font-size: 6.5em;
	line-height: 1.1;
	margin: 44px 0 30px 0;
	font-weight: 400;
	text-wrap: balance;
}

h4.pitch::before {
	content: '\00A0';
	display: block;
	width: 50%;
	border-bottom: 1px solid #f36;
	margin: 0 auto 40px;
}

@media only screen and (max-width: 900px) {

	.titles {
		text-align: center;
	}

	.titles .contain {
		display: grid;
		grid-template-columns: 1fr;
		column-gap: 50px;
		grid-template-rows: auto;
		grid-template-areas:         "gphoto" "pcred"
		"gname"        "gquest"        "gdesc"        "gbutton";
		align-items: center;
		justify-content: center;
		row-gap: 40px;
	}

	.photocredit {
		margin-right: auto;
	}



	.titles .cycle-slideshow {
		grid-area: gphoto;
		margin: 0 auto;
		justify-self: center;
	}

	.titles .cycle-slideshow img {
		max-width: 80%;
		margin: 0 10%;
	}

	.testimonials {
		columns: 2;
	}

	.about {
		display: flex;
		width: 100%;
		align-items: start;
		flex-wrap: wrap;
	}

	.about .titles, .about .descr {
		width: 100%;
		box-sizing: border-box;
	}

	.about .titles {
		padding-right: 0;
		border-right: none;
	}

	.about .descr {
		padding-left: 0;
	}

	header h1 {
		padding-bottom: 0;
		height: auto;
	}

	header h1 a {
		position: relative;
		display: block;
		padding-bottom: 43.44%;
		height: 0;
	}

	.titles {
		padding: 50px 0;
	}


	p.button a {
		text-wrap: balance;
		line-height: 1.3;
	}

}

@media only screen and (max-width: 500px) {




.testimonials {
	columns: 1;
}


	header .contain {
		display: grid;
		column-gap: 30px;
		grid-template-columns: 1fr;
		grid-template-rows: auto;
		row-gap: 10px;
		grid-template-areas:
		'partners'
		'title';
		align-items: center;
		padding: 0;
	}

	header h1 {
		justify-self: center;
		text-align: center;
	}

	ul.statistics {
		list-style: none;
		display: block;
		flex-wrap: wrap;
		justify-content: center;
		margin: 0;
		padding: 50px 0;
	}

	ul.statistics li {
		margin: 0 40px;
		padding: 0;
		font-family: 'Source Sans Pro', sans-serif;
		font-size: 1.8em;
		line-height: 1.2;
		text-transform: uppercase;
		letter-spacing: .25em;
	}

	.button-group {
		list-style: none;
		display: block;
		padding: 60px 0 40px 0;
		margin: 0;
		justify-content: center;
		text-align: center;
	}

	.button-group button {
		margin-bottom: 10px;
		margin-left: auto;
		margin-right: auto;
	}

	footer .contain {
		padding: 80px 20px 30px 20px;
		display: grid;
		grid-template-columns: 1fr;
		grid-template-rows: auto;
		grid-template-areas:
		"ownership"
		"contact";
		grid-gap: 20px;
		align-items: end;
	}

	footer .contain .contact {
		text-align: left;
		justify-self: left;
	}

	header h2 {
		justify-content: center;
	}

	.contain {
		padding: 0 20px;
	}

	header h2 > span {
		margin-right: 15px;
	}

	.titles {
		padding-bottom: 40px;
		padding-top: 40px;
	}

.titles h2 {
	font-size: 15em;
}

.titles h4 {
font-size: 8em;
}

.titles .description {
font-size: 3.2em;
}

	.descr {
		display: grid;
		column-gap: 30px;
		grid-template-columns: 1fr;
		grid-template-rows: auto;
		grid-template-areas:
		'descrtext'
		'descrbutton';
		justify-content: center;
		align-items: center;
	}

	.descr p.description {
		text-align: center;
		justify-self: center;
	}

	.descr p.button {
		justify-self: center;
		margin: 0 auto;
		margin-top: 30px;
	}

	.about {
		display: block;
		padding: 25px;
	}


	.about .titles h2.subhead {
		font-size: 7em;
	}

	header h2 {
		flex-wrap: wrap;
	}

	header h2 span {
		margin-bottom: 15px;
	}




	.page-template-template-majoritycampsub .entry-details {
		padding: 30px;
	}

}
