@keyframes vdmFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-12px); }
}
@keyframes vdmSpinSlow {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}
@keyframes vdmSoftPulse {
  0%, 100% { transform: scale(1); opacity: .35; }
  50% { transform: scale(1.08); opacity: .55; }
}
@keyframes vdmDriftCloud {
  0% { transform: translateX(0); }
  100% { transform: translateX(40px); }
}
@keyframes vdmBounceArrow {
  0%, 100% { transform: translateY(0); opacity: .5; }
  50% { transform: translateY(10px); opacity: 1; }
}
@keyframes vdmWaveMove {
  0% { transform: translateX(0); }
  100% { transform: translateX(-100px); }
}
@keyframes vdmBob {
  0%, 100% { transform: translateY(0) rotate(0deg); }
  50% { transform: translateY(-6px) rotate(-4deg); }
}
@keyframes vdmPulseScale {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.08); }
}

.vdm-bg-navy {
  background-color: var(--awb-color4) !important;
}

.vdm-hero-visual,
.vdm-cta-section,
.vdm-package-photo {
  position: relative !important;
  overflow: hidden !important;
}

.vdm-cta-inner {
  position: relative;
  overflow: hidden;
  padding: 100px 60px;
}
@media (max-width: 782px) {
  .vdm-cta-inner { padding: 64px 24px; }
}

.vdm-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 16px 30px;
  border-radius: 30px;
  font-weight: 700;
  font-size: 14.5px;
  font-family: 'Quicksand', sans-serif;
  text-decoration: none;
  transition: transform .2s ease, border-color .2s ease, color .2s ease, background .2s ease;
}
.vdm-cta-btn-primary { background: var(--awb-color5); color: #fff; }
.vdm-cta-btn-primary:hover { transform: scale(1.06); color: #fff; }
.vdm-cta-btn-ghost { background: transparent; border: 1.5px solid rgba(255,255,255,.35); color: #fff; }
.vdm-cta-btn-ghost:hover { border-color: #25D366; color: #25D366; }

.vdm-footer { position: relative !important; overflow: hidden !important; }
.vdm-footer-decor {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  flex: none !important;
  pointer-events: none !important;
  z-index: 0;
}
.vdm-footer-col { position: relative; z-index: 1; }

.vdm-footer-plane {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 220px;
  opacity: .5;
  pointer-events: none;
}
.vdm-footer-glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(10px);
  pointer-events: none;
}
.vdm-footer-glow-1 {
  top: -60px;
  left: 60px;
  width: 220px;
  height: 220px;
  background: radial-gradient(circle, hsla(var(--awb-color5-h),var(--awb-color5-s),var(--awb-color5-l),.18), transparent 70%);
}
.vdm-footer-glow-2 {
  bottom: -80px;
  right: 120px;
  width: 260px;
  height: 260px;
  background: radial-gradient(circle, rgba(93,169,196,.14), transparent 70%);
}

.vdm-footer-link { color: rgba(255,255,255,.8); text-decoration: none; transition: color .2s ease; }
.vdm-footer-link:hover { color: var(--awb-color5); }

.vdm-footer-badges { display: flex; gap: 14px; flex-wrap: wrap; margin: 40px 0 30px; }
.vdm-footer-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 20px;
  font-size: 12px;
  color: rgba(255,255,255,.85);
}

.vdm-footer-legal {
  border-top: 1px solid rgba(255,255,255,.1);
  padding-top: 20px;
  font-size: 11.5px;
  color: rgba(255,255,255,.4);
  letter-spacing: .02em;
}

.vdm-header { box-shadow: 0 2px 12px rgba(2,33,80,.06); }

/* Base: borde inferior transparente para que el hover no desplace el layout */
.vdm-header .fusion-menu > li > a {
  border-bottom: 2px solid transparent !important;
  transition: border-color .2s ease, background-color .2s ease, color .2s ease;
}

/* Hover y pagina activa: subrayado coral en los items normales (no en las pildoras) */
.vdm-header .fusion-menu > li:not(.vdm-nav-pill):not(.vdm-nav-pill-coral) > a:hover,
.vdm-header .fusion-menu > li.current-menu-item:not(.vdm-nav-pill):not(.vdm-nav-pill-coral) > a,
.vdm-header .fusion-menu > li.current-menu-ancestor:not(.vdm-nav-pill):not(.vdm-nav-pill-coral) > a {
  border-bottom-color: var(--awb-color5) !important;
}

/* Pildora navy "Viaje de novios": solo en la home */
.home .vdm-header .fusion-menu li.vdm-nav-pill > a {
  background: var(--awb-color4);
  color: #fff !important;
  border-radius: 30px;
  padding: 10px 20px !important;
  border-bottom-color: transparent !important;
}
.home .vdm-header .fusion-menu li.vdm-nav-pill > a:hover {
  background: hsla(var(--awb-color4-h),var(--awb-color4-s),calc(var(--awb-color4-l) + 8%),1);
  color: #fff !important;
}

/* Pildora coral "Contacto": en todas las paginas */
.vdm-header .fusion-menu li.vdm-nav-pill-coral > a {
  background: var(--awb-color5);
  color: #fff !important;
  border-radius: 30px;
  padding: 11px 24px !important;
  border-bottom-color: transparent !important;
}
.vdm-header .fusion-menu li.vdm-nav-pill-coral > a:hover {
  background: hsla(var(--awb-color5-h),var(--awb-color5-s),calc(var(--awb-color5-l) - 8%),1);
  color: #fff !important;
}

/* ===== Pagina Contacto ===== */
@keyframes vdmBubblePop {
  0% { opacity: 0; transform: translateY(14px) scale(.9); }
  60% { opacity: 1; transform: translateY(0) scale(1.03); }
  100% { opacity: 1; transform: translateY(0) scale(1); }
}
.vdm-bubble { animation: vdmBubblePop .6s ease both; }
.vdm-bubble:nth-child(1) { animation-delay: .2s; }
.vdm-bubble:nth-child(2) { animation-delay: .6s; }
.vdm-bubble:nth-child(3) { animation-delay: 1s; }
.vdm-bubble:nth-child(4) { animation-delay: 1.4s; }

.vdm-pulse-scale { animation: vdmPulseScale 8s ease-in-out infinite; }

.vdm-contact-card { transition: transform .2s ease; }
.vdm-contact-card:hover { transform: translateX(4px); }
.vdm-contact-btn { transition: transform .2s ease; }
.vdm-contact-btn:hover { transform: scale(1.05); }
.vdm-contact-btn-ghost { transition: border-color .2s ease; }
.vdm-contact-btn-ghost:hover { border-color: #fff !important; }

.vdm-form input:not([type=submit]):not([type=button]):not([type=checkbox]):not([type=radio]),
.vdm-form textarea,
.vdm-form select {
  width: 100%;
  padding: 14px 16px;
  border: 1.5px solid #e3e6ec;
  border-radius: 12px;
  font-size: 14px;
  font-family: inherit;
  background: #fff;
  color: var(--awb-color4);
  transition: border-color .2s ease, box-shadow .2s ease;
}
.vdm-form textarea { resize: vertical; min-height: 120px; }
.vdm-form input:focus,
.vdm-form textarea:focus,
.vdm-form select:focus {
  outline: none;
  border-color: var(--awb-color5);
  box-shadow: 0 0 0 3px hsla(var(--awb-color5-h),var(--awb-color5-s),var(--awb-color5-l),.12);
}
.vdm-form input[type=submit],
.vdm-form button[type=submit] {
  width: 100%;
  background: var(--awb-color5);
  color: #fff;
  border: none;
  padding: 16px;
  border-radius: 30px;
  font-weight: 800;
  font-size: 15px;
  cursor: pointer;
  font-family: inherit;
  transition: transform .2s ease;
}
.vdm-form input[type=submit]:hover,
.vdm-form button[type=submit]:hover { transform: scale(1.02); }

/* ===== Pagina Destino (Africa) ===== */
@keyframes vdmBirdFly {
  0% { transform: translateX(-30px) translateY(0); }
  50% { transform: translateX(140px) translateY(-14px); }
  100% { transform: translateX(310px) translateY(0); }
}
@keyframes vdmGrassSway {
  0%, 100% { transform: rotate(0deg); }
  50% { transform: rotate(3deg); }
}
.vdm-dest-hero { position: relative !important; overflow: hidden !important; }
.vdm-dest-decor {
  position: absolute !important; inset: 0 !important;
  width: 100% !important; height: 100% !important;
  flex: none !important; pointer-events: none !important; z-index: 0;
}
.vdm-dest-content { position: relative; z-index: 1; }
.vdm-dest-photo { position: relative !important; }
.vdm-af-sun { animation: vdmPulseScale 7s ease-in-out infinite; }
.vdm-af-bird-1 { animation: vdmBirdFly 12s linear infinite; }
.vdm-af-bird-2 { animation: vdmBirdFly 15s linear infinite 3s; }
.vdm-af-grass { animation: vdmGrassSway 5s ease-in-out infinite; transform-origin: bottom center; }
.vdm-dest-badge {
  position: absolute; bottom: 22px; left: 22px;
  background: #fff; color: var(--awb-color4);
  padding: 10px 18px; border-radius: 30px;
  font-weight: 800; font-size: 13px;
  box-shadow: 0 12px 24px rgba(0,0,0,.2); z-index: 2;
}

@keyframes vdmDashFlow { to { stroke-dashoffset: -200; } }
.vdm-am-road { animation: vdmDashFlow 3s linear infinite; }

@keyframes vdmLanternGlow { 0%, 100% { opacity: .7; } 50% { opacity: 1; } }
@keyframes vdmPetalFall {
  0% { transform: translateY(-10px) translateX(0) rotate(0deg); opacity: 0; }
  10% { opacity: .9; }
  100% { transform: translateY(420px) translateX(30px) rotate(200deg); opacity: 0; }
}
.vdm-as-lantern { animation: vdmLanternGlow 3.5s ease-in-out infinite; }
.vdm-as-lantern-2 { animation: vdmLanternGlow 4s ease-in-out infinite .6s; }
.vdm-as-petal-1 { animation: vdmPetalFall 8s linear infinite; }
.vdm-as-petal-2 { animation: vdmPetalFall 10s linear infinite 2s; }
.vdm-as-petal-3 { animation: vdmPetalFall 9s linear infinite 4s; }

@keyframes vdmTwinkle { 0%, 100% { opacity: .3; } 50% { opacity: 1; } }
.vdm-eu-stars { animation: vdmTwinkle 3s ease-in-out infinite; }

@keyframes vdmPalmSway { 0%, 100% { transform: rotate(0deg); } 50% { transform: rotate(4deg); } }
.vdm-oc-palm { animation: vdmPalmSway 5s ease-in-out infinite; transform-origin: bottom center; }
.vdm-oc-wave { animation: vdmWaveMove 8s linear infinite; }

@keyframes vdmCompassWobble { 0%, 100% { transform: rotate(-6deg); } 50% { transform: rotate(6deg); } }
.vdm-compass-ticks { transform-origin: 45px 45px; animation: vdmSpinSlow 30s linear infinite; }
.vdm-compass-needle { transform-origin: 45px 45px; animation: vdmCompassWobble 5s ease-in-out infinite; }
.vdm-dest-card > .fusion-column-wrapper {
  transition: transform .28s ease, box-shadow .28s ease;
  will-change: transform;
  height: 100%;
}
.vdm-dest-card:hover > .fusion-column-wrapper {
  transform: translateY(-6px);
  box-shadow: 0 24px 50px rgba(2,33,80,.16);
}

@keyframes vdmHeartBeat { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.15); } }
.vdm-heart-beat { display: inline-block; animation: vdmHeartBeat 2.2s ease-in-out infinite; }

/* ===== Ideas de Viaje: sidebar de filtros a la izquierda (desktop) ===== */
@media (min-width: 1025px) {
  .vdm-ideas-grid .fusion-builder-row { flex-direction: row-reverse; }
}

/* ===== Ideas de Viaje: badge de duración sobre la foto ===== */
.vdm-trip-card > .fusion-column-wrapper { position: relative; }
.vdm-trip-badge {
  position: absolute !important; top: 16px; left: 16px; z-index: 3; margin: 0 !important;
  background: var(--awb-color5); border-radius: 20px; padding: 6px 13px;
  box-shadow: 0 6px 16px rgba(247,53,88,.35); line-height: 1.2;
}
.vdm-trip-badge, .vdm-trip-badge p, .vdm-trip-badge a {
  margin: 0 !important; color: #fff !important; text-decoration: none !important;
  font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: 12.5px;
}
.vdm-trip-badge:empty,
.vdm-trip-badge:has(p:empty) { display: none; }

/* ===== Ideas de Viaje: chips del postcard ===== */
.vdm-trip-chips p { margin: 0; }
.vdm-trip-chips a {
  display: inline-block;
  background: var(--awb-color2);
  color: hsla(var(--awb-color4-h),var(--awb-color4-s),var(--awb-color4-l),0.72);
  font-size: 11.5px; font-weight: 700; line-height: 1.2;
  padding: 5px 11px; border-radius: 16px; margin: 0 5px 6px 0;
  text-decoration: none; text-transform: none;
}
.vdm-trip-chips a:hover {
  background: hsla(var(--awb-color5-h),var(--awb-color5-s),var(--awb-color5-l),0.12);
  color: var(--awb-color5);
}

/* ===== Ideas de Viaje: skin de los filtros YITH (solo existen en esta página) ===== */
.yith-wcan-filters { color: #fff; }
.yith-wcan-filters .filters-container form { margin: 0; }
.yith-wcan-filters .yith-wcan-filter {
  border: 0 !important; margin: 0 !important; padding: 0 !important; background: none !important;
}
.yith-wcan-filters .filter-title {
  font-family: 'Quicksand', sans-serif !important; font-weight: 700 !important;
  font-size: 12px !important; letter-spacing: 1px !important; text-transform: uppercase !important;
  color: rgba(255,255,255,.5) !important; margin: 26px 0 15px !important; padding: 0 !important;
  border: 0 !important; background: none !important;
}
.yith-wcan-filters .filter-title::after,
.yith-wcan-filters .filter-title::before { color: rgba(255,255,255,.4) !important; }
.yith-wcan-filters .filter-content ul.filter-items {
  list-style: none !important; margin: 0 !important; padding: 0 !important;
}
.yith-wcan-filters .filter-item {
  margin: 0 0 13px 0 !important; padding: 0 !important; border: 0 !important; list-style: none !important; background: none !important;
}
.yith-wcan-filters .filter-item label {
  display: flex !important; align-items: center !important; gap: 12px !important;
  margin: 0 !important; padding: 0 !important; cursor: pointer; font-weight: 400; background: none !important;
}
.yith-wcan-filters .filter-item input[type="checkbox"] {
  width: 20px; height: 20px; min-width: 20px; flex: none; margin: 0; accent-color: var(--awb-color5); cursor: pointer; opacity: 1; position: static;
}
.yith-wcan-filters a.term-label {
  display: flex !important; align-items: center; justify-content: space-between; gap: 10px;
  flex: 1; color: rgba(255,255,255,.9) !important; font-size: 14px !important; font-weight: 400 !important;
  text-decoration: none !important; padding: 0 !important; background: none !important; border: 0 !important;
}
.yith-wcan-filters a.term-label:hover { color: #fff !important; }
.yith-wcan-filters .item-count {
  color: rgba(255,255,255,.42) !important; font-size: 12.5px !important; font-weight: 700 !important; margin: 0 !important;
}

@keyframes vdmRouteDash { to { stroke-dashoffset: -320; } }
@keyframes vdmPinPop { 0% { transform: translateY(-8px) scale(.7); opacity: 0; } 60% { transform: translateY(2px) scale(1.08); } 100% { transform: translateY(0) scale(1); opacity: 1; } }
@keyframes vdmStampFloat { 0%, 100% { transform: translateY(0) rotate(-8deg); } 50% { transform: translateY(-9px) rotate(-8deg); } }

@keyframes vdmKenBurns { from { transform: scale(1.08) translate(0,0); } to { transform: scale(1.16) translate(-1%,-1%); } }
.vdm-kenburns { position: absolute; inset: 0; background-size: cover; background-position: center; animation: vdmKenBurns 22s ease-in-out infinite alternate; }
@keyframes vdmDriftGlow { 0%, 100% { transform: translate(0,0); } 50% { transform: translate(20px,-16px); } }
.vdm-drift-glow { animation: vdmDriftGlow 9s ease-in-out infinite; }

@keyframes vdmDashSlide { to { background-position-x: 200px; } }
.vdm-ways-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px; position: relative; max-width: 1100px; margin: 0 auto; }
.vdm-ways-line {
  position: absolute; top: 34px; left: 12%; right: 12%; height: 2px;
  background: repeating-linear-gradient(90deg, var(--awb-color5) 0 6px, transparent 6px 16px);
  opacity: .6; animation: vdmDashSlide 4s linear infinite;
}
.vdm-ways-step { text-align: center; position: relative; }
.vdm-ways-circle {
  position: relative; z-index: 1; width: 68px; height: 68px; border-radius: 50%;
  background: var(--awb-color4); display: inline-flex; align-items: center; justify-content: center; margin-bottom: 20px;
}
@media (max-width: 900px) { .vdm-ways-grid { grid-template-columns: repeat(2, 1fr); row-gap: 44px; } .vdm-ways-line { display: none; } }
@media (max-width: 600px) { .vdm-ways-grid { grid-template-columns: 1fr; } }
.vdm-dash-line { animation: vdmDashFlow 4s linear infinite; }
.vdm-nos-photo { animation: vdmFloat 7s ease-in-out infinite; }
.vdm-nos-ring { transform-origin: center; animation: vdmSpinSlow 40s linear infinite; }

.vdm-hero-decor {
  position: absolute !important;
  pointer-events: none;
}
.vdm-hero-photo {
  position: relative !important;
  z-index: 1;
}

.vdm-float { animation: vdmFloat 7s ease-in-out infinite; }
.vdm-float-icon { display: inline-block; animation: vdmFloat 4s ease-in-out infinite; }
.vdm-bob { display: inline-block; animation: vdmBob 3.6s ease-in-out infinite; }
.vdm-spin-slow { animation: vdmSpinSlow 30s linear infinite; }
.vdm-soft-pulse { animation: vdmSoftPulse 6s ease-in-out infinite; }
.vdm-drift-cloud { animation: vdmDriftCloud 8s ease-in-out infinite alternate; }
.vdm-drift-cloud-slow { animation: vdmDriftCloud 10s ease-in-out infinite alternate; }
.vdm-wave-move { animation: vdmWaveMove 6s linear infinite; }
.vdm-bounce-arrow {
  display: inline-block;
  font-size: 20px;
  animation: vdmBounceArrow 1.8s ease-in-out infinite;
}

.vdm-cta-blur-circle {
  position: absolute !important;
  border-radius: 50%;
  filter: blur(6px);
  pointer-events: none;
  animation: vdmPulseScale 7s ease-in-out infinite;
}

/* =========================================================
   PRODUCTO (itinerario) — Layout: Title Bar hero + Content
   ========================================================= */
@keyframes vdmProdCardBob { 0%,100% { transform: var(--rot) translateY(0); } 50% { transform: var(--rot) translateY(-10px); } }

/* ---- HERO (Title Bar) ---- */
.vdm-prod-hero { position: relative; overflow: hidden; }
.vdm-prod-hero::before,
.vdm-prod-hero::after {
  content: ""; position: absolute; border-radius: 50%; pointer-events: none; z-index: 0;
}
.vdm-prod-hero::before {
  width: 420px; height: 420px; top: -160px; left: -80px;
  background: radial-gradient(circle, hsla(var(--awb-color5-h),var(--awb-color5-s),var(--awb-color5-l),0.22), transparent 70%);
}
.vdm-prod-hero::after {
  width: 320px; height: 320px; bottom: -150px; right: 60px;
  background: radial-gradient(circle, rgba(93,169,196,.20), transparent 70%);
}
.vdm-prod-hero .fusion-row,
.vdm-prod-hero .fusion-builder-row { position: relative; z-index: 1; }
.vdm-prod-eyebrow p { margin: 0; }
.vdm-prod-eyebrow {
  display: inline-block; background: hsla(var(--awb-color5-h),var(--awb-color5-s),var(--awb-color5-l),0.18);
  color: #F5627C; font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: 12.5px;
  padding: 8px 16px; border-radius: 30px;
}
.vdm-prod-meta p { margin: 0; }
.vdm-prod-meta {
  color: rgba(255,255,255,.82); font-size: 14.5px; font-weight: 600; line-height: 1.7;
}
.vdm-prod-meta strong { color: #fff; font-weight: 700; }

/* Hero stat block */
.vdm-prod-stats { display: flex; align-items: center; gap: 26px; flex-wrap: wrap; }
.vdm-prod-stats .vdm-stat { display: flex; flex-direction: column; }
.vdm-prod-stats .vdm-stat-n {
  font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: 28px; color: #fff; line-height: 1;
}
.vdm-prod-stats .vdm-stat-n .amount,
.vdm-prod-stats .vdm-stat-n bdi { font-family: 'Quicksand', sans-serif; font-weight: 700; color: inherit; }
.vdm-prod-stats .vdm-stat-coral, .vdm-prod-stats .vdm-stat-coral .amount { color: #F5627C !important; }
.vdm-prod-stats .vdm-stat-l {
  font-size: 12px; color: rgba(255,255,255,.6); font-weight: 700;
  text-transform: uppercase; letter-spacing: .6px; margin-top: 4px;
}
.vdm-prod-stats .vdm-stat-div { width: 1px; align-self: stretch; background: rgba(255,255,255,.18); }

/* Hero photo fan (right column) */
.vdm-prod-fan { position: relative; min-height: 430px; }
.vdm-prod-fan-photo { position: relative; z-index: 2; width: 100%; }
.vdm-prod-fan-photo .imageframe-align,
.vdm-prod-fan-photo .fusion-imageframe { position: relative; z-index: 2; width: 100% !important; max-width: 100% !important; }
.vdm-prod-fan-photo img {
  width: 100% !important; border-radius: 20px !important;
  box-shadow: 0 30px 60px rgba(0,0,0,.5);
  transform: rotate(-2deg);
}
.vdm-prod-fan-decor { position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: 0; pointer-events: none; }
.vdm-prod-fan-decor .pc {
  position: absolute; top: 0; left: 0; width: 100%; height: 100%;
  border-radius: 20px; box-shadow: 0 22px 48px rgba(0,0,0,.35);
}
.vdm-prod-fan-decor .pc-a {
  --rot: rotate(-5deg);
  background: linear-gradient(150deg,#0e5c8a,#0d3a66); animation: vdmProdCardBob 7s ease-in-out infinite;
}
.vdm-prod-stamp {
  position: absolute; top: 16px; right: 16px; z-index: 5;
  width: 88px; height: 88px; border-radius: 50%;
  border: 2.5px dashed rgba(247,53,88,.9); background: rgba(2,33,80,.72);
  display: flex; align-items: center; justify-content: center; text-align: center;
  color: #fff; font-family: 'Quicksand', sans-serif; font-weight: 700;
  font-size: 15px; line-height: 1.15; padding: 8px;
  animation: vdmStampFloat 5s ease-in-out infinite;
}
.vdm-prod-stamp, .vdm-prod-stamp p { margin: 0; color: #fff !important; }
.vdm-prod-pin {
  position: absolute; bottom: 4px; left: 40px; z-index: 6;
  background: var(--awb-color5); color: #fff; font-family: 'Quicksand', sans-serif;
  font-weight: 700; font-size: 12.5px; padding: 8px 15px; border-radius: 30px;
  box-shadow: 0 14px 28px rgba(0,0,0,.3); animation: vdmFloat 5s ease-in-out infinite;
}
.vdm-prod-pin p { margin: 0; color: #fff !important; }

/* ---- COMPRA (gallery + summary) ---- */
.vdm-prod-main-img { position: relative; }
.vdm-prod-main-img img {
  border-radius: 24px !important; box-shadow: 0 24px 55px rgba(2,33,80,.16);
}
.fusion-text.vdm-prod-img-badge {
  position: absolute !important; top: 16px; left: 16px; z-index: 3; margin: 0 !important;
  display: inline-flex !important; align-items: center;
  background: var(--awb-color5); color: #fff !important;
  padding: 6px 14px !important; border-radius: 16px; box-shadow: 0 8px 20px rgba(0,0,0,.2);
}
.fusion-text.vdm-prod-img-badge p {
  margin: 0 !important; padding: 0 !important; line-height: 1.15 !important;
  font-family: 'Quicksand', sans-serif !important; font-weight: 700 !important;
  font-size: 12.5px !important; color: #fff !important;
}
.vdm-prod-thumbs .fusion-gallery { margin: 0 !important; }
.vdm-prod-thumbs .fusion-gallery-column { padding: 6px !important; }
.vdm-prod-thumbs .fusion-image-wrapper,
.vdm-prod-thumbs img { border-radius: 14px !important; }

.vdm-prod-summary {
  background: #fff; border-radius: 24px; border: 1px solid rgba(2,33,80,.07);
  box-shadow: 0 24px 55px rgba(2,33,80,.14); padding: 34px 32px;
}
.vdm-prod-summary-eyebrow p { margin: 0; }
.vdm-prod-summary-eyebrow {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: 12.5px; font-weight: 800; color: var(--awb-color5);
}
.vdm-prod-summary-eyebrow::before {
  content: ""; width: 8px; height: 8px; border-radius: 50%; background: #25D366; flex: none;
}
.vdm-prod-summary .fusion-title { margin-bottom: 14px !important; }
.vdm-prod-note em { color: rgba(2,33,80,.55); }
.vdm-prod-summary .fusion-woo-additional-info-tb { margin-bottom: 22px; }
.vdm-prod-summary .fusion-woo-additional-info-tb table { border: 0; }
.vdm-prod-summary .fusion-woo-additional-info-tb th,
.vdm-prod-summary .fusion-woo-additional-info-tb td {
  border: 0; border-bottom: 1px solid rgba(2,33,80,.08); padding: 13px 0; font-size: 13.5px;
}
.vdm-prod-summary .fusion-woo-additional-info-tb th { font-weight: 800; color: var(--awb-color4); width: 40%; }
.vdm-prod-summary .fusion-woo-additional-info-tb td { color: rgba(2,33,80,.72); }
.vdm-prod-wa a, .vdm-prod-wa .fusion-button {
  border-color: rgba(37,211,102,.45) !important; color: #0f8a43 !important;
}
.vdm-prod-wa a:hover, .vdm-prod-wa .fusion-button:hover {
  background: rgba(37,211,102,.08) !important; border-color: #25D366 !important;
}
.vdm-prod-trust p { margin: 0; }
.vdm-prod-trust {
  text-align: center; font-size: 11.5px; font-weight: 700; color: rgba(2,33,80,.5);
}

/* ---- ITINERARIO (timeline desde el campo Descripción) ---- */
.vdm-prod-itin-head .fusion-title { margin: 0 !important; }
.vdm-prod-itin-eyebrow p { margin: 0; }
.vdm-prod-itin-eyebrow {
  display: inline-block; background: var(--awb-color2); color: var(--awb-color5);
  font-weight: 800; font-size: 12.5px; padding: 8px 16px; border-radius: 30px;
}
.vdm-prod-timeline { counter-reset: vdmday; }
.vdm-prod-timeline h3 { display: none; }
.vdm-prod-timeline h5 {
  counter-increment: vdmday; position: relative; padding-left: 62px;
  min-height: 46px; display: flex; align-items: center;
  font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: 16.5px;
  color: var(--awb-color4); margin: 26px 0 6px;
}
.vdm-prod-timeline h5::before {
  content: counter(vdmday); position: absolute; left: 0; top: 50%; transform: translateY(-50%);
  width: 46px; height: 46px; border-radius: 50%; background: var(--awb-color4); color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: 16px;
  box-shadow: 0 8px 20px rgba(2,33,80,.22);
}
.vdm-prod-timeline h5::after {
  content: ""; position: absolute; left: 22px; top: 46px; bottom: -32px; width: 2px;
  background: linear-gradient(var(--awb-color5), hsla(var(--awb-color5-h),var(--awb-color5-s),var(--awb-color5-l),0.2));
  z-index: -1;
}
.vdm-prod-timeline h5:last-of-type::after { display: none; }
.vdm-prod-timeline h5:last-of-type::before {
  background: var(--awb-color5); box-shadow: 0 8px 20px hsla(var(--awb-color5-h),var(--awb-color5-s),var(--awb-color5-l),0.32);
}
.vdm-prod-timeline p {
  padding-left: 62px; font-size: 14.5px; line-height: 1.7;
  color: rgba(2,33,80,.68); margin: 0 0 10px;
}
.vdm-prod-timeline p:first-child {
  padding-left: 0; font-size: 16px; line-height: 1.75; color: rgba(2,33,80,.75); margin-bottom: 8px;
}
.vdm-prod-timeline p:last-child {
  padding-left: 24px; margin-top: 30px; background: var(--awb-color2);
  border-radius: 20px; padding: 22px 26px; font-size: 15px; color: rgba(2,33,80,.78);
}

/* ---- INCLUYE / NO INCLUYE ---- */
.vdm-prod-incl-card {
  background: #fff; border: 1px solid rgba(2,33,80,.1); border-radius: 24px; padding: 34px;
}
.vdm-prod-incl-card .fusion-title { margin-bottom: 20px !important; }
.vdm-prod-incl > .fusion-builder-row { gap: 28px; align-items: stretch; }
@media (min-width: 641px) {
  .vdm-prod-incl > .fusion-builder-row > .fusion-layout-column {
    flex: 1 1 0 !important; width: auto !important; margin: 0 !important;
  }
}

/* ---- BANDA CTA ---- */
.vdm-prod-cta { position: relative; overflow: hidden !important; }
.vdm-prod-cta-blob {
  position: absolute; width: 340px; height: 340px; border-radius: 50%;
  background: var(--awb-color5); opacity: .13; top: -150px; right: -110px; z-index: 0;
  animation: vdmSoftPulse 7s ease-in-out infinite;
}
.vdm-prod-cta-svg { position: absolute; top: 34%; left: 0; width: 100%; height: 120px; opacity: .45; z-index: 0; pointer-events: none; }
.vdm-prod-cta .fusion-builder-row { position: relative; z-index: 1; }

/* ---- RELACIONADOS ---- */
.vdm-prod-rel-eyebrow p { margin: 0; }
.vdm-prod-rel-eyebrow {
  display: inline-block; background: var(--awb-color2); color: var(--awb-color5);
  font-weight: 800; font-size: 12.5px; padding: 8px 16px; border-radius: 30px;
}

@media (max-width: 640px) {
  .vdm-prod-fan { min-height: 340px; }
  .vdm-prod-timeline h5 { padding-left: 56px; }
  .vdm-prod-timeline p { padding-left: 56px; }
}

/* ---- Producto: contextos de posicionado / anchura ---- */
.vdm-prod-buy-left > .fusion-column-wrapper { position: relative; }
.vdm-prod-itin > .fusion-builder-row,
.vdm-prod-itin .fusion-row { max-width: 900px; margin-left: auto; margin-right: auto; }

/* =========================================================
   BLOG (portada / archivo)
   ========================================================= */
@keyframes vdmBlogFan1 { 0%,100% { transform: rotate(-14deg) translateY(0); } 50% { transform: rotate(-14deg) translateY(-10px); } }
@keyframes vdmBlogFan2 { 0%,100% { transform: translateX(-50%) rotate(-4deg) translateY(0); } 50% { transform: translateX(-50%) rotate(-4deg) translateY(-14px); } }
@keyframes vdmBlogFan3 { 0%,100% { transform: rotate(7deg) translateY(0); } 50% { transform: rotate(7deg) translateY(-8px); } }
@keyframes vdmMarquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }

/* ---- HERO ---- */
.vdm-blog-hero { position: relative; overflow: hidden; }
.vdm-blog-eyebrow p { margin: 0; }
.vdm-blog-eyebrow {
  display: inline-block; background: hsla(var(--awb-color5-h),var(--awb-color5-s),var(--awb-color5-l),0.16);
  color: #F5627C; font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: 12.5px;
  padding: 8px 16px; border-radius: 30px;
}
.vdm-blog-hero h1, .vdm-blog-hero .fusion-title h1 { text-transform: none !important; }
.vdm-blog-fan { position: relative !important; min-height: 480px; }
/* Ruta punteada: dibujada 100% desde CSS (el Builder borra los SVG del contenido).
   El data-URI lleva su propia animacion SMIL de los guiones. */
.vdm-blog-fan::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; bottom: 0;
  z-index: 0; pointer-events: none; opacity: .6;
  background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 500 480' preserveAspectRatio='none'%3E%3Cpath d='M 40 400 C 160 340, 200 200, 340 220 S 470 90, 470 60' fill='none' stroke='%23F5627C' stroke-width='2' stroke-dasharray='2 12' stroke-linecap='round'%3E%3Canimate attributeName='stroke-dashoffset' from='0' to='-224' dur='8s' repeatCount='indefinite'/%3E%3C/path%3E%3C/svg%3E") center / 100% 100% no-repeat;
}
/* (legado, por si quedara el elemento de texto de la ruta: inofensivo) */
.fusion-text.vdm-blog-fan-route { position: absolute !important; inset: 0; margin: 0 !important; z-index: 0; pointer-events: none; }
/* Sello giratorio: autocontenido, no depende de <span> interno */
.vdm-blog-stamp {
  position: absolute; top: 8px; right: 6%; z-index: 5; width: 96px; height: 96px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center; text-align: center; padding: 22px;
  animation: vdmSpinSlow 24s linear infinite;
}
.vdm-blog-stamp::before {
  content: ""; position: absolute; inset: 0; border-radius: 50%;
  border: 2px dashed rgba(255,255,255,.4);
}
.vdm-blog-stamp::after {
  content: ""; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%);
  width: 62px; height: 62px; border-radius: 50%; background: var(--awb-color5); z-index: -1;
}
.vdm-blog-stamp, .vdm-blog-stamp span, .vdm-blog-stamp p {
  margin: 0; color: #fff !important;
  font-family: 'Quicksand', sans-serif !important; font-weight: 800 !important;
  font-size: 10px !important; line-height: 1.2 !important; letter-spacing: .5px;
}
.vdm-blog-card {
  position: absolute !important; top: 60px; width: 200px !important; height: 262px; border-radius: 18px; overflow: hidden;
  box-shadow: 0 26px 50px rgba(0,0,0,.34); margin: 0 !important;
}
.vdm-blog-card .imageframe-align,
.vdm-blog-card .fusion-imageframe { width: 100% !important; height: 100% !important; margin: 0 !important; display: block; }
.vdm-blog-card img {
  width: 100% !important; height: 100% !important; object-fit: cover; border-radius: 18px !important; display: block;
}
.vdm-blog-card.c1 { left: 4% !important; top: 60px !important; z-index: 1; background: linear-gradient(160deg,#eaf1f4,#bcd3dc); animation: vdmBlogFan1 7s ease-in-out infinite; }
.vdm-blog-card.c2 { left: 50% !important; top: 34px !important; z-index: 2; background: linear-gradient(160deg,#fbe4e8,#f3b9c7); animation: vdmBlogFan2 7.5s ease-in-out infinite .3s; }
.vdm-blog-card.c3 { right: 4% !important; left: auto !important; top: 84px !important; z-index: 1; background: linear-gradient(160deg,#e7ece2,#bcd0b2); animation: vdmBlogFan3 8s ease-in-out infinite .15s; }

/* ---- CINTA MARQUEE ---- */
.vdm-blog-marquee { background: #011633; overflow: hidden; }
.vdm-blog-marquee .fusion-text { overflow: hidden; }
.vdm-blog-marquee-track {
  display: flex; gap: 44px; width: max-content; white-space: nowrap;
  color: rgba(255,255,255,.55); font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: 14px;
  animation: vdmMarquee 26s linear infinite;
}
.vdm-blog-marquee-track .s { color: #F5627C; }

/* ---- DESTACADO ---- */
.vdm-blog-feat > .fusion-builder-row {
  border-radius: 28px; overflow: hidden; box-shadow: 0 30px 70px rgba(2,33,80,.14); align-items: stretch;
}
.vdm-blog-feat-img {
  position: relative; min-height: 380px;
  background: linear-gradient(150deg,#0e5c8a,#0d3a66);
  background-size: cover; background-position: center;
}
.vdm-blog-feat-badge, .fusion-text.vdm-blog-feat-badge {
  position: absolute !important; top: 24px; left: 24px; z-index: 2; margin: 0 !important;
  display: inline-flex !important; align-items: center; background: var(--awb-color5);
  padding: 8px 18px !important; border-radius: 30px;
}
.vdm-blog-feat-badge, .vdm-blog-feat-badge p {
  margin: 0 !important; padding-top: 0; padding-bottom: 0; color: #fff !important;
  font-family: 'Quicksand', sans-serif !important; font-weight: 800 !important;
  font-size: 12px !important; line-height: 1.2 !important;
}
.vdm-blog-feat-cat p { margin: 0; }
.vdm-blog-feat-cat, .vdm-blog-feat-cat p { font-size: 12px; font-weight: 700; color: rgba(255,255,255,.55) !important; }
.vdm-blog-feat-cat b { color: #F5627C; }
.vdm-blog-feat-link, .vdm-blog-feat-link p, .vdm-blog-feat-link a {
  margin: 0; color: #F5627C !important; font-weight: 800; font-size: 14px;
}

/* Destacado (Post Card): columnas internas pegadas, sin pasillo.
   Avada sangra la fila interna un 2% por lado (104% + margenes negativos)
   y el overflow:hidden de la tarjeta la recorta a ras: dejamos esa
   geometria intacta y quitamos SOLO el padding de spacing entre columnas. */
.vdm-blog-feat-card .fusion-builder-row-inner { gap: 0 !important; }
.vdm-blog-feat-card .fusion-builder-row-inner > .fusion-layout-column {
  margin-top: 0 !important; margin-bottom: 0 !important;
  padding-left: 0 !important; padding-right: 0 !important;
  border-radius: 0 !important;
}
/* Fondo navy de la tarjeta destacada: cualquier resto de hueco queda invisible */
.vdm-blog-feat-card .fusion-column-inner-bg,
.vdm-blog-feat-card > .fusion-column-wrapper { background-color: var(--awb-color4) !important; }

/* ---- GRID + FILTROS ---- */
.vdm-blog-grid .fusion-post-cards-filters,
.vdm-blog-grid .fusion-filters {
  border: 0 !important; margin: 0 0 36px !important; display: flex; flex-wrap: wrap; gap: 10px; justify-content: center;
}
.vdm-blog-grid .fusion-filters li { border: 0 !important; margin: 0 !important; }
.vdm-blog-grid .fusion-filters li a {
  border: 0 !important; background: #F0F1F4; color: var(--awb-color4) !important;
  font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: 13.5px;
  padding: 10px 20px !important; border-radius: 30px !important; line-height: 1 !important;
}
.vdm-blog-grid .fusion-filters li a:hover { transform: translateY(-2px); }
.vdm-blog-grid .fusion-filters li.fusion-active-filter a,
.vdm-blog-grid .fusion-filters li a.active { background: var(--awb-color5); color: #fff !important; }

/* ---- CTA NEWSLETTER ---- */
.vdm-blog-cta { position: relative; overflow: hidden !important; }
.vdm-blog-cta-blob { position: absolute; border-radius: 50%; z-index: 0; pointer-events: none; }
.vdm-blog-cta-blob.b1 { width: 480px; height: 480px; background: var(--awb-color5); opacity: .14; top: -180px; left: -120px; animation: vdmSoftPulse 7s ease-in-out infinite; }
.vdm-blog-cta-blob.b2 { width: 360px; height: 360px; background: #36748B; opacity: .18; bottom: -150px; right: -80px; animation: vdmSoftPulse 8s ease-in-out infinite .5s; }
.vdm-blog-cta .fusion-builder-row { position: relative; z-index: 1; }

@media (max-width: 900px) {
  .vdm-blog-fan { height: 360px; margin-top: 20px; }
  .vdm-blog-card { width: 150px; height: 200px; font-size: 40px; }
}

/* ---- Blog: POST CARD (grid) ---- */
.vdm-blog-post-card > .fusion-column-wrapper {
  position: relative; transition: transform .3s ease, box-shadow .3s ease;
}
.vdm-blog-post-card:hover > .fusion-column-wrapper {
  transform: translateY(-7px); box-shadow: 0 22px 45px rgba(2,33,80,.14) !important;
}
.fusion-text.vdm-blog-post-cat {
  position: absolute !important; top: 14px; left: 14px; z-index: 3; margin: 0 !important;
  display: inline-flex; align-items: center; background: rgba(2,33,80,.9);
  border-radius: 20px; padding: 5px 12px;
}
.fusion-text.vdm-blog-post-cat, .fusion-text.vdm-blog-post-cat p {
  margin: 0 !important; color: #fff !important;
  font-family: 'Quicksand', sans-serif; font-weight: 600; font-size: 11px; line-height: 1.2;
}
.vdm-blog-post-read p { margin: 0; }
.vdm-blog-post-read { font-size: 11.5px; font-weight: 700; color: hsla(var(--awb-color4-h),var(--awb-color4-s),var(--awb-color4-l),0.5); }
.vdm-blog-post-link p { margin: 0; }
.vdm-blog-post-link { color: var(--awb-color5) !important; font-weight: 800; font-size: 13px; }

/* ---- Blog: POST CARD DESTACADO ---- */
.vdm-blog-feat-card > .fusion-column-wrapper { position: relative; }
.vdm-blog-feat-card-img {
  position: relative; background-size: cover !important; background-position: center !important;
}
.vdm-blog-feat-read p { margin: 0; }
.vdm-blog-feat-read { font-size: 12px; font-weight: 700; color: rgba(255,255,255,.55); }

/* =========================================================
   HOME: iconos SVG movidos a CSS (el Builder borra <svg> del contenido)
   ========================================================= */
.vdm-ic {
  display: block; font-size: 0; line-height: 0;
  background-color: var(--awb-color5);
  -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;
  -webkit-mask-position: center; mask-position: center;
  -webkit-mask-size: contain; mask-size: contain;
}
.vdm-ic--navy { background-color: var(--awb-color4); }
.vdm-ic--white { background-color: var(--awb-color1); }
.vdm-ic--c26 { width: 26px; height: 26px; margin: 0 auto 8px; }
.vdm-ic--24 { width: 24px; height: 24px; display: inline-block; vertical-align: middle; }
.vdm-ic--16 { width: 16px; height: 16px; flex: none; display: inline-block; }
.vdm-ic--quote { width: 22px; height: 18px; }
.vdm-ic-star { --ic: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpolygon points='13,2 16,10 24,10 17.5,15 20,23 13,18 6,23 8.5,15 2,10 10,10' fill='none' stroke='%23000' stroke-width='1.6' stroke-linejoin='round'/%3E%3C/svg%3E"); -webkit-mask-image: var(--ic); mask-image: var(--ic); }
.vdm-ic-award { --ic: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Ccircle cx='13' cy='9' r='6' fill='none' stroke='%23000' stroke-width='1.6'/%3E%3Cpolygon points='8,14 6,23 13,19 20,23 18,14' fill='none' stroke='%23000' stroke-width='1.6' stroke-linejoin='round'/%3E%3C/svg%3E"); -webkit-mask-image: var(--ic); mask-image: var(--ic); }
.vdm-ic-shield-check { --ic: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M13 2l9 4v6c0 6-4.5 10-9 12-4.5-2-9-6-9-12V6l9-4z' fill='none' stroke='%23000' stroke-width='1.6' stroke-linejoin='round'/%3E%3Cpolyline points='9,13 12,16 18,9' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); -webkit-mask-image: var(--ic); mask-image: var(--ic); }
.vdm-ic-heart { --ic: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M13 22s-8-5-8-11.5C5 7 7.5 4 11 4c1 0 2 .8 2 .8S14 4 15 4c3.5 0 6 3 6 6.5C21 17 13 22 13 22z' fill='none' stroke='%23000' stroke-width='1.6' stroke-linejoin='round'/%3E%3C/svg%3E"); -webkit-mask-image: var(--ic); mask-image: var(--ic); }
.vdm-ic-pin { --ic: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M13 2a6 6 0 0 1 6 6c0 4.5-6 11-6 11S7 12.5 7 8a6 6 0 0 1 6-6z' fill='none' stroke='%23000' stroke-width='1.6'/%3E%3Ccircle cx='13' cy='8' r='2' fill='%23000'/%3E%3C/svg%3E"); -webkit-mask-image: var(--ic); mask-image: var(--ic); }
.vdm-ic-chat { --ic: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Crect x='3' y='4' width='20' height='14' rx='4' fill='none' stroke='%23000' stroke-width='1.6'/%3E%3Cpolygon points='8,18 8,23 13,18' fill='%23000'/%3E%3C/svg%3E"); -webkit-mask-image: var(--ic); mask-image: var(--ic); }
.vdm-ic-list { --ic: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cline x1='4' y1='7' x2='22' y2='7' stroke='%23000' stroke-width='1.6' stroke-linecap='round'/%3E%3Cline x1='4' y1='13' x2='22' y2='13' stroke='%23000' stroke-width='1.6' stroke-linecap='round'/%3E%3Cline x1='4' y1='19' x2='16' y2='19' stroke='%23000' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E"); -webkit-mask-image: var(--ic); mask-image: var(--ic); }
.vdm-ic-shield { --ic: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M13 2l8 3v6c0 6-3.5 9.5-8 10.5C8.5 20.5 5 17 5 11V5l8-3z' fill='none' stroke='%23000' stroke-width='1.6' stroke-linejoin='round'/%3E%3C/svg%3E"); -webkit-mask-image: var(--ic); mask-image: var(--ic); }
.vdm-ic-plane-line { --ic: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cline x1='3' y1='20' x2='21' y2='4' stroke='%23000' stroke-width='1.6' stroke-dasharray='1 5' stroke-linecap='round'/%3E%3Cpolygon points='21,4 15,5 18,10' fill='%23000'/%3E%3C/svg%3E"); -webkit-mask-image: var(--ic); mask-image: var(--ic); }
.vdm-ic-heart-double { --ic: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M13 22s-8-4.5-8-10.5C5 8 7 5.5 10 5.5c1.5 0 2.5.8 3 1.8.5-1 1.5-1.8 3-1.8 3 0 5 2.5 5 6C21 17.5 13 22 13 22z' fill='none' stroke='%23000' stroke-width='1.6' stroke-linejoin='round'/%3E%3C/svg%3E"); -webkit-mask-image: var(--ic); mask-image: var(--ic); }
.vdm-ic-clock { --ic: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9' fill='none' stroke='%23000' stroke-width='1.6'/%3E%3Cline x1='12' y1='12' x2='12' y2='7' stroke='%23000' stroke-width='1.6' stroke-linecap='round'/%3E%3Cline x1='12' y1='12' x2='16' y2='14' stroke='%23000' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E"); -webkit-mask-image: var(--ic); mask-image: var(--ic); }
.vdm-ic-pin-dot { --ic: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cline x1='12' y1='4' x2='12' y2='14' stroke='%23000' stroke-width='1.8' stroke-linecap='round'/%3E%3Ccircle cx='12' cy='19' r='1.4' fill='%23000'/%3E%3C/svg%3E"); -webkit-mask-image: var(--ic); mask-image: var(--ic); }
.vdm-ic-chat-2 { --ic: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3' y='5' width='18' height='12' rx='3' fill='none' stroke='%23000' stroke-width='1.6'/%3E%3Cpolygon points='7,17 7,21 11,17' fill='%23000'/%3E%3C/svg%3E"); -webkit-mask-image: var(--ic); mask-image: var(--ic); }
.vdm-ic-heart-3 { --ic: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 20s-7-4-7-9.5C5 7.5 7 5 9.5 5c1.2 0 2 .6 2.5 1.5C12.5 5.6 13.3 5 14.5 5 17 5 19 7.5 19 10.5 19 16 12 20 12 20z' fill='none' stroke='%23000' stroke-width='1.6' stroke-linejoin='round'/%3E%3C/svg%3E"); -webkit-mask-image: var(--ic); mask-image: var(--ic); }
.vdm-ic-check { --ic: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E"); -webkit-mask-image: var(--ic); mask-image: var(--ic); }
.vdm-ic-quote { --ic: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 18'%3E%3Cpath d='M2 10c0-5 3-8 7-8v3c-2 0-3.5 1.5-3.5 3.5H8v5H2v-3.5zM12 10c0-5 3-8 7-8v3c-2 0-3.5 1.5-3.5 3.5H18v5h-6v-3.5z' fill='%23000'/%3E%3C/svg%3E"); -webkit-mask-image: var(--ic); mask-image: var(--ic); }

.vdm-cta-plane {
  position: absolute; top: 38%; left: 0; width: 100%; height: 100px;
  opacity: .4; pointer-events: none; font-size: 0; display: block;
  background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 100' preserveAspectRatio='none'%3E%3Cpath id='p' d='M -50 60 C 200 10, 400 100, 650 40 S 1100 10, 1250 60' fill='none' stroke='%23F5627C' stroke-width='2' stroke-dasharray='1 10' stroke-linecap='round'/%3E%3Ccircle r='5' fill='%23F5627C'%3E%3CanimateMotion dur='10s' repeatCount='indefinite' rotate='auto'%3E%3Cmpath href='%23p'/%3E%3C/animateMotion%3E%3C/circle%3E%3C/svg%3E") center / 100% 100% no-repeat;
}
.vdm-cta-ring {
  position: absolute; top: 0; left: 0; width: 200px; height: 200px;
  border-radius: 50%; border: 2px dashed rgba(255,255,255,.3);
  font-size: 0; display: block; pointer-events: none;
}

/* ===== HOME hero: decoraciones (sol, nubes, ola, flecha) — CSS-only, a prueba de Builder ===== */
@keyframes vdmWaveBg { to { background-position-x: -100px; } }
.vdm-hero-sun, .vdm-hero-cloud-1, .vdm-hero-cloud-2, .vdm-hero-plane-line, .vdm-hero-wave {
  position: absolute; display: block; font-size: 0; line-height: 0; pointer-events: none; z-index: 0;
  background-repeat: no-repeat; background-position: center; background-size: contain;
}
.vdm-hero-sun {
  top: 6px; left: 10px; width: 70px; height: 70px; opacity: .8;
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 70 70'%3E%3Ccircle cx='35' cy='35' r='14' fill='none' stroke='%23F5627C' stroke-width='2'/%3E%3Cg stroke='%23F5627C' stroke-width='2' stroke-linecap='round'%3E%3Cline x1='35' y1='4' x2='35' y2='12'/%3E%3Cline x1='35' y1='58' x2='35' y2='66'/%3E%3Cline x1='4' y1='35' x2='12' y2='35'/%3E%3Cline x1='58' y1='35' x2='66' y2='35'/%3E%3Cline x1='12' y1='12' x2='18' y2='18'/%3E%3Cline x1='52' y1='52' x2='58' y2='58'/%3E%3Cline x1='12' y1='58' x2='18' y2='52'/%3E%3Cline x1='52' y1='18' x2='58' y2='12'/%3E%3C/g%3E%3C/svg%3E");
  animation: vdmSpinSlow 30s linear infinite;
}
.vdm-hero-cloud-1 {
  top: 60px; right: 20px; width: 90px; height: 40px; opacity: .55;
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 90 40'%3E%3Cellipse cx='30' cy='24' rx='26' ry='13' fill='%23ffffff'/%3E%3Cellipse cx='58' cy='18' rx='20' ry='16' fill='%23ffffff'/%3E%3C/svg%3E");
  animation: vdmDriftCloud 8s ease-in-out infinite alternate;
}
.vdm-hero-cloud-2 {
  bottom: 70px; left: -10px; width: 60px; height: 30px; opacity: .35;
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 30'%3E%3Cellipse cx='24' cy='18' rx='20' ry='10' fill='%23ffffff'/%3E%3C/svg%3E");
  animation: vdmDriftCloud 10s ease-in-out infinite alternate;
}
.vdm-hero-plane-line {
  top: 10px; right: 0; width: 150px; height: 90px;
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 150 90'%3E%3Cline x1='10' y1='70' x2='130' y2='15' stroke='%23F5627C' stroke-width='2.5' stroke-dasharray='1 10' stroke-linecap='round' opacity='.9'/%3E%3Cpolygon points='130,15 116,14 123,26' fill='%23F5627C'/%3E%3C/svg%3E");
  animation: vdmFloat 5s ease-in-out infinite;
}
.vdm-hero-wave {
  bottom: 0; left: 0; right: 0; width: auto; height: 50px; opacity: .5;
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 50' preserveAspectRatio='none'%3E%3Cpath d='M0 25 Q 25 5 50 25 T 100 25 V50 H0 Z' fill='%2336748B'/%3E%3C/svg%3E");
  background-repeat: repeat-x; background-position: 0 bottom; background-size: 100px 50px;
  animation: vdmWaveBg 6s linear infinite;
}

/* ===== HOME paquete destacado: ruta + avion + brujula — CSS-only ===== */
.vdm-pkg-route, .vdm-pkg-plane {
  position: absolute; display: block; font-size: 0; line-height: 0; pointer-events: none;
  background-repeat: no-repeat;
}
.vdm-pkg-route {
  top: 0; left: 0; right: 0; bottom: 0; opacity: .5;
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 500 420' preserveAspectRatio='none'%3E%3Cpath d='M -20 380 C 120 300, 220 400, 340 260 S 480 120, 520 90' fill='none' stroke='%23ffffff' stroke-width='2' stroke-dasharray='1 10' stroke-linecap='round'/%3E%3C/svg%3E");
  background-size: 100% 100%;
}
.vdm-pkg-plane {
  top: 70px; right: 60px; width: 60px; height: 36px;
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 36'%3E%3Cline x1='4' y1='30' x2='52' y2='6' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' opacity='.85'/%3E%3Cpolygon points='52,6 40,7 45,15' fill='%23ffffff' opacity='.9'/%3E%3C/svg%3E");
  background-size: contain;
  animation: vdmFloat 5s ease-in-out infinite;
}
.vdm-pkg-compass {
  display: block; width: 40px; height: 40px; font-size: 0; line-height: 0; margin: 0 0 12px;
  background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Ccircle cx='20' cy='20' r='16' fill='none' stroke='%23F73558' stroke-width='1.8'/%3E%3Cpolygon points='20,10 24,20 20,30 16,20' fill='%23F73558'/%3E%3C/svg%3E") center / contain no-repeat;
  animation: vdmSpinSlow 18s linear infinite;
}

/* ===== Producto: barra CTA fija en movil ===== */
@keyframes vdmCtabarUp { from { transform: translateY(100%); } to { transform: translateY(0); } }
.vdm-prod-ctabar {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 9980;
  display: none; align-items: center; gap: 14px;
  background: #fff; box-shadow: 0 -8px 30px rgba(2, 33, 80, .18);
  padding: 10px 14px calc(10px + env(safe-area-inset-bottom));
}
@media (max-width: 820px) {
  .vdm-prod-ctabar.is-visible { display: flex; animation: vdmCtabarUp .3s ease both; }
}
.vdm-prod-ctabar-price { flex: none; min-width: 86px; }
.vdm-prod-ctabar-price span {
  display: block; font-size: 10px; font-weight: 700; letter-spacing: .5px;
  text-transform: uppercase; color: rgba(2, 33, 80, .5);
}
.vdm-prod-ctabar-price b {
  font-family: 'Quicksand', sans-serif; font-size: 20px; color: var(--awb-color4); line-height: 1.1;
}
.vdm-prod-ctabar-btn {
  flex: 1; border: 0; cursor: pointer;
  background: var(--awb-color5); color: #fff;
  font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: 15px;
  padding: 14px; border-radius: 30px;
}

/* ===== Blindaje anti-Builder: svgs de paginas convertidos a CSS ===== */
.vdmx-africa-1 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 420px; height: 90px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 420 90'%3E%3Cg class='vdm-af-bird-1'%3E%3Cpath d='M0 16 Q9 3 18 16 Q27 3 36 16' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round'/%3E%3C/g%3E%3Cg class='vdm-af-bird-2'%3E%3Cpath d='M52 46 Q60 36 68 46 Q76 36 84 46' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' opacity='.85'/%3E%3C/g%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-africa-2 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 70px; height: 40px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 70 40'%3E%3Cpath d='M10 38 Q6 20 14 4' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M22 38 Q20 15 30 2' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M34 38 Q34 18 40 4' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-africa-3 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 40px; height: 40px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Ccircle cx='13' cy='13' r='10' fill='none' stroke='%23F5A542' stroke-width='1.6'/%3E%3Cpath d='M13 3c3.5 4 3.5 16 0 20M13 3c-3.5 4-3.5 16 0 20M3 13h20' fill='none' stroke='%23F5A542' stroke-width='1.3'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-america-1 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 100%; height: 180px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1400 180' preserveAspectRatio='none'%3E%3Cpath d='M0 170 L120 60 L220 130 L340 20 L460 110 L600 40 L760 130 L900 30 L1060 120 L1220 50 L1400 140 V180 H0 Z' fill='%230a2a44'/%3E%3C/svg%3E") center / 100% 100% no-repeat; }
.vdmx-america-2 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 100%; height: 60px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1400 60' preserveAspectRatio='none'%3E%3Cpath d='M0 60 Q 350 10 700 40 T 1400 30 V60 Z' fill='%23123a52'/%3E%3C/svg%3E") center / 100% 100% no-repeat; }
.vdmx-america-3 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 100%; height: 14px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1400 14' preserveAspectRatio='none'%3E%3Cline x1='0' y1='7' x2='1400' y2='7' stroke='%23fff' stroke-width='2' stroke-dasharray='24 24' class='vdm-am-road'/%3E%3C/svg%3E") center / 100% 100% no-repeat; }
.vdmx-america-4 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 40px; height: 40px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Ccircle cx='13' cy='13' r='10' fill='none' stroke='%235fd6c8' stroke-width='1.6'/%3E%3Cpath d='M13 3c3.5 4 3.5 16 0 20M13 3c-3.5 4-3.5 16 0 20M3 13h20' fill='none' stroke='%235fd6c8' stroke-width='1.3'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-asia-1 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 100%; height: 200px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1400 200' preserveAspectRatio='none'%3E%3Cpath d='M0 200 L0 140 L60 140 L60 100 L120 100 L120 60 L180 60 L180 30 L260 30 L260 60 L320 60 L320 100 L380 100 L380 140 L440 140 L440 200 Z' fill='%232a0f18'/%3E%3Cpath d='M600 200 L600 120 L640 120 L640 90 L680 90 L680 50 L760 50 L760 90 L800 90 L800 120 L840 120 L840 200 Z' fill='%233a1420'/%3E%3Cpath d='M980 200 L980 150 L1030 150 L1030 110 L1080 110 L1080 70 L1160 70 L1160 110 L1210 110 L1210 150 L1260 150 L1260 200 Z' fill='%232a0f18'/%3E%3C/svg%3E") center / 100% 100% no-repeat; }
.vdmx-asia-2 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 30px; height: 46px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 46'%3E%3Cellipse cx='15' cy='23' rx='13' ry='17' fill='%23D9A441' opacity='.85'/%3E%3Crect x='12' y='2' width='6' height='6' fill='%23D9A441'/%3E%3Crect x='12' y='38' width='6' height='6' fill='%23D9A441'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-asia-3 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 24px; height: 38px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 46'%3E%3Cellipse cx='15' cy='23' rx='13' ry='17' fill='%23f9224b' opacity='.8'/%3E%3Crect x='12' y='2' width='6' height='6' fill='%23f9224b'/%3E%3Crect x='12' y='38' width='6' height='6' fill='%23f9224b'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-asia-4 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 18px; height: 18px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cellipse cx='9' cy='9' rx='8' ry='5' fill='%23F5A9B8' opacity='.8'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-asia-5 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 14px; height: 14px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cellipse cx='9' cy='9' rx='8' ry='5' fill='%23F5A9B8' opacity='.7'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-asia-6 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 16px; height: 16px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cellipse cx='9' cy='9' rx='8' ry='5' fill='%23F5A9B8' opacity='.75'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-asia-7 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 40px; height: 40px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Ccircle cx='13' cy='13' r='10' fill='none' stroke='%23D9A441' stroke-width='1.6'/%3E%3Cpath d='M13 3c3.5 4 3.5 16 0 20M13 3c-3.5 4-3.5 16 0 20M3 13h20' fill='none' stroke='%23D9A441' stroke-width='1.3'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-europa-1 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 100%; height: 140px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1400 140' preserveAspectRatio='none'%3E%3Crect x='40' y='60' width='18' height='80' fill='%233a2038'/%3E%3Cpolygon points='49,20 40,60 58,60' fill='%233a2038'/%3E%3Crect x='140' y='40' width='60' height='100' fill='%233a2038'/%3E%3Ccircle cx='170' cy='35' r='18' fill='none' stroke='%233a2038' stroke-width='6'/%3E%3Crect x='260' y='70' width='14' height='70' fill='%233a2038'/%3E%3Crect x='253' y='55' width='28' height='16' fill='%233a2038'/%3E%3Cpolygon points='420,140 420,50 400,70 400,140' fill='%233a2038'/%3E%3Cpolygon points='420,50 440,140 460,140 420,50' fill='%233a2038'/%3E%3Cline x1='420' y1='50' x2='420' y2='20' stroke='%233a2038' stroke-width='4'/%3E%3Crect x='600' y='30' width='40' height='110' fill='%233a2038'/%3E%3Crect x='590' y='20' width='60' height='12' fill='%233a2038'/%3E%3Crect x='900' y='50' width='16' height='90' fill='%233a2038'/%3E%3Crect x='892' y='35' width='32' height='18' fill='%233a2038'/%3E%3Crect x='898' y='15' width='20' height='22' fill='none' stroke='%233a2038' stroke-width='4'/%3E%3Crect x='1100' y='45' width='70' height='95' fill='%233a2038'/%3E%3Cpolygon points='1100,45 1135,10 1170,45' fill='%233a2038'/%3E%3C/svg%3E") center / 100% 100% no-repeat; }
.vdmx-europa-2 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 40px; height: 40px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Ccircle cx='13' cy='13' r='10' fill='none' stroke='%23F5A6B8' stroke-width='1.6'/%3E%3Cpath d='M13 3c3.5 4 3.5 16 0 20M13 3c-3.5 4-3.5 16 0 20M3 13h20' fill='none' stroke='%23F5A6B8' stroke-width='1.3'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-oceania-1 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 120%; height: 90px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1400 90' preserveAspectRatio='none'%3E%3Cpath d='M0 45 Q 100 15 200 45 T 400 45 T 600 45 T 800 45 T 1000 45 T 1200 45 T 1400 45 V90 H0 Z' fill='%230c6b76'/%3E%3C/svg%3E") center / 100% 100% no-repeat; }
.vdmx-oceania-2 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 70px; height: 90px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 70 90'%3E%3Cpath d='M35 90 L35 30' stroke='%230a3d3f' stroke-width='4' stroke-linecap='round'/%3E%3Cpath d='M35 30 Q10 10 5 25' fill='none' stroke='%230a3d3f' stroke-width='4' stroke-linecap='round'/%3E%3Cpath d='M35 30 Q60 10 65 25' fill='none' stroke='%230a3d3f' stroke-width='4' stroke-linecap='round'/%3E%3Cpath d='M35 30 Q15 25 8 40' fill='none' stroke='%230a3d3f' stroke-width='4' stroke-linecap='round'/%3E%3Cpath d='M35 30 Q55 25 62 40' fill='none' stroke='%230a3d3f' stroke-width='4' stroke-linecap='round'/%3E%3Cpath d='M35 30 Q35 5 30 0' fill='none' stroke='%230a3d3f' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-oceania-3 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 140px; height: 60px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 60'%3E%3Ccircle cx='20' cy='20' r='2' fill='%23fff'/%3E%3Ccircle cx='45' cy='10' r='1.6' fill='%23fff'/%3E%3Ccircle cx='60' cy='30' r='2' fill='%23fff'/%3E%3Ccircle cx='90' cy='14' r='1.4' fill='%23fff'/%3E%3Cline x1='20' y1='20' x2='45' y2='10' stroke='%23fff' stroke-width='1' opacity='.5'/%3E%3Cline x1='45' y1='10' x2='60' y2='30' stroke='%23fff' stroke-width='1' opacity='.5'/%3E%3Cline x1='60' y1='30' x2='90' y2='14' stroke='%23fff' stroke-width='1' opacity='.5'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-oceania-4 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 40px; height: 40px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Ccircle cx='13' cy='13' r='10' fill='none' stroke='%235EE0D1' stroke-width='1.6'/%3E%3Cpath d='M13 3c3.5 4 3.5 16 0 20M13 3c-3.5 4-3.5 16 0 20M3 13h20' fill='none' stroke='%235EE0D1' stroke-width='1.3'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-destinos-a-medida-1 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 210px; height: 210px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 90 90'%3E%3Ccircle cx='45' cy='45' r='40' fill='none' stroke='rgba(255,255,255,.3)' stroke-width='1'/%3E%3Cg class='vdm-compass-ticks' stroke='rgba(255,255,255,.4)' stroke-width='1'%3E%3Cline x1='45' y1='6' x2='45' y2='12'/%3E%3Cline x1='45' y1='78' x2='45' y2='84'/%3E%3Cline x1='6' y1='45' x2='12' y2='45'/%3E%3Cline x1='78' y1='45' x2='84' y2='45'/%3E%3Cline x1='17' y1='17' x2='21' y2='21'/%3E%3Cline x1='69' y1='69' x2='73' y2='73'/%3E%3Cline x1='17' y1='73' x2='21' y2='69'/%3E%3Cline x1='69' y1='21' x2='73' y2='17'/%3E%3C/g%3E%3Ctext x='45' y='17' fill='rgba(255,255,255,.55)' font-family='Quicksand,sans-serif' font-size='8' font-weight='700' text-anchor='middle'%3EN%3C/text%3E%3Cg class='vdm-compass-needle'%3E%3Cpath d='M45 20 L52 45 L45 70 L38 45 Z' fill='%23F5627C'/%3E%3Cpath d='M20 45 L45 38 L70 45 L45 52 Z' fill='rgba(255,255,255,.6)'/%3E%3C/g%3E%3Ccircle cx='45' cy='45' r='4' fill='%23fff'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-destinos-a-medida-2 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 20px; height: 20px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='4' y='5' width='16' height='15' rx='2.5' fill='none' stroke='%23f9224b' stroke-width='1.6'/%3E%3Cline x1='4' y1='10' x2='20' y2='10' stroke='%23f9224b' stroke-width='1.6'/%3E%3Cline x1='8' y1='3' x2='8' y2='7' stroke='%23f9224b' stroke-width='1.6' stroke-linecap='round'/%3E%3Cline x1='16' y1='3' x2='16' y2='7' stroke='%23f9224b' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-destinos-a-medida-3 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 20px; height: 20px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M13 2l8 3v6c0 6-3.5 9.5-8 10.5C8.5 20.5 5 17 5 11V5l8-3z' fill='none' stroke='%23f9224b' stroke-width='1.6' stroke-linejoin='round' transform='translate(-1,0)'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-destinos-a-medida-4 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 20px; height: 20px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 20s-7-4-7-9.5C5 7.5 7 5 9.5 5c1.2 0 2 .6 2.5 1.5C12.5 5.6 13.3 5 14.5 5 17 5 19 7.5 19 10.5 19 16 12 20 12 20z' fill='none' stroke='%23f9224b' stroke-width='1.6' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-nosotros-1 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 16px; height: 16px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpolygon points='13,2 16,10 24,10 17.5,15 20,23 13,18 6,23 8.5,15 2,10 10,10' fill='none' stroke='%23f9224b' stroke-width='2'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-nosotros-2 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 16px; height: 16px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Ccircle cx='13' cy='9' r='6' fill='none' stroke='%23f9224b' stroke-width='2'/%3E%3Cpolygon points='8,14 6,23 13,19 20,23 18,14' fill='none' stroke='%23f9224b' stroke-width='2' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-nosotros-3 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 16px; height: 16px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M13 22s-8-5-8-11.5C5 7 7.5 4 11 4c1 0 2 .8 2 .8S14 4 15 4c3.5 0 6 3 6 6.5C21 17 13 22 13 22z' fill='%23f9224b'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-nosotros-4 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 440px; height: 440px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 440 440'%3E%3Ccircle cx='220' cy='220' r='200' fill='none' stroke='%23f9224b' stroke-width='1.6' stroke-dasharray='2 14' opacity='.55'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-nosotros-5 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 120px; height: 70px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 70'%3E%3Cpath d='M6 55 Q40 5 60 40 T110 15' fill='none' stroke='%23f9224b' stroke-width='2.5' stroke-dasharray='1 9' stroke-linecap='round' opacity='.9'/%3E%3Cpolygon points='110,15 97,17 102,28' fill='%23f9224b'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-nosotros-6 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 28px; height: 28px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Cpath d='M14 6a5 5 0 0 1 5 5v3a5 5 0 0 1-10 0v-3a5 5 0 0 1 5-5z' fill='none' stroke='%23fff' stroke-width='1.8'/%3E%3Cpath d='M8 14v1a6 6 0 0 0 12 0v-1' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round'/%3E%3Cline x1='14' y1='21' x2='14' y2='24' stroke='%23fff' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-nosotros-7 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 28px; height: 28px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Cpath d='M6 22 L20 8' stroke='%23fff' stroke-width='1.8' stroke-linecap='round'/%3E%3Cpath d='M17 5 L23 11' stroke='%23fff' stroke-width='1.8' stroke-linecap='round'/%3E%3Cpath d='M4 24 L7 21' stroke='%23fff' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-nosotros-8 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 28px; height: 28px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Cpath d='M14 4l9 4v6c0 6.5-3.9 10.5-9 12.5C8.9 24.5 5 20.5 5 14V8l9-4z' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linejoin='round'/%3E%3Cpath d='M10 14l3 3 6-6' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-nosotros-9 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 28px; height: 28px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Cpath d='M14 22s-8-5-8-11.5C6 7 8.5 4 12 4c1 0 2 .8 2 .8S15 4 16 4c3.5 0 6 3 6 6.5C22 17 14 22 14 22z' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-viaje-de-novios-1 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 14px; height: 14px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M13 22s-8-5-8-11.5C5 7 7.5 4 11 4c1 0 2 .8 2 .8S14 4 15 4c3.5 0 6 3 6 6.5C21 17 13 22 13 22z' fill='%23F5627C'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-viaje-de-novios-2 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 22px; height: 22px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M6 7c0-1.5 1-2.5 2.5-2.5h1.2c.6 0 1.1.4 1.3 1l1.1 3.1c.2.5 0 1.1-.4 1.4L10 11.4c1 2.4 2.9 4.3 5.3 5.3l1.4-1.7c.3-.4.9-.6 1.4-.4l3.1 1.1c.6.2 1 .7 1 1.3v1.2C22 19.3 21 20.3 19.5 20.3 12 20.3 6 14.3 6 7z' fill='none' stroke='%23f9224b' stroke-width='1.8' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-viaje-de-novios-3 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 22px; height: 22px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M13 22s-8-5-8-11.5C5 7 7.5 4 11 4c1 0 2 .8 2 .8S14 4 15 4c3.5 0 6 3 6 6.5C21 17 13 22 13 22z' fill='none' stroke='%23f9224b' stroke-width='1.8' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-viaje-de-novios-4 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 22px; height: 22px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cline x1='7' y1='4' x2='7' y2='22' stroke='%23f9224b' stroke-width='1.8' stroke-linecap='round'/%3E%3Cpath d='M7 5h9l-3 4 3 4H7' fill='none' stroke='%23f9224b' stroke-width='1.8' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-viaje-de-novios-5 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 22px; height: 22px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Crect x='4' y='8' width='18' height='12' rx='3' fill='none' stroke='%23f9224b' stroke-width='1.8'/%3E%3Cpath d='M9 8V6a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2' fill='none' stroke='%23f9224b' stroke-width='1.8'/%3E%3Ccircle cx='13' cy='14' r='1.6' fill='%23f9224b'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-viaje-de-novios-6 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 22px; height: 22px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M13 2a6 6 0 0 1 6 6c0 4.5-6 11-6 11S7 12.5 7 8a6 6 0 0 1 6-6z' fill='none' stroke='%23fff' stroke-width='1.7'/%3E%3Ccircle cx='13' cy='8' r='2' fill='%23fff'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-viaje-de-novios-7 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 22px; height: 22px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cline x1='4' y1='7' x2='22' y2='7' stroke='%23fff' stroke-width='1.7' stroke-linecap='round'/%3E%3Cline x1='4' y1='13' x2='22' y2='13' stroke='%23fff' stroke-width='1.7' stroke-linecap='round'/%3E%3Cline x1='4' y1='19' x2='16' y2='19' stroke='%23fff' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-viaje-de-novios-8 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 22px; height: 22px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M13 2l8 3v6c0 6-3.5 9.5-8 10.5C8.5 20.5 5 17 5 11V5l8-3z' fill='none' stroke='%23fff' stroke-width='1.7' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-viaje-de-novios-9 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 22px; height: 22px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M13 2l8 3v6c0 6-3.5 9.5-8 10.5C8.5 20.5 5 17 5 11V5l8-3z' fill='none' stroke='%23fff' stroke-width='1.7' stroke-linejoin='round'/%3E%3Cpath d='M10 12l2.2 2.2L17 9.5' fill='none' stroke='%23fff' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-viaje-de-novios-10 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 22px; height: 22px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M4 14l17-8-6 16-3-6-6-2z' fill='none' stroke='%23fff' stroke-width='1.7' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-viaje-de-novios-11 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 22px; height: 22px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M13 22s-8-4.5-8-10.5C5 8 7 5.5 10 5.5c1.5 0 2.5.8 3 1.8.5-1 1.5-1.8 3-1.8 3 0 5 2.5 5 6C21 17.5 13 22 13 22z' fill='none' stroke='%23fff' stroke-width='1.7' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-contacto-1 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 100%; height: 100%; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 520' preserveAspectRatio='none'%3E%3Cpath id='vdmContactTrail' d='M-40,430 C260,300 380,120 640,200 C860,268 980,120 1260,60' fill='none' stroke='rgba(247,53,88,.55)' stroke-width='2.5' stroke-dasharray='2 12' stroke-linecap='round'/%3E%3Cpath d='M0,-9 L20,0 L0,9 L5,0 Z' fill='%23fff'%3E%3CanimateMotion dur='11s' repeatCount='indefinite' rotate='auto'%3E%3Cmpath href='%23vdmContactTrail'/%3E%3C/animateMotion%3E%3C/path%3E%3C/svg%3E") center / 100% 100% no-repeat; }
.vdmx-contacto-2 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 20px; height: 20px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 5c0 8 7 15 15 15l2.5-3-4.5-2-2 2c-3-1.5-5.5-4-7-7l2-2-2-4.5L4 5z' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-contacto-3 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 20px; height: 20px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3' y='6' width='18' height='12' rx='2' fill='none' stroke='%23fff' stroke-width='1.8'/%3E%3Cpath d='M4 7l8 6 8-6' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-contacto-4 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 22px; height: 22px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 0 0-8.6 15l-1.4 5 5.1-1.3A10 10 0 1 0 12 2zm0 2a8 8 0 0 1 0 16 8 8 0 0 1-4.1-1.1l-.3-.2-3 .8.8-2.9-.2-.3A8 8 0 0 1 12 4zm-2.7 4.3c-.1-.3-.3-.3-.4-.3h-.4c-.1 0-.4 0-.6.3-.2.3-.8.8-.8 1.9 0 1.1.8 2.2 1 2.4.1.1 1.6 2.5 3.9 3.4 1.9.8 2.3.6 2.7.6.4 0 1.3-.5 1.5-1 .2-.5.2-1 .1-1l-.6-.3s-1.3-.6-1.5-.7c-.2-.1-.3-.1-.5.1l-.7.9c-.1.1-.2.1-.4 0-.3-.1-1-.4-1.9-1.2-.7-.6-1.2-1.4-1.3-1.6-.1-.2 0-.3.1-.4l.3-.4.2-.3v-.4l-.7-1.5z'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-contacto-5 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 26px; height: 26px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpolygon points='13,2 16,10 24,10 17.5,15 20,23 13,18 6,23 8.5,15 2,10 10,10' fill='%23f9224b'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-contacto-6 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 26px; height: 26px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Ccircle cx='13' cy='9' r='6' fill='none' stroke='%23f9224b' stroke-width='2'/%3E%3Cpolygon points='8,14 6,23 13,19 20,23 18,14' fill='none' stroke='%23f9224b' stroke-width='2' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-contacto-7 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 26px; height: 26px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M13 3l8 3.5v6C21 19 17 22.5 13 24 9 22.5 5 19 5 12.5v-6L13 3z' fill='none' stroke='%23f9224b' stroke-width='2' stroke-linejoin='round'/%3E%3Cpath d='M9.5 13l2.5 2.5 5-5' fill='none' stroke='%23f9224b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.vdmx-contacto-8 { display: block; font-size: 0; line-height: 0; pointer-events: none; width: 26px; height: 26px; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Ccircle cx='13' cy='13' r='10' fill='none' stroke='%23f9224b' stroke-width='2'/%3E%3Cpath d='M13 7v6l4 2' fill='none' stroke='%23f9224b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }

/* Ruta animada del hero de Ideas de Viaje (restaurada como CSS) */
.vdmx-ideas-route { position: absolute; top: 0; left: 0; right: 0; bottom: 0; display: block; font-size: 0; pointer-events: none; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 520 420'%3E%3Cpath id='ideaRoute' d='M70,360 C150,300 120,220 210,190 C300,160 300,90 400,70' fill='none' stroke='rgba(255,255,255,.3)' stroke-width='2.5' stroke-dasharray='2,11' stroke-linecap='round'/%3E%3Cpath d='M70,360 C150,300 120,220 210,190 C300,160 300,90 400,70' fill='none' stroke='rgba(247,53,88,.9)' stroke-width='2.5' stroke-dasharray='10,310' stroke-linecap='round' %3E%3Canimate attributeName='stroke-dashoffset' from='0' to='-320' dur='5s' repeatCount='indefinite'/%3E%3C/path%3E%3Cg%3E%3Ccircle r='13' fill='%23fff'/%3E%3Cpath d='M6,0 L-7,-5 L-4,0 L-7,5 Z' fill='%23f9224b'/%3E%3CanimateMotion dur='7s' repeatCount='indefinite' rotate='auto'%3E%3Cmpath href='%23ideaRoute'/%3E%3C/animateMotion%3E%3C/g%3E%3C/svg%3E") center / contain no-repeat; }

/* Enganche sin Builder: la ruta se pinta como ::before del contenedor del hero de la tienda */
.woocommerce-shop .fusion-text > div[style*="max-width: 520px"],
.woocommerce-shop .fusion-text > div[style*="max-width:520px"] { position: relative; }
.woocommerce-shop .fusion-text > div[style*="max-width: 520px"]::before,
.woocommerce-shop .fusion-text > div[style*="max-width:520px"]::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; bottom: 0; pointer-events: none;
  background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 520 420'%3E%3Cpath id='ideaRoute' d='M70,360 C150,300 120,220 210,190 C300,160 300,90 400,70' fill='none' stroke='rgba(255,255,255,.3)' stroke-width='2.5' stroke-dasharray='2,11' stroke-linecap='round'/%3E%3Cpath d='M70,360 C150,300 120,220 210,190 C300,160 300,90 400,70' fill='none' stroke='rgba(247,53,88,.9)' stroke-width='2.5' stroke-dasharray='10,310' stroke-linecap='round' %3E%3Canimate attributeName='stroke-dashoffset' from='0' to='-320' dur='5s' repeatCount='indefinite'/%3E%3C/path%3E%3Cg%3E%3Ccircle r='13' fill='%23fff'/%3E%3Cpath d='M6,0 L-7,-5 L-4,0 L-7,5 Z' fill='%23f9224b'/%3E%3CanimateMotion dur='7s' repeatCount='indefinite' rotate='auto'%3E%3Cmpath href='%23ideaRoute'/%3E%3C/animateMotion%3E%3C/g%3E%3C/svg%3E") center / contain no-repeat;
}

/* ===== Ajustes de movil (auditoria 2026-07-18) ===== */

/* Imagenes con ancho fijo de Avada: nunca desbordan el viewport (hero Home 380px) */
.fusion-image-element > div { max-width: 100%; }
.fusion-image-element img { max-width: 100%; height: auto; }

@media (max-width: 820px) {
  /* Adornos absolutos de los heroes (svgs blindados): tapan titulos y botones al apilar */
  i[class*="vdmx-"][style*="position:absolute"],
  i[class*="vdmx-"][style*="position: absolute"] { display: none !important; }
  /* Farolillos y petalos (Asia) */
  .vdm-as-lantern, .vdm-as-lantern-2,
  [class*="vdm-as-petal"] { display: none !important; }
  /* Anillo giratorio de Nosotros (615px: pisa el boton) */
  .vdm-nos-ring { display: none !important; }
  /* Footer: lista de posts recientes compacta (Avada deja 50px por item) */
  .fusion-footer article.post { margin-bottom: 14px !important; }
  .fusion-footer .recent-posts-content h4,
  .fusion-footer .entry-title { margin-top: 4px !important; margin-bottom: 2px !important; }
}

/* ===== Continentes: adornos animados que molestaban, fuera (2026-07-18) ===== */

/* Farolillos, petalos y aves: ocultos en TODOS los tamanos (se movian sobre el texto) */
.vdm-as-lantern, .vdm-as-lantern-2,
[class*="vdm-as-petal"],
[class*="vdm-af-bird"], .vdm-bird { display: none !important; }

/* En las 5 paginas de continente: pildoras y adornos flotantes quietos (sin bob/float) */
body.page-id-1196 .vdm-float, body.page-id-1196 .vdm-bob,
body.page-id-1053 .vdm-float, body.page-id-1053 .vdm-bob,
body.page-id-1126 .vdm-float, body.page-id-1126 .vdm-bob,
body.page-id-1251 .vdm-float, body.page-id-1251 .vdm-bob,
body.page-id-1261 .vdm-float, body.page-id-1261 .vdm-bob {
  animation: none !important;
}

/* Columnas de foto (slider o imagen de fondo): colapsaban a 1px al apilarse en movil */
@media (max-width: 820px) {
  .fusion-layout-column:has(.awb-column__background-slider),
  .fusion-layout-column:has(> .fusion-column-wrapper.fusion-column-has-bg-image),
  .fusion-layout-column:has(> .fusion-column-wrapper[data-bg]),
  .fusion-layout-column:has(> .fusion-column-wrapper[style*="background-image"]) { min-height: 260px; }
}

/* ===== Header + menu movil (diseno "Menu Movil Viajes de Miel") ===== */
@media (max-width: 820px) {
  /* La barra del header ya la fija Avada (su fullwidth interno es position:fixed);
     aqui solo anadimos la sombra al hacer scroll y ocultamos su hamburguesa. */
  .vdm-mh-scrolled { box-shadow: 0 6px 20px rgba(2, 33, 80, .14) !important; transition: box-shadow .3s ease; }
  nav.awb-menu button.awb-menu__m-toggle { display: none !important; }
}

/* Hamburguesa propia (solo se pinta en movil) */
.vdm-mh-burger {
  display: none; position: absolute; right: 16px; top: 50%; transform: translateY(-50%);
  width: 44px; height: 44px; border-radius: 11px; border: 0; cursor: pointer;
  background: rgba(2, 33, 80, .06);
  flex-direction: column; justify-content: center; align-items: center; gap: 5px;
  z-index: 20;
}
.vdm-mh-burger span { width: 21px; height: 2.5px; background: #022151; border-radius: 2px; }
@media (max-width: 820px) {
  .vdm-mh-burger { display: flex; }
}

/* Overlay + drawer */
.vdm-mh-overlay {
  position: fixed; inset: 0; z-index: 99990;
  background: rgba(2, 10, 30, .55);
  opacity: 0; visibility: hidden; transition: opacity .3s ease, visibility .3s ease;
}
.vdm-mh-drawer {
  position: fixed; top: 0; right: 0; bottom: 0; z-index: 99991;
  width: 84%; max-width: 340px;
  background: #022151; color: #fff;
  box-shadow: -20px 0 60px rgba(0, 0, 0, .45);
  transform: translateX(105%); transition: transform .35s cubic-bezier(.4, 0, .2, 1);
  display: flex; flex-direction: column;
  font-family: 'Quicksand', sans-serif;
}
body.vdm-mh-open .vdm-mh-overlay { opacity: 1; visibility: visible; }
body.vdm-mh-open .vdm-mh-drawer { transform: translateX(0); }
body.vdm-mh-open { overflow: hidden; }

.vdm-mh-head {
  display: flex; align-items: center; justify-content: space-between;
  padding: 15px 18px; border-bottom: 1px solid rgba(255, 255, 255, .1); flex: none;
}
.vdm-mh-head img { height: 26px; width: auto; display: block; }
.vdm-mh-logo-tx { font-size: 13px; font-weight: 700; letter-spacing: 2px; color: #fff; }
.vdm-mh-close {
  width: 38px; height: 38px; border-radius: 10px; border: 0; cursor: pointer;
  background: rgba(255, 255, 255, .1); color: #fff; font-size: 21px; line-height: 1;
  display: flex; align-items: center; justify-content: center;
}

.vdm-mh-nav { flex: 1; overflow-y: auto; padding: 6px 0; }
.vdm-mh-nav > a, .vdm-mh-acc-btn {
  display: block; width: 100%; text-align: left;
  padding: 15px 22px; color: #fff !important; text-decoration: none;
  font-family: 'Quicksand', sans-serif; font-size: 16.5px; font-weight: 600;
  border: 0; border-bottom: 1px solid rgba(255, 255, 255, .07);
  background: none; cursor: pointer;
}
.vdm-mh-nav > a.is-current { color: #F5627C !important; }
.vdm-mh-acc-btn { display: flex; align-items: center; justify-content: space-between; }
.vdm-mh-acc-btn svg { transition: transform .25s ease; flex: none; }
.vdm-mh-acc-btn.is-open { color: #F5627C !important; background: rgba(0, 0, 0, .12); }
.vdm-mh-acc-btn.is-open svg { transform: rotate(180deg); }
.vdm-mh-sub {
  max-height: 0; overflow: hidden; transition: max-height .32s ease;
  background: rgba(0, 0, 0, .2);
}
.vdm-mh-sub.is-open { max-height: 340px; }
.vdm-mh-sub a {
  display: block; padding: 12px 22px 12px 40px;
  color: rgba(255, 255, 255, .85) !important; text-decoration: none;
  font-size: 15px; font-weight: 500;
}
.vdm-mh-sub a.vdm-mh-sub-all { color: #F5627C !important; font-size: 14.5px; font-weight: 700; padding-bottom: 15px; }

.vdm-mh-foot {
  flex: none; padding: 16px 18px calc(16px + env(safe-area-inset-bottom));
  border-top: 1px solid rgba(255, 255, 255, .1);
  display: flex; flex-direction: column; gap: 10px;
}
.vdm-mh-cta {
  display: block; background: #F73558; color: #fff !important; text-align: center;
  padding: 14px; border-radius: 26px; text-decoration: none;
  font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: 14.5px;
}
.vdm-mh-contacts { display: flex; gap: 16px; justify-content: center; font-family: 'Nunito Sans', sans-serif; font-size: 12.5px; }
.vdm-mh-contacts a { color: rgba(255, 255, 255, .7) !important; text-decoration: none; }

/* Home movil: hero limpio, solo la foto (sin glow, sol, nubes, ola, avion ni pastilla) */
@media (max-width: 820px) {
  .vdm-hero-visual .vdm-hero-decor,
  .vdm-hero-sun, .vdm-hero-cloud-1, .vdm-hero-cloud-2,
  .vdm-hero-plane-line, .vdm-hero-wave { display: none !important; }
  .vdm-hero-photo, .vdm-hero-photo img { animation: none !important; transform: none !important; }
}

/* Heros compactos en movil: el padding del contenedor y el de las columnas
   (que Avada aplica en el .fusion-column-wrapper) se sumaban al apilarse */
@media (max-width: 820px) {
  .post-content > .fusion-fullwidth:first-child,
  .vdm-dest-hero, .vdm-prod-hero, .vdm-blog-hero {
    padding-top: 28px !important;
    padding-bottom: 32px !important;
  }
  .post-content > .fusion-fullwidth:first-child > .fusion-builder-row > .fusion-layout-column > .fusion-column-wrapper,
  .vdm-dest-hero > .fusion-builder-row > .fusion-layout-column > .fusion-column-wrapper,
  .vdm-prod-hero > .fusion-builder-row > .fusion-layout-column > .fusion-column-wrapper,
  .vdm-blog-hero > .fusion-builder-row > .fusion-layout-column > .fusion-column-wrapper {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }
}

/* CTA final (Home) en movil: sin anillo ni foto circular, y mas compacto */
@media (max-width: 820px) {
  .vdm-cta-section .vdm-cta-ring,
  .vdm-cta-section div[style*="width: 200px"],
  .vdm-cta-section div[style*="width:200px"] { display: none !important; }
  .vdm-cta-inner { padding-top: 44px !important; padding-bottom: 44px !important; }
}

/* Movil: separacion entre botones apilados de los heros + foto del hero Home apaisada */
@media (max-width: 820px) {
  .post-content > .fusion-fullwidth:first-child .fusion-button { margin-bottom: 12px !important; }
  .vdm-hero-photo img {
    width: 100%;
    aspect-ratio: 3 / 2 !important;
    object-fit: cover;
    height: auto !important;
  }
}

/* Rendimiento (LCP): el hero se pinta al instante, sin esperar al JS de
   animaciones de Avada (la foto/el titulo son el LCP y quedaban ocultos ~3s) */
.post-content > .fusion-fullwidth:first-child .fusion-animated,
.vdm-dest-hero .fusion-animated, .vdm-prod-hero .fusion-animated, .vdm-blog-hero .fusion-animated {
  visibility: visible !important;
  animation: none !important;
}

/* Barra legal bajo el footer: copyright + enlaces a las paginas legales
   (se genera desde el child theme; mismo azul marino que el footer) */
.vdm-legal-bar {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 6px 22px;
  padding: 16px 20px;
  background: #011633;
  font-family: 'Nunito Sans', sans-serif;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.55);
}
.vdm-legal-bar a {
  color: rgba(255, 255, 255, 0.75);
  text-decoration: none;
}
.vdm-legal-bar a:hover {
  color: #f9224b;
}


/* =========================================================
   NOSOTROS v2 (2026-09-26): pagina inmersiva. Todo va por clases
   vdm-nos-* puestas en containers/columnas/elementos nativos.
   ========================================================= */

:root { --vdm-nos-header: 130px; --vdm-nos-gut: max(24px, calc((100vw - 1240px) / 2)); }

/* Cabecera: en esta pagina va superpuesta al hero, transparente hasta bajar */
.vdm-nos-page .fusion-tb-header { position: absolute; top: 0; left: 0; right: 0; z-index: 1000; }
.vdm-nos-page:not(.vdm-nos-scrolled) .vdm-header { background-color: transparent !important; box-shadow: none !important; transition: background-color .5s; }
.vdm-nos-page.vdm-nos-scrolled .vdm-header { transition: background-color .5s; }
.vdm-nos-page:not(.vdm-nos-scrolled) .vdm-header .fusion-menu > li:not(.vdm-nav-pill-coral) > a { color: #fff !important; }
.vdm-nos-page:not(.vdm-nos-scrolled) .vdm-header .fusion-imageframe img { filter: brightness(0) invert(1); }
.vdm-nos-page:not(.vdm-nos-scrolled) .vdm-mh-burger { background: rgba(255,255,255,.18); }
.vdm-nos-page:not(.vdm-nos-scrolled) .vdm-mh-burger span { background: #fff; }
.vdm-nos-page .fusion-sticky-spacer { display: none !important; }
.vdm-nos-page:not(.vdm-nos-scrolled) .vdm-header .fusion-menu > li.current-menu-item:not(.vdm-nav-pill-coral) > a, .vdm-nos-page:not(.vdm-nos-scrolled) .vdm-header .fusion-menu > li.current-menu-ancestor:not(.vdm-nav-pill-coral) > a { background: rgba(255,255,255,.16); border-radius: 30px; padding: 10px 18px !important; border-bottom-color: transparent !important; }

.vdm-nos-page .vdm-progress { position: fixed; top: 0; left: 0; right: 0; height: 3px; z-index: 1200; pointer-events: none; }
.vdm-nos-page .vdm-progress i { display: block; height: 100%; background: var(--awb-color5); transform: scaleX(var(--s, 0)); transform-origin: 0 50%; }

/* Utilidades comunes */
.vdm-nos-page .vdm-eyebrow,
.vdm-nos-page .vdm-eyebrow p { font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; margin: 0 0 16px; line-height: 1.5; }
.vdm-nos-page .vdm-eyebrow--coral, .vdm-nos-page .vdm-eyebrow--coral p { color: var(--awb-color5); }
.vdm-nos-page .vdm-eyebrow--light, .vdm-nos-page .vdm-eyebrow--light p { color: rgba(255,255,255,.85); }
.vdm-nos-page .vdm-nos-h2 h2 { font-size: clamp(34px, 4.6vw, 58px) !important; line-height: 1.06 !important; letter-spacing: -.02em; text-wrap: balance; }
.vdm-nos-page .fusion-fullwidth[class*="vdm-nos-"] { position: relative; }
.vdm-nos-page .fusion-fullwidth[class*="vdm-nos-"] > .fusion-row { max-width: none; }
.vdm-nos-page .fusion-button-wrapper { margin: 0 !important; }
.vdm-nos-page .fusion-button { transition: transform .35s cubic-bezier(.22,.8,.26,1), box-shadow .35s, background .3s, color .3s; }
.vdm-nos-page .fusion-button:hover { transform: translateY(-2px); }
.vdm-nos-page .vdm-reveal { opacity: 0; transform: translateY(40px); transition: opacity 1s cubic-bezier(.22,.8,.26,1), transform 1s cubic-bezier(.22,.8,.26,1); }
.vdm-nos-page .vdm-reveal.is-visible { opacity: 1; transform: none; }

/* ---------- 1. Hero: fijo debajo, la intro se le echa encima ---------- */
.vdm-nos-page .fusion-fullwidth.vdm-nos-hero { --p: 0; position: sticky; top: 0; height: 100vh; height: 100svh; min-height: 620px; z-index: 0; padding: 0 !important; margin-top: 0 !important; margin-bottom: 0 !important; overflow: hidden; color: #fff; }
.vdm-nos-page .vdm-nos-hero > .fusion-row { position: static; height: 100%; padding: 0 var(--vdm-nos-gut) !important; display: flex; flex-direction: column; justify-content: flex-end; align-items: stretch; }
.vdm-nos-page .vdm-nos-hero .fusion-layout-column { margin-top: 0 !important; margin-bottom: 0 !important; }
.vdm-nos-page .vdm-nos-hero-bg { position: absolute !important; inset: 0; width: 100% !important; height: 100% !important; z-index: 0 !important; }
.vdm-nos-page .vdm-nos-hero-bg > .fusion-column-wrapper, .vdm-nos-page .vdm-nos-hero-bg .fusion-imageframe { display: block; height: 100%; padding: 0 !important; }
.vdm-nos-page .vdm-nos-hero-bg img { width: 100% !important; height: 100% !important; max-width: none; object-fit: cover; object-position: 50% 45%; transform: scale(calc(1.06 + .18 * var(--p))) translate(calc(var(--mx, 0) * -10px), calc(var(--my, 0) * -10px)); animation: vdmKen 14s ease-out forwards; }
@keyframes vdmKen { from { object-position: 50% 55%; } to { object-position: 50% 45%; } }
.vdm-nos-page .vdm-nos-hero-bg::after { content: ""; position: absolute; inset: 0; z-index: 2; background: linear-gradient(90deg, rgba(2,33,81,.55) 0%, rgba(2,33,81,.25) 45%, rgba(2,33,81,0) 75%), linear-gradient(180deg, rgba(2,33,81,.3) 0%, rgba(2,33,81,.2) 40%, rgba(2,33,81,.85) 100%); }
.vdm-nos-page .vdm-nos-hero-mist { position: absolute; inset: 0; z-index: 1 !important; pointer-events: none; overflow: hidden; }
.vdm-nos-page .vdm-nos-hero-mist i { position: absolute; width: 70vw; height: 70vw; border-radius: 50%; filter: blur(90px); opacity: .35; background: radial-gradient(circle, rgba(255,255,255,.9), rgba(255,255,255,0) 60%); animation: vdmMist 18s ease-in-out infinite alternate; transform: translate(calc(var(--mx, 0) * -30px), calc(var(--my, 0) * -30px)); }
.vdm-nos-page .vdm-nos-hero-mist i:nth-child(1) { left: -20vw; top: 20vh; }
.vdm-nos-page .vdm-nos-hero-mist i:nth-child(2) { right: -25vw; bottom: -10vh; animation-delay: -9s; opacity: .25; }
@keyframes vdmMist { from { translate: 0 0; } to { translate: 8vw -4vh; } }
.vdm-nos-page .vdm-nos-hero-motas { position: absolute; inset: 0; z-index: 1 !important; pointer-events: none; transform: translate(calc(var(--mx, 0) * 24px), calc(var(--my, 0) * 24px)); transition: transform .6s cubic-bezier(.22,.8,.26,1); }
.vdm-nos-page .vdm-nos-hero-motas i { position: absolute; width: 6px; height: 6px; border-radius: 50%; background: #fff; opacity: 0; box-shadow: 0 0 14px 3px rgba(255,255,255,.55); animation: vdmMota var(--d, 12s) linear infinite; animation-delay: var(--dl, 0s); }
.vdm-nos-page .vdm-nos-hero-motas i:nth-child(1) { left: 8%; top: 70%; --d: 14s; --dl: -2s; }
.vdm-nos-page .vdm-nos-hero-motas i:nth-child(2) { left: 18%; top: 85%; --d: 11s; --dl: -6s; width: 4px; height: 4px; }
.vdm-nos-page .vdm-nos-hero-motas i:nth-child(3) { left: 30%; top: 60%; --d: 16s; --dl: -1s; }
.vdm-nos-page .vdm-nos-hero-motas i:nth-child(4) { left: 42%; top: 78%; --d: 13s; --dl: -8s; width: 3px; height: 3px; }
.vdm-nos-page .vdm-nos-hero-motas i:nth-child(5) { left: 55%; top: 66%; --d: 15s; --dl: -4s; }
.vdm-nos-page .vdm-nos-hero-motas i:nth-child(6) { left: 63%; top: 88%; --d: 12s; --dl: -10s; width: 4px; height: 4px; }
.vdm-nos-page .vdm-nos-hero-motas i:nth-child(7) { left: 72%; top: 58%; --d: 17s; --dl: -3s; }
.vdm-nos-page .vdm-nos-hero-motas i:nth-child(8) { left: 80%; top: 74%; --d: 14s; --dl: -7s; width: 3px; height: 3px; }
.vdm-nos-page .vdm-nos-hero-motas i:nth-child(9) { left: 88%; top: 62%; --d: 13s; --dl: -5s; }
.vdm-nos-page .vdm-nos-hero-motas i:nth-child(10) { left: 94%; top: 82%; --d: 16s; --dl: -9s; width: 4px; height: 4px; }
.vdm-nos-page .vdm-nos-hero-motas i:nth-child(11) { left: 50%; top: 92%; --d: 12s; --dl: -11s; width: 3px; height: 3px; }
.vdm-nos-page .vdm-nos-hero-motas i:nth-child(12) { left: 24%; top: 95%; --d: 15s; --dl: -12s; }
@keyframes vdmMota { 0% { transform: translateY(0) scale(.6); opacity: 0; } 12% { opacity: .9; } 70% { opacity: .6; } 100% { transform: translateY(-52vh) translateX(6vw) scale(1); opacity: 0; } }
.vdm-nos-page .vdm-nos-hero-content { position: relative !important; z-index: 2 !important; width: 100% !important; padding: 0 0 9vh !important; transform: translateY(calc(var(--p) * -90px)); opacity: calc(1 - var(--p) * 1.6); }
.vdm-nos-page .vdm-nos-hero-content > .fusion-column-wrapper { padding: 0 !important; }
.vdm-nos-page .vdm-nos-hero .vdm-letters h1 { color: #fff !important; font-size: clamp(56px, 9.6vw, 136px) !important; line-height: .94 !important; letter-spacing: -.04em; margin: 0 0 26px !important; }
.vdm-nos-page .vdm-letters .vdm-word { display: inline-block; white-space: nowrap; }
.vdm-nos-page .vdm-letters .l { display: inline-block; opacity: 0; transform: translateY(.6em) rotate(6deg); animation: vdmLetter .9s cubic-bezier(.22,.8,.26,1) forwards; animation-delay: calc(.25s + var(--i) * .045s); transform-origin: 0 100%; }
@keyframes vdmLetter { to { opacity: 1; transform: none; } }
.vdm-nos-page .vdm-nos-hero-lead, .vdm-nos-page .vdm-nos-hero-lead p { font-size: clamp(17px, 1.5vw, 21px); line-height: 1.6; max-width: 560px; color: rgba(255,255,255,.88); margin: 0 0 34px; }
.vdm-nos-page .vdm-nos-hero-btns { width: 100% !important; margin: 0 !important; }
.vdm-nos-page .vdm-nos-hero-btns > .fusion-column-wrapper { display: flex !important; flex-direction: row !important; flex-wrap: wrap; gap: 14px; padding: 0 !important; }
.vdm-nos-page .vdm-nos-hero-foot { position: relative !important; z-index: 2 !important; width: 100% !important; padding: 0 !important; opacity: calc(1 - var(--p) * 2); }
.vdm-nos-page .vdm-nos-hero-foot > .fusion-column-wrapper { padding: 0 !important; }
.vdm-nos-page .vdm-nos-hero-foot .fusion-text { display: flex; justify-content: space-between; align-items: center; border-top: 1px solid rgba(255,255,255,.22); padding: 22px 0 76px; }
.vdm-nos-page .vdm-nos-badges { list-style: none; margin: 0; padding: 0; display: flex; gap: 28px; font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: 14px; color: #fff; }
.vdm-nos-page .vdm-nos-badges li { margin: 0; }
.vdm-nos-page .vdm-nos-badges li::before { content: ""; display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: var(--awb-color5); margin-right: 10px; vertical-align: 2px; }
.vdm-nos-page .vdm-nos-scrollcue { display: flex; align-items: center; gap: 14px; margin: 0; font-size: 12.5px; letter-spacing: .06em; text-transform: uppercase; font-weight: 600; color: #fff; }
.vdm-nos-page .vdm-nos-scrollcue::after { content: ""; width: 64px; height: 1px; background: rgba(255,255,255,.35); position: relative; overflow: hidden; }
.vdm-nos-page .vdm-nos-scrollcue i { width: 64px; height: 1px; background: rgba(255,255,255,.35); position: relative; overflow: hidden; }
.vdm-nos-page .vdm-nos-scrollcue i::after { content: ""; position: absolute; inset: 0; background: #fff; transform: translateX(-100%); animation: vdmCue 2.2s cubic-bezier(.22,.8,.26,1) infinite; }
@keyframes vdmCue { 0% { transform: translateX(-100%); } 60%, 100% { transform: translateX(100%); } }

.vdm-nos-page .fusion-fullwidth.vdm-nos-premios, .vdm-nos-page .fusion-fullwidth.vdm-nos-stack, .vdm-nos-page .fusion-fullwidth.vdm-nos-persona, .vdm-nos-page .fusion-fullwidth.vdm-nos-opiniones, .vdm-nos-page .fusion-fullwidth.vdm-nos-cta { padding-left: var(--vdm-nos-gut) !important; padding-right: var(--vdm-nos-gut) !important; }
.vdm-nos-page .fusion-fullwidth.vdm-nos-intro { padding-left: max(24px, calc((100% - 1000px) / 2)) !important; padding-right: max(24px, calc((100% - 1000px) / 2)) !important; }
/* ---------- 2. Intro: cortina crema ---------- */
.vdm-nos-page .fusion-fullwidth.vdm-nos-intro { box-shadow: 0 -30px 60px -30px rgba(2,33,81,.35); }
.vdm-nos-page .vdm-nos-intro-col { width: 100% !important; margin: 0 !important; }
.vdm-nos-page .vdm-words h2 { font-size: clamp(30px, 4.2vw, 62px) !important; line-height: 1.14 !important; letter-spacing: -.025em; }
.vdm-nos-page .vdm-words .w { opacity: .14; transition: opacity .35s linear; }
.vdm-nos-page .vdm-words .w.on { opacity: 1; }
.vdm-nos-page .vdm-words .w.hl { color: var(--awb-color5); }

/* ---------- 3. Manifiesto horizontal ---------- */
.vdm-nos-page .fusion-fullwidth.vdm-nos-hz { --p: 0; overflow: visible !important; padding: 0 !important; }
.vdm-nos-page .vdm-nos-hz > .fusion-row { display: block; }
.vdm-nos-page .vdm-nos-hz-track { width: 100% !important; height: 340vh; margin: 0 !important; }
.vdm-nos-page .vdm-nos-hz-track > .fusion-column-wrapper { position: sticky !important; top: 0; height: 100vh !important; overflow: hidden !important; flex-direction: column !important; justify-content: center !important; align-items: flex-start !important; display: flex !important; align-items: center; padding: 0 !important; }
.vdm-nos-page .vdm-nos-hz-track .fusion-builder-row-inner { position: relative !important; display: flex !important; flex-wrap: nowrap !important; align-items: center !important; gap: 6vw; width: max-content !important; max-width: none !important; margin: 0 !important; padding-left: var(--vdm-nos-gut) !important; padding-right: 24px !important; will-change: transform; }
.vdm-nos-page .vdm-nos-hz-panel { width: min(760px, 78vw) !important; flex: 0 0 auto !important; max-width: none !important; margin: 0 !important; position: relative; z-index: 1; color: #fff; }
.vdm-nos-page .vdm-nos-hz-panel > .fusion-column-wrapper { padding: 0 !important; }
.vdm-nos-page .vdm-nos-hz-num, .vdm-nos-page .vdm-nos-hz-num p { font-family: 'Quicksand', sans-serif; font-weight: 700; color: var(--awb-color5); letter-spacing: .1em; margin: 0 0 22px; }
.vdm-nos-page .vdm-nos-hz-title h2 { color: #fff !important; font-size: clamp(38px, 5.6vw, 84px) !important; line-height: 1 !important; letter-spacing: -.035em; text-wrap: balance; }
.vdm-nos-page .vdm-nos-hz-title h2 em { font-style: normal; color: var(--awb-color5); }
.vdm-nos-page .vdm-nos-hz-btn { margin-top: 40px !important; }
.vdm-nos-page .vdm-nos-hz-panel--img { position: relative !important; width: min(520px, 60vw) !important; height: min(640px, 72vh) !important; min-height: 0 !important; border-radius: 30px; overflow: hidden; }
.vdm-nos-page .vdm-nos-hz-panel--img > .fusion-column-wrapper { position: relative !important; display: block !important; height: 100% !important; padding: 0 !important; }
.vdm-nos-page .vdm-nos-hz-img { position: absolute !important; inset: 0; display: block !important; }
.vdm-nos-page .vdm-nos-hz-img img { width: 100% !important; height: 100% !important; object-fit: cover; object-position: 50% 50%; transform: translateX(calc(var(--p) * -60px)) scale(1.12); }
.vdm-nos-page .vdm-nos-hz-route { position: absolute; left: 0; top: 0; height: 100%; z-index: 0; overflow: visible; pointer-events: none; }
.vdm-nos-page .vdm-nos-hz-route path { fill: none; stroke-linecap: round; }
.vdm-nos-page .vdm-nos-hz-route-base { stroke: rgba(255,255,255,.18); stroke-width: 2; stroke-dasharray: 3 14; }
.vdm-nos-page .vdm-nos-hz-route-fill { stroke: var(--awb-color5); stroke-width: 2.5; stroke-dasharray: 3 14; }
.vdm-nos-page .vdm-nos-hz-plane path { fill: var(--awb-color5); stroke: none; filter: drop-shadow(0 6px 14px rgba(249,34,75,.6)); }
.vdm-nos-page .vdm-nos-hz-bar { position: absolute; left: max(24px, calc((100vw - 1240px) / 2)); right: max(24px, calc((100vw - 1240px) / 2)); bottom: 40px; height: 2px; background: rgba(255,255,255,.14); }
.vdm-nos-page .vdm-nos-hz-bar i { display: block; height: 100%; background: var(--awb-color5); width: calc(var(--p) * 100%); }

/* ---------- 4. Como trabajamos: pantalla completa fijada ---------- */
.vdm-nos-page .fusion-fullwidth.vdm-nos-pasos { --p: 0; overflow: visible !important; padding: 0 !important; }
.vdm-nos-page .vdm-nos-pasos > .fusion-row { display: block; }
.vdm-nos-page .vdm-nos-pasos-track { width: 100% !important; height: 420vh; margin: 0 !important; }
.vdm-nos-page .vdm-nos-pasos-track > .fusion-column-wrapper { position: sticky !important; top: 0; height: 100vh !important; overflow: hidden !important; padding: 0 !important; display: block !important; color: #fff; }
.vdm-nos-page .vdm-nos-pasos-track .fusion-builder-row-inner { position: relative !important; height: 100vh !important; display: block !important; width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 var(--vdm-nos-gut) !important; }
.vdm-nos-page .vdm-nos-pasos-bg { position: absolute !important; inset: 0; width: 100% !important; height: 100% !important; margin: 0 !important; z-index: 0 !important; }
.vdm-nos-page .vdm-nos-pasos-bg > .fusion-column-wrapper { height: 100%; padding: 0 !important; }
.vdm-nos-page .vdm-nos-pasos-bg::after { content: ""; position: absolute; inset: 0; z-index: 2; background: linear-gradient(180deg, rgba(1,20,47,.55) 0%, rgba(1,20,47,.15) 40%, rgba(1,20,47,.85) 100%); }
.vdm-nos-page .vdm-nos-pasos-img { position: absolute; inset: 0; display: block; opacity: 0; transition: opacity 1.1s cubic-bezier(.22,.8,.26,1); }
.vdm-nos-page .vdm-nos-pasos-img img { width: 100% !important; height: 100% !important; object-fit: cover; transform: scale(1.1); }
.vdm-nos-page .vdm-nos-pasos-img:nth-of-type(1) img { object-position: 50% 30%; }
.vdm-nos-page .vdm-nos-pasos-img:nth-of-type(3) img { object-position: 68% 50%; }
.vdm-nos-page .vdm-nos-pasos-img:nth-of-type(4) img { object-position: 50% 35%; }
.vdm-nos-page .vdm-nos-pasos-img.is-active { opacity: 1; }
.vdm-nos-page .vdm-nos-pasos-img.is-active img { animation: vdmPan 7s ease-out forwards; }
@keyframes vdmPan { from { transform: scale(1.12) translateX(2%); } to { transform: scale(1.02) translateX(-1%); } }
.vdm-nos-page .vdm-nos-pasos-ui { position: relative !important; z-index: 3 !important; height: 100vh; width: 100% !important; margin: 0 !important; }
.vdm-nos-page .vdm-nos-pasos-ui > .fusion-column-wrapper { height: 100%; display: grid !important; grid-template-columns: 1fr auto; grid-template-rows: auto auto 1fr; padding: calc(var(--vdm-nos-header) + 30px) 0 90px !important; }
.vdm-nos-page .vdm-nos-pasos-eyebrow { grid-area: 1 / 1 / 2 / 3; }
.vdm-nos-page .vdm-nos-pasos-head { grid-area: 2 / 1 / 3 / 3; }
.vdm-nos-page .vdm-nos-pasos-head h2 { color: #fff !important; font-size: clamp(30px, 3.2vw, 44px) !important; }
.vdm-nos-page .vdm-nos-paso { grid-area: 3 / 1 / 4 / 2; align-self: end; max-width: 600px; opacity: 0; transform: translateY(30px); transition: opacity .7s cubic-bezier(.22,.8,.26,1), transform .7s cubic-bezier(.22,.8,.26,1); pointer-events: none; }
.vdm-nos-page .vdm-nos-paso.is-active { opacity: 1; transform: none; }
.vdm-nos-page .vdm-nos-paso h3 { color: #fff; font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: clamp(40px, 5.4vw, 80px); line-height: 1; letter-spacing: -.035em; margin: 0 0 18px; }
.vdm-nos-page .vdm-nos-paso p { font-size: 20px; line-height: 1.55; margin: 0 0 10px; font-weight: 500; color: #fff; }
.vdm-nos-page .vdm-nos-paso p.vdm-nos-paso-extra { font-size: 16.5px; font-weight: 400; color: rgba(255,255,255,.75); }
.vdm-nos-page .vdm-nos-paso-ico { width: 56px; height: 56px; margin-bottom: 22px; fill: none; stroke: var(--awb-color5); stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; display: block; }
.vdm-nos-page .vdm-nos-paso-ico path { stroke-dasharray: 120; stroke-dashoffset: 120; }
.vdm-nos-page .vdm-nos-paso.is-active .vdm-nos-paso-ico path { animation: vdmDraw 1.6s cubic-bezier(.22,.8,.26,1) forwards; animation-delay: .25s; }
.vdm-nos-page .vdm-nos-paso.is-active .vdm-nos-paso-ico path:nth-child(2) { animation-delay: .7s; }
@keyframes vdmDraw { to { stroke-dashoffset: 0; } }
.vdm-nos-page .vdm-nos-pasos-index { grid-area: 3 / 2 / 4 / 3; align-self: end; text-align: right; }
.vdm-nos-page .vdm-nos-pasos-big { display: block; font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: clamp(90px, 14vw, 200px); line-height: .85; letter-spacing: -.05em; color: rgba(255,255,255,.14); }
.vdm-nos-page .vdm-nos-pasos-dots { list-style: none; margin: 26px 0 0; padding: 0; font-family: 'Quicksand', sans-serif; font-weight: 600; font-size: 14px; color: rgba(255,255,255,.45); }
.vdm-nos-page .vdm-nos-pasos-dots li { padding: 5px 0; margin: 0; transition: color .4s; }
.vdm-nos-page .vdm-nos-pasos-dots li.is-on { color: #fff; }
.vdm-nos-page .vdm-nos-pasos-dots li.is-on::after { content: ""; display: inline-block; width: 28px; height: 2px; background: var(--awb-color5); margin-left: 12px; vertical-align: middle; }
.vdm-nos-page .vdm-nos-pasos-bar { position: absolute; left: 0; right: 0; bottom: 0; height: 4px; background: rgba(255,255,255,.12); z-index: 4; }
.vdm-nos-page .vdm-nos-pasos-bar i { display: block; height: 100%; background: var(--awb-color5); width: calc(var(--p) * 100%); }

/* ---------- 5. Premios ---------- */
.vdm-nos-page .vdm-nos-premios-head > .fusion-column-wrapper { padding: 0 !important; }
.vdm-nos-page .vdm-nos-cifras.fusion-counters-box { display: grid !important; grid-template-columns: repeat(4, 1fr); gap: 18px; margin: 64px 0 80px !important; width: 100% !important; }
.vdm-nos-page .vdm-nos-cifras.fusion-counters-box::before, .vdm-nos-page .vdm-nos-cifras.fusion-counters-box::after { display: none !important; content: none !important; }
.vdm-nos-page .vdm-nos-cifras .fusion-counter-box { width: auto !important; max-width: none !important; float: none !important; padding: 0 !important; margin: 0 !important; }
.vdm-nos-page .vdm-nos-cifras .counter-box-container { background: var(--awb-color2); border-radius: 28px; padding: 44px 28px !important; text-align: center; border: 0 !important; }
.vdm-nos-page .vdm-nos-cifras .content-box-counter { font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: clamp(52px, 6vw, 84px) !important; line-height: 1 !important; color: var(--awb-color4); letter-spacing: -.04em; margin-bottom: 14px; }
.vdm-nos-page .vdm-nos-cifras .counter-box-content { font-size: 14.5px !important; line-height: 1.5; color: #4a5873; }
.vdm-nos-page .vdm-nos-marquee { width: 100% !important; margin: 0 !important; overflow: hidden; mask: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent); -webkit-mask: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent); }
.vdm-nos-page .vdm-nos-marquee > .fusion-column-wrapper { display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; align-items: center; gap: 56px; width: max-content !important; padding: 0 !important; animation: vdmMarquee 40s linear infinite; }
.vdm-nos-page .vdm-nos-marquee:hover > .fusion-column-wrapper { animation-play-state: paused; }
.vdm-nos-page .vdm-nos-sello { display: block !important; flex: 0 0 auto !important; width: 104px !important; height: 104px !important; margin: 0 !important; }
.vdm-nos-page .vdm-nos-sello img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: contain; }
@keyframes vdmMarquee { to { transform: translateX(calc(-100% / 3)); } }

/* ---------- 6. Tarjetas apiladas ---------- */
.vdm-nos-page .fusion-fullwidth.vdm-nos-stack { overflow: visible !important; }
.vdm-nos-page .vdm-nos-stack > .fusion-row { display: flex; flex-direction: column; gap: 20px; }
.vdm-nos-page .vdm-nos-stack-head { width: 100% !important; margin: 0 0 44px !important; }
.vdm-nos-page .vdm-nos-stack-head > .fusion-column-wrapper { padding: 0 !important; }
.vdm-nos-page .vdm-nos-card { --i: 0; --s: 1; position: sticky !important; top: calc(var(--vdm-nos-header) + 20px + var(--i) * 18px); height: calc(100vh - var(--vdm-nos-header) - 80px); max-height: 680px; width: 100% !important; margin: 0 !important; transform: scale(var(--s)); transform-origin: 50% 0; box-shadow: 0 40px 80px -40px rgba(2,33,81,.5); color: #fff; isolation: isolate; border-radius: 34px; overflow: hidden; }
.vdm-nos-page .vdm-nos-card > .fusion-column-wrapper { position: relative; height: 100%; display: flex !important; flex-direction: column; justify-content: center; padding: 56px !important; }
.vdm-nos-page .vdm-nos-card > .fusion-column-wrapper::after { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, rgba(2,33,81,.85) 0%, rgba(2,33,81,.45) 50%, rgba(2,33,81,.05) 100%); pointer-events: none; }
.vdm-nos-page .vdm-nos-card-img { position: absolute !important; inset: 0; z-index: 0 !important; display: block; }
.vdm-nos-page .vdm-nos-card-img img { width: 100% !important; height: 100% !important; object-fit: cover; transition: transform 1.4s cubic-bezier(.22,.8,.26,1); }
.vdm-nos-page .vdm-nos-card:hover .vdm-nos-card-img img { transform: scale(1.05); }
.vdm-nos-page .vdm-nos-card .fusion-text:not(.vdm-nos-card-tags), .vdm-nos-page .vdm-nos-card .fusion-title, .vdm-nos-page .vdm-nos-card .fusion-button-wrapper { position: relative !important; z-index: 2 !important; max-width: 600px; }
.vdm-nos-page .vdm-nos-card-title h3 { color: #fff !important; font-size: clamp(34px, 4.2vw, 56px) !important; line-height: 1.04 !important; letter-spacing: -.03em; margin: 0 0 16px !important; text-wrap: balance; }
.vdm-nos-page .vdm-nos-card-p p { margin: 0 0 22px; font-size: 16px; line-height: 1.7; color: rgba(255,255,255,.85); }
.vdm-nos-page .vdm-nos-card .vdm-nos-card-link { box-shadow: none !important; }
.vdm-nos-page .vdm-nos-card .vdm-nos-card-link:hover { transform: translateX(6px); }
.vdm-nos-page .vdm-nos-card-tags { position: absolute !important; right: 48px; top: 0; bottom: 0; z-index: 3 !important; display: flex; align-items: center; pointer-events: none; }
.vdm-nos-page .vdm-nos-tags { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; align-items: flex-end; gap: 18px; }
.vdm-nos-page .vdm-nos-tags li { --i: 0; margin: 0; font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: 15px; color: var(--awb-color4); background: rgba(255,255,255,.92); padding: 12px 20px; border-radius: 30px; box-shadow: 0 14px 30px -14px rgba(2,33,81,.6); opacity: 0; transform: translateX(40px); transition: opacity .8s cubic-bezier(.22,.8,.26,1), transform .8s cubic-bezier(.22,.8,.26,1); transition-delay: calc(.3s + var(--i) * .15s); }
.vdm-nos-page .vdm-nos-tags li::before { content: ""; display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--awb-color5); margin-right: 10px; }
.vdm-nos-page .vdm-nos-card.is-visible .vdm-nos-tags li { opacity: 1; transform: none; animation: vdmBob 5s ease-in-out infinite; animation-delay: calc(1.2s + var(--i) * .6s); }
.vdm-nos-page .vdm-nos-tags li:nth-child(1) { --i: 0; }
.vdm-nos-page .vdm-nos-tags li:nth-child(2) { --i: 1; margin-right: 60px; }
.vdm-nos-page .vdm-nos-tags li:nth-child(3) { --i: 2; margin-right: 20px; }
.vdm-nos-page .vdm-nos-tags li:nth-child(4) { --i: 3; margin-right: 80px; }
@keyframes vdmBob { 0%, 100% { translate: 0 0; } 50% { translate: 0 -10px; } }

/* ---------- 7. Quien esta detras: chat que se escribe solo ---------- */
.vdm-nos-page .vdm-nos-persona > .fusion-row { align-items: center; gap: 90px; }
.vdm-nos-page .vdm-nos-persona-chat, .vdm-nos-page .vdm-nos-persona-txt { flex: 1 1 0 !important; width: auto !important; max-width: none !important; margin: 0 !important; }
.vdm-nos-page .vdm-nos-persona-chat > .fusion-column-wrapper, .vdm-nos-page .vdm-nos-persona-txt > .fusion-column-wrapper { padding: 0 !important; }
.vdm-nos-page .fusion-text.vdm-nos-chat { background: #fff; border-radius: 30px; box-shadow: 0 40px 80px -40px rgba(2,33,81,.45), 0 0 0 1px rgba(2,33,81,.06); overflow: hidden; max-width: 460px; font-size: 15px; }
.vdm-nos-page .vdm-nos-chat-head { display: flex; align-items: center; gap: 14px; padding: 18px 22px; background: var(--awb-color4); color: #fff; }
.vdm-nos-page .vdm-nos-chat-head b { display: block; font-family: 'Quicksand', sans-serif; font-size: 16px; color: #fff; }
.vdm-nos-page .vdm-nos-chat-head small { color: rgba(255,255,255,.6); font-size: 12px; }
.vdm-nos-page .vdm-nos-chat-head small::before { content: ""; display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: #3ddc84; margin-right: 6px; }
.vdm-nos-page .vdm-nos-chat-avatar { width: 40px; height: 40px; border-radius: 50%; background: var(--awb-color5); display: grid; place-items: center; font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: 13px; color: #fff; }
.vdm-nos-page .vdm-nos-chat-body { padding: 22px; background: #FFF8F5; display: flex; flex-direction: column; gap: 12px; min-height: 380px; }
.vdm-nos-page .vdm-nos-chat .vdm-nos-msg { margin: 0; max-width: 86%; padding: 12px 16px; border-radius: 18px; line-height: 1.5; opacity: 0; transform: translateY(14px) scale(.96); transition: opacity .5s cubic-bezier(.22,.8,.26,1), transform .5s cubic-bezier(.22,.8,.26,1); }
.vdm-nos-page .vdm-nos-chat .vdm-nos-msg.is-on { opacity: 1; transform: none; }
.vdm-nos-page .vdm-nos-chat .vdm-nos-msg--in { align-self: flex-start; background: #fff; color: var(--awb-color4); border-bottom-left-radius: 6px; }
.vdm-nos-page .vdm-nos-chat .vdm-nos-msg--out { align-self: flex-end; background: var(--awb-color4); color: #fff; border-bottom-right-radius: 6px; }
.vdm-nos-page .vdm-nos-chat .vdm-nos-typing { margin: 0; align-self: flex-end; display: none; gap: 5px; padding: 14px 16px; background: var(--awb-color4); border-radius: 18px; border-bottom-right-radius: 6px; }
.vdm-nos-page .vdm-nos-chat .vdm-nos-typing.is-on { display: flex; }
.vdm-nos-page .vdm-nos-typing i { width: 7px; height: 7px; border-radius: 50%; background: rgba(255,255,255,.7); animation: vdmTyping 1s ease-in-out infinite; }
.vdm-nos-page .vdm-nos-typing i:nth-child(2) { animation-delay: .15s; }
.vdm-nos-page .vdm-nos-typing i:nth-child(3) { animation-delay: .3s; }
@keyframes vdmTyping { 0%, 100% { transform: translateY(0); opacity: .5; } 50% { transform: translateY(-5px); opacity: 1; } }
.vdm-nos-page .vdm-nos-persona-txt .vdm-nos-h2 { margin-bottom: 24px !important; }
.vdm-nos-page .vdm-nos-persona-p p { font-size: 18px; line-height: 1.7; margin: 0 0 36px; color: #4a5873; }
.vdm-nos-page .vdm-nos-quote blockquote { margin: 0; padding: 28px 32px; background: #FFF8F5; border-radius: 22px; border-left: 4px solid var(--awb-color5); font-style: normal; }
.vdm-nos-page .vdm-nos-quote blockquote p { margin: 0 0 12px; font-family: 'Quicksand', sans-serif; font-weight: 600; font-size: 19px; color: var(--awb-color4); line-height: 1.5; }
.vdm-nos-page .vdm-nos-quote cite { font-style: normal; font-size: 13.5px; color: #7b879c; }

/* ---------- 8. Opiniones: carrusel deslizable ---------- */
.vdm-nos-page .vdm-nos-op-head > .fusion-column-wrapper { display: flex !important; flex-direction: row !important; justify-content: space-between; align-items: flex-end; gap: 24px; padding: 0 0 40px !important; }
.vdm-nos-page .vdm-nos-op-head-txt { flex: 1; }
.vdm-nos-page .vdm-nos-op-arrows { display: flex; gap: 10px; }
.vdm-nos-page .vdm-nos-op-arrows button { width: 52px; height: 52px; border-radius: 50%; border: 0; background: #fff; color: var(--awb-color4); font-size: 20px; cursor: pointer; box-shadow: 0 8px 24px -12px rgba(2,33,81,.35); transition: background .3s, color .3s; padding: 0; }
.vdm-nos-page .vdm-nos-op-arrows button:hover { background: var(--awb-color4); color: #fff; }
.vdm-nos-page .vdm-nos-op-track { margin: 0 !important; }
.vdm-nos-page .vdm-nos-op-track > .fusion-column-wrapper { padding: 0 !important; }
.vdm-nos-page .vdm-nos-op-track .fusion-builder-row-inner { display: flex !important; flex-wrap: nowrap !important; align-items: stretch; gap: 18px; width: auto !important; max-width: none !important; margin: 0 calc(-1 * var(--vdm-nos-gut)) 0 0 !important; padding: 6px var(--vdm-nos-gut) 24px 0; overflow-x: auto !important; overflow-y: hidden !important; -webkit-overflow-scrolling: touch; touch-action: pan-x pan-y; scroll-snap-type: x mandatory; scrollbar-width: none; }
.vdm-nos-page .vdm-nos-op-track .fusion-builder-row-inner::-webkit-scrollbar { display: none; }
.vdm-nos-page .vdm-nos-op { flex: 0 0 360px !important; width: 360px !important; max-width: none !important; margin: 0 !important; scroll-snap-align: start; background: #fff; border-radius: 26px; box-shadow: 0 20px 40px -32px rgba(2,33,81,.4); }
.vdm-nos-page .vdm-nos-op > .fusion-column-wrapper { height: 100%; padding: 34px !important; }
.vdm-nos-page .vdm-nos-op .fusion-text { display: flex; flex-direction: column; height: 100%; }
.vdm-nos-page .vdm-nos-op h3 { font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: 21px; color: var(--awb-color4); margin: 14px 0 12px; }
.vdm-nos-page .vdm-nos-op p { font-size: 15px; line-height: 1.7; margin: 0 0 24px; flex: 1; color: #4a5873; }
.vdm-nos-page .vdm-nos-op footer { display: flex; flex-direction: column; border-top: 1px solid #eef0f4; padding-top: 18px; font-size: 13.5px; }
.vdm-nos-page .vdm-nos-op footer b { color: var(--awb-color4); font-family: 'Quicksand', sans-serif; font-size: 15px; }
.vdm-nos-page .vdm-nos-op footer span { color: #7b879c; }
.vdm-nos-page .vdm-stars { color: var(--awb-color5); letter-spacing: 3px; font-size: 15px; }
.vdm-nos-page .vdm-nos-op--score { flex-basis: 300px !important; width: 300px !important; background: var(--awb-color4); color: rgba(255,255,255,.8); }
.vdm-nos-page .vdm-nos-op--score .fusion-text { align-items: center; justify-content: center; text-align: center; }
.vdm-nos-page .vdm-nos-op--score .fusion-text p { display: flex; flex-direction: column; align-items: center; margin: 0; }
.vdm-nos-page .vdm-nos-op--score .fusion-text small, .vdm-nos-page .vdm-nos-op--score .fusion-text span, .vdm-nos-page .vdm-nos-op--score .fusion-text strong { display: block; width: 100%; text-align: center; }
.vdm-nos-page .vdm-nos-op { align-self: stretch !important; display: flex !important; flex-direction: column; }
.vdm-nos-page .vdm-nos-op--score small { font-weight: 600; letter-spacing: .04em; }
.vdm-nos-page .vdm-nos-op-award { margin: 6px 0 4px; color: var(--awb-color5); font-family: 'Quicksand', sans-serif; font-weight: 700; }
.vdm-nos-page .vdm-nos-op--score strong { font-family: 'Quicksand', sans-serif; font-size: 84px; line-height: 1; color: #fff; margin: 10px 0; }
.vdm-nos-page .vdm-nos-op-sub { margin: 14px 0 0; font-size: 14px; }
.vdm-nos-page .vdm-nos-op-more { margin: 30px 0 0 !important; }
.vdm-nos-page .vdm-nos-op-more > .fusion-column-wrapper { padding: 0 !important; }
.vdm-nos-page .vdm-nos-op-more a { color: var(--awb-color4); font-weight: 600; font-size: 14.5px; border-bottom: 1.5px solid var(--awb-color5); padding-bottom: 3px; }

/* ---------- 9. CTA final ---------- */
.vdm-nos-page .fusion-fullwidth.vdm-nos-cta { --p: 0; min-height: 92vh; display: flex; align-items: center; justify-content: center; text-align: center; color: #fff; }
.vdm-nos-page .vdm-nos-cta > .fusion-row { position: static; justify-content: center; width: 100%; }
.vdm-nos-page .vdm-nos-cta-bg { position: absolute !important; inset: 0; width: 100% !important; height: 100% !important; margin: 0 !important; z-index: 0 !important; }
.vdm-nos-page .vdm-nos-cta-bg > .fusion-column-wrapper, .vdm-nos-page .vdm-nos-cta-bg .fusion-imageframe { display: block; height: 100%; padding: 0 !important; }
.vdm-nos-page .vdm-nos-cta-bg img { width: 100% !important; height: 100% !important; max-width: none; object-fit: cover; object-position: 50% 35%; transform: scale(calc(1.28 - .28 * var(--p))); }
.vdm-nos-page .vdm-nos-cta-bg::after { content: ""; position: absolute; inset: 0; z-index: 2; background: linear-gradient(180deg, rgba(2,33,81,.3), rgba(2,33,81,.8)); }
.vdm-nos-page .vdm-ping { position: absolute; z-index: 2; width: 14px; height: 14px; border-radius: 50%; background: var(--awb-color5); box-shadow: 0 0 0 3px rgba(255,255,255,.9); opacity: 0; transform: scale(.4); }
.vdm-nos-page .vdm-ping::after { content: ""; position: absolute; inset: -4px; border-radius: 50%; border: 2px solid var(--awb-color5); animation: vdmPing 2.4s ease-out infinite; }
.vdm-nos-page .vdm-nos-cta.is-visible .vdm-ping { animation: vdmPingIn .6s cubic-bezier(.22,.8,.26,1) forwards; }
.vdm-nos-page .vdm-ping:nth-of-type(1) { left: 26%; top: 32%; animation-delay: .4s !important; }
.vdm-nos-page .vdm-ping:nth-of-type(2) { left: 44%; top: 58%; animation-delay: .9s !important; }
.vdm-nos-page .vdm-ping:nth-of-type(3) { left: 61%; top: 28%; animation-delay: 1.4s !important; }
.vdm-nos-page .vdm-ping:nth-of-type(4) { left: 74%; top: 66%; animation-delay: 1.9s !important; }
.vdm-nos-page .vdm-ping:nth-of-type(5) { left: 87%; top: 42%; animation-delay: 2.4s !important; }
@keyframes vdmPingIn { to { opacity: 1; transform: scale(1); } }
@keyframes vdmPing { 0% { transform: scale(.6); opacity: 1; } 100% { transform: scale(2.6); opacity: 0; } }
.vdm-nos-page .vdm-nos-cta-inner { position: relative !important; z-index: 3 !important; width: min(860px, 100%) !important; margin: 0 auto !important; padding: 120px 0 !important; }
.vdm-nos-page .vdm-nos-cta-inner > .fusion-column-wrapper { padding: 0 !important; align-items: center; }
.vdm-nos-page .vdm-nos-cta-title h2 { color: #fff !important; font-size: clamp(38px, 5.6vw, 76px) !important; line-height: 1.02 !important; letter-spacing: -.035em; margin: 0 0 22px !important; text-wrap: balance; }
.vdm-nos-page .vdm-nos-cta-p p { font-size: 19px; line-height: 1.6; color: rgba(255,255,255,.85); margin: 0 0 40px; }
.vdm-nos-page .vdm-nos-cta-btns { width: 100% !important; margin: 0 !important; }
.vdm-nos-page .vdm-nos-cta-btns > .fusion-column-wrapper { display: flex !important; flex-direction: row !important; justify-content: center; flex-wrap: wrap; gap: 14px; padding: 0 !important; }

/* ---------- Movil ---------- */
@media (max-width: 820px) {
  .vdm-nos-page .fusion-fullwidth.vdm-nos-hero { min-height: 560px; }
  .vdm-nos-page .vdm-nos-hero > .fusion-row { padding-top: calc(var(--vdm-nos-header) + 16px); }
  .vdm-nos-page .vdm-nos-hero-content { padding-bottom: 4vh !important; }
  .vdm-nos-page .vdm-nos-hero .vdm-letters h1 { font-size: clamp(38px, 11vw, 56px) !important; margin-bottom: 16px !important; }
  .vdm-nos-page .vdm-nos-hero-lead, .vdm-nos-page .vdm-nos-hero-lead p { font-size: 16px; margin-bottom: 22px; }
  .vdm-nos-page .vdm-nos-hero .vdm-eyebrow--light p { margin-bottom: 10px; }
  .vdm-nos-page .vdm-nos-hero-btns > .fusion-column-wrapper .fusion-button-wrapper { flex: 1 1 100%; }
  .vdm-nos-page .vdm-nos-hero-btns .fusion-button { width: 100%; justify-content: center; }
  .vdm-nos-page .vdm-nos-hero-foot .fusion-text { flex-direction: column; align-items: flex-start; gap: 14px; padding-bottom: 52px; }
  .vdm-nos-page .vdm-nos-badges { gap: 14px; font-size: 12.5px; flex-wrap: wrap; }
  .vdm-nos-page .vdm-nos-scrollcue { display: none; }
  .vdm-nos-page .vdm-nos-hero-mist i { width: 120vw; height: 120vw; }
  .vdm-nos-page .fusion-fullwidth.vdm-nos-hz { padding: 100px 0 !important; }
  .vdm-nos-page .vdm-nos-hz-track { height: auto !important; }
  .vdm-nos-page .vdm-nos-hz-track > .fusion-column-wrapper { position: static !important; height: auto !important; display: block !important; overflow: visible !important; }
  .vdm-nos-page .vdm-nos-hz-track .fusion-builder-row-inner { flex-direction: column !important; align-items: stretch !important; gap: 56px; width: 100% !important; padding: 0 24px !important; transform: none !important; }
  .vdm-nos-page .vdm-nos-hz-panel, .vdm-nos-page .vdm-nos-hz-panel--img { width: 100% !important; }
  .vdm-nos-page .vdm-nos-hz-panel--img { height: 56vh !important; }
  .vdm-nos-page .vdm-nos-hz-img img { transform: none; }
  .vdm-nos-page .vdm-nos-hz-route, .vdm-nos-page .vdm-nos-hz-bar { display: none; }
  .vdm-nos-page .vdm-nos-pasos-track { height: 400vh; }
  .vdm-nos-page .vdm-nos-pasos-ui > .fusion-column-wrapper { grid-template-columns: 1fr; grid-template-rows: auto auto 1fr auto; padding-bottom: 60px !important; }
  .vdm-nos-page .vdm-nos-pasos-eyebrow { grid-area: 1 / 1 / 2 / 2; }
  .vdm-nos-page .vdm-nos-pasos-head { grid-area: 2 / 1 / 3 / 2; }
  .vdm-nos-page .vdm-nos-paso { grid-area: 3 / 1 / 4 / 2; }
  .vdm-nos-page .vdm-nos-paso h3 { font-size: 40px; }
  .vdm-nos-page .vdm-nos-paso p { font-size: 17px; }
  .vdm-nos-page .vdm-nos-paso-ico { width: 44px; height: 44px; margin-bottom: 14px; }
  .vdm-nos-page .vdm-nos-pasos-index { grid-area: 4 / 1 / 5 / 2; text-align: left; margin-top: 26px; }
  .vdm-nos-page .vdm-nos-pasos-big { font-size: 72px; }
  .vdm-nos-page .vdm-nos-pasos-dots { display: none; }
  .vdm-nos-page .vdm-nos-cifras.fusion-counters-box { grid-template-columns: 1fr 1fr; gap: 12px; margin: 44px 0 50px !important; }
  .vdm-nos-page .vdm-nos-cifras .counter-box-container { padding: 28px 16px !important; }
  .vdm-nos-page .vdm-nos-sello { width: 74px !important; height: 74px !important; }
  .vdm-nos-page .vdm-nos-card { top: calc(var(--vdm-nos-header) + 16px + var(--i) * 12px); height: calc(100vh - var(--vdm-nos-header) - 60px); max-height: 600px; border-radius: 26px; }
  .vdm-nos-page .vdm-nos-card > .fusion-column-wrapper { padding: 28px !important; justify-content: flex-end; }
  .vdm-nos-page .vdm-nos-card > .fusion-column-wrapper::after { background: linear-gradient(180deg, rgba(2,33,81,.05) 20%, rgba(2,33,81,.9) 100%); }
  .vdm-nos-page .vdm-nos-card-title h3 { font-size: 32px !important; }
  .vdm-nos-page .vdm-nos-card-tags { right: 16px; top: 16px; bottom: auto; }
  .vdm-nos-page .vdm-nos-tags { flex-direction: row; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
  .vdm-nos-page .vdm-nos-tags li { font-size: 12.5px; padding: 8px 13px; margin: 0 !important; }
  .vdm-nos-page .vdm-nos-persona > .fusion-row { flex-direction: column; gap: 44px; }
  .vdm-nos-page .vdm-nos-persona-chat, .vdm-nos-page .vdm-nos-persona-txt { width: 100% !important; flex: none !important; }
  .vdm-nos-page .fusion-text.vdm-nos-chat { max-width: none; }
  .vdm-nos-page .vdm-nos-chat-body { min-height: 0; }
  .vdm-nos-page .vdm-nos-op-head > .fusion-column-wrapper { flex-direction: column !important; align-items: flex-start; }
  .vdm-nos-page .vdm-nos-op-arrows { display: none; }
  .vdm-nos-page .vdm-nos-op-track .fusion-builder-row-inner { margin: 0 -24px 0 0 !important; padding-right: 24px; }
  .vdm-nos-page .vdm-nos-op { flex-basis: 84vw !important; width: 84vw !important; }
  .vdm-nos-page .vdm-nos-op > .fusion-column-wrapper { padding: 28px !important; }
  .vdm-nos-page .vdm-nos-op--score { flex-basis: 62vw !important; width: 62vw !important; }
  .vdm-nos-page .vdm-nos-op--score strong { font-size: 64px; }
  .vdm-nos-page .fusion-fullwidth.vdm-nos-cta { min-height: 82vh; }
  .vdm-nos-page .vdm-nos-cta-inner { padding: 90px 0 !important; }
  .vdm-nos-page .vdm-nos-cta-btns > .fusion-column-wrapper .fusion-button-wrapper { flex: 1 1 100%; }
  .vdm-nos-page .vdm-nos-cta-btns .fusion-button { width: 100%; justify-content: center; }
  .vdm-nos-page .vdm-ping { width: 10px; height: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .vdm-nos-page .vdm-reveal { opacity: 1; transform: none; transition: none; }
  .vdm-nos-page .vdm-words .w { opacity: 1; }
  .vdm-nos-page .vdm-nos-hero-mist i, .vdm-nos-page .vdm-nos-hero-motas i, .vdm-nos-page .vdm-nos-tags li, .vdm-nos-page .vdm-nos-pasos-img.is-active img, .vdm-nos-page .vdm-ping::after, .vdm-nos-page .vdm-nos-hero-bg img { animation: none; }
  .vdm-nos-page .vdm-letters .l { opacity: 1; transform: none; animation: none; }
  .vdm-nos-page .vdm-nos-paso-ico path { stroke-dashoffset: 0; }
  .vdm-nos-page .vdm-nos-chat .vdm-nos-msg { opacity: 1; transform: none; }
  .vdm-nos-page .vdm-nos-marquee > .fusion-column-wrapper { animation: none; }
}

.vdm-nos-page .vdm-nos-hz-img img.wp-image-3903 { object-position: 30% 50%; }

.vdm-nos-page .vdm-nos-hero-bg .fusion-imageframe, .vdm-nos-page .vdm-nos-cta-bg .fusion-imageframe, .vdm-nos-page .vdm-nos-pasos-img, .vdm-nos-page .vdm-nos-card-img { position: absolute !important; inset: 0 !important; display: block !important; width: 100% !important; height: 100% !important; max-height: none !important; margin: 0 !important; }
.vdm-nos-page .vdm-nos-hz-img { display: block !important; width: 100% !important; height: 100% !important; }
.vdm-nos-page .vdm-nos-hero-bg > .fusion-column-wrapper, .vdm-nos-page .vdm-nos-cta-bg > .fusion-column-wrapper, .vdm-nos-page .vdm-nos-pasos-bg > .fusion-column-wrapper { position: relative !important; display: block !important; height: 100% !important; padding: 0 !important; }
.vdm-nos-page .vdm-nos-hero-bg .fusion-imageframe img, .vdm-nos-page .vdm-nos-cta-bg .fusion-imageframe img, .vdm-nos-page .vdm-nos-pasos-img img, .vdm-nos-page .vdm-nos-card-img img, .vdm-nos-page .vdm-nos-hz-img img { width: 100% !important; height: 100% !important; max-width: none !important; max-height: none !important; object-fit: cover; }

/* ============================================================
   FOOTER v2 (2026-09-27) · Avada Layout "Global Footer v2"
   ============================================================ */
.fusion-fullwidth.vdm-ft { position: relative; color: #fff; --vdm-ft-gut: clamp(24px, 4.2vw, 60px); padding: 0 var(--vdm-ft-gut) 0 !important; }
.vdm-ft::before { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; background: radial-gradient(60% 40% at 0% 0%, rgba(249,34,75,.16), transparent 70%), radial-gradient(50% 40% at 100% 100%, rgba(70,130,255,.14), transparent 70%); }
.vdm-ft::after { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; background-image: radial-gradient(rgba(255,255,255,.07) 1px, transparent 1.2px); background-size: 22px 22px; mask: linear-gradient(180deg, transparent, #000 30%, #000 70%, transparent); -webkit-mask: linear-gradient(180deg, transparent, #000 30%, #000 70%, transparent); }
.vdm-ft > .fusion-row { position: relative; z-index: 1; display: flex !important; flex-wrap: wrap !important; align-items: flex-start !important; }
.vdm-ft .fusion-layout-column { margin-top: 0 !important; margin-bottom: 0 !important; }
.vdm-ft-route { position: absolute; left: 0; right: 0; top: 0; width: 100%; height: 120px; pointer-events: none; z-index: 1; }
.vdm-ft-route path { fill: none; stroke: var(--awb-color5); stroke-width: 2; stroke-dasharray: 3 12; stroke-linecap: round; opacity: .7; }
.vdm-ft-route .vdm-ft-plane { fill: var(--awb-color5); filter: drop-shadow(0 4px 12px rgba(249,34,75,.6)); }
/* fila 1 */
.vdm-ft-brand, .vdm-ft-col { padding-top: 96px !important; padding-bottom: 56px !important; }
.vdm-ft-brand > .fusion-column-wrapper, .vdm-ft-col > .fusion-column-wrapper { padding: 0 48px 0 0 !important; }
.vdm-ft-blog > .fusion-column-wrapper { padding-right: 0 !important; }
.vdm-ft-logo { display: block !important; margin: 0 0 26px !important; }
.vdm-ft-logo img { width: 190px !important; height: auto; }
.vdm-ft-claim { font-family: 'Quicksand', sans-serif !important; font-weight: 700; font-size: 22px !important; line-height: 1.2 !important; color: #fff; margin: 0 0 12px !important; max-width: 340px; }
.vdm-ft-claim em { font-style: normal; color: var(--awb-color5); }
.vdm-ft-desc p { color: rgba(255,255,255,.62); font-size: 14px !important; line-height: 1.7; max-width: 360px; margin: 0 0 24px !important; }
.vdm-ft-contact p { margin: 0 0 10px !important; }
.vdm-ft-chip { display: inline-flex; align-items: center; gap: 10px; padding: 11px 16px; border-radius: 999px; border: 1px solid rgba(255,255,255,.14); color: #fff !important; text-decoration: none !important; font-size: 14px; font-weight: 500; background: rgba(255,255,255,.03); transition: background .35s, border-color .35s, transform .35s, color .35s; }
.vdm-ft-chip::before { content: ""; width: 16px; height: 16px; flex: none; background-repeat: no-repeat; background-size: contain; }
.vdm-ft-chip--mail::before { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f9224b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='5' width='18' height='14' rx='3'/><path d='m3 7 9 6 9-6'/></svg>"); }
.vdm-ft-chip--tel::before { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f9224b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M5 4h4l2 5-2.5 1.5a11 11 0 0 0 5 5L15 13l5 2v4a2 2 0 0 1-2 2A16 16 0 0 1 3 6a2 2 0 0 1 2-2'/></svg>"); }
.vdm-ft-chip--wa::before { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M21 12a9 9 0 0 1-13.5 7.8L3 21l1.3-4.4A9 9 0 1 1 21 12z'/><path d='M9 10a4 4 0 0 0 5 5'/></svg>"); }
.vdm-ft-chip:hover { background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.3); transform: translateX(4px); }
.vdm-ft-chip--wa { background: var(--awb-color5); border-color: var(--awb-color5); }
.vdm-ft-chip--wa:hover { background: #fff; color: var(--awb-color5) !important; border-color: #fff; }
.vdm-ft-chip--wa:hover::before { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f9224b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M21 12a9 9 0 0 1-13.5 7.8L3 21l1.3-4.4A9 9 0 1 1 21 12z'/><path d='M9 10a4 4 0 0 0 5 5'/></svg>"); }
.vdm-ft-social { margin-top: 22px !important; }
.vdm-ft-social a.fusion-social-network-icon { width: 40px !important; height: 40px !important; padding: 0 !important; margin: 0 10px 0 0 !important; border-radius: 50% !important; border: 1px solid rgba(255,255,255,.14) !important; display: inline-flex !important; align-items: center; justify-content: center; font-size: 16px !important; line-height: 1 !important; background: rgba(255,255,255,.03) !important; transition: transform .35s, background .35s, color .35s !important; }
.vdm-ft-social a.fusion-social-network-icon::before { line-height: 1; }
.vdm-ft-social a.fusion-social-network-icon:hover { background: #fff !important; color: #022151 !important; transform: translateY(-3px); }
.vdm-ft-h h4 { font-size: 12px !important; letter-spacing: .18em; text-transform: uppercase; font-weight: 600 !important; color: var(--awb-color5) !important; margin: 0 0 20px !important; display: flex; align-items: center; gap: 10px; font-family: 'Montserrat', 'Montserrat Fallback', sans-serif !important; }
.vdm-ft-h h4::before { content: ""; width: 22px; height: 2px; background: var(--awb-color5); border-radius: 2px; }
.vdm-ft-menu .awb-menu__main-ul { display: flex; flex-direction: column; gap: 12px; }
.vdm-ft-menu .awb-menu__li:hover, .vdm-ft-menu .awb-menu__main-a:hover, .vdm-ft-menu .awb-menu__main-a::before, .vdm-ft-menu .awb-menu__main-a::after { background: transparent !important; box-shadow: none !important; }
.vdm-ft-menu .awb-menu__main-a:hover, .vdm-ft-menu .awb-menu__main-a:hover *, .vdm-ft-menu .awb-menu__li:hover > .awb-menu__main-a { color: #fff !important; }
.vdm-ft-menu .awb-menu__li { margin: 0 !important; }
.vdm-ft-menu .awb-menu__main-a, .vdm-ft-menu a { color: rgba(255,255,255,.82) !important; font-size: 15px !important; padding: 0 !important; min-height: 0 !important; line-height: 1.4 !important; display: inline-flex !important; align-items: center; gap: 8px; transition: color .3s, transform .3s !important; background: none !important; }
.vdm-ft-menu a::before { content: ""; width: 0; height: 1.5px; background: var(--awb-color5); transition: width .3s; }
.vdm-ft-menu a:hover { color: #fff !important; transform: translateX(2px); }
.vdm-ft-menu a:hover::before { width: 14px; }
.vdm-ft-posts, .vdm-ft-posts .fusion-recent-posts, .vdm-ft-posts .fusion-columns { margin: 0 !important; padding: 0 !important; }
.vdm-ft-posts .fusion-column, .vdm-ft-posts .fusion-flexslider { margin-bottom: 0 !important; }
.vdm-ft-posts .fusion-columns, .vdm-ft-posts .fusion-column { width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.vdm-ft-posts article.post { display: grid !important; grid-template-columns: 56px 1fr; gap: 12px; align-items: center; margin: 0 0 14px !important; padding: 0 !important; border: 0 !important; }
.vdm-ft-posts .fusion-flexslider, .vdm-ft-posts .fusion-image-wrapper, .vdm-ft-posts .flex-viewport { width: 56px !important; height: 56px !important; margin: 0 !important; border-radius: 12px; overflow: hidden; }
.vdm-ft-posts .fusion-image-wrapper img { width: 56px !important; height: 56px !important; object-fit: cover; transition: transform .5s; }
.vdm-ft-posts article:hover img { transform: scale(1.06); }
.vdm-ft-posts .recent-posts-content { padding: 0 !important; margin: 0 !important; width: auto !important; max-width: none !important; float: none !important; min-width: 0; }
.vdm-ft-posts article.post { width: 100% !important; float: none !important; }
.vdm-ft-posts article.post > * { float: none !important; }
.vdm-ft-more { white-space: nowrap; }
.vdm-ft-posts .entry-title { margin: 0 !important; font-family: 'Quicksand', sans-serif !important; font-weight: 700 !important; font-size: 14px !important; line-height: 1.3 !important; }
.vdm-ft-posts .entry-title a { color: #fff !important; }
.vdm-ft-posts .entry-title a:hover { color: var(--awb-color5) !important; }
.vdm-ft-morewrap p { margin: 14px 0 0 !important; }
.vdm-ft-more { color: #fff !important; font-size: 13.5px; font-weight: 600; text-decoration: none !important; border-bottom: 1.5px solid var(--awb-color5); padding-bottom: 2px; }
/* fila 2: confianza */
.vdm-ft-trust { padding: 30px 0 !important; border-top: 1px solid rgba(255,255,255,.1); border-bottom: 1px solid rgba(255,255,255,.1); }
.vdm-ft-trust .fusion-image-element { margin: 0 22px 0 0 !important; flex: none; }
.vdm-ft-trust > .fusion-column-wrapper { display: flex !important; flex-direction: row !important; flex-wrap: wrap; align-items: center !important; gap: 18px; padding: 0 !important; }
.vdm-ft-seal { display: block !important; width: 64px !important; height: 64px !important; margin: 0 !important; flex: none; }
.vdm-ft-seal img { width: 100% !important; height: 100% !important; object-fit: contain; }
.vdm-ft-trusttxt { flex: 1 1 auto; display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
.vdm-ft-trust-l, .vdm-ft-trust-r { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
.vdm-ft-trust-l > div { position: relative; }
.vdm-ft-rating { padding-left: 18px; border-left: 1px solid rgba(255,255,255,.12); }
.vdm-ft-trusttxt b { font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: 16px; display: block; color: #fff; }
.vdm-ft-trusttxt span { font-size: 13px; color: rgba(255,255,255,.62); }
.vdm-ft-stars { color: #FFB800 !important; letter-spacing: 2px; font-size: 14px !important; display: block; }
.vdm-ft-pill { display: inline-flex !important; align-items: center; gap: 8px; padding: 9px 16px; border-radius: 999px; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12); font-size: 12.5px !important; color: rgba(255,255,255,.85) !important; }
.vdm-ft-pill--on::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: #2ee6a6; box-shadow: 0 0 10px #2ee6a6; }
/* fila 3: legal */
.vdm-ft-legal { padding: 22px 0 10px !important; }
.vdm-ft-legal > .fusion-column-wrapper { padding: 0 !important; }
.vdm-ft-legaltxt p { margin: 0 !important; font-size: 12px !important; color: rgba(255,255,255,.45); letter-spacing: .02em; }
/* marca gigante */
.vdm-ft-ghost { height: 120px !important; overflow: hidden !important; margin: 0 calc(-1 * var(--vdm-ft-gut)) !important; width: auto !important; pointer-events: none; }
.vdm-ft-ghost > .fusion-column-wrapper { padding: 0 !important; }
.vdm-ft-ghosttxt p { margin: 0 !important; font-family: 'Quicksand', sans-serif !important; font-weight: 700; font-size: clamp(90px, 15vw, 220px) !important; line-height: 1 !important; white-space: nowrap; color: transparent; -webkit-text-stroke: 1px rgba(255,255,255,.14); letter-spacing: -.02em; background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,0)); -webkit-background-clip: text; background-clip: text; transform: translateY(10px); }
/* entrada */
.vdm-ft .vdm-ft-rv { opacity: 0; transform: translateY(16px); transition: opacity .8s, transform .8s; }
.vdm-ft.is-in .vdm-ft-rv { opacity: 1; transform: none; }
@media (max-width: 1024px) {
  .vdm-ft-brand, .vdm-ft-col { padding-top: 72px !important; padding-bottom: 32px !important; border-bottom: 0; }
  .vdm-ft-brand { width: 100% !important; }
  .vdm-ft-col { padding-top: 0 !important; }
  .vdm-ft-blog { width: 100% !important; border-bottom: 1px solid rgba(255,255,255,.1); padding-bottom: 40px !important; }
}
@media (max-width: 767px) {
  .fusion-fullwidth.vdm-ft { --vdm-ft-gut: 16px; }
  .vdm-ft-route { height: 80px; }
  .vdm-ft-col { width: 50% !important; }
  .vdm-ft-blog { width: 100% !important; margin-top: 10px !important; }
  .vdm-ft-brand > .fusion-column-wrapper, .vdm-ft-col > .fusion-column-wrapper { padding-right: 0 !important; }
  .vdm-ft-claim { font-size: 20px !important; }
  .vdm-ft-trust > .fusion-column-wrapper { flex-direction: column !important; align-items: flex-start !important; }
  .vdm-ft-trusttxt { flex-direction: column; align-items: flex-start; }
  .vdm-ft-rating { padding-left: 0; border-left: 0; }
  .vdm-ft-ghost { height: 70px !important; margin: 0 -16px !important; }
}

/* ---------- OFF CANVAS "Solicitar informacion" v2 ---------- */
.awb-off-canvas-wrap:has(.vdm-oc) .awb-off-canvas { border-radius: 28px !important; overflow: hidden !important; padding: 0 !important; }
.awb-off-canvas-wrap:has(.vdm-oc) .awb-off-canvas-inner { padding: 0 !important; }
.awb-off-canvas-wrap:has(.vdm-oc) .off-canvas-close { position: absolute !important; top: 16px !important; right: 16px !important; width: 40px !important; height: 40px !important; padding: 0 !important; margin: 0 !important; border-radius: 50% !important; background: #fff !important; color: var(--awb-color4) !important; font-size: 16px !important; line-height: 40px !important; text-align: center !important; z-index: 60 !important; box-shadow: 0 10px 24px -10px rgba(0,0,0,.5); cursor: pointer; opacity: 1 !important; transition: transform .3s, background .3s, color .3s; }
.awb-off-canvas-wrap:has(.vdm-oc) .off-canvas-close:hover { background: var(--awb-color5) !important; color: #fff !important; transform: rotate(90deg); }
.awb-off-canvas-wrap:has(.vdm-oc) .off-canvas-close::before { line-height: 40px; }
.vdm-oc { padding: 0 !important; }
.vdm-oc > .fusion-row { display: flex !important; flex-wrap: wrap !important; align-items: stretch !important; width: 100% !important; max-width: none !important; }
.vdm-oc .fusion-layout-column { margin: 0 !important; }
.vdm-oc-form { flex: 3 1 0 !important; width: auto !important; }
.vdm-oc-form > .fusion-column-wrapper { padding: 44px 46px 36px !important; }
.vdm-oc-title h2 { font-size: 34px !important; line-height: 1.05 !important; margin: 12px 0 4px !important; }
.vdm-oc-dest h3 { font-size: 17px !important; line-height: 1.3 !important; margin: 0 0 14px !important; }
.vdm-oc-p p { font-size: 15px; line-height: 1.65; color: #5b6782; margin: 0 0 22px; }
.vdm-oc-fform .fusion-form-field { margin-bottom: 12px !important; }
.vdm-oc-fform .fusion-form-input, .vdm-oc-fform input.fusion-form-input, .vdm-oc-fform .fusion-form-field input[type="text"], .vdm-oc-fform .fusion-form-field input[type="email"], .vdm-oc-fform .fusion-form-field input[type="tel"] { border: 1.5px solid rgba(2,33,81,.14) !important; border-radius: 16px !important; padding: 16px 18px 16px 52px !important; font-size: 15px !important; background: #FFF8F5 !important; box-shadow: none !important; transition: border-color .3s, background .3s !important; }
.vdm-oc-fform .fusion-form-field input:focus { border-color: var(--awb-color5) !important; background: #fff !important; outline: none; }
.vdm-oc-fform .fusion-form-input-with-icon .fusion-form-input-icon, .vdm-oc-fform .fusion-form-field .fusion-form-input-icon { color: var(--awb-color5) !important; left: 20px !important; }
.vdm-oc-fform .fusion-form-submit-field { margin-top: 8px !important; }
.vdm-oc-fform .fusion-form-submit-field .fusion-button, .vdm-oc-fform button[type="submit"], .vdm-oc-fform .fusion-form-submit-field button { width: 100% !important; justify-content: center !important; background: var(--awb-color5) !important; border: 0 !important; border-radius: 40px !important; padding: 17px 32px !important; font-family: 'Quicksand', sans-serif !important; font-weight: 700 !important; font-size: 15px !important; color: #fff !important; box-shadow: 0 14px 34px -12px rgba(249,34,75,.6) !important; transition: background .3s, transform .3s !important; }
.vdm-oc-fform .fusion-form-submit-field button:hover { background: var(--awb-color4) !important; transform: translateY(-2px); }
.vdm-oc-note { font-size: 12px !important; color: #7b879c; line-height: 1.5; margin: 14px 0 0 !important; }
.vdm-oc-side { flex: 2 1 0 !important; width: auto !important; position: relative; color: #fff; }
.vdm-oc-side > .fusion-column-wrapper { position: relative; z-index: 1; background: linear-gradient(180deg, rgba(1,20,47,.82), rgba(1,20,47,.72) 45%, rgba(1,20,47,.94)) !important; padding: 44px 36px !important; display: flex !important; flex-direction: column; justify-content: flex-end; height: 100%; }
.vdm-oc-side-title h3 { color: #fff !important; font-size: 26px !important; line-height: 1.1 !important; margin: 10px 0 20px !important; }
.vdm-oc-contact p { margin: 0 0 10px !important; }
.vdm-oc-trust { display: flex; gap: 12px; align-items: flex-start; margin-top: 16px; }
.vdm-oc-trust b { font-family: 'Quicksand', sans-serif; font-size: 26px; line-height: 1; color: var(--awb-color5); flex: none; min-width: 52px; }
.vdm-oc-trust span { font-size: 12.5px; line-height: 1.5; color: rgba(255,255,255,.8); }
.vdm-oc-trustwrap { margin-top: 10px !important; padding-top: 16px; border-top: 1px solid rgba(255,255,255,.14); }
@media (max-width: 767px) {
  .vdm-oc-form > .fusion-column-wrapper { padding: 30px 22px 24px !important; }
  .vdm-oc-title h2 { font-size: 28px !important; }
  .vdm-oc-side > .fusion-column-wrapper { padding: 28px 22px !important; }
  .vdm-oc-trust b { font-size: 22px; min-width: 44px; }
}

/* Banner de cookies (CookieYes): texto algo mas compacto para que su caja sea menor que el H1 del hero (LCP) */
.cky-consent-container .cky-notice-des, .cky-consent-container .cky-notice-des p { font-size: 13px !important; line-height: 1.45 !important; }
@media (max-width: 600px) { .cky-consent-container .cky-notice-des, .cky-consent-container .cky-notice-des p { font-size: 12px !important; line-height: 1.4 !important; } }
/* ============================================================
   MEGA MENÚ DESTINOS v2 (2026-09-27). Global (cabecera). Avada Mega Menu
   con container .vdm-mm; el JS pone la clase is-{continente}.
   ============================================================ */
.awb-menu__mega-wrap:has(.vdm-mm) { padding: 40px 0 0 !important; background: transparent !important; border: 0 !important; box-shadow: none !important; }
/* Cabecera transparente (sin scroll): la fila del menu es mas alta que el item; el panel baja hasta el borde de la cabecera (padding transparente, asi no se pierde el hover). */
.vdm-nos-page:not(.vdm-nos-scrolled) .awb-menu__mega-wrap:has(.vdm-mm) { padding-top: 42px !important; }
.fusion-fullwidth.vdm-mm { --mm-navy: #022151; --mm-coral: #f9224b; --mm-crema: #FFF8F5; --mm-gris: #f6f6f6; --mm-ease: cubic-bezier(.2,.8,.2,1); font-family: 'Montserrat', 'Montserrat Fallback', sans-serif; color: var(--mm-navy); padding: 0 !important; margin: 0 !important; text-align: left; }
.vdm-mm > .fusion-row { display: flex !important; flex-wrap: wrap !important; align-items: stretch !important; width: 100% !important; max-width: none !important; margin: 0 !important; padding: 26px 28px 0 !important; gap: 0 !important; }
.vdm-mm .fusion-layout-column { margin: 0 !important; }
.vdm-mm .fusion-column-wrapper { padding: 0 !important; }
.vdm-mm p { margin: 0; }
.vdm-mm h3 { font-family: 'Quicksand', sans-serif; font-weight: 700; letter-spacing: -.02em; margin: 0; }
.vdm-mm .fusion-text { margin: 0 !important; }
.vdm-mm-eye, .vdm-mm-eye p, span.vdm-mm-eye { display: inline-flex; align-items: center; gap: 10px; font-family: 'Quicksand', sans-serif; font-size: 11.5px; letter-spacing: .18em; text-transform: uppercase; font-weight: 700; color: var(--mm-coral); }
.vdm-mm-eye::before, span.vdm-mm-eye::before { content: ""; width: 22px; height: 2px; background: var(--mm-coral); border-radius: 2px; }
.vdm-mm-eye p::before { display: none; }

/* la cabecera transparente invierte a blanco las imagenes del header (logo): no las del mega menu */
.vdm-nos-page:not(.vdm-nos-scrolled) .vdm-header .vdm-mm img, .vdm-nos-page .vdm-mm .fusion-imageframe img { filter: none !important; }

/* pestañas */
.vdm-mm-tabs { width: 230px !important; flex: 0 0 230px !important; display: flex !important; flex-direction: column; padding-right: 28px !important; }
.vdm-mm-tabs > .fusion-column-wrapper { display: flex !important; flex-direction: column !important; height: 100%; }
.vdm-mm-tabs .vdm-mm-eye { margin: 6px 0 12px 12px !important; }
.vdm-mm-tablist { display: flex; flex-direction: column; }
.vdm-mm-tab { display: flex !important; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 16px; text-decoration: none !important; color: var(--mm-navy) !important; position: relative; transition: background .25s; }
.vdm-mm-tab::before { content: ""; position: absolute; left: 0; top: 14px; bottom: 14px; width: 3px; border-radius: 3px; background: var(--mm-coral); opacity: 0; transition: opacity .25s; }
.vdm-mm-tab b { display: block; font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: 17px; line-height: 1.1; }
.vdm-mm-tab small { display: block; font-size: 11.5px; color: rgba(2,33,81,.55); margin-top: 3px; }
.vdm-mm-tab em { margin-left: auto; font-style: normal; width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; background: var(--mm-gris); font-size: 13px; transition: .25s; opacity: 0; transform: translateX(-6px); }
.vdm-mm-tab:hover, .vdm-mm-tab.on { background: var(--mm-crema); }
.vdm-mm-tab.on::before { opacity: 1; }
.vdm-mm-tab.on em { opacity: 1; transform: none; background: var(--mm-coral); color: #fff; }
.vdm-mm-tab.on small::after { content: " · ver guía"; color: var(--mm-coral); font-weight: 600; }
.vdm-mm-tabfoot { margin-top: auto !important; padding: 14px 12px 0; display: flex; flex-direction: column; gap: 8px; font-size: 13.5px; }
.vdm-mm-tabfoot a { text-decoration: none !important; font-weight: 600; color: var(--mm-navy) !important; }
.vdm-mm-tabfoot a.vdm-mm-sub { font-weight: 500; color: rgba(2,33,81,.65) !important; }
.vdm-mm-tabfoot a:hover { color: var(--mm-coral) !important; }

/* escenario */
.vdm-mm-prev { flex: 1 1 0 !important; width: auto !important; min-width: 0; padding-right: 28px !important; }
.vdm-mm-prev .fusion-builder-row-inner { width: 100% !important; max-width: none !important; margin: 0 !important; }
.vdm-mm .vdm-mm-stage.fusion-layout-column { width: 100% !important; margin: 0 0 18px !important; }
.vdm-mm-stage > .fusion-column-wrapper { position: relative !important; display: block !important; aspect-ratio: 16 / 9.6; border-radius: 22px; overflow: hidden; background: var(--mm-navy); color: #fff; }
.vdm-mm-stage > .fusion-column-wrapper::after { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(180deg, rgba(1,20,47,.05) 30%, rgba(1,20,47,.85) 100%); }
.vdm-mm .vdm-mm-img.fusion-imageframe { position: absolute !important; inset: 0 !important; display: block !important; width: 100% !important; height: 100% !important; margin: 0 !important; opacity: 0 !important; visibility: hidden; pointer-events: none; transform: none; transition: opacity .5s var(--mm-ease), visibility 0s .5s; z-index: 0; }
.vdm-mm-img a, .vdm-mm-img img { display: block; width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; }
.vdm-mm .vdm-mm-img.fusion-imageframe.on { opacity: 1 !important; visibility: inherit; pointer-events: auto; transform: none; z-index: 1; transition: opacity .5s var(--mm-ease), visibility 0s; }
.vdm-mm-badge { position: absolute; left: 22px; top: 20px; z-index: 3; background: rgba(255,255,255,.16); border: 1px solid rgba(255,255,255,.35); backdrop-filter: blur(6px); color: #fff; font-size: 12px; font-weight: 600; padding: 7px 12px; border-radius: 999px; display: none; }
.vdm-mm-txt { position: absolute; left: 26px; right: 26px; bottom: 82px; z-index: 3; display: none; color: #fff; }
.vdm-mm-txt h3 { font-size: 34px; line-height: 1; margin-bottom: 8px; color: #fff; }
.vdm-mm-txt p { font-size: 13.5px; line-height: 1.55; max-width: 44ch; color: rgba(255,255,255,.92); }
.vdm-mm a.vdm-mm-btn.fusion-button { position: absolute !important; left: 26px; bottom: 22px; z-index: 3; display: none !important; margin: 0 !important; }
.vdm-mm-btn .fusion-button { box-shadow: 0 14px 30px -14px rgba(1,20,47,.6); }
.vdm-mm-badge.on, .vdm-mm-txt.on { display: block; }
.vdm-mm a.vdm-mm-btn.fusion-button.on { display: inline-flex !important; }
.vdm-mm-tablist > p, .vdm-mm-tabfoot > p, .vdm-mm-pop > p, .vdm-mm-feat > p, .vdm-mm-bar-txt > p, .vdm-mm-bar-contact > p, .vdm-mm-txt > p:has(h3) { display: contents; }
.vdm-mm-txt.on, .vdm-mm a.vdm-mm-btn.fusion-button.on { animation: vdmMmIn .5s var(--mm-ease) .1s both; }
@keyframes vdmMmIn { from { opacity: 0; transform: translateY(12px); } }
.vdm-mm .vdm-mm-popwrap.fusion-layout-column { width: 100% !important; margin: 0 0 8px !important; }
.vdm-mm-prev > .fusion-column-wrapper { padding-bottom: 6px !important; }
.vdm-mm-pop { display: none; align-items: center; gap: 10px; flex-wrap: wrap; padding: 2px 4px; }
.vdm-mm-pop.on { display: flex; }
.vdm-mm-pop span { font-size: 11.5px; letter-spacing: .14em; text-transform: uppercase; font-weight: 600; color: rgba(2,33,81,.5); margin-right: 4px; }
.vdm-mm-pop a { text-decoration: none !important; font-size: 13px; font-weight: 600; padding: 8px 14px; border-radius: 999px; background: var(--mm-gris); color: var(--mm-navy) !important; transition: .25s; }
.vdm-mm-pop a:hover { background: var(--mm-navy); color: #fff !important; }

/* destacadas */
.vdm-mm-featcol { width: 300px !important; flex: 0 0 300px !important; border-left: 1px solid rgba(2,33,81,.08); padding-left: 28px !important; }
.vdm-mm-feat { display: none; flex-direction: column; gap: 6px; height: 100%; }
.vdm-mm-feat.on { display: flex; }
.vdm-mm-feat > span.vdm-mm-eye { margin: 6px 0 6px; }
.vdm-mm-feat .vdm-v-grid { display: flex !important; flex-direction: column; gap: 4px; margin: 0; }
.vdm-mm-feat .vdm-v-card { display: flex !important; flex-direction: row; align-items: center; gap: 12px; padding: 8px; border-radius: 16px; background: transparent; box-shadow: none; transform: none; transition: background .25s; text-decoration: none !important; }
.vdm-mm-feat .vdm-v-card:hover { background: var(--mm-crema); box-shadow: none; transform: none; }
.vdm-mm-feat .vdm-v-photo { flex: none; width: 76px; height: 64px; border-radius: 12px; overflow: hidden; }
.vdm-mm-feat .vdm-v-badge, .vdm-mm-feat .vdm-v-chips, .vdm-mm-feat .vdm-v-btn { display: none !important; }
.vdm-mm-feat .vdm-v-body { padding: 0; min-width: 0; }
.vdm-mm-feat .vdm-v-title { font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: 14px; line-height: 1.25; color: var(--mm-navy); margin: 0 0 3px; display: block; }
.vdm-mm-feat .vdm-v-foot { display: block; }
.vdm-mm-feat .vdm-v-price-wrap { display: inline-flex; align-items: baseline; gap: 5px; }
.vdm-mm-feat .vdm-v-desde { font-size: 12px; color: rgba(2,33,81,.6); text-transform: none; letter-spacing: 0; }
.vdm-mm-feat .vdm-v-price, .vdm-mm-feat .vdm-v-price .amount { font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: 13.5px; color: var(--mm-navy); }
.vdm-mm-all { margin-top: auto; text-decoration: none !important; font-weight: 600; font-size: 13.5px; display: inline-flex; align-items: center; gap: 8px; padding: 10px 8px 4px; color: var(--mm-navy) !important; }
.vdm-mm-all:hover { color: var(--mm-coral) !important; }

/* franja inferior */
.vdm-mm .vdm-mm-bar.fusion-layout-column { flex: none !important; width: calc(100% + 56px) !important; max-width: none !important; margin: 22px -28px 0 !important; background: var(--mm-crema); border-top: 1px solid rgba(2,33,81,.08); }
.vdm-mm-bar .fusion-builder-row-inner { display: flex !important; align-items: center !important; justify-content: space-between; gap: 20px; width: 100% !important; max-width: none !important; margin: 0 !important; padding: 14px 28px !important; }
.vdm-mm-bar-l, .vdm-mm-bar-r { width: auto !important; flex: 0 1 auto !important; margin: 0 !important; }
.vdm-mm-bar-l > .fusion-column-wrapper { display: flex !important; flex-direction: row !important; align-items: center !important; gap: 22px; }
.vdm-mm-bar-l .fusion-button-wrapper { flex: none; margin-left: 22px !important; }
.vdm-mm-bar-txt { display: flex; align-items: center; gap: 14px; font-size: 13.5px; flex: 0 1 auto; width: auto !important; }
.vdm-mm-bar-txt i { width: 36px; height: 36px; border-radius: 50%; background: #fff; display: grid; place-items: center; font-style: normal; color: var(--mm-coral); box-shadow: 0 6px 16px -8px rgba(2,33,81,.3); flex: none; }
.vdm-mm-bar-btn { margin: 0 !important; }
.vdm-mm-bar-contact { display: flex; align-items: center; justify-content: flex-end; gap: 18px; color: rgba(2,33,81,.7); font-size: 13.5px; white-space: nowrap; }
.vdm-mm-bar-contact a { text-decoration: none !important; font-weight: 600; color: var(--mm-navy) !important; }
.vdm-mm-bar-contact a:hover { color: var(--mm-coral) !important; }

@media (max-width: 1100px) {
  .vdm-mm-featcol { display: none !important; }
  .vdm-mm-tabs { width: 200px !important; flex-basis: 200px !important; }
}
@media (max-width: 900px) {
  .vdm-mm > .fusion-row { padding: 16px !important; flex-direction: column !important; }
  .vdm-mm-tabs, .vdm-mm-prev { width: 100% !important; flex: none !important; padding-right: 0 !important; }
  .vdm-mm-tabs .vdm-mm-eye, .vdm-mm-tabfoot { display: none !important; }
  .vdm-mm-tablist { flex-direction: row; overflow-x: auto; gap: 6px; padding-bottom: 12px; scrollbar-width: none; }
  .vdm-mm-tab { flex: 0 0 auto; padding: 10px 14px; border-radius: 999px; background: var(--mm-gris); }
  .vdm-mm-tab::before, .vdm-mm-tab em, .vdm-mm-tab small { display: none !important; }
  .vdm-mm-tab b { font-size: 14px; }
  .vdm-mm-tab.on { background: var(--mm-navy); color: #fff !important; }
  .vdm-mm-stage > .fusion-column-wrapper { aspect-ratio: 4 / 3; }
  .vdm-mm-txt h3 { font-size: 26px; }
  .vdm-mm-txt { bottom: 76px; }
  .vdm-mm-bar { display: none !important; }
}
/* ============================================================
   MEGA MENÚ NOSOTROS (2026-09-27). Global (cabecera). Avada Mega Menu
   compacto (ancho personalizado) con container .vdm-nm.
   ============================================================ */
.awb-menu__mega-wrap:has(.vdm-nm) { padding: 40px 0 0 !important; background: transparent !important; border: 0 !important; box-shadow: none !important; left: -18px !important; right: auto !important; margin-left: 0 !important; transform: none !important; }
.vdm-nos-page:not(.vdm-nos-scrolled) .awb-menu__mega-wrap:has(.vdm-nm) { padding-top: 42px !important; }
.fusion-fullwidth.vdm-nm { --nm-navy: #022151; --nm-coral: #f9224b; --nm-crema: #FFF8F5; --nm-gris: #f6f6f6; --nm-ease: cubic-bezier(.2,.8,.2,1); font-family: 'Montserrat', 'Montserrat Fallback', sans-serif; color: var(--nm-navy); padding: 0 !important; margin: 0 !important; text-align: left; position: relative; }
.fusion-fullwidth.vdm-nm::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 4px; z-index: 5; background: linear-gradient(90deg, var(--nm-coral), #ff8aa3); }
.vdm-nm > .fusion-row { display: flex !important; flex-wrap: nowrap !important; align-items: stretch !important; width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; gap: 0 !important; }
.vdm-nm .fusion-column-wrapper { padding: 0 !important; }
.vdm-nm p { margin: 0; }
.vdm-nm .fusion-text { margin: 0 !important; }
.vdm-nm .fusion-text > p { display: contents; }
.vdm-nos-page:not(.vdm-nos-scrolled) .vdm-header .vdm-nm img, .vdm-nos-page .vdm-nm .fusion-imageframe img { filter: none !important; }

/* columna izquierda */
.vdm-nm .vdm-nm-l.fusion-layout-column { width: calc(100% - 236px) !important; flex: 1 1 auto !important; min-width: 0; margin: 0 !important; padding: 22px 18px 18px 22px !important; }
.vdm-nm-l > .fusion-column-wrapper { display: flex !important; flex-direction: column !important; height: 100%; gap: 6px; }
.vdm-nm-eye { display: inline-flex; align-items: center; gap: 10px; font-family: 'Quicksand', sans-serif; font-size: 11px; letter-spacing: .18em; text-transform: uppercase; font-weight: 700; color: var(--nm-coral); margin: 2px 0 8px 12px !important; }
.vdm-nm-eye::before { content: ""; width: 22px; height: 2px; background: var(--nm-coral); border-radius: 2px; }
.vdm-nm-tile { display: grid !important; grid-template-columns: 48px 1fr 28px; gap: 14px; align-items: center; padding: 13px 12px; border-radius: 18px; text-decoration: none !important; color: var(--nm-navy) !important; position: relative; opacity: 0; transform: translateY(8px); transition: background .25s, opacity .45s var(--nm-ease), transform .45s var(--nm-ease); }
.vdm-nm-tilewrap:nth-of-type(3) .vdm-nm-tile { transition-delay: 0s, .06s, .06s; }
.awb-menu__li.hover .vdm-nm-tile, .awb-menu__li:hover .vdm-nm-tile, .awb-menu__li:focus-within .vdm-nm-tile { opacity: 1; transform: none; }
.vdm-nm-tile::before { content: ""; position: absolute; left: 0; top: 16px; bottom: 16px; width: 3px; border-radius: 3px; background: var(--nm-coral); opacity: 0; transition: opacity .25s; }
.vdm-nm-tile:hover { background: var(--nm-crema); }
.vdm-nm-tile:hover::before { opacity: 1; }
.vdm-nm-ic { width: 48px; height: 48px; border-radius: 14px; display: grid; place-items: center; background: var(--nm-gris); color: var(--nm-navy); font-size: 19px; transition: background .3s, color .3s, transform .4s var(--nm-ease); }
.vdm-nm-tile:hover .vdm-nm-ic { background: var(--nm-coral); color: #fff; transform: rotate(-6deg) scale(1.05); }
.vdm-nm-body { min-width: 0; }
.vdm-nm-body > b { display: block; font-family: 'Quicksand', sans-serif; font-weight: 700; font-size: 17px; line-height: 1.1; }
.vdm-nm-body > small { display: block; font-size: 12.5px; line-height: 1.45; color: rgba(2,33,81,.6); margin-top: 4px; }
.vdm-nm-tile em { font-style: normal; width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; background: var(--nm-gris); font-size: 13px; transition: .25s; opacity: 0; transform: translateX(-6px); }
.vdm-nm-tile:hover em { opacity: 1; transform: none; background: var(--nm-coral); color: #fff; }
.vdm-nm-steps { display: flex; align-items: center; gap: 6px; margin-top: 9px; font-size: 11px; font-weight: 600; color: rgba(2,33,81,.55); letter-spacing: .02em; }
.vdm-nm-steps b { font-weight: 600; width: 18px; height: 18px; border-radius: 50%; display: grid; place-items: center; background: #fff; border: 1.5px solid rgba(2,33,81,.18); font-size: 10px; color: var(--nm-navy); transition: .3s; }
.vdm-nm-steps i { width: 14px; height: 1.5px; background: rgba(2,33,81,.18); border-radius: 2px; }
.vdm-nm-tile:hover .vdm-nm-steps b { border-color: var(--nm-coral); color: var(--nm-coral); }
.vdm-nm-tile:hover .vdm-nm-steps b:first-child { background: var(--nm-coral); color: #fff; }
.vdm-nm-foot { margin-top: auto !important; padding: 12px 12px 0; border-top: 1px solid rgba(2,33,81,.08); display: flex; gap: 8px; flex-wrap: wrap; }
.vdm-nm-foot a { text-decoration: none !important; font-size: 12.5px; font-weight: 600; padding: 8px 12px; border-radius: 999px; background: var(--nm-gris); color: var(--nm-navy) !important; display: inline-flex; align-items: center; gap: 7px; transition: .25s; }
.vdm-nm-foot a i { font-size: 13px; }
.vdm-nm-foot a:hover { background: var(--nm-navy); color: #fff !important; }

/* columna derecha: confianza */
.vdm-nm .vdm-nm-r.fusion-layout-column { width: 236px !important; flex: 0 0 236px !important; margin: 0 !important; background: var(--nm-navy); color: #fff; }
.vdm-nm-r > .fusion-column-wrapper { position: relative !important; display: flex !important; flex-direction: column !important; justify-content: space-between; gap: 18px; min-height: 300px; height: 100%; padding: 20px 20px 22px !important; overflow: hidden; }
.vdm-nm-r > .fusion-column-wrapper::after { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(180deg, rgba(1,20,47,.1) 0%, rgba(1,20,47,.55) 45%, rgba(1,20,47,.92) 100%); }
.vdm-nm .vdm-nm-img.fusion-imageframe { position: absolute !important; inset: 0 !important; display: block !important; width: 100% !important; height: 100% !important; margin: 0 !important; z-index: 0; opacity: .7 !important; overflow: hidden; }
.vdm-nm-img img { display: block; width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; transform: scale(1.08); transition: transform 7s linear; }
.awb-menu__li.hover .vdm-nm-img img, .awb-menu__li:hover .vdm-nm-img img, .awb-menu__li:focus-within .vdm-nm-img img { transform: scale(1); }
.vdm-nm-qwrap, .vdm-nm-rate { position: relative; z-index: 2; }
.vdm-nm-q { display: block; font-family: 'Quicksand', sans-serif; font-size: 15px; line-height: 1.3; font-weight: 600; color: #fff; opacity: 0; transform: translateY(-6px); transition: .5s var(--nm-ease) .15s; }
.awb-menu__li.hover .vdm-nm-q, .awb-menu__li:hover .vdm-nm-q, .awb-menu__li:focus-within .vdm-nm-q { opacity: 1; transform: none; }
.vdm-nm-q::before { content: "\201C"; font-size: 34px; line-height: 0; display: block; margin: 12px 0 4px; color: #ffb3c2; }
.vdm-nm-q cite { display: block; font-family: 'Montserrat', 'Montserrat Fallback', sans-serif; font-style: normal; font-size: 11px; opacity: .75; margin-top: 6px; font-weight: 500; }
.vdm-nm-rate { display: flex; flex-direction: column; align-items: flex-start; color: #fff; }
.vdm-nm-stars { display: flex; gap: 2px; margin-bottom: 6px; color: #ffc531; font-size: 12px; }
.vdm-nm-n { font-family: 'Quicksand', sans-serif; font-size: 38px; line-height: 1; font-weight: 700; color: #fff; }
.vdm-nm-n small { font-size: 14px; font-family: 'Montserrat', 'Montserrat Fallback', sans-serif; font-weight: 500; opacity: .85; margin-left: 4px; }
.vdm-nm-p { display: block; margin: 6px 0 0; font-size: 12.5px; line-height: 1.5; opacity: .88; }
.vdm-nm-aw { display: flex; gap: 6px; margin-top: 12px; flex-wrap: wrap; }
.vdm-nm-aw span { font-size: 10.5px; font-weight: 600; padding: 5px 9px; border-radius: 999px; background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.28); backdrop-filter: blur(6px); }
.vdm-nm-lnk { margin-top: 14px; font-size: 12.5px; font-weight: 600; text-decoration: none !important; color: #fff !important; display: inline-flex; align-items: center; gap: 6px; }
.vdm-nm-lnk::after { content: ""; position: absolute; inset: 0; }
.vdm-nm-r > .fusion-column-wrapper:hover .vdm-nm-lnk { color: #ffb3c2 !important; }

@media (max-width: 900px) {
  .vdm-nm > .fusion-row { flex-direction: column !important; }
  .vdm-nm .vdm-nm-l.fusion-layout-column, .vdm-nm .vdm-nm-r.fusion-layout-column { width: 100% !important; flex: none !important; }
  .vdm-nm-r > .fusion-column-wrapper { min-height: 190px; }
  .vdm-nm-eye, .vdm-nm-q { display: none; }
}
