:root {
	--jmBlack: #141414;
	--jmWhite: #fff;

	--ggDeepViolet: rgba(39,6,53,1);
	--ggRoyalPurple: rgba(69,10,95,1);
	--ggPurpleGlow: rgba(95,14,142,1);

	--ggPumpkin: rgba(252,121,3,1);
	--ggPumpkinNight: rgba(151,72,2,1);

	--ggPumpkinGradient: linear-gradient(180deg, var(--ggPumpkin) 65%, var(--ggPumpkinNight) 100%);

	--jmSilver: rgba(192,192,192,1);
	
	--jmRed: rgba(139,0,0,1);
	--jmRedRuby: linear-gradient(180deg, rgba(198,52,53,1) 0%, rgba(139,0,0,1) 50%, rgba(36,0,2,1) 100%);

	--jmFSerif: 'Bitter', serif;
	--jmFBalloon: 'Fredoka One', cursive;
	--jmFKnight: 'Gabriela', serif;

	--ggLetter: 'Kaushan Script', serif;
	--ggMenace: 'Nanum Pen Script', serif;
	--ggSpooky: 'Chewy', serif;
}

html {
	margin: 0;
}

body {
	margin: 0;
	background: var(--ggRoyalPurple);
	background: radial-gradient(circle, var(--ggPurpleGlow) 0%, var(--ggRoyalPurple) 49%, var(--ggDeepViolet) 100%);
}

main {
	height: 100vh;
	width: 100vw;
	position: relative;
	text-align: center;
}

section {
	height: 90vh;
	width: 100vw;
	padding-bottom: 10vh;
	position: relative;
	
	flex-direction: column;
	align-items: center;
	justify-content: space-evenly;

	color: var(--jmWhite);
	font-family: var(--ggLetter);
	font-size: 3vh;
	font-weight: 600;
	text-shadow: 3px 3px var(--ggRoyalPurple);

	animation: fadeIn 0.7s;
	-webkit-animation: fadeIn 0.7s;
	-moz-animation: fadeIn 0.7s;
	-o-animation: fadeIn 0.7s;
	-ms-animation: fadeIn 0.7s;

	display: none;
}

@keyframes fadeIn {
	0% { opacity: 0; }
	100% { opacity: 1; }
}

section.view {
	display: flex;
}

h1, h2, h3 {
	margin: 0;
}

h2 {
	color: var(--ggPumpkin);
	font-size: 1.8em;
}

img.title-img {
	height: 15vh;
	width: auto;
	max-width: 90vw;
}

button {
	border-radius: 0 100px 100px 0;
	font-family: var(--ggMenace);
	font-size: inherit;
	padding: 1.5vh 1.5vw;
	cursor: pointer;
	box-shadow: 0px 1px 2px 0px rgb(0 0 0 / 30%);
	text-shadow: 3px 3px rgb(102 102 102);
	color: var(--jmWhite);
	border: solid 2px var(--jmBlack);
	background: var(--jmBlack);
}

button:hover, a:hover {
	transform: scale(1.05);
}

button {
	border-color: var(--ggPumpkin);
	background: var(--ggPumpkinGradient);
}
button:hover {
	border-color: var(--ggPumpkin);
	background: var(--ggPumpkinGradient);
}

button.prev {
	border-radius: 100px 0 0 100px;
	width: 50px;
}

/***********************/
/******  WELCOME  ******/
/***********************/

section#welcome img {
	height: 52vh;
	width: auto;
	max-width: 100%;
}

section#welcome button.cta {
	border-radius: 100px;
}

section#welcome button.prev {
	display: none;
}

/**********************/
/*******  INFO  *******/
/**********************/

section#info img#img-fecha {
	height: 42vh;
	width: auto;
	max-width: 100vw;
}

section#info img#img-location {
	height: 11vh;
	width: auto;
}

#gomamon {
	color: var(--jmWhite);
	font-size: 12vh;
}

/**********************/
/******  COMIDA  ******/
/**********************/

time, span.org {
	color: var(--ggPumpkin);
	font-size: 3.5vh;
}

ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

p {
	margin: 0;
	display: inline-block;
}

li {
	position: relative;

	text-align: center;
	display: flex;
	flex-direction: row;
	justify-content: center;

	height: 10vh;

	/*padding-left: 12vh;*/

	margin-bottom: 2vh;
}

li:last-child {
	margin-bottom: 0;
}

li img {
	height: 10vh;
}

li img:hover {
	transform: scale(1.2) rotate(-10deg);
}

small {
	font-size: 2vh;
}

/***********************/
/*****  DIVERSIÓN  *****/
/***********************/

section#fun img.title-img {
	height: 12vh;
}

/**********************/
/*******  RSVP  *******/
/**********************/

form {
	height: 50vh;
	text-align: left;
	display: flex;
	flex-direction: column;
	justify-content: space-evenly;
	padding: 0 5%;
}

input, select {
	border-radius: 100px;
	color: var(--ggRoyalPurple);
	border: none;
	text-align: center;
	font-size: inherit;
	padding: 0.5vh 0.5vw;
	width: 90%;
}

#submit-btn {
	border-color: var(--jmRed);
	background: var(--jmRedRuby);
	border-radius: 100px;
	text-shadow: 2px 2px var(--ggRoyalPurple);
	margin-bottom: 1em;
}

/************************/
/*****  RESPONSIVE  *****/
/************************/

@media (min-width: 675px) {
	section {
		font-size: 4vh;
	}

	section#welcome img {
		height: 52vh;
	}

	section#info img#img-fecha {
		height: 55vh;
	}

	section#info img#img-location {
		height: 15vh;
	}
}