.elementor-kit-4{--e-global-color-primary:#3D0E42;--e-global-color-secondary:#583EF0;--e-global-color-text:#3D0E42;--e-global-color-accent:#F4662C;--e-global-color-vtcrema:#EDEBE9;--e-global-color-vtrosa:#FF82E1;--e-global-color-vtambar:#EF9800;--e-global-color-vtblanco:#FFFFFF;--e-global-typography-primary-font-family:"Montserrat Alternates";--e-global-typography-primary-font-weight:900;--e-global-typography-secondary-font-family:"Courgette";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Montserrat Alternates";--e-global-typography-text-font-weight:500;--e-global-typography-accent-font-family:"Montserrat Alternates";--e-global-typography-accent-font-weight:600;background-color:#EDEBE9;color:#3D0E42;font-family:"Montserrat Alternates", sans-serif;font-size:17px;font-weight:500;line-height:1.5em;}.elementor-kit-4 e-page-transition{background-color:#FFBC7D;}.elementor-kit-4 h1{color:#3D0E42;font-family:"Montserrat Alternates", sans-serif;font-weight:900;}.elementor-kit-4 h2{color:#3D0E42;font-family:"Montserrat Alternates", sans-serif;font-weight:900;}.elementor-kit-4 h3{color:#3D0E42;font-family:"Montserrat Alternates", sans-serif;font-weight:900;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ==========================================================================
   VID Tours - CSS del sitio
   Lo instala build/01-base.php en Elementor > Ajustes del sitio > CSS personalizado.
   Aca va solo lo que el panel de Elementor no puede hacer: animaciones,
   transiciones, hovers con movimiento y el detalle de los widgets Pro.
   Los elementos se enganchan por el atributo data-vt (pestaña Avanzado > Atributos).
   ========================================================================== */

html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; overflow-x: clip; }
h1, h2, h3 { text-wrap: balance; }
p { text-wrap: pretty; }

/* --- Acentos dentro de un titulo: se escriben en cursiva (<em>) --------- */
[data-vt~="acento-rosa"] em { color: #FF82E1; font-style: italic; }
[data-vt~="acento-naranja"] em { color: #F4662C; font-style: italic; }
[data-vt~="acento-mano"] em { font-family: "Courgette", cursive; font-style: normal; font-weight: 400; color: #EF9800; }

/* --- Botones -------------------------------------------------------------- */
.e-button-base { transition: background-color .2s, color .2s, border-color .2s, transform .2s, box-shadow .2s; }
[data-vt~="levanta"]:hover { transform: translateY(-2px); }
[data-vt~="vidrio"] { -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }

/* --- Tarjetas --------------------------------------------------------------- */
[data-vt~="card"] { transition: transform .3s ease, box-shadow .3s ease; }
[data-vt~="card"]:hover { transform: translateY(-6px) rotate(-.6deg); box-shadow: 0 22px 44px rgba(61, 14, 66, .16); }
[data-vt~="card"]:nth-child(even):hover { transform: translateY(-6px) rotate(.6deg); }
[data-vt~="sube"] { transition: transform .3s; }
[data-vt~="sube"]:hover { transform: translateY(-4px); }
[data-vt~="contacto"] { transition: background-color .2s, color .2s; text-decoration: none; }

/* --- Stickers que flotan ---------------------------------------------------- */
@keyframes vtBob {
	0%, 100% { transform: translateY(0) rotate(-2deg); }
	50% { transform: translateY(-10px) rotate(2deg); }
}
[data-vt~="bob"] { animation: vtBob 5s ease-in-out infinite; pointer-events: none; }
[data-vt~="bob"] img { filter: drop-shadow(0 8px 14px rgba(61, 14, 66, .3)); }
[data-vt~="sin-sombra"] img { filter: none; }
[data-vt~="d45"] { animation-duration: 4.5s; }
[data-vt~="d55"] { animation-duration: 5.5s; }
[data-vt~="d60"] { animation-duration: 6s; }
[data-vt~="d62"] { animation-duration: 6.2s; }
[data-vt~="d65"] { animation-duration: 6.5s; }
[data-vt~="blob"] { will-change: transform; pointer-events: none; }
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	[data-vt~="bob"] { animation: none; }
}

/* --- Header ------------------------------------------------------------------ */
[data-vt~="header"] { -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.admin-bar [data-vt~="header"] { top: 32px; }
@media (max-width: 782px) { .admin-bar [data-vt~="header"] { top: 46px; } }
.vt-nav .elementor-menu-toggle { width: 44px; height: 44px; padding: 0; border-radius: 14px; }
.vt-nav .elementor-nav-menu--dropdown.elementor-nav-menu__container { margin-top: 18px; }
.vt-nav .elementor-nav-menu--dropdown a { border-bottom: 1px solid rgba(61, 14, 66, .1); }
.vt-nav .elementor-nav-menu--dropdown li:last-child a { border-bottom: 0; }
@media (max-width: 1024px) {
	.vt-nav { order: 3; flex: none; width: auto; max-width: none; }
	[data-vt~="header-fila"] > .e-button-base { margin-left: auto !important; }
}

/* --- Hero ---------------------------------------------------------------------- */
.vt-hero { background-color: #1a1a1a; }
.vt-hero > .elementor-background-slideshow::after {
	content: ""; position: absolute; inset: auto 0 0 0; height: 50%; z-index: 2; pointer-events: none;
	background: linear-gradient(0deg, rgba(12, 10, 14, .6) 0%, rgba(12, 10, 14, 0) 100%);
}
.vt-hero-nav { display: flex; flex-direction: column; align-items: flex-end; gap: 12px; }
.vt-hero-titulos { display: none; }
.vt-hero-titulo { font-family: "Courgette", cursive; font-size: 22px; line-height: 1.3; color: #fff; }
.vt-hero-dots { display: flex; gap: 6px; }
.vt-hero-dots button,
.vt-hero-dots button:hover,
.vt-hero-dots button:focus {
	width: 10px; height: 3px; min-width: 0; padding: 0; border: 0; border-radius: 3px; cursor: pointer;
	background: rgba(255, 255, 255, .5); transition: all .4s;
}
.vt-hero-dots button.is-on { width: 28px; background: #fff; }

/* --- Preguntas frecuentes (acordeon) ------------------------------------------ */
.vt-faq .e-n-accordion-item { background: #EDEBE9; border-radius: 22px; overflow: hidden; }
.vt-faq .e-n-accordion-item-title { cursor: pointer; }
.vt-faq.elementor-widget-n-accordion .e-n-accordion-item-title-icon {
	flex: none; width: 32px; min-width: 32px; height: 32px; border-radius: 50%; background: #fff;
	display: flex; align-items: center; justify-content: center; transition: transform .2s;
}
.vt-faq details[open] > summary .e-n-accordion-item-title-icon { transform: rotate(45deg); }

/* --- Formulario de contacto ------------------------------------------------------ */
.vt-form .elementor-field-group > label { font-size: 14px; font-weight: 700; color: #3D0E42; }
.vt-form .elementor-field-group .elementor-field-textual {
	min-height: 52px; padding: 0 16px; border: 2px solid transparent; border-radius: 14px;
	background: #fff; font-size: 16px; color: #3D0E42; outline: none; box-shadow: none;
}
.vt-form .elementor-field-group textarea.elementor-field-textual { padding: 14px 16px; resize: vertical; }
.vt-form .elementor-field-group .elementor-field-textual:focus { border-color: #583EF0; }
.vt-form .e-form__buttons { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr)); gap: 12px; margin-top: 4px; }
.vt-form .e-form__buttons .elementor-button,
.vt-form .vt-btn-wa {
	min-height: 58px; width: 100%; border-radius: 999px; font-family: inherit; font-weight: 700; font-size: 17px;
	cursor: pointer; transition: all .2s;
}
.vt-form .e-form__buttons .elementor-button { border: 2px solid #3D0E42; background: transparent; color: #3D0E42; }
.vt-form .e-form__buttons .elementor-button:hover { background: #3D0E42; color: #fff; }
.vt-form .vt-btn-wa { border: 0; padding: 0 16px; background: #F4662C; color: #3D0E42; box-shadow: 0 10px 24px rgba(244, 102, 44, .3); }
.vt-form .vt-btn-wa:hover, .vt-form .vt-btn-wa:focus { background: #FF7A45; color: #3D0E42; transform: translateY(-2px); }
.vt-form .elementor-message { font-size: 17px; font-weight: 500; margin-top: 12px; }
.vt-form .elementor-message.elementor-message-success { font-family: "Courgette", cursive; font-size: 24px; color: #583EF0; }

/* --- Flotante de WhatsApp (Joinchat): se esconde mientras el formulario está en pantalla --- */
.joinchat { transition: opacity .25s, visibility .25s; }
.vt-en-contacto .joinchat { opacity: 0; visibility: hidden; pointer-events: none; }

/* --- Varios ----------------------------------------------------------------------- */
[data-vt~="corta"] { word-break: break-all; }/* End custom CSS */