* { box-sizing: border-box; }
body { margin: 0px; padding: 0px; background-color: #fff; color: #1D1D1B; }

body > header { width: 100%; }

p { margin: 5vw 0; }

.texto1 { font-family: sans; font-size: 5vw; line-height: 7vw; }
.texto2 { font-family: sans; font-size: 6vw; line-height: 8vw; }

.banner { position: relative; margin: 0px; padding: 0px; background-color: #aaa; color: #fff; }
.banner > img { display: block; margin: 0px; padding: 0px; width: 100%; }

.botones { display: flex; justify-content: space-around; }
.boton { background-color: #A67D52; padding: 4vw 6vw; font-size: 5vw; color: #fff; text-decoration: none; }
.boton:hover { background-color: #b84; }

body > div.texto { text-align: center; padding: 20vw 1vw; }

div#emblema { padding: 12vw 0; text-align: center; }
div#emblema img { width: 40vw; }

div#banner1 { position: relative; }
div#banner1 > img { display: block; margin: 0px; padding: 0px; width: 100%; }
div#banner1 > div { position: absolute; bottom: 0px; left: 0px; right: 0px; }
div#banner1 > div > img { width: 73vw; margin-left: 3vw; }
div#banner1 > div #fecha1 { text-align: center; padding: 3vw 1vw 4.8vw; font-family: sans; font-size: 5vw; font-weight: bold; color: #000; text-shadow: .4vw .4vw .4vw #999; letter-spacing: .4vw; }

/* Cuenta Regresiva */

#cuenta-regresiva { padding: 20vw 0 10vw; text-align: center; }
#cuenta-regresiva > img { width: 88vw; margin-bottom: 2.5vw; }
#cuenta-regresiva h2 { font-size: 6vw; }

#cuenta-regresiva-contenedor { display: flex; flex-direction: flex-start; justify-content: center; }
#cuenta-regresiva-contenedor > .unidad { display: flex; flex-direction: column; justify-content: center; align-items: center;
background-color: #000; color: #ddd; margin: .7vw; width: 17vw; height: 17vw; border-radius: 50%; }
#cuenta-regresiva-contenedor > .unidad > span:first-child { font-size: 6vw; }
#cuenta-regresiva-contenedor > .unidad > .etiqueta { font-size: 3vw; }

/* Nosotros */

div#nosotros { padding: 20vw 0px; text-align: center; }
div#nosotros img { width: 68vw; }
div#nosotros blockquote { padding: 4vw 1vw; font-size: 5vw; line-height: 6.5vw; letter-spacing: .2vw; }

/* CRONOGRAMA */

#cronograma { background-color: #A67D52; text-align: center; }
#cronograma > img { width: 65vw; margin-top: 12vw; }

#cronograma-cajas { color: #fff; }
#cronograma-cajas > div { display: grid; grid-template-columns: 1fr 5fr; }
#cronograma-cajas > div > div:nth-child(1) { display: flex; justify-content: center; align-items: center; position: relative;
grid-row: 1 / 3; }
#cronograma-cajas > div > div:nth-child(2) { text-align: center; padding-top: 14vw; padding-bottom: 2vw; }
#cronograma-cajas > div > div:nth-child(2) > img { height: 19vw; }

#cronograma-cajas > div > div:nth-child(3) { display: flex; justify-content: space-around; align-items: flex-end; 
padding-bottom:10vw; }
#cronograma-cajas > div > div:nth-child(3) > div:first-child { font-size: 4.5vw; }
#cronograma-cajas > div > div:nth-child(3) > div:last-child { font-size: 4.5vw;  }

.circulo { display: inline-block; width: 5vw; height: 5vw;
background-color: #fff; border-radius: 50%; }
.linea { position: absolute; top: 0; left: 48%; right: 48%; bottom: 0px;
background-color: #fff; }

.linea.inicio { top: 50%; }
.linea.final { bottom: 50%; }

/* banner2 */

#banner2 {}
#banner2 > img { display: block; margin: 0px; padding: 0px; width: 100%;  }

/* Donde y cuando */
#donde-y-cuando { text-align: center; padding: 20vw 0; }
#donde-y-cuando > img { width: 80vw;  }
#donde-y-cuando > p { font-family: sans; font-size: 5vw; }

/* Ceremonia */

#ceremonia { text-align: center; padding-bottom: 20vw; }
#ceremonia img { width: 61vw; }

#banner3 {}
#banner3 > img { display: block; margin: 0px; padding: 0px; width: 100%; }

#recepcion { text-align: center; padding: 20vw 0; }
#recepcion img { width: 53vw; }

#galeria { text-align: center; }
#galeria > img { width: 51vw; padding-bottom: 8vw; }
#galeria > .contenedor { display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: auto 30vw 30vw 30vw 30vw auto; grid-gap: 3vw; padding: 3vw; }
#galeria > .contenedor > div { display: flex; justify-content: center; align-items: center;
overflow: hidden; }
#galeria > .contenedor > div > img { display: block; margin: 0; padding: 0; width: 100%; }

#galeria > .contenedor > div:first-child { grid-column: span 2; }
#galeria > .contenedor > div:nth-child(2) { grid-row: span 2; }
#galeria > .contenedor > div:nth-child(3) {  }
#galeria > .contenedor > div:nth-child(4) { grid-row: span 2; }
#galeria > .contenedor > div:nth-child(5) { grid-row: span 2; }
#galeria > .contenedor > div:nth-child(6) {  }
#galeria > .contenedor > div:last-child { grid-column: span 2; }

/* #galeria > .contenedor > div > img:nth-child(3) { height: 100%; } */

/* Código de Vestimenta */

#codigo-vestimenta { padding: 20vw 0; text-align: center; }
#codigo-vestimenta > img { width: 83vw; }
#codigo-vestimenta > div#etiqueta-rigurosa {}
#codigo-vestimenta > div#etiqueta-rigurosa > img { width: 25vw; }
#codigo-vestimenta > div#codigo-vestimenta-importante { margin: 0 auto; width: 90vw; border: 2px solid #A67D52; }

/* Mesa de Regalo */

#mesa-regalo { padding-top: 20vw; text-align: center; }
#mesa-regalo > img { width: 72vw; padding-bottom: 5vw; }

#mesa-regalo-liverpool { padding: 10vw 0 5vw; }
#mesa-regalo-liverpool img { width: 50vw; }

#mesa-regalo-amazon { padding: 5vw 0 0; text-align: center; }
#mesa-regalo-amazon img { width: 38vw; margin: 5vw 0; }

/* Confirmar Asistencia */

.formulario-botones-ocultos { display: none; }

#confirmar-asistencia {  }
#confirmar-asistencia > img { width: 85vw; }
#confirmar-asistencia > img:last-child { width: 62vw; }

#confirmar-asistencia form {  }
#confirmar-asistencia form .invitado { font-size: 6vw; }

#confirmar-asistencia form input[name=boletos] { margin-top: 1vw; padding: 1vw .5vw; 
border: 1px solid #A67D52; border-radius: 5px; 
font-size: 3.5vw; text-align: center; }

#confirmar-asistencia .botones { padding: 2vw; margin-top: 1vw; }
#confirmar-asistencia .botones button { background-color: #A67D52; color: #fff; border: none; padding: 2vw 3vw; font-family: sans; font-size: 3.6vw; cursor: pointer; margin: 1vw; }
#confirmar-asistencia .botones button:hover{ background-color: #b84; }

#confirmar-asistencia > img:last-child { margin-top: 4vw; }
/* Footer */

body > footer {  }

body > footer > #emblema-pie { background-color: #A67D52; padding: 20vw 0; text-align: center; }
body > footer > #emblema-pie img { width: 50vw; }

body > footer > div#fondo { background-color: #1D1D1B; padding: 14px; }
body > footer > div#fonde,
body > footer > div#fondo a { color: #ddd; }
body > footer > div#fondo a:hover { color: #fff; }