body {
	font-family: var(--font-family-primary);
	font-size: var(--font-vsize-200);
	color: var(--color-font-primary);
}

/* main {
  padding-top: 50px;
  padding-bottom: 50px;
} */

main p {
	line-height: 1.5;
}

.cont-page {
	/* width: calc(100% - (var(--padding-vwidth) * 2));
	padding-left: var(--padding-vwidth);
	padding-right: var(--padding-vwidth); */
	width: 100%;
}


@media screen and (min-width: 1200px) {

	.cont-page {
		max-width: 1200px;
		margin-left: auto;
		margin-right: auto;
		/* padding-left: var(--padding-vwidth);
		padding-right: var(--padding-vwidth); */
	}

}

h1,h2,h3,h4,h5,h6 {
	font-family: var(--font-family-secondary);
	font-weight: 700;
	text-transform: uppercase;
	color: var(--color-font-secondary);
}

h1.baf-title {
	font-size: var(--font-vsize-800);
}

h1 {
	font-size: var(--font-vsize-500);
}

h2 {
	font-size: var(--font-vsize-400);
}

h3 {
	font-size: var(--font-vsize-300);
}

h4 {
	font-size: var(--font-vsize-200);
}


/*
	HEADER AND FOOTER
*/

#reg-header {
	background-image: linear-gradient(60deg,rgba(255,205,0,.45) 0%,rgba(52,76,61,.5) 61%,rgba(0,43,76,.5) 100%),url(/assets/frontend/img/baf-colors.jpg);
	background-position: right top 10%;
	background-repeat: no-repeat;
	background-size: cover;
	/* min-height: 40vh;
	max-height: 40vh; */
	height: 300px;
	position: relative;
}

#reg-header-logo {
	background: url('/assets/frontend/img/logo-background.png');
	background-position: center right;
	padding: 10px 180px 10px 20px;
	margin-left: -4px;
}

#reg-header-title {
	padding-top: 35px;
	padding-left: 50px;
}

#reg-header-title h1 {
	color: var(--color-font-reverse);
	font-size: var(--font-vsize-500);
	margin: 0.5rem 0;
}
#reg-header-title h2 {
	color: var(--color-font-reverse);
	font-size: var(--font-vsize-200);
	margin: 0.5rem 0;
}

#reg-header-bottom-angle {
		background-image: url('/assets/frontend/img/bottom-right-corner.png');
		background-position: right bottom;
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		bottom: 0;
		right: 0;
		width: 100%;
		height: 10vh;
}

#reg-footer {
	position: relative;
	background-color: var(--color-background-secondary);
}

#reg-footer * {
	position: relative;
	z-index: 2;
}

#reg-footer-top-angle {
	z-index: 1;
	background-image: url('/assets/frontend/img/top-right-corner.png');
	background-position: right top;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 10vh;
}

#reg-footer-contents {
	padding: 50px 50px 100px;
}

#reg-footer-contents > * {
	margin-bottom: 50px;
}

#reg-footer-contents > *:last-child {
	margin-bottom: 0;
}

.reg-footer-link-icon {
	width: 25px;
}

.reg-footer-link {
	display: flex;
	align-items: center;
	gap: 25px;
}

.reg-footer-link a {
	color: var(--color-font-reverse);
	text-decoration: none;
}

.reg-footer-link a:hover {
	color: var(--color-font-reverse);
	text-decoration: underline;
}

.reg-footer-link p {
	color: var(--color-font-reverse);
	margin: 0;
}

#reg-footer-base {
	border-top: 5px solid var(--color-primary-medium);
	background-color: var(--color-background-secondary-shade);
	padding: 25px 0;
}


#reg-footer-base-social-links {
	display: flex;
	justify-content: center;
	gap: 10px;
	z-index: 3;
}

#reg-footer-base-social-links img {
	width: 25px;
}

#reg-footer-logo {
	width: 250px;
}

@media screen and (min-width: 600px) {

	#reg-header {
		background-position: right top 60%;
	}
}

@media screen and (min-width: 800px) {

	#reg-header {
		height: 400px;
		background-position: right top 60%;
		background-size: cover;
	}

	#reg-header-title {
		display: block;
		margin-left: -4px;
		padding-top: 50px;
		padding-left: 50px;
	}

	#reg-header-title h1 {
		font-size: var(--font-vsize-700);
		margin: 0.5rem 0;
	}
	#reg-header-title h2 {
		font-size: var(--font-vsize-400);
		margin: 0.5rem 0;
	}

	#reg-header-bottom-angle {
		height: 20vh;
	}

	#reg-footer-top-angle {
			height: 20vh;
	}

	#reg-footer-base {
		height: 75px;
		padding: 0;
	}

	#reg-footer-base-social-links {
		position: absolute;
		top: 25px;
		right: 50px;
	}
}


@media screen and (min-width: 1200px) {

	#reg-header {
		height: 500px;
		background-position: right top 60%;
	}

	#reg-header-title {
		margin-left: -4px;
		padding-top: 75px;
		padding-left: 150px;
	}

	#reg-header-title h1 {
		font-size: var(--font-vsize-800);
	}

	#reg-header-title h2 {
		font-size: var(--font-vsize-500);
	}

	#reg-header-bottom-angle {
		height: 30vh;
	}

	#reg-footer-top-angle {
		height: 30vh;
	}
}

/*
	PRESCREEN (LOGIN)
*/

#reg-prescreen {
	position: relative;
	padding: 75px 50px 150px;
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 100px;
}

#reg-prescreen.baf-main {
	width: initial;
}

#reg-prescreen-cont {
	grid-row: 1;
	text-align: center;
}

#reg-prescreen-logo {
	width: 80%;
	max-width: 400px;
	margin-bottom: 50px;
}


#reg-prescreen-body-copy {
	padding-top: 25px;
	font-family: var(--font-family-primary);
	font-size: var(--font-vsize-400);
	text-align: left;
}

#reg-prescreen-login-cont {
  position: relative;
  background-color: #1a4061;
  min-height: 450px;
	grid-row: 2;
}

@media screen and (min-width: 800px) {

	#reg-prescreen {
		padding: 100px 200px 150px;
	}
}

@media screen and (min-width: 1200px) {

	#reg-prescreen {
		display: grid;
		grid-template-columns: 3fr 2fr;
		column-gap: 150px;
	}

	#reg-prescreen-cont {
		grid-row: 1;
		grid-column: 1;
	}

	#reg-prescreen-login-cont {
		grid-row: 1;
		grid-column: 2;
	}
}

/*
	REGISTRATION
*/

#reg-registration {
	position: relative;
	padding: 100px 50px 150px;
	width: calc(100% - 100px);
}


.reg-registration-notice {
	margin: 50px 0;
}

#reg-registration-form {
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 50px;
}

#reg-registration-form #reg-form-section-activity-info.baf-form-section-content {
	margin: 50px 0;
}

#reg-form-section-activity-info section:first-child {
	margin-bottom: 50px;
}

.reg-form-activity-info-card {
	padding: 25px;
}

/* .reg-form-activity-info-card-title {
	text-transform: uppercase;
} */

.reg-form-activity-info-card-col-title {
	font-family: var(--font-family-primary);
	color: var(--color-font-primary-dark);
	font-weight: normal;
}

.reg-form-activity-info-card-description {
	
}

.reg-form-activity-info-card-cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 25px;
}

.reg-form-activity-info-card-col-content {
	font-size: var(--font-vsize-200);
	/* color: var(--color-font-primary-light); */
}

#reg-registration-form-hotel-dining-heading {
	margin: 0 0 50px;
}

#reg-registration.reg-my {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 50px;
}

#reg-registration.reg-my > * {
	align-self: stretch;
}

#reg-page-actions {
	padding: 50px 0 0;
}

#reg-page-actions > * {
	margin: 50px 25px 0 0;
}

#reg-registration > .baf-title {
	margin: 0;
}

#reg-registrant-copy {
	font-size: var(--font-vsize-300);
}

#reg-registrant-cards {
	display: grid;
	grid-template-columns: 1fr;
	column-gap: 50px;
	row-gap: 50px;
	justify-items: stretch;
}

.reg-registrant-card {
	background: var(--color-background-primary);
	display: flex;
	flex-direction: row;
	align-items: flex-start;
}

.reg-registrant-card-icon {
	background-image: url('/assets/frontend/img/icon-person.png');
	background-color: var(--color-background-neutral);
	background-size: 30px;
	background-position: center center;
	background-repeat: no-repeat;
	width: 60px;
	align-self: stretch;
	flex-grow: 0;
}

.reg-registrant-card-content {
	padding: 25px;
	flex-grow: 1;
}

.reg-registrant-card-content > * {
	margin: 0;
}

.reg-registrant-card-content h1 {
	color: var(--color-font-primary);
	font-size: var(--font-vsize-400);
	text-transform: none;
	font-weight: 400;
	margin-bottom: 10px;
}
.reg-registrant-card-content p {
	color: var(--color-font-primary-light);
	font-size: var(--font-vsize-300);
}

.reg-registrant-card-actions {
	text-align: right;
	margin-top: 25px;
}

#reg-registration-form .baf-form-section-content {
	margin: 25px 0;
}

@media screen and (min-width: 600px) {

	#reg-page-actions {
		display: flex;
		gap: 50px;
		flex-direction: row;
	}

	#reg-page-actions > * {
		margin: initial;
	}
}


@media screen and (min-width: 800px) {

	#reg-registration {
		padding: 100px 50px 250px;
	}

	#reg-registration-form .baf-form-section-content {
		display: grid;
		grid-template-columns: 1fr 1fr;
		column-gap: 50px;
		grid-auto-flow: column;
	}

	#reg-registration-form .baf-form-section {

	}

	#reg-form-section-activity-info section:first-child {
		margin-bottom: 0;
	}

	#reg-registrant-cards {
		grid-template-columns: 1fr 1fr;
	}
}

@media screen and (min-width: 1000px) {

	.reg-registrant-card-icon {
		width: 100px;
		background-size: 50px;
	}
}

/*
	REGISTER GUEST PROMPT
*/

#reg-prompt-copy {
	font-size: var(--font-vsize-400);
}


/*
	SPONSOR AREA
*/

#reg-prescreen-login-cont.sponsor {
	color: var(--color-font-reverse);
	padding: 50px 50px 100px;
	min-height: unset;
}

#reg-prescreen-login-cont.sponsor h1,
#reg-prescreen-login-cont.sponsor .baf-form-element label {
	color: var(--color-font-reverse);
}

#reg-prescreen-login-cont.sponsor .baf-form-element {
	margin: 25px 0;
}

#reg-prescreen-login-cont.sponsor .baf-form-element input[type=text],
#reg-prescreen-login-cont.sponsor .baf-form-element input[type=password] {
	width: 100%;
}

#sponsor-index-form-section-logo.baf-side-stack {
  display: flex;
  flex-direction: column;
  column-gap: 15px;
}

#sponsor-index-form-logo-img {
	padding: 25px 0 50px;
	max-width: 300px;
}

#sponsor-index-form-logo-img img {
	width: 100%;
}

#sponsor-index {
	position: relative;
	padding: 50px 50px 150px;
	width: calc(100% - 100px);
}

#sponsor-index-title h1,
#sponsor-index-title h2 {
	margin: 0.5rem;
}

#sponsor-index-sections {
	margin: 75px 0;
}

#sponsor-index-form .baf-form-section-content {
	margin: 25px 0;
}

.sponsor-index-form-actions {
	margin: 50px 0;
}

#sponsor-registered-attendees {
	width: 100%;
}

#sponsor-dinner-cards {
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 50px;
	list-style: none;
	margin: 50px 0;
	padding: 0;
}

#sponsor-index-form-foursomes,
#sponsor-index-form-tables {
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 50px;
}

.sponsor-index-form-foursome,
.sponsor-index-form-table {
	padding: 0 0 0;
	display: flex;
	flex-direction: column;
	row-gap: 15px;
}

.sponsor-index-form-table header p {
	padding: 0;
}

.sponsor-index-form-foursome .baf-form-element {
	margin-bottom: 0;
}

@media screen and (min-width: 600px) {


	#sponsor-index-form-tables {
		display: grid;
		grid-template-columns: 1fr 1fr;
		column-gap: 50px;
	}
}



@media screen and (min-width: 800px) {

	#sponsor-index {
		padding: 50px 50px 250px;
	}

	#sponsor-index-form .baf-form-section-content {
		display: grid;
		grid-template-columns: 1fr 1fr;
		column-gap: 50px;
		grid-auto-flow: column;
	}

	#sponsor-index-form-section-logo.baf-side-stack {
	  flex-direction: row;
	}

	#sponsor-index-form .baf-form-section {

	}

	#sponsor-dinner-cards {
		grid-template-columns: 1fr 1fr 1fr;
	  column-gap: 50px;
		align-content: stretch;
	}

	#sponsor-index-form-foursomes {
		display: grid;
		grid-template-columns: 1fr 1fr;
		column-gap: 50px;
	}
}

@media screen and (min-width: 1000px) {

	#sponsor-index-form-tables {
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
		column-gap: 50px;
	}
}
