/* CONTUHIJO CORE 2 RC3 · normalized Marga base presentation. Business logic untouched. */
@layer cth20.legacy {

/* ===== NORMALIZED LEGACY SOURCE: assets/css/integrations/marga.css ===== */
/* Marga skin: no business logic, only presentation. */
.vmon-marga,.vmon-marga-page{--md-ink:#0b1838;--md-paper:#f4f1e9;--md-white:#fff;--md-yellow:#ffd21c;--md-blue:#2f6cff;--md-line:rgba(11,24,56,.16)}
.vmon2026 .md-template{color:var(--md-ink);font-family:Inter,"Segoe UI",sans-serif}.vmon2026 .md-template a{color:inherit}.vmon2026 .md-btn,.vmon2026 .md-search-submit{background:var(--md-yellow);border:2px solid var(--md-ink);color:var(--md-ink);border-radius:10px;font-weight:950;box-shadow:3px 3px 0 var(--md-ink)}.vmon2026 .md-btn svg,.vmon2026 .md-search-submit svg{fill:var(--md-ink)}.vmon2026 .md-label{color:var(--md-ink);font-size:.7rem;letter-spacing:.08em;font-weight:900}.vmon2026 .md-template input,.vmon2026 .md-template select,.vmon2026 .md-template textarea,.vmon2026 .select2-container .select2-selection{border:1px solid #d7dce5;background:#fff;border-radius:12px;min-height:46px;color:var(--md-ink)}.vmon2026 .select2-container{width:100%}.vmon2026 .select2-container .select2-selection--multiple{padding:4px 7px}.vmon2026 .select2-selection__choice{border:0;background:#eef1f6;border-radius:999px;padding:3px 8px}.vmon2026 .md-search-field{height:50px;border-radius:13px 0 0 13px;color:var(--md-ink);font-style:normal}.vmon2026 .md-search-submit{height:50px;width:62px;border-radius:0 13px 13px 0;box-shadow:none}.vmon-marga--search form.md-template{background:#fff;border:1px solid var(--md-line);border-radius:22px;padding:24px;box-shadow:0 18px 45px rgba(11,24,56,.08)}.vmon-marga--search form.md-template>.d-flex.gutters-col-1{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px}.vmon-marga--search .md-control{width:auto;max-width:none;flex:none;margin:0;padding:0}.vmon-marga--search .md-control:last-child{align-self:end}.vmon-marga--search .md-control:last-child .md-btn{min-height:46px;width:100%}
/* Featured: convert legacy hover boxes into honest cards */
.vmon2026 .md-promociones{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.vmon2026 .md-promociones>.h-row{display:contents}.vmon2026 .md-promociones .h-column{width:auto;max-width:none;flex:none;padding:0}.vmon2026 .mind-features-item{height:auto;min-height:100%;margin:0;border:1px solid var(--md-line);border-radius:18px;overflow:hidden;background:#fff;display:flex;flex-direction:column;box-shadow:0 12px 35px rgba(11,24,56,.07)}.vmon2026 .mind-features-item .item-image{aspect-ratio:1.45/1;overflow:hidden}.vmon2026 .mind-features-item .item-image img{width:100%;height:100%;min-height:0;object-fit:cover}.vmon2026 .mind-features-item .item-content{position:static;height:auto;min-height:190px;background:#fff;color:var(--md-ink);display:block;flex:1}.vmon2026 .mind-features-item .item-content-inner{padding:18px;height:100%;display:flex;flex-direction:column}.vmon2026 .mind-features-item h3{white-space:normal;overflow:visible;font-family:"Avenir Next","Helvetica Neue",Arial,sans-serif;font-size:1.25rem;line-height:1;margin:0 0 10px}.vmon2026 .mind-features-item h3 a{color:var(--md-ink);text-decoration:none}.vmon2026 .mind-features-item .txtBGrande{color:#667085;text-align:left;font-size:.88rem;padding:0 0 18px}.vmon2026 .mind-features-item .fa-angle-up{display:none}.vmon2026 .mind-features-item .md-btn{position:static;margin-top:auto;width:max-content}
/* Search results / dimension cards */
.vmon2026 .travel-card{height:100%;background:#fff;border:1px solid var(--md-line);border-radius:18px;padding:0;overflow:hidden;display:flex;flex-direction:column;position:relative}.vmon2026 .travel-card .travel-title{order:2;text-align:left;font-family:"Avenir Next","Helvetica Neue",Arial,sans-serif;font-size:1.28rem;line-height:1;margin:0;padding:17px 18px 8px}.vmon2026 .travel-card .travel-title a{text-decoration:none;font-weight:950}.vmon2026 .travel-card>div:nth-child(2){order:1;margin:0}.vmon2026 .travel-card>div:nth-child(2) img{width:100%;aspect-ratio:1.45/1;object-fit:cover}.vmon2026 .travel-card>div:nth-child(3){order:3;padding:0 18px 12px;color:#667085}.vmon2026 .travel-card dl{order:4;margin:auto 18px 12px;display:grid;grid-template-columns:1fr auto;gap:6px 12px;border:0;border-top:1px solid var(--md-line);padding-top:12px}.vmon2026 .travel-card dt,.vmon2026 .travel-card dd{border:0;margin:0;width:auto;max-width:none;flex:none}.vmon2026 .travel-card dd{text-align:right;font-weight:900}.vmon2026 .travel-card ul{order:5;padding:0 18px 16px}.vmon2026 .md-bag{background:#eef1f6;color:var(--md-ink);border-radius:999px}.vmon2026 .md-bag a{color:var(--md-ink);text-decoration:none}.vmon2026 .travel-card.completo:before{content:'COMPLETO';position:absolute;top:14px;left:14px;transform:none;width:auto;background:var(--md-ink);color:#fff;padding:6px 9px;border-radius:7px;font-size:.66rem;font-weight:950;z-index:3}
/* Direct Marga pages */
.vmon-marga-page .content.colibri-page-content{padding:0;background:var(--md-paper)}.vmon-marga-page .content.colibri-page-content>.h-section{display:block}.vmon-marga-page .content.colibri-page-content>.h-section>.h-section-grid-container{width:100%;max-width:none;padding:0}.vmon-marga-page .md-template{width:min(calc(100% - 36px),1240px);margin:auto;padding:58px 0 90px}.vmon-marga-page .md-template>.h-section-grid-container{width:100%;max-width:none;margin:auto}.vmon-marga-page .md-template h1,.vmon-marga-page .viaje-title{font-family:"Avenir Next","Helvetica Neue",Arial,sans-serif;color:var(--md-ink);font-size:clamp(3rem,6vw,6rem);line-height:.9;letter-spacing:-.06em}.vmon-marga-page .viaje-title a{text-decoration:none}.vmon-marga-page .h-row{display:flex;flex-wrap:wrap}.vmon-marga-page .h-col-lg-2{width:16.666%}.vmon-marga-page .h-col-lg-4{width:33.333%}.vmon-marga-page .h-col-lg-8{width:66.666%}.vmon-marga-page .h-col-12{width:100%}.vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row{gap:18px}.vmon-marga-page #price-container{font-family:"Avenir Next","Helvetica Neue",Arial,sans-serif;font-size:2.4rem}.vmon-marga-page .h-tabs{background:#fff;border:1px solid var(--md-line);border-radius:18px;overflow:hidden}.vmon-marga-page .h-tabs-navigation{display:flex;overflow-x:auto;background:#eef1f6;border-bottom:1px solid var(--md-line)}.vmon-marga-page .h-tabs-navigation-item{flex:1 0 auto;padding:16px 18px;text-decoration:none;font-weight:900;color:var(--md-ink)}.vmon-marga-page .h-tabs-navigation-item img{display:none}.vmon-marga-page .h-tabs-navigation-active-item{background:var(--md-yellow)}.vmon-marga-page .h-tabs-item-content{padding:clamp(20px,3vw,38px)}.vmon-marga-page .h-tabs-item-content.hide{display:none}.vmon-marga-page .h-tabs-content-active{display:block}.vmon-marga-page .md-template table{background:#fff;border-radius:12px;overflow:hidden}.vmon-marga-page .md-template td,.vmon-marga-page .md-template th{padding:11px;border-color:var(--md-line)}
/* Contact form */
.vmon2026 #contacto-form{max-width:1040px;margin:auto;background:#fff;border:1px solid var(--md-line);border-radius:20px;padding:clamp(22px,4vw,42px)}.vmon2026 #contacto-form .h-row{display:flex;flex-wrap:wrap;margin:0 -8px}.vmon2026 #contacto-form [class*="h-col-"]{padding:8px}.vmon2026 #contacto-form .control-group{margin-bottom:4px}.vmon2026 #contacto-form textarea{min-height:130px}.vmon2026 #contacto-form input[type=checkbox],.vmon2026 #contacto-form input[type=radio]{min-height:0;width:auto}.vmon2026 [v-cloak]{display:none}.vmon2026 .formError{color:#9b1c1c}
@media(max-width:1000px){.vmon-marga--search form.md-template>.d-flex.gutters-col-1{grid-template-columns:repeat(2,1fr)}.vmon2026 .md-promociones{grid-template-columns:repeat(2,1fr)}.vmon-marga-page .h-col-lg-2,.vmon-marga-page .h-col-lg-4,.vmon-marga-page .h-col-lg-8{width:100%}.vmon-marga-page .md-template .h-row.gutters-col-1>.h-column{width:calc(50% - 9px)}}
@media(max-width:620px){.vmon-marga--search form.md-template>.d-flex.gutters-col-1,.vmon2026 .md-promociones{grid-template-columns:1fr}.vmon-marga--search form.md-template{padding:16px}.vmon-marga-page .md-template{width:min(calc(100% - 24px),1240px);padding:38px 0 65px}.vmon-marga-page .md-template .h-row.gutters-col-1>.h-column{width:100%}.vmon-marga-page .h-tabs-navigation-item{padding:13px;font-size:.84rem}.vmon2026 #contacto-form [class*="h-col-"]{width:100%;max-width:none;flex:none}.vmon2026 #contacto-form{border-radius:14px}}

/* ==========================================================
   MARGA BRIDGE 1.1 SEMANTIC CONTRACT
   These selectors intentionally use the new md-* classes
   instead of relying on Colibri DOM order.
   ========================================================== */
.vmon2026 .md-search-form{padding:0;background:transparent}
.vmon2026 .md-search-form__query{margin-bottom:14px}
.vmon2026 .md-search-query{margin:0;display:flex}
.vmon2026 .md-search-query__input{flex:1 1 auto;min-width:0}
.vmon2026 .md-search-form__filters{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;align-items:end}
.vmon2026 .md-search-form__filters>.md-control{width:auto;max-width:none;flex:none;margin:0;padding:0}
.vmon2026 .md-search-form__filters>.md-control:last-child .md-btn{min-height:48px;width:100%}

.vmon2026 .md-featured-trips{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.vmon2026 .md-featured-card{height:100%;min-height:0;border:1px solid var(--md-line);border-radius:20px;background:#fff;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 12px 32px rgba(11,24,56,.07)}
.vmon2026 .md-featured-card__media{display:block;aspect-ratio:16/10;overflow:hidden}
.vmon2026 .md-featured-card__image{display:block;width:100%;height:100%;min-height:0;object-fit:cover}
.vmon2026 .md-featured-card__body{position:static;inset:auto;height:auto;min-height:0;background:#fff;color:var(--md-ink);flex:1;display:flex}
.vmon2026 .md-featured-card__inner{padding:18px 18px 20px;display:flex;flex-direction:column;width:100%}
.vmon2026 .md-featured-card__title{font-size:1.3rem;line-height:1.02;margin:0 0 10px;white-space:normal;overflow:visible}
.vmon2026 .md-featured-card__title a{color:var(--md-ink);text-decoration:none}
.vmon2026 .md-featured-card__description{color:#667085;font-size:.92rem;line-height:1.5;margin:0 0 18px;padding:0}
.vmon2026 .md-featured-card__actions{margin-top:auto}
.vmon2026 .md-featured-card__cta{position:static;width:auto}

.vmon2026 .md-trip-card{height:100%;padding:0;background:#fff;border:1px solid var(--md-line);border-radius:20px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 10px 28px rgba(11,24,56,.06)}
.vmon2026 .md-trip-card__media{display:block;aspect-ratio:16/10;overflow:hidden;order:1}
.vmon2026 .md-trip-card__image{width:100%;height:100%;object-fit:cover;display:block}
.vmon2026 .md-trip-card__title{order:2;text-align:left;padding:17px 18px 8px;margin:0;font-size:1.28rem;line-height:1.05}
.vmon2026 .md-trip-card__title a{font-weight:950;color:var(--md-ink);text-decoration:none}
.vmon2026 .md-trip-card__description{order:3;margin:0;padding:0 18px 14px;color:#667085;font-size:.9rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.vmon2026 .md-trip-card__facts{order:4;display:grid;grid-template-columns:1fr 1fr;gap:1px;margin:auto 18px 0;padding:12px 0;border-top:1px solid var(--md-line);border-bottom:1px solid var(--md-line)}
.vmon2026 .md-trip-card__fact{display:block;padding:7px 9px;border:0;background:#f7f8fa}
.vmon2026 .md-trip-card__fact dt,.vmon2026 .md-trip-card__fact dd{display:block;border:0;margin:0;padding:0;width:auto;max-width:none;text-align:left}
.vmon2026 .md-trip-card__fact dt{font-size:.67rem;text-transform:uppercase;letter-spacing:.08em;color:#7a8395;font-weight:850}
.vmon2026 .md-trip-card__fact dd{font-size:.9rem;color:var(--md-ink);font-weight:900}
.vmon2026 .md-trip-card__fact--price dd{font-size:1.1rem}
.vmon2026 .md-trip-tags{order:5;list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:13px 18px 0;max-height:64px;overflow:hidden}
.vmon2026 .md-trip-tag{margin:0;padding:5px 9px;background:#eef1f6;border-radius:999px;font-size:.72rem;line-height:1.2}
.vmon2026 .md-trip-tag a{color:var(--md-ink);text-decoration:none}
.vmon2026 .md-trip-card__actions{order:6;padding:15px 18px 18px;margin-top:auto}
.vmon2026 .md-trip-card__cta{width:100%;display:flex;align-items:center;justify-content:space-between}

.vmon2026 .md-trip-card--complete:before{content:'COMPLETO';position:absolute;z-index:4;top:14px;left:14px;transform:none;width:auto;padding:6px 9px;border-radius:7px;background:var(--md-ink);color:#fff;font-weight:950;font-size:.66rem;letter-spacing:.06em}

/* Direct Marga dimension pages: use cards as a true responsive catalogue. */
.vmon-marga-page .md-template .h-row.gutters-col-1.justify-content-lg-center{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.vmon-marga-page .md-template .h-row.gutters-col-1.justify-content-lg-center>.h-column{width:auto;max-width:none;flex:none;margin:0;padding:0}

/* Contact: hide Vue-managed blocks until Vue has mounted, while keeping source clean. */
.vmon2026 [v-cloak]{display:none}
.vmon2026 #contacto-form .formError:empty{display:none}

@media(max-width:1000px){
  .vmon2026 .md-search-form__filters{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vmon2026 .md-featured-trips{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vmon-marga-page .md-template .h-row.gutters-col-1.justify-content-lg-center{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .vmon2026 .md-search-form__filters,.vmon2026 .md-featured-trips,.vmon-marga-page .md-template .h-row.gutters-col-1.justify-content-lg-center{grid-template-columns:1fr}
  .vmon2026 .md-trip-card__facts{grid-template-columns:1fr 1fr}
}

/* ==========================================================
   V3.4 — SEARCH MODULE POLISH
   Benchmark: same Marga behaviour, but presented as a clear,
   branded search panel. No business logic changes.
   ========================================================== */
.vmon2026 .vmon-marga--search{
  position:relative;
  background:var(--md-ink);
  border-radius:28px;
  padding:clamp(22px,3.2vw,38px);
  box-shadow:0 22px 55px rgba(11,24,56,.16);
  overflow:visible;
  isolation:isolate;
}
.vmon2026 .vmon-marga--search .md-template,
.vmon2026 .vmon-marga--search form.md-template{
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  color:#fff;
  overflow:visible;
}
.vmon2026 .vmon-marga--search .md-label{
  display:block;
  margin:0 0 8px;
  color:#fff;
  opacity:.82;
  font-size:.72rem;
  line-height:1;
  letter-spacing:.09em;
}
.vmon2026 .vmon-marga--search .md-search-form__query{
  margin:0 0 18px;
}
.vmon2026 .vmon-marga--search .md-search-query{
  display:grid;
  grid-template-columns:minmax(0,1fr) 64px;
  gap:0;
  align-items:stretch;
}
.vmon2026 .vmon-marga--search .md-search-field{
  width:100%;
  min-width:0;
  height:54px;
  min-height:54px;
  margin:0;
  padding:0 17px;
  border:0;
  border-radius:13px 0 0 13px;
  background:#fff;
  color:var(--md-ink);
  font-size:1rem;
  box-shadow:none;
  outline:none;
}
.vmon2026 .vmon-marga--search .md-search-field:focus{
  box-shadow:inset 0 0 0 3px rgba(255,210,28,.55);
}
.vmon2026 .vmon-marga--search .md-search-submit{
  width:64px;
  min-width:64px;
  height:54px;
  min-height:54px;
  margin:0;
  padding:0;
  border:0;
  border-radius:0 13px 13px 0;
  background:var(--md-yellow);
  box-shadow:none;
  display:grid;
  place-items:center;
}
.vmon2026 .vmon-marga--search .md-search-submit svg{
  width:19px;
  height:19px;
  fill:var(--md-ink);
}
.vmon2026 .vmon-marga--search .md-search-form__filters{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr)) minmax(165px,.82fr);
  gap:12px;
  align-items:end;
  overflow:visible;
}
.vmon2026 .vmon-marga--search .md-control{
  width:auto;
  min-width:0;
  max-width:none;
  flex:none;
  margin:0;
  padding:0;
  overflow:visible;
}
.vmon2026 .vmon-marga--search .md-control:last-child{
  display:block;
}
.vmon2026 .vmon-marga--search .md-control:last-child .md-btn{
  width:100%;
  min-height:48px;
  height:48px;
  margin:0;
  padding:0 17px;
  border:0;
  border-radius:13px;
  background:var(--md-yellow);
  color:var(--md-ink);
  box-shadow:0 4px 0 rgba(255,255,255,.14);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-size:1rem;
  line-height:1;
  white-space:nowrap;
}
.vmon2026 .vmon-marga--search .md-control:last-child .md-btn svg{
  width:15px;
  height:15px;
  fill:var(--md-ink);
}

/* Select2: normalize the legacy multiple-select UI. */
.vmon2026 .vmon-marga--search .select2-container{
  display:block;
  width:100%;
  min-width:0;
  max-width:100%;
  margin:0;
  font-family:inherit;
  color:var(--md-ink);
  z-index:auto;
}
.vmon2026 .vmon-marga--search .select2-container .selection{
  display:block;
  width:100%;
}
.vmon2026 .vmon-marga--search .select2-container .select2-selection--multiple{
  display:flex;
  align-items:center;
  width:100%;
  min-width:0;
  min-height:48px;
  height:auto;
  margin:0;
  padding:3px 10px;
  overflow:hidden;
  border:0;
  border-radius:13px;
  background:#fff;
  box-shadow:none;
  cursor:text;
}
.vmon2026 .vmon-marga--search .select2-container--default.select2-container--focus .select2-selection--multiple,
.vmon2026 .vmon-marga--search .select2-container--default.select2-container--open .select2-selection--multiple{
  border:0;
  box-shadow:inset 0 0 0 3px rgba(255,210,28,.5);
}
.vmon2026 .vmon-marga--search .select2-selection__rendered{
  display:flex;
  align-items:center;
  flex-wrap:nowrap;
  gap:5px;
  width:100%;
  min-width:0;
  height:42px;
  margin:0;
  padding:0;
  overflow:hidden;
  list-style:none;
}
.vmon2026 .vmon-marga--search .select2-selection__choice{
  flex:0 0 auto;
  max-width:45%;
  margin:0;
  padding:5px 8px 5px 23px;
  border:0;
  border-radius:999px;
  background:#eef1f6;
  color:var(--md-ink);
  font-size:.76rem;
  line-height:1.2;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.vmon2026 .vmon-marga--search .select2-selection__choice__remove{
  height:100%;
  top:0;
  left:0;
  padding:0 6px;
  border-right:1px solid rgba(11,24,56,.08);
  color:var(--md-ink);
}
.vmon2026 .vmon-marga--search .select2-search--inline{
  display:block;
  flex:1 1 85px;
  min-width:70px;
  height:42px;
  margin:0;
  padding:0;
}
.vmon2026 .vmon-marga--search .select2-search--inline .select2-search__field{
  width:100%;
  min-width:70px;
  height:42px;
  min-height:42px;
  margin:0;
  padding:0 2px;
  border:0;
  outline:0;
  background:transparent;
  color:var(--md-ink);
  font:inherit;
  line-height:42px;
  box-shadow:none;
}
.vmon2026 .vmon-marga--search .select2-search--inline .select2-search__field::placeholder{
  color:#7a8395;
  opacity:1;
}

/* Select2 appends dropdowns to body, so this part is deliberately global
   but scoped to its library namespace. */
body.vmon2026 .select2-container--open{z-index:9999}
body.vmon2026 .select2-dropdown{
  border:1px solid rgba(11,24,56,.14);
  border-radius:12px;
  background:#fff;
  overflow:hidden;
  box-shadow:0 18px 40px rgba(11,24,56,.18);
  font-family:Inter,"Segoe UI",sans-serif;
}
body.vmon2026 .select2-results__options{
  max-height:260px;
  padding:6px;
  text-align:left;
}
body.vmon2026 .select2-results__option{
  margin:0;
  padding:10px 11px;
  border-radius:8px;
  color:var(--md-ink);
  font-size:.9rem;
  line-height:1.25;
}
body.vmon2026 .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{
  background:var(--md-yellow);
  color:var(--md-ink);
}
body.vmon2026 .select2-container--default .select2-results__option--selected{
  background:#eef1f6;
}

@media(max-width:1050px){
  .vmon2026 .vmon-marga--search .md-search-form__filters{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .vmon2026 .vmon-marga--search .md-control:last-child{
    grid-column:span 2;
  }
}
@media(max-width:620px){
  .vmon2026 .vmon-marga--search{
    border-radius:20px;
    padding:18px;
  }
  .vmon2026 .vmon-marga--search .md-search-form__filters{
    grid-template-columns:1fr;
    gap:11px;
  }
  .vmon2026 .vmon-marga--search .md-control:last-child{
    grid-column:auto;
  }
  .vmon2026 .vmon-marga--search .md-control:last-child .md-btn{
    height:52px;
  }
  .vmon2026 .vmon-marga--search .select2-selection__rendered{
    flex-wrap:wrap;
    min-height:42px;
    height:auto;
  }
}

/* ==========================================================
   V3.5.1 - presentation-only Marga overrides.
   No values, events, selection, validation, submit or business logic.
   ========================================================== */
.vmon-marga,.vmon-marga-page{--md-cyan:#24c7ff;--md-blue2:#4a52ff;--md-brand-grad:linear-gradient(135deg,var(--md-cyan),var(--md-blue),var(--md-blue2))}
.vmon2026 .md-btn,.vmon2026 .md-search-submit{background:var(--md-brand-grad);color:#fff;border-color:var(--md-ink)}
.vmon2026 .md-btn svg,.vmon2026 .md-search-submit svg{fill:#fff}
.vmon2026 .vmon-marga--search .md-search-submit,.vmon2026 .vmon-marga--search .md-control:last-child .md-btn{background:var(--md-brand-grad);color:#fff}
.vmon2026 .vmon-marga--search .md-search-submit svg,.vmon2026 .vmon-marga--search .md-control:last-child .md-btn svg{fill:#fff}
.vmon2026 .vmon-marga--search .md-search-field:focus,.vmon2026 .vmon-marga--search .select2-container--default.select2-container--focus .select2-selection--multiple,.vmon2026 .vmon-marga--search .select2-container--default.select2-container--open .select2-selection--multiple{box-shadow:inset 0 0 0 3px rgba(36,199,255,.38)}
body.vmon2026 .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:#e8f6ff;color:var(--md-ink)}

/* Promotions: text must remain visible; metadata appears only if Marga outputs it. */
.vmon2026 .md-promociones .mind-features-item .item-content{min-height:0}
.vmon2026 .md-promociones .mind-features-item .item-content-inner{min-height:220px}
.vmon2026 .md-promociones .mind-features-item .txtBGrande,
.vmon2026 .md-promociones .mind-features-item p,
.vmon2026 .md-featured-card__description{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;visibility:visible;opacity:1;max-height:none;color:#667085;text-align:left}
.vmon2026 .md-promociones .mind-features-item .md-btn{margin-top:auto}
.vmon2026 .md-promociones .md-trip-card__facts,
.vmon2026 .md-featured-card__facts,
.vmon2026 .md-promociones dl{display:grid}
.vmon2026 .md-promociones .mind-features-item:hover,.vmon2026 .md-featured-card:hover{transform:translateY(-3px);box-shadow:0 18px 44px rgba(11,24,56,.12);transition:.18s}

/* Contact form is a protected Marga zone. Only widen the outer form. */
.vmon2026 .vmon-marga--contact #contacto-form,
.vmon2026 #contacto-form{width:100%;max-width:none;margin:0}

/* ==========================================================
   V3.5.2 - PROMOTIONS POLISH (presentation only)
   Marga keeps ownership of data, links and behaviour.
   ========================================================== */
.vmon2026 .md-promociones{gap:22px}
.vmon2026 .md-promociones .mind-features-item,
.vmon2026 .md-featured-card{
  position:relative;
  border:1px solid rgba(47,108,255,.10);
  border-radius:22px;
  box-shadow:0 13px 34px rgba(7,26,62,.08);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.vmon2026 .md-promociones .mind-features-item:after,
.vmon2026 .md-featured-card:after{
  content:'';
  position:absolute;
  left:16px;right:16px;top:0;
  height:3px;
  border-radius:0 0 999px 999px;
  background:linear-gradient(90deg,#24c7ff,#2f6cff,#4a52ff);
  opacity:0;
  transition:.2s;
  pointer-events:none;
}
.vmon2026 .md-promociones .mind-features-item:hover,
.vmon2026 .md-featured-card:hover{
  transform:translateY(-6px);
  border-color:rgba(47,108,255,.24);
  box-shadow:0 22px 48px rgba(7,26,62,.14);
}
.vmon2026 .md-promociones .mind-features-item:hover:after,
.vmon2026 .md-featured-card:hover:after{opacity:1}
.vmon2026 .md-promociones .mind-features-item .item-image,
.vmon2026 .md-featured-card__media{aspect-ratio:16/10;background:#dce8f5}
.vmon2026 .md-promociones .mind-features-item .item-image img,
.vmon2026 .md-featured-card__image{transition:transform .35s ease}
.vmon2026 .md-promociones .mind-features-item:hover .item-image img,
.vmon2026 .md-featured-card:hover .md-featured-card__image{transform:scale(1.035)}
.vmon2026 .md-promociones .mind-features-item .item-content-inner,
.vmon2026 .md-featured-card__inner{padding:20px 20px 22px}
.vmon2026 .md-promociones .mind-features-item h3,
.vmon2026 .md-featured-card__title{font-size:1.28rem;line-height:1.05;letter-spacing:-.03em;margin-bottom:12px}
.vmon2026 .md-promociones .mind-features-item .txtBGrande,
.vmon2026 .md-promociones .mind-features-item p,
.vmon2026 .md-featured-card__description{font-size:.88rem;line-height:1.48;margin-bottom:18px}
.vmon2026 .md-promociones .mind-features-item .md-btn,
.vmon2026 .md-featured-card__cta{
  min-height:40px;
  padding:9px 14px;
  border-radius:12px;
  border:1px solid rgba(7,26,62,.65);
  box-shadow:0 4px 0 rgba(7,26,62,.82);
  font-weight:900;
  text-decoration:none;
}
.vmon2026 .md-promociones .mind-features-item:hover .md-btn,
.vmon2026 .md-featured-card:hover .md-featured-card__cta{box-shadow:0 6px 0 rgba(7,26,62,.82)}
/* Metadata is styled only if Marga really outputs it. */
.vmon2026 .md-promociones .md-trip-card__facts,
.vmon2026 .md-featured-card__facts,
.vmon2026 .md-promociones dl{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6px 10px;
  margin:0 0 16px;
  padding:10px 0;
  border-top:1px solid rgba(7,26,62,.08);
  border-bottom:1px solid rgba(7,26,62,.08);
  color:#52627f;
  font-size:.76rem;
}
@media(max-width:620px){
  .vmon2026 .md-promociones{gap:16px}
  .vmon2026 .md-promociones .mind-features-item .item-content-inner,
  .vmon2026 .md-featured-card__inner{padding:17px 17px 20px}
}

/* ==========================================================
   VMON 3.6.0 - Marga presentation only.
   No DOM rewriting, no event interception, no values or business logic.
   ========================================================== */
.vmon-marga,.vmon-marga-page{
  --md-blue:var(--brand);
  --md-cyan:var(--brand-start);
  --md-blue2:var(--brand-end);
  --md-yellow:var(--brand);
  --md-brand-grad:var(--brand-grad);
}

/* One primary brand colour everywhere Marga presents an action. */
.vmon2026 .md-btn,
.vmon2026 .md-search-submit{background:var(--brand-grad);color:#fff;border-color:var(--md-ink)}
.vmon2026 .md-btn svg,
.vmon2026 .md-search-submit svg{fill:#fff}
.vmon-marga-page .h-tabs-navigation-active-item{background:var(--brand-grad);color:#fff}
.vmon-marga-page .h-tabs-navigation-item:hover,
.vmon-marga-page .h-tabs-navigation-item:focus-visible{background:rgba(var(--brand-rgb),.09);outline:none}
body.vmon2026 .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:rgba(var(--brand-start-rgb),.14);color:var(--md-ink)}

/* Trip header: image left, information centre, commercial panel right. */
.vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title){
  display:grid;
  grid-template-columns:minmax(150px,180px) minmax(0,1fr) minmax(270px,310px);
  gap:clamp(20px,3vw,36px);
  align-items:start;
  flex-wrap:nowrap;
}
.vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title)>.h-column{
  width:auto;max-width:none;min-width:0;flex:none;padding:0;margin:0;
}
.vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title)>.h-column:first-child img{
  width:100%;aspect-ratio:1/1;height:auto;object-fit:cover;border-radius:20px;box-shadow:0 14px 34px rgba(11,24,56,.12);
}
.vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title)>.h-column:nth-child(2){padding-top:4px}
.vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title)>.h-column:nth-child(2) .viaje-title{
  margin:0 0 24px;font-size:clamp(3rem,5.4vw,5.8rem);line-height:.88;
}
.vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title)>.h-column:nth-child(2) .h-px-2{padding:0}
.vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title)>.h-column:nth-child(2) p{
  margin:0 0 18px;font-size:1rem;line-height:1.62;color:#35425c;text-align:left;
}
.vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title)>.h-column:nth-child(2) ul{
  gap:7px;padding:0;margin:4px 0 0;
}
.vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title)>.h-column:nth-child(2) .md-bag{
  margin:0;padding:6px 10px;background:#eef3fb;border:1px solid rgba(var(--brand-rgb),.10);border-radius:999px;
}
.vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title)>.h-column:nth-child(2) .md-bag a{color:var(--md-ink)}
.vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title)>.h-column:nth-child(3){
  position:relative;padding:22px;background:#fff;border:1px solid rgba(var(--brand-rgb),.14);border-radius:20px;box-shadow:0 18px 42px rgba(11,24,56,.10);
}
.vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title)>.h-column:nth-child(3):before{
  content:"";position:absolute;left:18px;right:18px;top:0;height:3px;border-radius:0 0 999px 999px;background:var(--brand-grad);
}
.vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title)>.h-column:nth-child(3)>div:first-child{
  font-size:.82rem;color:#5c6980;
}
.vmon-marga-page #price-container{
  margin:4px 0 10px;text-align:left;font-size:2.55rem;line-height:1;color:var(--md-ink);letter-spacing:-.045em;
}
.vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title)>.h-column:nth-child(3) scalapay-widget{display:block;max-width:100%}
.vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title)>.h-column:nth-child(3) img{max-width:155px;margin:10px auto 14px}
.vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title)>.h-column:nth-child(3) .d-flex.flex-column{
  display:grid;gap:8px;margin:14px 0 0;text-align:left;
}
.vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title)>.h-column:nth-child(3) .d-flex.flex-column>div{
  display:grid;grid-template-columns:1fr;gap:8px;
}
.vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title)>.h-column:nth-child(3) .md-btn{
  display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;margin:0;padding:10px 13px;border-radius:12px;text-decoration:none;
}

/* Tabs retain Marga's own anchors and content switching. */
.vmon-marga-page #itinerario,
.vmon-marga-page #imagenes,
.vmon-marga-page #alojamiento,
.vmon-marga-page #precioIncluye{scroll-margin-top:105px}
.vmon-marga-page .h-tabs-navigation{background:#f1f5fb}
.vmon-marga-page .h-tabs-navigation-item{transition:background .16s ease,color .16s ease}

/* Promotions: a touch more readable and CTA with more presence. */
.vmon2026 .md-promociones .mind-features-item .txtBGrande,
.vmon2026 .md-promociones .mind-features-item p,
.vmon2026 .md-featured-card__description{font-size:.96rem;line-height:1.58}
.vmon2026 .md-promociones .mind-features-item .md-btn,
.vmon2026 .md-featured-card__cta{min-width:128px;padding:10px 18px}

@media(max-width:1000px){
  .vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title){
    grid-template-columns:150px minmax(0,1fr);
  }
  .vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title)>.h-column:nth-child(3){grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.8fr);gap:18px;align-items:center}
}
@media(max-width:680px){
  .vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title){grid-template-columns:1fr;gap:18px}
  .vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title)>.h-column:first-child{max-width:180px}
  .vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title)>.h-column:nth-child(2) .viaje-title{font-size:clamp(2.7rem,14vw,4.4rem)}
  .vmon-marga-page .md-template>.h-section-grid-container>.h-row-container>.h-row:has(.viaje-title)>.h-column:nth-child(3){grid-column:auto;display:block;padding:18px}
  .vmon-marga-page .h-tabs-navigation-item{padding:14px 13px;font-size:.85rem}
}

/* ==========================================================
   VMON 3.7.1 — list-card icon containment
   /julio/ is the reference, but this applies to every Marga result card.
   Presentation only: no data, links, events or business logic are changed.
   ========================================================== */
.vmon2026 .travel-card dl dt{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  font-size:.72rem;
  line-height:1.25;
  font-weight:850;
  color:#5d6c82;
}
.vmon2026 .travel-card dl dt :where(svg,i,img),
.vmon2026 .travel-card dl :where(svg.svg-inline--fa,i.fa,i.fas,i.far,i.fal,i.fab){
  display:inline-block;
  flex:0 0 22px;
  width:22px;
  height:22px;
  max-width:22px;
  max-height:22px;
  min-width:0;
  min-height:0;
  margin:0;
  padding:0;
  font-size:20px;
  line-height:1;
  object-fit:contain;
  vertical-align:middle;
}
.vmon2026 .travel-card dl dt svg{overflow:visible}
.vmon2026 .travel-card dl dt [class*="fa-"]{font-size:20px;line-height:1}
.vmon2026 .travel-card dl dd{align-self:center;line-height:1.25}
.vmon2026 .travel-card dl dt[class*="fa-"]::before,
.vmon2026 .travel-card dl dt i[class*="fa-"]::before{
  display:inline-block;
  width:22px;
  height:22px;
  margin:0 8px 0 0;
  font-size:20px;
  line-height:22px;
  text-align:center;
  vertical-align:middle;
}

/* RC6.3 — Select2 multiple controls: suppress the empty placeholder chip and
   collapse the internal search textarea while the control is closed. When the
   dropdown opens the real Select2 search remains available, without the thin
   white 'ghost field' visible in the closed filters. */
.vmon2026 .vmon-marga--search .select2-selection__choice[title=""],
.vmon2026 .vmon-marga--search .select2-selection__choice:has(.select2-selection__choice__display:empty){
  display:none;
}
.vmon2026 .vmon-marga--search .select2-container:not(.select2-container--open) .select2-search--inline{
  flex:0 0 0;
  width:0;
  min-width:0;
  height:0;
  overflow:hidden;
  opacity:0;
  pointer-events:none;
}
.vmon2026 .vmon-marga--search .select2-container:not(.select2-container--open) .select2-search--inline .select2-search__field{
  width:0;
  min-width:0;
  height:0;
  min-height:0;
  padding:0;
  opacity:0;
  caret-color:transparent;
}
.vmon2026 .vmon-marga--search .select2-container--open .select2-search--inline{
  display:block;
  flex:1 1 85px;
  width:auto;
  min-width:70px;
  height:42px;
  overflow:visible;
  opacity:1;
  pointer-events:auto;
}
.vmon2026 .vmon-marga--search .select2-container--open .select2-search--inline .select2-search__field{
  width:100%;
  min-width:70px;
  height:42px;
  min-height:42px;
  opacity:1;
  caret-color:auto;
}


/* ===== NORMALIZED LEGACY SOURCE: assets/css/integrations/marga-polish.css ===== */
/* RC6: presentation-only polish. Never changes Marga data or behaviour. */

/* Price/Includes: old inline orange/green table headers become VMON brand. */
.vmon-marga-page #precioIncluye table th,
.vmon-marga-page #precioIncluye table thead th,
.vmon-marga-page #precioIncluye table th[style*="background"]{
  background:var(--brand-grad);
  background-color:var(--brand);
  color:#fff;
  border-color:rgba(255,255,255,.16);
}
.vmon-marga-page #precioIncluye table th :where(span,strong,a),
.vmon-marga-page #precioIncluye table th a:visited{color:#fff;text-decoration-color:rgba(255,255,255,.65)}
.vmon-marga-page #precioIncluye table{border:1px solid rgba(var(--brand-rgb),.14);box-shadow:0 10px 30px rgba(11,24,56,.045)}

/* Direct Mundo Durundo listing/dimension pages get an editorial header while
   the actual result cards remain the untouched Marga island below. */
.vmon2026 .vmon-rc6-listing{background:#f6f8fc}
.vmon2026 .vmon-rc6-listing-hero{padding:clamp(58px,7vw,96px) 0 clamp(42px,5vw,70px);background:#fff;border-bottom:1px solid rgba(11,24,56,.09)}
.vmon2026 .vmon-rc6-listing-hero__grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:clamp(32px,6vw,80px);align-items:center}
.vmon2026 .vmon-rc6-listing-hero__copy h1{max-width:900px;margin:8px 0 0;font-family:var(--display);font-size:clamp(3.3rem,6.8vw,6.8rem);font-weight:950;line-height:.9;letter-spacing:-.065em;color:var(--ink);text-wrap:balance}
.vmon2026 .vmon-rc6-listing-hero__lead{max-width:760px;margin:24px 0 0;font-size:clamp(1.02rem,1.4vw,1.18rem);line-height:1.65;color:#52627a}
.vmon2026 .vmon-rc6-listing-hero__count{display:inline-flex;margin-top:22px;padding:9px 13px;border-radius:999px;background:rgba(var(--brand-start-rgb),.12);color:var(--brand-deep);font-size:.78rem;font-weight:900}
.vmon2026 .vmon-rc6-listing-hero__media{margin:0;aspect-ratio:1.2/1;overflow:hidden;border-radius:24px;box-shadow:0 22px 54px rgba(11,24,56,.13);transform:rotate(1.2deg)}
.vmon2026 .vmon-rc6-listing-hero__media img{width:100%;height:100%;object-fit:cover;display:block}
.vmon2026 .vmon-rc6-listing-results{padding:clamp(40px,5vw,66px) 0 90px}
.vmon2026 .vmon-rc6-listing-results .cth-marga-island{width:100%}
.vmon2026 .vmon-rc6-listing-results .md-template{width:100%;margin:0;padding:0}
.vmon2026 .vmon-rc6-listing-results .vmon-rc6-source-title{display:none}

@media(max-width:820px){
  .vmon2026 .vmon-rc6-listing-hero__grid{grid-template-columns:1fr}
  .vmon2026 .vmon-rc6-listing-hero__media{max-width:560px;transform:none}
}

/* RC6.3: every trip tab owns the full product column. Marga sometimes wraps
   the tabs in a legacy h-col-* width; presentation must not inherit it. */
.vmon-marga-page .md-template [class*="h-col-"]:has(.h-tabs),
.vmon-marga-page .md-template .h-column:has(> .h-tabs){
  flex:0 0 100%;
  width:100%;
  max-width:100%;
  min-width:0;
}
.vmon-marga-page .md-template :where(.h-tabs,.h-tabs-navigation,.h-tabs-item-content,.h-tabs-content){
  width:100%;
  max-width:none;
  box-sizing:border-box;
}
.vmon-marga-page .h-tabs-item-content table,
.vmon-marga-page .h-tabs-item-content table.table{
  float:none;
  width:100%;
  max-width:none;
  margin-left:0;
  margin-right:0;
}

/* Brand-token normalization for all structural table headers in trip tabs.
   It deliberately targets THEAD/header cells only: status values such as
   Completo, warnings and availability colours in TBODY keep their meaning. */
.vmon-marga-page .h-tabs-item-content table thead :where(th,td),
.vmon-marga-page .h-tabs-item-content table[summary] thead :where(th,td),
.vmon-marga-page #precioIncluye table thead :where(th,td){
  background:var(--brand-grad);
  background-color:var(--brand);
  color:#fff;
  border-color:rgba(255,255,255,.16);
}
.vmon-marga-page .h-tabs-item-content table thead :where(th,td) :where(span,strong,a),
.vmon-marga-page .h-tabs-item-content table[summary] thead :where(th,td) :where(span,strong,a),
.vmon-marga-page #precioIncluye table thead :where(th,td) :where(span,strong,a){
  color:#fff;
  text-decoration-color:rgba(255,255,255,.68);
}

/* RC6.4 — harden the trip tab width against nested Colibri wrappers. The
   source HTML can contain h-column/h-column__inner layers around the tabs and
   tables with align/float/width inline styles. The product column owns 100%. */
.vmon-marga-page .md-template :where(.h-row-container,.h-row,.h-column,.h-column-container,.h-column__inner,.h-column__content):has(#precioIncluye){
  width:100%;max-width:none;min-width:0;float:none;box-sizing:border-box;
}
.vmon-marga-page .md-template :where(.h-column,.h-column-container):has(#precioIncluye){flex:0 0 100%}
.vmon-marga-page .md-template .h-row:has(#precioIncluye){display:block;margin-left:0;margin-right:0}
.vmon-marga-page .md-template :where(.h-tabs,.h-tabs-navigation,.h-tabs-item-content,.h-tabs-content,#precioIncluye,#precioIncluye>.w-100,#precioIncluye>.w-100>div){
  width:100%;max-width:none;min-width:0;box-sizing:border-box;
}
.vmon-marga-page #precioIncluye table,
.vmon-marga-page #precioIncluye table.table,
.vmon-marga-page #precioIncluye table[align],
.vmon-marga-page #precioIncluye>div>div{float:none;width:100%;max-width:none;margin-left:0;margin-right:0}

/* Every structural header in the price/includes tab is brand-owned. Legacy
   red/orange/green backgrounds are presentational only; semantic body states
   (Completo, warnings, errors, availability) remain untouched. */
.vmon-marga-page #precioIncluye table thead tr>th,
.vmon-marga-page #precioIncluye table thead tr>td{
  background:var(--brand-grad);background-color:var(--brand);color:#fff;border-color:rgba(255,255,255,.18);
}
.vmon-marga-page #precioIncluye table thead tr>th :where(span,strong,a),
.vmon-marga-page #precioIncluye table thead tr>td :where(span,strong,a){color:#fff;text-decoration-color:rgba(255,255,255,.7)}


}
