
@property --neutral-dark {
	syntax: "<color>";
	inherits: true;
	initial-value: #1F2F1F;
}

@property --neutral-light {
	syntax: "<color>";
	inherits: true;
	initial-value: #EFEDEE;
}

@property --green-dark {
	syntax: "<color>";
	inherits: true;
	initial-value: #59715A;
}

@property --green-light {
	syntax: "<color>";
	inherits: true;
	initial-value: #97A085;
}

@property --purple-dark {
	syntax: "<color>";
	inherits: true;
	initial-value: #7D688F;
}

@property --purple-light {
	syntax: "<color>";
	inherits: true;
	initial-value: #95839B;
}

@font-face {
    font-family: "Hello Paris Serif Regular";
    src: url("https://db.onlinewebfonts.com/t/af9dbbacda3360d434dcce8ab8b6c38f.eot");
    src: url("https://db.onlinewebfonts.com/t/af9dbbacda3360d434dcce8ab8b6c38f.eot?#iefix")format("embedded-opentype"),
    url("https://db.onlinewebfonts.com/t/af9dbbacda3360d434dcce8ab8b6c38f.woff2")format("woff2"),
    url("https://db.onlinewebfonts.com/t/af9dbbacda3360d434dcce8ab8b6c38f.woff")format("woff"),
    url("https://db.onlinewebfonts.com/t/af9dbbacda3360d434dcce8ab8b6c38f.ttf")format("truetype"),
    url("https://db.onlinewebfonts.com/t/af9dbbacda3360d434dcce8ab8b6c38f.svg#Hello Paris Serif Regular")format("svg");
}

@font-face {
    font-family: "Champagne & Limousines V1";
    src: url("https://db.onlinewebfonts.com/t/4bc98977ba557db3b2f5bb66bff54e25.eot");
    src: url("https://db.onlinewebfonts.com/t/4bc98977ba557db3b2f5bb66bff54e25.eot?#iefix")format("embedded-opentype"),
    url("https://db.onlinewebfonts.com/t/4bc98977ba557db3b2f5bb66bff54e25.woff2")format("woff2"),
    url("https://db.onlinewebfonts.com/t/4bc98977ba557db3b2f5bb66bff54e25.woff")format("woff"),
    url("https://db.onlinewebfonts.com/t/4bc98977ba557db3b2f5bb66bff54e25.ttf")format("truetype"),
    url("https://db.onlinewebfonts.com/t/4bc98977ba557db3b2f5bb66bff54e25.svg#Champagne & Limousines V1")format("svg");
}

@font-face {
    font-family: "Raleigh Light BT";
    src: url("https://db.onlinewebfonts.com/t/4a6bf2df3369826a3d235bfcb4dd91fe.eot");
    src: url("https://db.onlinewebfonts.com/t/4a6bf2df3369826a3d235bfcb4dd91fe.eot?#iefix")format("embedded-opentype"),
    url("https://db.onlinewebfonts.com/t/4a6bf2df3369826a3d235bfcb4dd91fe.woff2")format("woff2"),
    url("https://db.onlinewebfonts.com/t/4a6bf2df3369826a3d235bfcb4dd91fe.woff")format("woff"),
    url("https://db.onlinewebfonts.com/t/4a6bf2df3369826a3d235bfcb4dd91fe.ttf")format("truetype"),
    url("https://db.onlinewebfonts.com/t/4a6bf2df3369826a3d235bfcb4dd91fe.svg#Raleigh Light BT")format("svg");
}

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

a {
	color: inherit;
	text-decoration: inherit;
}

html {
	background-color: var(--green-light);
	font-size: 10px;
}
 
 @media (min-width: 901px) 
 {
	html
	{
		font-size: 12px; 
	}
 }
 
 @media (min-width: 1201px) 
 {
	html
	{
		font-size: 14px; 
	}
 }
 
 @media (min-width: 1501px) 
 {
	html
	{
		font-size: 16px; 
	}
 }

.page {
	width: calc(100% - 2.5rem);
	max-width: 40rem;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background-color: var(--neutral-light);
	color: var(--neutral-dark);
	font-family: "Raleigh Light BT";
	box-shadow:
		.1rem 0 1rem var(--neutral-dark),
		-.1rem 0 1rem var(--neutral-dark);
}

 @media (max-width: 600px) 
 {
	html {
		background-color: var(--neutral-light);
	}
	
	.page
	{
		width: 100%;
		max-width: unset;
		box-shadow: unset;
	}
 }


 @media (min-width: 601px) {
	header, .header {
		width: 100%;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
	}
	
	.navbar {
		transition: all .1s ease-in;
		height: 3.125rem;
		width: 100%;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
	}
	
	.navbutton {
		transition: all .1s ease-in;
		height: 100%;
		padding: 0 1.25rem;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		text-align: center;
		background-color: var(--neutral-light);
		color: var(--neutral-dark);
	}
	
	.navbutton a {
		z-index: 2;
	}
	
	.navbutton:hover a {
		color: var(--neutral-light);
		-webkit-text-stroke: 1px var(--neutral-light);
	}
	
	.navbutton::after {
		content: '';
		transition: opacity .1s ease-in;
		z-index: 1;
		position: absolute;
		height: 8.25rem;
		width: 12.5rem;
		background-image: url("/res/flower-burst-small.png");
		background-size: contain;
		opacity: 0;
	}
	
	.navbutton.rot-030::after {
		transform: rotate(30deg);
	}
	
	.navbutton.rot-036::after {
		transform: 	rotate(60deg);
	}
	
	.navbutton.rot-090::after {
		transform: rotate(90deg);
	}
	
	.navbutton.rot-120::after {
		transform: rotate(120deg);
	}
	
	.navbutton.rot-150::after {
		transform: rotate(150deg);
	}
	
	.navbutton.rot-180::after {
		transform: rotate(180deg);
	}
	
	.navbutton.rot-210::after {
		transform: rotate(210deg);
	}
	
	.navbutton.rot-240::after {
		transform: rotate(240deg);
	}
	
	.navbutton.rot-270::after {
		transform: rotate(270deg);
	}
	
	.navbutton.rot-300::after {
		transform: rotate(300deg);
	}
	
	.navbutton.rot-330::after {
		transform: rotate(330deg);
	}
	
	.navbutton:hover::after {
		opacity: 1;
	}
	
	.navbutton * {
		height: min-content;
		width: min-content;
		font-size: 1.5rem;
		text-wrap: nowrap;
	}
}

@media (max-width: 600px) {
	header, .header {
		width: 3rem;
		height: 3rem;
		display: flex;
		flex-direction: column;
		justify-content: flex-starty;
		align-items: center;
	}
	
	.navbar {
		transition: all .1s ease-in;
		height: 3.125rem;
		width: 100%;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
	}
	
	.navbutton {
		transition: all .1s ease-in;
		height: 100%;
		padding: 0 1.25rem;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		text-align: center;
		background-color: var(--neutral-light);
		color: var(--neutral-dark);
	}
	
	.navbutton a {
		z-index: 2;
	}
	
	.navbutton:hover a {
		color: var(--neutral-light);
		-webkit-text-stroke: 1px var(--neutral-light);
	}
	
	.navbutton::after {
		content: '';
		transition: opacity .1s ease-in;
		z-index: 1;
		position: absolute;
		height: 8.25rem;
		width: 12.5rem;
		background-image: url("/res/flower-burst-small.png");
		background-size: contain;
		opacity: 0;
	}
	
	.navbutton.rot-030::after {
		transform: rotate(30deg);
	}
	
	.navbutton.rot-036::after {
		transform: 	rotate(60deg);
	}
	
	.navbutton.rot-090::after {
		transform: rotate(90deg);
	}
	
	.navbutton.rot-120::after {
		transform: rotate(120deg);
	}
	
	.navbutton.rot-150::after {
		transform: rotate(150deg);
	}
	
	.navbutton.rot-180::after {
		transform: rotate(180deg);
	}
	
	.navbutton.rot-210::after {
		transform: rotate(210deg);
	}
	
	.navbutton.rot-240::after {
		transform: rotate(240deg);
	}
	
	.navbutton.rot-270::after {
		transform: rotate(270deg);
	}
	
	.navbutton.rot-300::after {
		transform: rotate(300deg);
	}
	
	.navbutton.rot-330::after {
		transform: rotate(330deg);
	}
	
	.navbutton:hover::after {
		opacity: 1;
	}
	
	.navbutton * {
		height: min-content;
		width: min-content;
		font-size: 1.5rem;
		text-wrap: nowrap;
	}
}

.content {
	max-width: 100%;
}

.page-title {
	padding: 2rem 1.25rem;
}

.title-box {
	display: flex;
	flex-direction: column;
	justify-content:center;
	align-items: center;
	text-align: center;
	gap: 1rem;
}

.title-flowers {
	width: 100%;
}

.title-flowers.upper {
	margin-bottom: -5%;
}

.title-flowers.lower {
	margin-top: -10%;
}

.title {
	font-size: 3rem;
	font-family: "Hello Paris Serif Regular";
	font-variant-ligatures: none;
}

.subtitle {
	font-size: 2rem;
	font-family: "Hello Paris Serif Regular";
}

.photo {
	padding: 0 .75rem;
	display: flex;
	flex-direction: row;
	justify-content:center;
	align-items: center;
}

.photo-box {
	width: 100%;
	border: 1px solid var(--green-light);
	display: flex;
	flex-direction: column;
	justify-content:center;
	align-items: center;
	text-align: center;
}

.photo-box.blank {
	height: 30rem;
	width: 40rem;
}

.photo-box.blank:after{
	content: "[Insert Photo Here]";
	font-size: 2rem;
	font-family: sans-serif;
}

.photo-box img {
	width: 100%;
	object-fit: contain;
}

.text {
	padding: 2rem 1.25rem;
}

.text-box {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: 2rem;
}

.schedule-title {
	font-size: 2.5rem;
	font-family: "Hello Paris Serif Regular";
	margin-bottom: 1rem;
}

.schedule-time, .schedule-location, .schedule-address, .schedule-note {
	font-size: 1.5rem;
}

.schedule-address + .schedule-note {
	margin-top: 1rem;
}

.rsvpcta {
	padding: 3.125rem;
	display: flex;
	flex-direction: row;
	justify-content:center;
	align-items: center;
}

.rsvpcta-button {
	transition: all .1s ease-in;
	height: 7.5rem;
	width: 12.5rem;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	text-align: center;
	font-size: 2.5rem;
}

.rsvpcta-button:hover {
	text-decoration: underline;
}

.rsvpcta-button * {
	height: min-content;
	width: min-content;
	text-wrap: nowrap;
}

footer {
	height: 100%;
	margin: 0 6.25rem;
	background-color: var(--neutral-light);
}