@font-face {
	font-family: Italiana;
	src: url("/assets/fonts/Satisfy-Regular.ttf");
}

@font-face {
	font-family: Alex Brush Regular;
	src: url("/assets/fonts/letra &.ttf");
}
/*
#D8A8A0
#78001A
#4A0012
*/
body{
	background-color: #ebe0d9;
}
.card-title{
	font-weight: 400 !important;
}
.display-5{
	font-weight: 400 !important;
}
.display-6{
	font-weight: 400 !important;
}
.barra{
	font-family: Italiana;
	background-color: #D8A8A0;
	color: #78001A;
}
body, html {
	overflow-x: hidden; 
}
.jumbotron, .sticky-top, .borde{
	max-width: 800px;
	margin: 0 auto;
}
/* .borde{
	border-style: solid;
	border-top-style: none;
	border-width: 2px;
	border-color: #78001A;
}
.bordeCompleto{
	border-style: solid;
	border-width: 2px;
	border-color: #78001A;
} */
.and{
	font-family: Alex Brush Regular;
	opacity: 0.25;
	color: #78001A;
	letter-spacing: -5px;
}
.nombres{
	font-size: 16vmin;
	line-height: 0.5;
}
.grande {
	position: relative;
	top: 25px;
	font-size: 1.4em;
}
.moverIzq{
	position: relative;
	left: -2px;
}
.titulo1{
	font-family: Italiana;
	color: #4A0012;
}
.titulo2{
	font-family: Italiana;
	color: #78001A;
}
.regalo{
	font-family: Alex Brush Regular;
	color: #4A0012;
}
.lineas{
	color:#4A0012;
	font-family: Italiana;
}
.dondes{
	font-family: Italiana;
	background-color: #78001A;
	color: white;
}
.dondes a:link {
  color: white;
}

.dondes a:visited {
  color: white;
}

.dondes a:focus {
  border-bottom: 1px solid;
}
.gigante {
	font-size: 20vmin;
}
.flotante{
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 998;
}

.tituloreloj{
	font-size: 6.5vmin;
}
.tiempo{
	font-size: 10vmin;
}
.tiempoTitulo{
	font-size: 6vmin;
}
.dresscode{
	font-size: 6vmin;
}
.reservado{
	font-size: 5.5vmin;
}
.final{
	font-size: 10vmin;
}
.dondes{
	font-size: 6vmin !important;
	font-family: Italiana;
	background-color: #78001A;
	color: white;
}
.uno{
	transform: rotate(5deg);
}
.dos{
	transform: rotate(-5deg);
	display: flex;
	justify-content: center;
	align-items: center;
}
.tres{
	transform: rotate(3deg);
	display: flex;
	justify-content: center;
	align-items: center;
}

.form-control{
	font-size: 3.5rem !important;
}
.google-maps iframe {
	width: 100% !important;
}
.casamos{
	text-transform: uppercase;
}
.jumbotron{
	margin-top: -16px;
}
.material-symbols-outlined, .bi{
	font-size: 6vmin !important;
	vertical-align: -.125em;
}
.claseAl{
	display: none;
}
.claseA{
	display: none;
}
.claseFecha{
	display: none;
}

.animated-element {
	opacity: 0;
	transform: translateY(30px);
	transition: opacity 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94), 
	transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	
	/* Fixes específicos para WebKit (Safari) */
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-perspective: 1000px;
	perspective: 1000px;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	will-change: transform, opacity;
	
	/* Usar translate3d para forzar aceleración de hardware */
	-webkit-transform: translate3d(0, 30px, 0);
	transform: translate3d(0, 30px, 0);
}

.animated-element.animate__animated {
	opacity: 1;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

/* Sobrescribir animaciones problemáticas de Animate.css */
.animate__bounceIn,
.animate__zoomIn,
.animate__rotateIn,
.animate__flipInX {
	-webkit-animation-name: safeFadeInUp !important;
	animation-name: safeFadeInUp !important;
	-webkit-animation-duration: 0.8s !important;
	animation-duration: 0.8s !important;
	-webkit-animation-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
	animation-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}

/* Animación personalizada más suave */
@-webkit-keyframes safeFadeInUp {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, 30px, 0);
		transform: translate3d(0, 30px, 0);
	}
	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

@keyframes safeFadeInUp {
	0% {
		opacity: 0;
		-webkit-transform: translate3d(0, 30px, 0);
		transform: translate3d(0, 30px, 0);
	}
	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

/* Fix para evitar parpadeos al final de la animación */
.animate__animated {
	-webkit-animation-fill-mode: forwards !important;
	animation-fill-mode: forwards !important;
}