:root {
  --g: #1a5c0a;
  --g2: #2f7d14;
  --g-dark: #0e4d12;
  --dk: #062a15;
  --ink: #12201a;
  --mut: #5a6872;
  --bd: #dfe5ea;
  --red: #e11d2e;
  --or: #f97316;
  --tl: #0fa99b;
  --bl: #0b55e3;
  --nv: #0b2a6f;
  --pk: #fde2e4;
  --bg: #f1f7fd;
  --csp-f: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
}

html {
  scroll-behavior: smooth;
}

/* Tipografía y reseteo base */
.csp-cq,
.csp-find,
.csp-shop,
.csp-cartapp,
.csp-book,
.cc-wrap,
.csp-hero,
.csp-fcard,
.csp-grid,
.csp-panel {
  font-family: var(--csp-f) !important;
  color: var(--ink);
  box-sizing: border-box;
}

.csp-cq *,
.csp-shop *,
.csp-cartapp *,
.csp-book *,
.cc-wrap *,
.csp-hero *,
.csp-fcard * {
  box-sizing: border-box;
}

.csp-single .entry-title,
.csp-single .page-title {
  display: none;
}

/* ==========================================================================
   PANTALLA 1: HOME / HUB (¿Qué hacer en Barranquilla?)
   ========================================================================== */
.csp-hero {
  position: relative;
  background-size: cover;
  background-position: center;
  color: #ffffff;
  overflow: visible;
}

.csp-hero-in {
  max-width: 1140px;
  margin: 0 auto;
  padding: 64px 20px;
  min-height: 500px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 36px;
}

.csp-hero-txt {
  max-width: 540px;
  min-width: 0;
}

.csp-line {
  display: block;
  width: 44px;
  height: 4px;
  border-radius: 2px;
  background: #ffffff;
  margin-bottom: 18px;
}

.csp-herotitle {
  font-size: clamp(2.3rem, 4.5vw, 3.4rem);
  line-height: 1.1;
  font-weight: 700;
  color: #ffffff;
  margin: 0 0 16px;
  letter-spacing: -0.01em;
}

.csp-herosub {
  font-size: 15px;
  line-height: 1.6;
  font-weight: 400;
  opacity: 0.95;
  margin: 0 0 24px;
}

.csp-hero-btns {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

.csp-hero-btns .csp-btn {
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
  width: auto !important;
  margin: 0 !important;
  border-radius: 999px !important;
  padding: 12px 24px !important;
  font-size: 14.5px !important;
  font-weight: 600 !important;
  background: #1a5c0a !important;
  color: #ffffff !important;
  border: 2px solid #1a5c0a !important;
  text-decoration: none !important;
  cursor: pointer;
}

.csp-hero-btns .csp-btn.ghost {
  background: transparent !important;
  border-color: #ffffff !important;
  color: #ffffff !important;
}

.csp-hero-btns .csp-btn:hover {
  background: #2f7d14 !important;
  border-color: #2f7d14 !important;
}

.csp-arw {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  border: 1.5px solid currentColor;
  font-size: 13px;
}

/* Tarjeta del buscador (orden y estética del PDF) */
.csp-fcard {
  background: #ffffff !important;
  color: #12201a !important;
  border-radius: 16px !important;
  padding: 22px 18px !important;
  width: 330px !important;
  flex: none !important;
  box-shadow: 0 16px 42px rgba(0, 0, 0, 0.32) !important;
  position: relative;
  z-index: 10;
}

/* Desplegables Actividad y Destino */
.csp-fcard .csp-dd {
  position: relative;
  margin-bottom: 12px !important;
}

.csp-fcard .csp-dd-b {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  border: 1.5px solid #dce2e6 !important;
  background: #ffffff !important;
  border-radius: 8px !important;
  padding: 12px 14px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #1f2d3a !important;
  cursor: pointer !important;
  height: 48px !important;
  line-height: 1 !important;
  text-transform: none !important;
}

.csp-fcard .csp-dd-b i {
  color: #0fa99b !important;
  display: flex !important;
  align-items: center !important;
  flex: none !important;
}

.csp-fcard .csp-dd-t {
  flex: 1 !important;
  text-align: left !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.csp-fcard .csp-dd-c {
  transition: transform 0.2s !important;
  color: #1f2d3a !important;
  flex: none !important;
}

.csp-fcard .csp-dd.open .csp-dd-c {
  transform: rotate(180deg) !important;
}

.csp-fcard .csp-dd-l {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: calc(100% + 4px) !important;
  background: #ffffff !important;
  border: 1px solid #dfe5ea !important;
  border-radius: 10px !important;
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.22) !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 6px !important;
  z-index: 99 !important;
  max-height: 240px !important;
  overflow-y: auto !important;
}

.csp-fcard .csp-dd-l li {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 9px 12px !important;
  border-radius: 6px !important;
  cursor: pointer !important;
  font-size: 13.5px !important;
  color: #1f2d3a !important;
  margin: 0 !important;
  list-style: none !important;
}

.csp-fcard .csp-dd-l li:hover {
  background: #f1f7ec !important;
}

.csp-fcard .csp-dd-l li.on {
  background: #e2f2d5 !important;
  font-weight: 700 !important;
}

/* Bloque Duración */
.csp-fcard .csp-dur-box {
  border: 1.5px solid #dce2e6 !important;
  border-radius: 8px !important;
  padding: 12px 14px !important;
  margin-bottom: 12px !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
}

.csp-fcard .csp-dur-h {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-bottom: 6px !important;
}

.csp-fcard .csp-dur-h > div {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

.csp-fcard .csp-dur-h i {
  color: #0fa99b !important;
  display: flex !important;
  align-items: center !important;
}

.csp-fcard .csp-dur-h b {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #1f2d3a !important;
}

.csp-fcard .csp-dur-caret {
  color: #1f2d3a !important;
  display: flex !important;
  align-items: center !important;
}

.csp-fcard .csp-dur-lbls {
  display: flex !important;
  justify-content: space-between !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #1f2d3a !important;
  margin-top: 4px !important;
}

/* Bloque Precio */
.csp-fcard .csp-pr2 {
  border: 1.5px solid #dce2e6 !important;
  border-radius: 8px !important;
  padding: 12px 14px !important;
  margin-bottom: 16px !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
}

.csp-fcard .csp-pr2-h {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-bottom: 6px !important;
}

.csp-fcard .csp-pr2-h > div {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.csp-fcard .csp-pr2-h i {
  color: #0fa99b !important;
  display: flex !important;
  align-items: center !important;
}

.csp-fcard .csp-pr2-h .csp-prv {
  font-size: 13.5px !important;
  font-weight: 700 !important;
  color: #1f2d3a !important;
}

.csp-fcard .csp-cur {
  background: #0fa99b !important;
  color: #ffffff !important;
  border-radius: 4px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  padding: 3px 8px !important;
  font-style: normal !important;
}

/* Deslizadores Duales (Duración y Precio) - Blindados contra temas */
.csp-fcard .csp-dur-r,
.csp-fcard .csp-pr2-r {
  position: relative !important;
  height: 26px !important;
  margin: 6px 0 !important;
  display: flex !important;
  align-items: center !important;
  --a: 0%;
  --p: 100%;
}

.csp-fcard .csp-dur-r::before,
.csp-fcard .csp-pr2-r::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  height: 5px !important;
  border-radius: 99px !important;
  background: linear-gradient(90deg, #dce2e6 0%, #dce2e6 var(--a, 0%), #0fa99b var(--a, 0%), #0fa99b var(--p, 100%), #dce2e6 var(--p, 100%), #dce2e6 100%) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

.csp-fcard input[type="range"] {
  -webkit-appearance: none !important;
  appearance: none !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  height: 26px !important;
  width: 100% !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  pointer-events: none !important;
  outline: none !important;
  z-index: 4 !important;
}

.csp-fcard input[type="range"]::-webkit-slider-runnable-track {
  background: transparent !important;
  border: 0 !important;
  height: 26px !important;
}

.csp-fcard input[type="range"]::-moz-range-track {
  background: transparent !important;
  border: 0 !important;
  height: 26px !important;
}

.csp-fcard input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none !important;
  appearance: none !important;
  width: 20px !important;
  height: 20px !important;
  border-radius: 50% !important;
  background: #11361b !important;
  border: 2.5px solid #ffffff !important;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.4) !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  margin-top: 3px !important;
}

.csp-fcard input[type="range"]::-moz-range-thumb {
  width: 20px !important;
  height: 20px !important;
  border-radius: 50% !important;
  background: #11361b !important;
  border: 2.5px solid #ffffff !important;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.4) !important;
  cursor: pointer !important;
  pointer-events: auto !important;
}

/* Botón naranja de búsqueda */
.csp-fcard .csp-go {
  width: 100% !important;
  background: #f97316 !important;
  color: #ffffff !important;
  border: 0 !important;
  border-radius: 8px !important;
  padding: 14px 18px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  margin-top: 4px !important;
  box-shadow: none !important;
  text-decoration: none !important;
}

.csp-fcard .csp-go:hover {
  background: #e5630a !important;
}

.csp-wafloat {
  position: fixed;
  left: 20px;
  bottom: 20px;
  z-index: 9999;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: #25d366;
  color: #ffffff !important;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
  text-decoration: none;
}

.csp-wafloat:hover {
  background: #1ebe5b;
}

/* ==========================================================================
   PANTALLA 2: CATALOGO Y FILTROS (identico al PDF "Ajustes esteticos finales")
   ========================================================================== */
.csp-shop {
  background: #f2f8fc;
  padding: 46px 20px 56px;
  width: 100%;
}

.csp-shop .csp-hd {
  text-align: center;
  margin: 0 0 22px;
}

.csp-shop .csp-kicker {
  display: block;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #1a5c0a !important;
  margin: 0 0 8px !important;
  line-height: 1.3 !important;
}

.csp-shop .csp-maintitle {
  font-family: var(--csp-f) !important;
  font-size: clamp(28px, 3.3vw, 38px) !important;
  font-weight: 700 !important;
  color: #0a2412 !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.01em;
}

/* Subrayado: SVG en linea (arco convexo hacia el texto), se dibuja con stroke-dashoffset */
.csp-shop span.csp-uw {
  position: relative !important;
  display: inline-block !important;
  white-space: nowrap;
  line-height: 1 !important;
}

.csp-shop .csp-uw::after,
.csp-shop .csp-uw::before {
  content: none !important;
}

/* Arco naranja pegado a la palabra: redondo a la izquierda, afilado a la derecha.
   Para subir/bajar: --csp-ul-b (mas negativo = mas abajo). Altura: --csp-ul-h. Ambos en em (escalan con el titulo). */
.csp-shop span.csp-uw svg.csp-ul {
  position: absolute !important;
  left: 0 !important;
  bottom: var(--csp-ul-b, -0.3em) !important;
  width: 100% !important;
  height: var(--csp-ul-h, 0.55em) !important;
  max-width: none !important;
  overflow: visible !important;
  pointer-events: none !important;
}

.csp-shop span.csp-uw svg.csp-ul .csp-ulf {
  fill: #ff5500;
}

/* Animacion: la mascara se "dibuja" con stroke-dashoffset, una sola vez (csp.js pone .csp-anim y luego .csp-drawn) */
.csp-shop .csp-uw.csp-anim .csp-ul .csp-m {
  stroke-dashoffset: 1;
}

.csp-shop .csp-uw.csp-anim.csp-drawn .csp-ul .csp-m {
  animation: cspDraw 0.8s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

@keyframes cspDraw {
  to {
    stroke-dashoffset: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .csp-shop .csp-uw.csp-anim .csp-ul .csp-m {
    stroke-dashoffset: 0;
    animation: none !important;
  }
}

.csp-shop .csp-mainsub {
  font-size: 14.5px !important;
  line-height: 1.5 !important;
  color: #12201a !important;
  margin: 22px auto 0 !important;
  max-width: 640px;
  font-weight: 400 !important;
}

/* Buscador */
.csp-shop .csp-qw {
  position: relative;
  max-width: 620px;
  margin: 22px auto 16px;
}

.csp-shop .csp-qw > svg {
  position: absolute;
  left: 22px;
  top: 50%;
  transform: translateY(-50%);
  color: #0a2412;
  pointer-events: none;
  z-index: 2;
}

.csp-shop .csp-qw .csp-q {
  display: block;
  width: 100%;
  height: 46px;
  padding: 0 22px 0 54px !important;
  margin: 0 !important;
  border: 1px solid #e6ecf1 !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  font-family: var(--csp-f) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #12201a !important;
  box-shadow: 0 4px 16px rgba(16, 38, 26, 0.07) !important;
  outline: 0;
  -webkit-appearance: none;
  appearance: none;
}

.csp-shop .csp-qw .csp-q:focus {
  border-color: #1a5c0a !important;
  box-shadow: 0 0 0 3px rgba(26, 92, 10, 0.14) !important;
}

/* Texto guia: "Buscar experiencias, destinos o actividades..." con la 2a parte en negrita */
.csp-shop .csp-qw .csp-ph {
  position: absolute;
  left: 54px;
  right: 22px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 14px;
  font-weight: 500;
  color: #0b2a6f;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  pointer-events: none;
}

.csp-shop .csp-qw .csp-ph b {
  font-weight: 700;
}

.csp-shop .csp-qw .csp-q:not(:placeholder-shown) ~ .csp-ph,
.csp-shop .csp-qw .csp-q:focus ~ .csp-ph {
  display: none;
}

/* Categorias: pildoras compactas, 2 filas centradas */
.csp-shop .csp-chips {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 7px 11px;
  max-width: 1080px;
  margin: 0 auto 22px;
  padding: 0;
}

.csp-shop .csp-chip,
.csp-shop .csp-chip:hover,
.csp-shop .csp-chip:focus {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 34px;
  margin: 0;
  padding: 0 14px;
  border: 0 !important;
  border-radius: 999px !important;
  font-family: var(--csp-f) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  background: #ffffff !important;
  color: #0a2412 !important;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(16, 38, 26, 0.09) !important;
  transition: background 0.15s, color 0.15s, transform 0.15s;
  white-space: nowrap;
}

.csp-shop .csp-chip:hover {
  transform: translateY(-1px);
  background: #eef6ea !important;
}

.csp-shop .csp-chip svg,
.csp-shop .csp-chip .csp-cico {
  flex: none;
  width: 16px;
  height: 16px;
}

.csp-shop .csp-chip.on,
.csp-shop .csp-chip.on:hover,
.csp-shop .csp-chip.on:focus {
  background: #1a5c0a !important;
  color: #ffffff !important;
  transform: none;
}

/* Rejilla y tarjetas */
.csp-shop .csp-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  max-width: 1140px;
  margin: 0 auto;
}

.csp-shop .csp-c {
  container-type: inline-size;
  border-radius: 14px;
  overflow: hidden;
  background: #ffffff;
  box-shadow: 0 6px 20px rgba(16, 38, 26, 0.1);
  transition: transform 0.18s, box-shadow 0.18s;
  display: flex;
  flex-direction: column;
}

.csp-shop .csp-c:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 28px rgba(16, 38, 26, 0.16);
}

.csp-shop .csp-c.csp-x,
.csp-shop .csp-c.csp-pg {
  display: none !important;
}

.csp-shop .csp-clink,
.csp-shop .csp-clink:hover {
  text-decoration: none !important;
  color: inherit !important;
  display: flex;
  flex-direction: column;
  flex: 1;
  box-shadow: none !important;
}

.csp-shop .csp-c img {
  display: block;
  width: 100% !important;
  height: auto !important;
  max-width: none !important;
  aspect-ratio: 3.2 / 1;
  min-height: 108px;
  object-fit: cover;
  margin: 0 !important;
  border-radius: 0 !important;
}

.csp-shop .csp-noimg {
  display: block;
  aspect-ratio: 3.2 / 1;
  min-height: 108px;
  background: linear-gradient(135deg, #cfe8d3, #9fcfae);
}

.csp-shop .csp-cb {
  padding: 10px 18px 14px;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.csp-shop .csp-ctitle {
  font-family: var(--csp-f) !important;
  font-size: 17px !important;
  line-height: 1.12 !important;
  font-weight: 700 !important;
  color: #0e4d12 !important;
  margin: 0 0 5px !important;
  padding: 0 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.csp-shop .csp-cdesc {
  font-size: 12px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
  color: #1f2d3a !important;
  margin: 0 0 12px !important;
  flex: 1;
}

/* Fila inferior: caracteristicas | divisor | precio */
.csp-shop .csp-cm {
  display: flex;
  align-items: stretch;
  gap: 0;
}

.csp-shop .csp-cl {
  list-style: none !important;
  flex: 1;
  min-width: 0;
  margin: 0 !important;
  padding: 0 12px 0 0 !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2px;
}

.csp-shop .csp-cl li {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  font-size: clamp(10.5px, 3.1cqw, 12px);
  font-weight: 500;
  line-height: 1.35;
  color: #12201a;
}

.csp-shop .csp-cl li::before {
  content: none !important;
}

.csp-shop .csp-cl li svg {
  flex: none;
  color: #12201a;
}

.csp-shop .csp-pr-box {
  border-left: 1px solid #cdd3d9;
  padding-left: 12px;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  text-align: right;
  white-space: nowrap;
  flex: none;
}

.csp-shop .csp-pr-box::before,
.csp-shop .csp-pr-box::after,
.csp-shop .csp-pr-from::before,
.csp-shop .csp-pr-from::after,
.csp-shop .csp-pr::before,
.csp-shop .csp-pr::after {
  content: none !important;
}

.csp-shop .csp-pr-from {
  display: block;
  font-size: clamp(11.5px, 3.4cqw, 13.5px);
  font-weight: 700;
  line-height: 1.2;
  color: #f0561a;
}

.csp-shop .csp-pr {
  display: block;
  font-size: clamp(17px, 6.1cqw, 22px);
  font-weight: 700;
  line-height: 1.15;
  color: #0a1a10;
}

.csp-shop .csp-pr-per {
  display: block;
  font-size: clamp(10.5px, 3.2cqw, 12px);
  font-weight: 500;
  line-height: 1.3;
  color: #1b3a8c;
}

.csp-shop .csp-empty {
  text-align: center;
  color: #475467;
  font-size: 14px;
  margin: 28px 0 0;
}

.csp-shop .csp-morew {
  text-align: center;
  margin-top: 26px;
}

.csp-shop .csp-more,
.csp-shop .csp-more:focus {
  border: 2px solid #1a5c0a !important;
  color: #1a5c0a !important;
  background: #ffffff !important;
  border-radius: 999px !important;
  padding: 11px 26px !important;
  font-family: var(--csp-f) !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  cursor: pointer;
  box-shadow: none !important;
}

.csp-shop .csp-more:hover {
  background: #1a5c0a !important;
  color: #ffffff !important;
}

/* ==========================================================================
   PANTALLA 3: FICHA DE EXPERIENCIA (DETALLE)
   ========================================================================== */
.csp-book {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 370px;
  gap: 28px;
  max-width: 1140px;
  margin: 0 auto;
  padding: 20px 16px;
}

.csp-gal .csp-main,
.csp-vf {
  width: 100%;
  max-height: 440px;
  border-radius: 16px;
  object-fit: cover;
  display: block;
}

.csp-stage {
  position: relative;
}

.csp-arr {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 38px;
  height: 38px;
  border-radius: 50%;
  border: 0;
  background: #ffffff !important;
  color: #12201a !important;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  z-index: 5;
}

.csp-arr.prev {
  left: 12px;
}

.csp-arr.next {
  right: 12px;
}

.csp-count {
  position: absolute;
  right: 14px;
  bottom: 14px;
  background: rgba(6, 42, 21, 0.78);
  color: #ffffff;
  border-radius: 99px;
  padding: 4px 12px;
  font-size: 12px;
  font-weight: 600;
}

.csp-vid {
  position: absolute;
  right: 68px;
  bottom: 14px;
  background: rgba(6, 42, 21, 0.78);
  color: #ffffff !important;
  border: 0;
  border-radius: 99px;
  padding: 4px 12px;
  font-size: 12px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  cursor: pointer;
}

.csp-th {
  display: flex;
  gap: 10px;
  margin-top: 10px;
  overflow-x: auto;
}

.csp-th button {
  width: 64px;
  height: 48px;
  border-radius: 8px;
  border: 2px solid transparent;
  padding: 0;
  overflow: hidden;
  background: #ffffff;
  cursor: pointer;
  flex: none;
}

.csp-th button.on {
  border-color: #1a5c0a;
}

.csp-th img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.csp-badge {
  display: inline-block;
  margin: 16px 0 6px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  background: #e6f4dc;
  color: #1a5c0a;
  padding: 4px 12px;
  border-radius: 99px;
}

.csp-title {
  font-size: clamp(1.5rem, 2.8vw, 1.9rem);
  font-weight: 800;
  color: #062a15;
  line-height: 1.15;
  margin: 0 0 6px;
}

.csp-sub {
  font-size: 1.05rem;
  font-weight: 600;
  color: #344054;
  margin: 0 0 10px;
}

.csp-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
}

.csp-stars {
  color: #f5a623;
  letter-spacing: 1px;
}

.csp-meta .csp-fav,
.csp-meta .csp-share {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 1px solid #dfe5ea;
  background: #ffffff;
  border-radius: 999px;
  padding: 6px 14px;
  font-size: 13px;
  font-weight: 600;
  color: #12201a;
  cursor: pointer;
}

.csp-meta .csp-fav {
  margin-left: auto;
}

.csp-chipsinfo {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  margin: 16px 0;
}

.csp-chipsinfo > div {
  display: flex;
  align-items: center;
  gap: 10px;
  background: #ffffff;
  border: 1px solid #e8edf1;
  border-radius: 12px;
  padding: 10px 12px;
  box-shadow: 0 2px 8px rgba(16, 38, 26, 0.04);
}

.csp-ci {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  color: #1a5c0a;
  flex: none;
}

.csp-chipsinfo small {
  display: block;
  font-size: 11px;
  color: #667085;
  font-weight: 600;
}

.csp-chipsinfo b {
  display: block;
  font-size: 13px;
  color: #12201a;
  font-weight: 700;
  line-height: 1.2;
}

.csp-tabs {
  display: flex;
  gap: 24px;
  overflow-x: auto;
  border-bottom: 1px solid var(--bd);
  background: #ffffff;
  margin: 18px 0;
  padding: 0 4px;
}

.csp-tabs a {
  padding: 12px 0;
  font-size: 13.5px;
  white-space: nowrap;
  color: #0b2a6f;
  text-decoration: none;
  font-weight: 700;
}

.csp-tabs a.on {
  color: #1a5c0a;
  box-shadow: 0 3px 0 #1a5c0a;
}

.csp-left section {
  margin: 22px 0;
  scroll-margin-top: 56px;
}

.csp-left section h3 {
  font-size: 1.15rem;
  font-weight: 800;
  color: #062a15;
  margin: 0 0 10px;
}

.csp-tl {
  list-style: none;
  margin: 0;
  padding: 0 0 0 14px;
  border-left: 2px solid #1a5c0a;
}

.csp-tl li {
  position: relative;
  display: flex;
  gap: 16px;
  padding: 6px 0;
  font-size: 14px;
}

.csp-tl li::before {
  content: "";
  position: absolute;
  left: -20px;
  top: 13px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #1a5c0a;
}

.csp-tl b {
  color: #1a5c0a;
  font-weight: 800;
  min-width: 80px;
}

.csp-ie {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-top: 18px;
}

.csp-ie section {
  border-radius: 12px;
  padding: 14px 16px;
  margin: 0;
}

.csp-ie .inc {
  background: #ecf8e4;
}

.csp-ie .exc {
  background: #fde8e8;
}

.csp-ie ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.csp-ie li {
  font-size: 13.5px;
  font-weight: 600;
  padding: 3px 0 3px 22px;
  position: relative;
  color: #12201a;
}

.csp-ie .inc li::before {
  content: "\2713";
  position: absolute;
  left: 0;
  color: #1a5c0a;
  font-weight: 800;
}

.csp-ie .exc li::before {
  content: "\2715";
  position: absolute;
  left: 0;
  color: #e11d2e;
  font-weight: 800;
}

.csp-meetbox {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.csp-meetbox > div {
  border: 1px solid #e8edf1;
  border-radius: 12px;
  padding: 14px 16px;
  background: #ffffff;
}

.csp-meetbox iframe {
  width: 100%;
  min-height: 180px;
  border: 0;
  border-radius: 12px;
}

.csp-faqs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.csp-faqs details {
  border: 1px solid #e8edf1;
  border-radius: 10px;
  padding: 10px 14px;
  background: #f8fafc;
  font-size: 13.5px;
}

.csp-faqs summary {
  cursor: pointer;
  font-weight: 700;
}

/* Tarjeta lateral de reserva (Booking Card) */
.csp-card {
  background: #ffffff;
  border: 1px solid #e8edf1;
  border-radius: 18px;
  padding: 18px;
  box-shadow: 0 12px 36px rgba(16, 38, 26, 0.12);
  position: sticky;
  top: 20px;
}

.csp-b {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-radius: 999px;
  padding: 9px 20px;
  font-size: 15px;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 8px;
}

.csp-b.priv {
  background: #0fa99b !important;
  color: #ffffff !important;
}

.csp-b.priv svg {
  stroke: #ffffff !important;
}

.csp-from-kicker {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: #f97316;
  margin-top: 6px;
}

.csp-from {
  font-size: 0.95rem;
  color: #344054;
  font-weight: 600;
}

.csp-from b {
  font-size: 1.9rem;
  font-weight: 800;
  color: #12201a;
  letter-spacing: -0.01em;
}

.csp-ptab > summary {
  list-style: none;
  cursor: pointer;
  background: #0b55e3;
  color: #ffffff;
  border-radius: 10px;
  padding: 12px 16px;
  font-weight: 700;
  font-size: 15px;
  margin: 12px 0;
}

.csp-ptab > summary::-webkit-details-marker {
  display: none;
}

.csp-prices {
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid #dfe9d8;
  border-radius: 10px;
  overflow: hidden;
  font-size: 13px;
  width: 100%;
  margin-bottom: 10px;
}

.csp-prices th {
  background: #0e4d12;
  color: #ffffff;
  font-weight: 700;
  padding: 8px 12px;
  text-align: left;
}

.csp-prices td {
  padding: 7px 12px;
  border-bottom: 1px solid #edf4ea;
  font-weight: 600;
}

.csp-prices tr:nth-child(even) td {
  background: #f6faf3;
}

/* Calendario con colores exactos del PDF */
.csp-nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
}

.csp-nav button {
  border: 1.5px solid #1a5c0a;
  border-radius: 999px;
  background: #ffffff;
  color: #1a5c0a;
  font-weight: 700;
  font-size: 16px;
  padding: 4px 14px;
  cursor: pointer;
}

.csp-dow,
.csp-days {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 5px;
}

.csp-dow i {
  font-style: normal;
  text-align: center;
  font-size: 12px;
  font-weight: 700;
  color: #12201a;
}

.csp-d {
  height: 36px;
  border-radius: 8px;
  border: 1px solid #dfe5ea;
  background: #ffffff;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  padding: 0;
  color: #12201a;
}

.csp-d.free:hover {
  border-color: #1a5c0a;
  background: #f2faec;
}

.csp-d.on {
  background: #0e4d12 !important;
  border-color: #0e4d12 !important;
  color: #ffffff !important;
  font-weight: 700;
}

.csp-d.busy {
  background: #fde2e4 !important;
  border-color: #fde2e4 !important;
  color: #e11d2e !important;
  cursor: not-allowed;
}

.csp-d.off {
  background: #f8f9fa !important;
  color: #c0c6cc !important;
  border-color: #f1f3f5 !important;
  cursor: not-allowed;
}

.csp-leg {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  font-size: 12px;
  font-weight: 600;
  color: #475467;
  margin: 12px 0 4px;
}

.csp-leg span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.csp-leg i {
  display: inline-block;
  width: 14px;
  height: 14px;
  border-radius: 4px;
  border: 1px solid #dfe5ea;
  background: #ffffff;
}

.csp-leg i.busy {
  background: #fde2e4;
  border-color: #fde2e4;
}

.csp-leg i.on {
  background: #0e4d12;
  border-color: #0e4d12;
}

.csp-slots {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  gap: 8px;
}

.csp-slot {
  background: #ffffff;
  border: 1.5px solid #dce2e6;
  border-radius: 8px;
  padding: 10px 8px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  color: #1f2d3a;
}

.csp-slot.on {
  background: #e2f2d5;
  border-color: #1a5c0a;
  color: #1a5c0a;
  font-weight: 700;
}

/* Stepper redondo verde */
.csp-st {
  display: flex;
  align-items: center;
  gap: 10px;
}

.csp-st button {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 2px solid #1a5c0a;
  background: #ffffff;
  cursor: pointer;
  position: relative;
  font-size: 0;
}

.csp-st button::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 12px;
  height: 2px;
  background: #1a5c0a;
  transform: translate(-50%, -50%);
}

.csp-st button[data-step="1"]::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 2px;
  height: 12px;
  background: #1a5c0a;
  transform: translate(-50%, -50%);
}

.csp-st button:hover {
  background: #1a5c0a;
}

.csp-st button:hover::before,
.csp-st button:hover::after {
  background: #ffffff;
}

.csp-tp {
  background: #e8f5df;
  color: #1a5c0a;
  font-weight: 700;
  border-radius: 10px;
  padding: 10px 14px;
  margin: 10px 0;
  font-size: 13.5px;
}

/* Servicios adicionales */
.csp-ad {
  border: 1px solid #e8edf1;
  border-radius: 12px;
  padding: 10px 12px;
  margin-bottom: 8px;
  background: #ffffff;
}

.csp-adr {
  display: grid;
  grid-template-columns: auto 48px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}

.csp-adc {
  accent-color: #1a5c0a;
  width: 18px;
  height: 18px;
}

.cc-thumb {
  width: 48px;
  height: 40px;
  border-radius: 8px;
  background: #eef7ec;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  flex: none;
}

.cc-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.csp-adt b {
  display: block;
  font-size: 13.5px;
  color: #12201a;
  font-weight: 700;
}

.csp-adt small {
  display: block;
  color: #667085;
  font-size: 12px;
}

.csp-cartbtn {
  background: #1a5c0a !important;
  color: #ffffff !important;
  border: 0;
  border-radius: 10px;
  padding: 15px;
  font-size: 16px;
  font-weight: 700;
  width: 100%;
  cursor: pointer;
  margin-top: 10px;
}

.csp-cartbtn:hover {
  background: #0e4d12 !important;
}

/* Logos de pago */
.csp-secure {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: 12px;
  color: #5a6872;
  font-weight: 600;
  margin-top: 14px;
}

.csp-paylogos {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.csp-plogo {
  display: inline-flex;
  align-items: center;
}

/* ==========================================================================
   PANTALLAS 4 Y 5: CARRITO Y CHECKOUT
   ========================================================================== */
.cc-wrap {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 350px;
  gap: 26px;
  max-width: 1140px;
  margin: 0 auto;
  padding: 24px 16px 44px;
}

.cc-h {
  font-size: clamp(1.7rem, 3vw, 2.1rem);
  font-weight: 800;
  color: #062a15;
  margin: 0 0 4px;
}

.cc-sub {
  font-size: 13.5px;
  color: #475467;
  margin: 0 0 16px;
}

.cc-item {
  background: #ffffff;
  border-radius: 16px;
  padding: 18px;
  box-shadow: 0 6px 24px rgba(16, 38, 26, 0.08);
  margin-bottom: 16px;
}

.cc-meta {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin: 12px 0;
}

.cc-meta > div {
  background: #f8fafc;
  border: 1px solid #e8edf1;
  border-radius: 12px;
  padding: 10px 12px;
  display: flex;
  align-items: center;
  gap: 10px;
}

.cc-note2 {
  display: flex;
  align-items: center;
  gap: 10px;
  background: #e8f5df;
  color: #1a5c0a;
  border-radius: 12px;
  padding: 12px 16px;
  font-size: 13px;
  font-weight: 600;
  margin: 16px 0;
}

.cc-sum {
  background: #ffffff;
  border-radius: 16px;
  padding: 20px;
  box-shadow: 0 12px 34px rgba(16, 38, 26, 0.12);
  position: sticky;
  top: 20px;
}

.cc-sum h3 {
  font-size: 1.2rem;
  font-weight: 800;
  color: #062a15;
  margin: 0 0 6px;
}

.cc-tot {
  border-top: 1px solid #edf2f6;
  margin-top: 10px;
  padding-top: 10px;
  display: flex;
  justify-content: space-between;
}

.cc-tot b:last-child {
  color: #1a5c0a !important;
  font-size: 1.7rem !important;
  font-weight: 800;
}

/* Pasos del checkout */
.cc-steps {
  display: flex;
  gap: 8px;
  list-style: none;
  margin: 0 0 16px;
  padding: 0;
  font-size: 13px;
  font-weight: 700;
}

.cc-steps li {
  display: flex;
  align-items: center;
  gap: 6px;
  color: #8a96a0;
}

.cc-steps li + li::before {
  content: "";
  width: 30px;
  height: 2px;
  background: #dce2e6;
}

.cc-steps .on,
.cc-steps .done {
  color: #12201a;
}

.cc-steps .on i,
.cc-steps .done i {
  background: #1a5c0a;
  border-color: #1a5c0a;
  color: #ffffff;
}

/* Formularios Checkout */
.cc-form section {
  background: #ffffff;
  border-radius: 14px;
  padding: 16px 18px;
  margin-bottom: 14px;
  box-shadow: 0 4px 18px rgba(16, 38, 26, 0.06);
}

.cc-form input:not([type=checkbox]),
.cc-form select,
.cc-form textarea {
  width: 100%;
  padding: 11px 13px;
  border: 1px solid #dfe5ea;
  border-radius: 8px;
  font: inherit;
  margin-bottom: 10px;
}

.cc-form .g2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

/* Adaptabilidad móvil */
@media (max-width: 900px) {
  .csp-book,
  .cc-wrap {
    grid-template-columns: 1fr !important;
  }
  .csp-grid {
    grid-template-columns: 1fr 1fr !important;
  }
  .csp-chipsinfo {
    grid-template-columns: 1fr 1fr !important;
  }
}

@media (max-width: 580px) {
  .csp-grid {
    grid-template-columns: 1fr !important;
  }
  .csp-chipsinfo {
    grid-template-columns: 1fr !important;
  }
  .csp-fcard {
    width: 100% !important;
  }
  .cc-meta {
    grid-template-columns: 1fr !important;
  }
  .cc-form .g2 {
    grid-template-columns: 1fr !important;
  }
}

/* ==========================================================================
   PANTALLA 3 · AJUSTES v2.7.7 (ficha idéntica al PDF)
   ========================================================================== */
.csp-book { align-items: start; }
.csp-book [hidden], .csp-cq [hidden] { display: none !important; }

/* Elementos del tema que salen en blanco sobre blanco en la ficha */
.csp-single .entry-meta,
.csp-single .posted-on,
.csp-single .byline,
.csp-single .post-navigation,
.csp-single .ast-single-post-navigation,
.csp-single .entry-footer { display: none !important; }

/* Galería */
.csp-gal .csp-main { aspect-ratio: 16 / 9; height: auto; max-height: 440px; }
.csp-vf { aspect-ratio: 16 / 9; background: #000; overflow: hidden; }
.csp-vf iframe, .csp-vf video { width: 100%; height: 100%; border: 0; display: block; }
.csp-feat { position: absolute; left: 14px; top: 14px; display: inline-flex; align-items: center; gap: 6px; background: #0fa99b; color: #fff; border-radius: 99px; padding: 5px 12px; font-size: 12px; font-weight: 700; }
.csp-th button { position: relative; }
.csp-th button.isv .csp-play { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; color: #fff; background: rgba(0,0,0,.35); }
.csp-tbv { display: block; width: 100%; height: 100%; background: #12201a; }

/* Meta */
.csp-meta b { font-size: 15px; }
.csp-meta small { color: #475467; font-size: 13px; }
.csp-meta .csp-fav.on svg { fill: #e11d2e; stroke: #e11d2e; }
.csp-shwrap { position: relative; display: inline-block; }
.csp-shm { position: absolute; right: 0; top: calc(100% + 6px); background: #062a15; color: #fff; font-size: 12px; font-weight: 600; padding: 6px 12px; border-radius: 8px; white-space: nowrap; z-index: 20; }
.csp-short { margin: 8px 0 14px; font-size: 14.5px; color: #12201a; }

/* Pestañas */
.csp-tabsw { margin: 14px 0 8px; }
.csp-tabs { margin: 0; gap: 28px; align-items: center; scrollbar-width: thin; scrollbar-color: #1a5c0a #e8f5df; }
.csp-tabs::-webkit-scrollbar { height: 6px; }
.csp-tabs::-webkit-scrollbar-track { background: #e8f5df; border-radius: 99px; }
.csp-tabs::-webkit-scrollbar-thumb { background: #1a5c0a; border-radius: 99px; }
.csp-tabs a { border-bottom: 3px solid transparent; }
.csp-tabs a.on { box-shadow: none; border-bottom-color: #1a5c0a; color: #1a5c0a; }
.csp-totop { display: none !important; }
.csp-tabgo { display: none !important; }

/* Descripción */
.csp-long { font-size: 14.5px; line-height: 1.6; color: #12201a; }
.csp-long p { margin: 0 0 10px; }

/* Qué incluye / No incluye */
.csp-ie .inc h3 { color: #1a5c0a; }
.csp-ie .exc h3 { color: #b4141f; }
.csp-ie li::before { font-size: 14px; line-height: 1.6; }

/* Experiencias relacionadas */
.cc-relhd { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-bottom: 12px; }
.cc-relhd h3, .cc-h3 { margin: 0 !important; }
.cc-relhd a { color: #1a5c0a; font-weight: 700; font-size: 13.5px; text-decoration: none; cursor: pointer; }
.cc-sub2 { font-size: 13.5px; color: #475467; margin: 0 0 14px; }
.csp-rels { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.csp-rel { position: relative; display: flex; flex-direction: column; background: #fff; border: 1px solid #e8edf1; border-radius: 12px; overflow: hidden; text-decoration: none; color: #12201a; box-shadow: 0 2px 8px rgba(16,38,26,.05); transition: box-shadow .2s, transform .2s; }
.csp-rel:hover { box-shadow: 0 8px 22px rgba(16,38,26,.14); transform: translateY(-2px); }
.csp-rel img { width: 100%; height: 110px; object-fit: cover; display: block; }
.csp-rel b { display: block; padding: 10px 12px 2px; font-size: 13.5px; font-weight: 800; line-height: 1.25; color: #062a15; }
.csp-rel small { display: flex; align-items: center; flex-wrap: wrap; gap: 4px; padding: 2px 12px 12px; font-size: 12px; font-weight: 600; color: #475467; }
.csp-rel small svg { flex: none; }
.csp-rel small span.cc-from { color: #f97316; font-weight: 800; }
.csp-rel small.cc-from { color: #f97316; font-weight: 700; }
.csp-rel small.cc-from b { display: inline; padding: 0; font-size: 14px; color: #12201a; }
.csp-rel .cc-go { position: absolute; right: 10px; bottom: 10px; width: 30px; height: 30px; border-radius: 50%; border: 2px solid #1a5c0a; color: #1a5c0a; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 18px; line-height: 1; background: #fff; }
.csp-cq.csp-loading { opacity: .55; pointer-events: none; transition: opacity .2s; }

/* Barra «Reservar» (solo móvil) */
.csp-jump { display: none; }

/* Tarjeta de reserva */
.csp-card { position: relative; top: auto; padding: 20px; }
.csp-badges { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 4px; }
.csp-b.regen { background: #e8f5df; color: #1a5c0a; border: 1px solid #bfe0b0; }
.csp-b.regen svg { stroke: #1a5c0a; }
.csp-from { margin: 0 0 4px; }
.csp-ptab { margin: 0 0 6px; }
.csp-ptab > summary { display: block; text-align: left; }
.csp-prices th:first-child, .csp-prices td:first-child { width: 34%; }
.csp-prices tr.on td { background: #dff1d2 !important; color: #0e4d12; font-weight: 800; }
.csp-note { font-size: 13px; line-height: 1.5; color: #344054; margin: 8px 0 0; }
.csp-card h4 { margin: 20px 0 10px; font-size: 1.05rem; font-weight: 800; color: #062a15; line-height: 1.25; }
.csp-card h4 small { font-size: .85em; font-weight: 700; color: #344054; }
.csp-daynote { display: flex; align-items: center; gap: 6px; font-size: 13.5px; color: #344054; margin: 0 0 12px; }
.csp-daynote svg { color: #5a6872; flex: none; }

/* Calendario */
.csp-cal { margin-bottom: 4px; }
.csp-nav { margin-bottom: 10px; }
.csp-nav b { font-size: 15px; font-weight: 800; color: #062a15; text-align: center; flex: 1; }
.csp-nav button { width: 36px; height: 30px; display: flex; align-items: center; justify-content: center; padding: 0; line-height: 1; }
.csp-nav button:disabled { opacity: .35; cursor: not-allowed; }
.csp-dow { margin-bottom: 6px; }
.csp-d { height: 34px; width: 100%; }
.csp-d.blank { visibility: hidden; border: 0; background: transparent; cursor: default; }
.csp-d.off { background: #fde2e4 !important; border-color: #fde2e4 !important; color: #e11d2e !important; font-weight: 700; }
.csp-d.today { box-shadow: inset 0 0 0 1.5px #0fa99b; }
.csp-d.on.busy, .csp-d.on.off { background: #0e4d12 !important; color: #fff !important; }
.csp-sel { list-style: none; margin: 10px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.csp-sel:empty { display: none; }
.csp-sel li { display: inline-flex; align-items: center; gap: 6px; background: #e8f5df; color: #0e4d12; border-radius: 99px; padding: 4px 6px 4px 12px; font-size: 12.5px; font-weight: 700; }
.csp-sel li button { border: 0; background: #0e4d12; color: #fff; width: 18px; height: 18px; border-radius: 50%; font-size: 11px; line-height: 1; cursor: pointer; padding: 0; }
.csp-leg { margin: 12px 0 0; }

/* Horarios */
.csp-slots { margin-bottom: 4px; }
.csp-slot { font-family: inherit; }
.csp-slot:disabled, .csp-slot.full { opacity: .45; cursor: not-allowed; text-decoration: line-through; }

/* Personas, filas y total */
.csp-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 6px 0; font-size: 14px; }
.csp-row > span { font-weight: 600; color: #12201a; }
.csp-prow { border: 1px solid #e8edf1; border-radius: 10px; padding: 8px 12px; margin-bottom: 8px; background: #fff; }
.csp-st { flex: none; }
.csp-st[hidden] { display: none !important; }
.csp-st b { min-width: 24px; text-align: center; font-size: 15px; font-weight: 800; }
.csp-st button { padding: 0; flex: none; }
.csp-tp { display: flex; align-items: center; gap: 8px; }
.csp-tp svg { flex: none; }

/* Servicios adicionales */
.csp-adhint { font-size: 13.5px; color: #344054; margin: -4px 0 12px; }
.csp-adr { grid-template-columns: auto 48px minmax(0, 1fr) auto auto; }
.csp-adr .csp-adp { font-size: 12.5px; font-weight: 800; color: #0e4d12; white-space: nowrap; }
.csp-adr .csp-adp:empty { display: none; }
.csp-adok { color: #1a5c0a; font-weight: 800; font-size: 18px; width: 18px; text-align: center; }
.csp-aq button { width: 28px; height: 28px; }
.csp-gt { width: 100%; margin-top: 8px; border-collapse: collapse; font-size: 12.5px; background: #f6faf3; border-radius: 8px; overflow: hidden; }
.csp-gt th { text-align: left; padding: 6px 10px; background: #e8f5df; color: #0e4d12; }
.csp-gt td { padding: 5px 10px; border-top: 1px solid #e3eedc; }
.csp-gt tr.on td { background: #dff1d2; font-weight: 800; color: #0e4d12; }
.csp-adc { cursor: pointer; }

/* Totales (idéntico al PDF) */
.csp-adtot, .csp-total { font-weight: 800; }
.csp-row.csp-tot { border-top: 1px solid #edf2f6; margin-top: 8px; padding-top: 12px; }
.csp-row.csp-tot > span { font-size: 15px; font-weight: 800; color: #062a15; }
.csp-row.csp-tot .csp-total { font-size: 1.5rem; color: #062a15; letter-spacing: -.01em; }
.csp-lines { list-style: none; margin: 0 0 6px; padding: 0; }
.csp-lines li { display: flex; justify-content: space-between; gap: 10px; font-size: 13px; color: #475467; padding: 2px 0; }
.csp-lines li b { font-weight: 700; color: #344054; }
.csp-msg { min-height: 0; margin: 8px 0 0; font-size: 13px; font-weight: 700; color: #b4141f; }
.csp-msg.ok { color: #1a5c0a; }
.csp-msg:empty { display: none; }

/* Botones */
.csp-cartbtn { display: flex; align-items: center; justify-content: center; gap: 8px; font-family: inherit; }
.csp-cartbtn:disabled { opacity: .7; cursor: wait; }
.csp-wa { display: flex; align-items: center; justify-content: center; width: 100%; margin-top: 8px; border-radius: 10px; padding: 13px; font-size: 15px; font-weight: 700; background: #fff !important; color: #1a5c0a !important; border: 2px solid #1a5c0a; cursor: pointer; }
.csp-btn.sm { display: inline-block; background: #1a5c0a; color: #fff !important; border-radius: 99px; padding: 9px 20px; font-size: 13.5px; font-weight: 700; text-decoration: none; margin-top: 8px; }
.csp-secure { flex-wrap: nowrap; }
.csp-sec-txt { display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; }

/* Móvil */
@media (max-width: 900px) {
  .csp-rels { grid-template-columns: 1fr 1fr; }
  .csp-tabgo { display: inline-block !important; }
  .csp-jump { display: block; position: fixed; left: 0; right: 0; bottom: 0; z-index: 99; background: #1a5c0a; color: #fff !important; text-align: center; padding: 14px 16px; font-size: 15px; font-weight: 700; text-decoration: none; box-shadow: 0 -4px 16px rgba(0,0,0,.18); }
  .csp-jump b { color: #fff; }
  .csp-meetbox, .csp-faqs, .csp-ie { grid-template-columns: 1fr; }
}
@media (max-width: 580px) {
  .csp-rels { grid-template-columns: 1fr; }
  .csp-rel { flex-direction: row; }
  .csp-rel img { width: 110px; height: auto; min-height: 90px; }
  .csp-rel small { padding-bottom: 8px; }
  .csp-adr { grid-template-columns: auto 44px minmax(0, 1fr); }
  .csp-adr .csp-aq, .csp-adr .csp-adp { grid-column: 3; justify-self: start; }
}

.csp-d.wait { opacity: .45; cursor: wait; }

/* ==========================================================
   PANTALLA 3 · Detalle de experiencia (v2.8.0) – ajuste fiel a diseño
   ========================================================== */
.csp-cq{--g:#0e4d12;--g2:#1a7a12;--gl:#eef8e6;--ink:#111827;--tx:#1f2937;--mu:#4b5563}
.csp-cq .csp-book{gap:20px}
/* Encabezado */
.csp-cq .csp-badge{background:#e9f7dc!important;color:var(--g)!important;font-size:11px!important;font-weight:800!important;letter-spacing:.02em;text-transform:uppercase;padding:4px 8px!important;border-radius:6px!important}
.csp-cq .csp-title{font-size:clamp(24px,2.6vw,30px)!important;line-height:1.15!important;font-weight:800!important;text-transform:uppercase;letter-spacing:-.01em;color:var(--ink)!important;margin:10px 0 6px!important}
.csp-cq .csp-sub{font-size:18px!important;font-weight:500!important;text-transform:none!important;color:var(--tx)!important;margin:0 0 8px!important}
.csp-cq .csp-meta{font-size:15px;align-items:center}
.csp-cq .csp-stars{color:#f5b301!important;font-size:18px!important;letter-spacing:1px}
.csp-cq .csp-meta>b{color:var(--g)!important;font-size:16px;font-weight:800}
.csp-cq .csp-meta small{color:var(--g)!important;font-size:13px}
.csp-cq .csp-fav,.csp-cq .csp-share{text-transform:none!important;font-size:13px!important;font-weight:700!important;color:var(--g)!important;border:1px solid #e5e7eb!important;border-radius:999px!important;padding:7px 14px!important;background:#fff!important}
/* Chips info */
.csp-cq .csp-chipsinfo{gap:8px!important}
.csp-cq .csp-chipsinfo>div{border:1px solid #e9ecef!important;border-radius:10px!important;padding:12px!important;box-shadow:none!important;align-items:center}
.csp-cq .csp-chipsinfo .csp-ci,.csp-cq .csp-chipsinfo i{color:var(--g)!important}
.csp-cq .csp-chipsinfo small{font-size:11px!important;color:var(--tx)!important;font-weight:500!important}
.csp-cq .csp-chipsinfo b{font-size:13px!important;font-weight:800!important;color:var(--ink)!important;line-height:1.25}
.csp-cq .csp-short{font-size:14px;color:var(--tx);margin:10px 0}
/* Tabs */
.csp-cq .csp-tabsw{border:1px solid #eef0f2;border-radius:10px;padding:6px 10px 2px;background:#fff}
.csp-cq .csp-tabs{gap:24px!important;scrollbar-color:#7cbf5a #eef0f2!important}
.csp-cq .csp-tabs a{font-size:13px!important;font-weight:700!important;color:#0b2a8a!important;padding:10px 0!important;white-space:nowrap}
.csp-cq .csp-tabs a.on,.csp-cq .csp-tabs a:first-of-type{color:var(--ink)!important}
.csp-cq .csp-tabs a.on{box-shadow:inset 0 -4px 0 var(--g2)}
.csp-cq .csp-tabgo,.csp-cq .csp-totop{display:none!important}
/* Secciones */
.csp-cq .csp-left section>h3,.csp-cq .cc-relhd h3{font-size:19px!important;font-weight:800!important;color:var(--ink)!important;margin:16px 0 6px!important}
.csp-cq .csp-long,.csp-cq .csp-long p{font-size:14px!important;line-height:1.5!important;color:var(--tx)!important}
.csp-cq .csp-tl li{font-size:13.5px!important;padding:3px 0 3px 22px!important}
.csp-cq .csp-tl li b{color:var(--g)!important;font-weight:800!important;min-width:90px;display:inline-block}
.csp-cq .csp-ie{gap:12px!important}
.csp-cq .csp-ie section{border-radius:10px!important;padding:12px 16px!important;border:0!important}
.csp-cq .csp-ie .inc{background:#eef8e6!important}
.csp-cq .csp-ie .exc{background:#fde8ea!important}
.csp-cq .csp-ie h3{font-size:19px!important;margin:0 0 6px!important}
.csp-cq .csp-ie .inc h3{color:var(--g)!important}
.csp-cq .csp-ie .exc h3{color:#1e3a8a!important}
.csp-cq .csp-ie li{font-size:13px!important;font-weight:500!important;padding:2px 0 2px 18px!important;color:var(--ink)!important}
.csp-cq .csp-meetbox{border-radius:10px!important;gap:10px!important}
.csp-cq .csp-meetbox b{font-size:15px!important;font-weight:800!important}
.csp-cq .csp-meetbox p{font-size:13px!important;color:var(--mu)!important;line-height:1.45!important}
.csp-cq .csp-btn.sm{background:var(--g)!important;border-radius:8px!important;font-size:13px!important;padding:9px 14px!important;text-transform:none!important}
.csp-cq .csp-faqs summary{font-size:13px!important;font-weight:700!important;padding:8px 12px!important}
.csp-cq .csp-faqs details{border-radius:8px!important}
.csp-cq .cc-relhd a{font-size:13px;font-weight:700;color:var(--g)!important}
/* ---------- Tarjeta de reserva ---------- */
.csp-cq .csp-card{border-radius:14px!important;padding:16px 14px!important;box-shadow:0 6px 24px rgba(16,38,26,.10)!important}
.csp-cq .csp-b{font-size:19px!important;font-weight:800!important;padding:9px 22px!important;border-radius:999px!important}
.csp-cq .csp-b svg{width:20px;height:20px}
.csp-cq .csp-from-kicker{font-size:17px!important;font-weight:800!important;margin-top:4px!important}
.csp-cq .csp-from{font-size:18px!important;font-weight:500!important;color:#374151!important}
.csp-cq .csp-from b{font-size:28px!important;font-weight:900!important;color:var(--ink)!important}
.csp-cq .csp-ptab>summary{font-size:16px!important;font-weight:800!important;padding:11px 18px!important;border-radius:10px!important;margin:10px 0 12px!important;background:#0b55e3!important}
.csp-cq .csp-prices{width:100%!important;border-collapse:collapse!important;border:1px solid #e5e7eb!important;font-size:14.5px!important;table-layout:fixed}
.csp-cq .csp-prices th{background:var(--g)!important;color:#fff!important;font-size:14.5px!important;font-weight:700!important;padding:7px 12px!important;text-align:left!important;white-space:nowrap;border:0!important;border-left:1px solid rgba(255,255,255,.25)!important}
.csp-cq .csp-prices th:first-child{border-left:0!important;width:34%}
.csp-cq .csp-prices td{padding:3px 12px!important;font-size:14.5px!important;font-weight:500!important;color:var(--ink)!important;white-space:nowrap!important;border:0!important;border-top:1px solid #eef0f2!important;border-left:1px solid #eef0f2!important;background:#fff!important;height:auto!important;line-height:1.35!important}
.csp-cq .csp-prices td:first-child{border-left:0!important}
.csp-cq .csp-prices tr.on td,.csp-cq .csp-prices tr.cur td{background:#f3f4f6!important;font-weight:600!important}
.csp-cq .csp-note,.csp-cq .csp-daynote{display:none!important}
.csp-cq .csp-card h4{font-size:15px!important;font-weight:800!important;color:var(--ink)!important;margin:18px 0 8px!important}
.csp-cq .csp-card h4 small{font-weight:800!important;font-size:15px!important}
/* Calendario */
.csp-cq .csp-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
.csp-cq .csp-nav button{width:42px!important;height:22px!important;border-radius:999px!important;border:1.6px solid var(--g)!important;background:#fff!important;color:var(--g)!important;font-weight:800;font-size:15px;line-height:1;display:inline-flex;align-items:center;justify-content:center}
.csp-cq .csp-nm{font-size:16px!important;font-weight:800!important;color:var(--ink)!important}
.csp-cq .csp-dow span,.csp-cq .csp-dow>*{font-size:13px!important;font-weight:800!important;color:var(--ink)!important}
.csp-cq .csp-days{gap:6px 7px!important}
.csp-cq .csp-d{height:26px!important;font-size:13.5px!important;font-weight:800!important;border-radius:5px!important;border:1px solid #e5e7eb!important}
.csp-cq .csp-d.busy{background:#fde2e4!important;color:#dc2626!important;border-color:#fde2e4!important}
.csp-cq .csp-d.on{background:var(--g)!important;color:#fff!important}
.csp-cq .csp-leg{font-size:13px!important;font-weight:500!important;color:var(--ink)!important;gap:8px 26px!important;margin:14px 0 4px!important}
.csp-cq .csp-leg i{width:16px!important;height:16px!important;border-radius:3px!important}
/* Horarios */
.csp-cq .csp-slots{grid-template-columns:1fr 1fr!important;gap:10px!important}
.csp-cq .csp-slot{font-size:13px!important;font-weight:700!important;text-transform:none!important;white-space:nowrap!important;padding:9px 6px!important;border:1.5px solid #e5e7eb!important;border-radius:8px!important;color:var(--ink)!important}
.csp-cq .csp-slot.on{background:var(--gl)!important;border-color:var(--g2)!important;color:var(--g)!important}
/* Personas */
.csp-cq .csp-prow{border:0!important;padding:5px 0!important;background:none!important}
.csp-cq .csp-prow>span{font-size:16px!important;font-weight:500!important;color:var(--tx)!important}
.csp-cq .csp-st button{width:26px!important;height:26px!important;border:1.6px solid var(--g2)!important;color:var(--g2)!important}
.csp-cq .csp-st b{font-size:16px!important;font-weight:800!important;min-width:38px;text-align:center}
.csp-cq .csp-tp{background:var(--gl)!important;color:var(--g)!important;font-size:15px!important;font-weight:700!important;padding:7px 14px!important;border-radius:8px!important;margin-top:8px}
.csp-cq .csp-tp b{color:var(--ink)!important;font-weight:800}
/* Adicionales */
.csp-cq .csp-adhint{font-size:13px!important;color:var(--tx)!important;margin:-4px 0 8px!important}
.csp-cq .csp-ad{border:1px solid #e5e7eb!important;border-radius:8px!important;padding:8px 12px!important;margin-bottom:6px!important;box-shadow:none!important}
.csp-cq .csp-adr{gap:14px!important;align-items:center}
.csp-cq .csp-adc{width:17px;height:17px}
.csp-cq .cc-thumb{width:44px!important;height:36px!important}
.csp-cq .csp-adt b{font-size:14px!important;font-weight:800!important;color:var(--ink)!important}
.csp-cq .csp-adt small{font-size:12px!important;color:var(--tx)!important;line-height:1.3}
/* Totales */
.csp-cq .csp-row:not(.csp-prow){font-size:15px;padding:4px 0}
.csp-cq .csp-adtot{font-weight:800}
.csp-cq .csp-tot span{font-size:19px!important;font-weight:800!important;color:var(--ink)!important}
.csp-cq .csp-total{font-size:23px!important;font-weight:900!important;color:var(--g2)!important}
.csp-cq .csp-lines li{font-size:14px!important;color:var(--tx)!important}
.csp-cq .csp-cartbtn{width:100%;background:var(--g)!important;border-radius:10px!important;font-size:17px!important;font-weight:700!important;text-transform:none!important;letter-spacing:0!important;padding:13px!important;margin-top:14px!important;gap:10px}
.csp-cq .csp-cartbtn svg{width:22px;height:22px}
.csp-cq .csp-secure{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:14px!important}
.csp-cq .csp-sec-txt{font-size:13px!important;color:var(--tx)!important;font-weight:500!important;display:inline-flex;gap:6px;align-items:center}
.csp-cq .csp-sec-txt svg{stroke:var(--g)!important;width:18px;height:18px}
.csp-cq .csp-paylogos{gap:14px!important}
.csp-cq .csp-plogo svg{height:22px!important}

/* ==========================================================
   PANTALLA 3 · v2.9.0 – proporciones y detalles según imagen guía
   ========================================================== */
.csp-cq .csp-book{grid-template-columns:minmax(0,1fr) 410px!important;gap:26px!important;max-width:1200px!important}
@media(max-width:1100px){.csp-cq .csp-book{grid-template-columns:minmax(0,1fr) 370px!important}}
@media(max-width:900px){.csp-cq .csp-book{grid-template-columns:1fr!important}}
/* Galería */
.csp-cq .csp-stage img.csp-main{border-radius:14px!important}
.csp-cq .csp-arr{width:40px!important;height:40px!important;background:#fff!important;color:#111!important;box-shadow:0 3px 10px rgba(0,0,0,.28)!important;border:0!important}
.csp-cq .csp-arr svg{width:20px;height:20px;display:block}
.csp-cq .csp-arr.prev{left:14px!important}.csp-cq .csp-arr.next{right:14px!important}
.csp-cq .csp-th{gap:10px!important;margin-top:8px}
.csp-cq .csp-th button{border-radius:6px!important;overflow:hidden}
/* Encabezado */
.csp-cq .csp-badge{font-size:12px!important;margin-top:12px}
.csp-cq .csp-title{font-size:clamp(26px,2.4vw,31px)!important;margin:8px 0 4px!important}
.csp-cq .csp-sub{font-size:20px!important;font-weight:500!important;margin:0 0 6px!important}
.csp-cq .csp-stars{font-size:20px!important}
.csp-cq .csp-meta>b{font-size:17px!important}
.csp-cq .csp-meta small{font-size:15px!important}
.csp-cq .csp-fav,.csp-cq .csp-share{font-size:14px!important;padding:7px 16px!important;border-color:#e3e6ea!important}
/* Duración / capacidad / ubicación / idiomas */
.csp-cq .csp-chipsinfo{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;margin:12px 0 8px!important}
.csp-cq .csp-chipsinfo>div{display:flex!important;gap:12px!important;padding:12px 12px!important;min-height:78px;border:1px solid #e6e9ec!important;border-radius:10px!important;background:#fff!important}
.csp-cq .csp-chipsinfo .csp-ci{flex:0 0 auto;display:flex}
.csp-cq .csp-chipsinfo .csp-ci svg{width:26px!important;height:26px!important;stroke:#1a7a12!important;stroke-width:2.2}
.csp-cq .csp-chipsinfo span{display:flex;flex-direction:column;gap:3px;min-width:0}
.csp-cq .csp-chipsinfo small{font-size:12px!important;font-weight:500!important;color:#1f2937!important}
.csp-cq .csp-chipsinfo b{font-size:14px!important;font-weight:800!important;line-height:1.25!important}
@media(max-width:600px){.csp-cq .csp-chipsinfo{grid-template-columns:1fr 1fr!important}}
.csp-cq .csp-short{font-size:15px!important;margin:6px 0 12px!important}
/* Menú de secciones */
.csp-cq .csp-tabsw{border:1px solid #eceff2!important;border-radius:12px!important;padding:4px 14px 8px!important;background:#fff!important;box-shadow:0 1px 4px rgba(0,0,0,.04)}
.csp-cq .csp-tabs{display:flex!important;gap:26px!important;overflow-x:auto!important;scrollbar-width:none!important;padding:0 2px!important;margin:0!important}
.csp-cq .csp-tabs::-webkit-scrollbar{display:none!important}
.csp-cq .csp-tabs a{position:relative;font-size:14px!important;font-weight:700!important;color:#0b2a8a!important;padding:12px 0 14px!important;border:0!important;box-shadow:none!important;text-decoration:none!important}
.csp-cq .csp-tabs a:first-of-type{color:#0b2a8a!important}
.csp-cq .csp-tabs a.on{color:#111827!important;box-shadow:none!important}
.csp-cq .csp-tabs a.on::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:5px;border-radius:99px;background:#1a7a12}
.csp-cq .csp-tbar{display:flex;align-items:center;gap:8px;margin-top:2px}
.csp-cq .csp-tabsw.noscroll .csp-tbar,.csp-cq .noscroll>.csp-tbar{display:none}
.csp-cq .csp-tbl,.csp-cq .csp-tbr{width:0!important;height:0!important;padding:0!important;border:0!important;background:none!important;cursor:pointer;border-top:7px solid transparent!important;border-bottom:7px solid transparent!important;flex:0 0 auto}
.csp-cq .csp-tbl{border-right:10px solid #1a7a12!important}
.csp-cq .csp-tbr{border-left:10px solid #1a7a12!important}
.csp-cq .csp-ttrk{position:relative;flex:1;height:8px;border-radius:99px;background:#eef1ee;overflow:hidden}
.csp-cq .csp-ttrk i{position:absolute;top:0;bottom:0;left:0;width:60%;border-radius:99px;background:#86c06a;transition:left .15s}
/* Secciones */
.csp-cq .csp-left section>h3,.csp-cq .cc-relhd h3{font-size:20px!important;margin:18px 0 6px!important}
.csp-cq .csp-long,.csp-cq .csp-long p{font-size:15px!important}
.csp-cq .csp-tl li{font-size:14.5px!important}
.csp-cq .csp-ie h3{font-size:20px!important}
.csp-cq .csp-ie li{font-size:14px!important}
/* Punto de encuentro */
.csp-cq #csp-meet>h3{display:flex;align-items:center;gap:6px}
.csp-cq #csp-meet>h3 svg{width:20px;height:20px}
.csp-cq .csp-meetbox{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;align-items:stretch}
.csp-cq .csp-meetbox>div{background:#f5f6f7!important;border:1px solid #e6e9ec!important;border-radius:12px!important;padding:16px 16px!important}
.csp-cq .csp-meetbox b{display:block;font-size:16px!important;margin-bottom:6px}
.csp-cq .csp-meetbox p{font-size:14px!important;margin:0 0 12px!important}
.csp-cq .csp-meetbox iframe{width:100%!important;height:100%!important;min-height:150px;border:0!important;border-radius:12px!important}
.csp-cq .csp-btn.sm{background:#1a6b12!important;font-size:14px!important;padding:9px 16px!important}
@media(max-width:600px){.csp-cq .csp-meetbox{grid-template-columns:1fr!important}}
.csp-cq .csp-faqs summary{font-size:14px!important}
/* Tarjeta reserva */
.csp-cq .csp-card{padding:18px 18px!important}
.csp-cq .csp-b{font-size:21px!important;padding:10px 24px!important}
.csp-cq .csp-from-kicker{display:block;font-size:20px!important;font-weight:800!important;color:#f97316!important;margin:8px 0 0!important}
.csp-cq .csp-from{font-size:20px!important}
.csp-cq .csp-from b{font-size:31px!important;font-weight:900!important}
.csp-cq .csp-ptab>summary{font-size:17px!important;padding:12px 18px!important}
.csp-cq .csp-prices,.csp-cq .csp-prices th,.csp-cq .csp-prices td{font-size:15.5px!important}
.csp-cq .csp-prices th{padding:7px 14px!important}
.csp-cq .csp-prices th:first-child{width:36%}
.csp-cq .csp-prices td{padding:3px 14px!important}
.csp-cq .csp-card h4,.csp-cq .csp-card h4 small{font-size:16px!important}
/* Calendario */
.csp-cq .csp-nav{margin:6px 0 8px!important}
.csp-cq .csp-nav button,.csp-cq .csp-nav .csp-nm,.csp-cq .csp-nav .csp-pm{width:44px!important;height:26px!important;padding:0!important;border-radius:999px!important;border:1.8px solid #1a6b12!important;background:#fff!important;color:#0e4d12!important;display:inline-flex!important;align-items:center;justify-content:center;font-size:0!important}
.csp-cq .csp-nav button svg{width:16px;height:16px;display:block}
.csp-cq .csp-nav button:disabled{opacity:.45}
.csp-cq .csp-nav b{font-size:17px!important;font-weight:800!important;color:#111827!important}
.csp-cq .csp-dow{display:grid!important;grid-template-columns:repeat(7,1fr)!important;gap:7px!important;margin-bottom:6px}
.csp-cq .csp-dow i{font-style:normal;text-align:center;font-size:14px!important;font-weight:800!important;color:#111827}
.csp-cq .csp-days{display:grid!important;grid-template-columns:repeat(7,1fr)!important;gap:6px 7px!important}
.csp-cq .csp-d{width:100%!important;height:30px!important;padding:0!important;font-size:14.5px!important;font-weight:800!important;border-radius:6px!important;background:#fff!important;color:#111827!important;border:1px solid #e3e6ea!important}
.csp-cq .csp-d.blank{background:transparent!important;border:0!important}
.csp-cq .csp-d.busy{background:#fde2e4!important;color:#dc2626!important;border-color:#fde2e4!important}
.csp-cq .csp-d.on{background:#0e4d12!important;color:#fff!important;border-color:#0e4d12!important}
.csp-cq .csp-leg{font-size:14px!important;gap:8px 28px!important}
.csp-cq .csp-slot{font-size:14px!important;padding:10px 6px!important}
.csp-cq .csp-prow>span{font-size:17px!important}
.csp-cq .csp-st button{width:28px!important;height:28px!important}
.csp-cq .csp-tp{font-size:16px!important}
.csp-cq .csp-adt b{font-size:15px!important}
.csp-cq .csp-adt small{font-size:13px!important}
.csp-cq .csp-tot span{font-size:20px!important}
.csp-cq .csp-total{font-size:25px!important}
.csp-cq .csp-cartbtn{display:flex!important;align-items:center;justify-content:center;font-size:18px!important;padding:14px!important}
.csp-cq .csp-cartbtn svg{width:24px!important;height:24px!important}
/* Pago seguro */
.csp-cq .csp-secure{gap:16px!important;flex-wrap:nowrap}
.csp-cq .csp-sec-txt{font-size:14px!important;color:#111827!important}
.csp-cq .csp-sec-txt svg{stroke:none!important}
.csp-cq .csp-paylogos{display:inline-flex!important;align-items:center;gap:16px!important}
.csp-cq .csp-plogo{display:inline-flex;align-items:center}
.csp-cq .csp-plogo svg{height:22px!important;width:auto}
.csp-cq .csp-mc svg,.csp-cq .csp-pse svg{height:24px!important}
.csp-cq .csp-wompi{font-size:14px;font-weight:500;color:#111827}

/* ===== v2.9.1 – correcciones puntuales ===== */
/* Chips info: fondo verde suave + iconos rellenos */
.csp-cq .csp-chipsinfo>div{background:#f4f9f0!important;border:1px solid #e3ecdc!important;align-items:center!important;padding:12px 14px!important;gap:12px!important}
.csp-cq .csp-chipsinfo .csp-ci{color:#1f7a14!important;width:28px;justify-content:center}
.csp-cq .csp-chipsinfo .csp-ci svg{width:auto!important;height:24px!important;stroke-width:2.4}
.csp-cq .csp-chipsinfo .csp-ci svg[fill="currentColor"]{stroke:none!important;fill:#1f7a14!important}
.csp-cq .csp-chipsinfo small{font-size:12px!important;color:#111827!important}
.csp-cq .csp-chipsinfo b{font-size:14.5px!important;font-weight:700!important;color:#111827!important}
/* Menú: activo oscuro con barra verde separada */
.csp-cq .csp-tabs a{padding:12px 0 16px!important;color:#0b2a8a!important}
.csp-cq .csp-tabs a.on{color:#111827!important}
.csp-cq .csp-tabs a.on::after{bottom:0!important;height:5px!important;background:#1a6b12!important}
.csp-cq .csp-tbl{border-right-color:#1a6b12!important}.csp-cq .csp-tbr{border-left-color:#1a6b12!important}
.csp-cq .csp-ttrk{height:9px!important;background:#f1f3f1!important}
.csp-cq .csp-ttrk i{background:#8cc56f!important}
/* Tabla de precios: siempre cabe en la tarjeta */
.csp-cq .csp-ptab{max-width:100%;overflow:visible}
.csp-cq .csp-prices{display:table!important;table-layout:fixed!important;width:100%!important;max-width:100%!important;min-width:0!important;border-collapse:separate!important;border-spacing:0!important;border:1px solid #e5e7eb!important;border-radius:6px!important;overflow:hidden!important;margin:0!important}
.csp-cq .csp-prices th,.csp-cq .csp-prices td{font-size:15px!important;padding:5px 10px!important;overflow:hidden;text-overflow:clip}
.csp-cq .csp-prices th{font-weight:700!important;padding:8px 10px!important;border-left:1px solid rgba(255,255,255,.3)!important}
.csp-cq .csp-prices th:nth-child(1){width:33%!important}
.csp-cq .csp-prices th:nth-child(2){width:29%!important}
.csp-cq .csp-prices th:nth-child(3){width:38%!important}
.csp-cq .csp-prices td{font-weight:400!important;border-top:1px solid #eceef0!important;border-left:1px solid #eceef0!important;background:#fff!important}
.csp-cq .csp-prices td:first-child,.csp-cq .csp-prices th:first-child{border-left:0!important}
.csp-cq .csp-prices tr.on td,.csp-cq .csp-prices tr.cur td{background:#fff!important;font-weight:400!important;color:#111827!important}
/* Calendario */
.csp-cq .csp-nav button:disabled{opacity:1!important;cursor:default}
.csp-cq .csp-nav button{border-color:#1a6b12!important;color:#1a6b12!important}
.csp-cq .csp-d.today{box-shadow:none!important}
.csp-cq .csp-d{border-color:#e6e8eb!important;box-shadow:0 1px 1px rgba(0,0,0,.03)!important}
.csp-cq .csp-days{gap:7px 8px!important}
/* Pago */
.csp-cq .csp-visa svg{height:24px!important}
.csp-cq .csp-pse svg{height:26px!important}
.csp-cq .csp-wompi{font-size:15px!important;color:#1f2937!important}

/* ==========================================================
   v2.9.2 – ajustes según archivo maestro (Ajustes.jpg)
   ========================================================== */
/* Calendario: días no disponibles rosa con número rojo, elegido verde oscuro */
.csp-cq .csp-days{gap:7px 7px!important}
.csp-cq .csp-d{height:26px!important;font-size:14px!important;font-weight:800!important;line-height:1!important;border-radius:6px!important;background:#fff!important;color:#111827!important;border:1px solid #dfe3e6!important;box-shadow:none!important;opacity:1!important;filter:none!important}
.csp-cq .csp-d:disabled,.csp-cq .csp-d[disabled]{opacity:1!important;cursor:not-allowed}
.csp-cq .csp-d.off,.csp-cq .csp-d.busy,.csp-cq .csp-d.off:disabled,.csp-cq .csp-d.busy:disabled{background:#fedbdd!important;border-color:#fedbdd!important;color:#f21d1d!important;-webkit-text-fill-color:#f21d1d}
.csp-cq .csp-d.free:hover{border-color:#1c5a06!important;background:#f3f9ef!important}
.csp-cq .csp-d.on,.csp-cq .csp-d.on.off,.csp-cq .csp-d.on.busy{background:#1c5a06!important;border-color:#154804!important;color:#fff!important;-webkit-text-fill-color:#fff}
.csp-cq .csp-d.blank{visibility:hidden!important;background:transparent!important;border:0!important}
.csp-cq .csp-d.wait{background:#fff!important;color:#9ca3af!important;border-color:#eceef0!important}
.csp-cq .csp-d.today{box-shadow:none!important}
.csp-cq .csp-d:focus{outline:none}
.csp-cq .csp-d:focus-visible{outline:2px solid #1c5a06;outline-offset:1px}
.csp-cq .csp-leg{display:flex!important;flex-wrap:wrap;align-items:center;font-size:13.5px!important;font-weight:500!important;color:#111827!important;gap:8px 30px!important;margin:14px 0 4px!important}
.csp-cq .csp-leg span{display:inline-flex!important;align-items:center;gap:8px}
.csp-cq .csp-leg i{width:18px!important;height:18px!important;border-radius:4px!important;background:#fff!important;border:1px solid #cfe3c4!important}
.csp-cq .csp-leg i.busy{background:#fedbdd!important;border-color:#fedbdd!important}
.csp-cq .csp-leg i.on{background:#1c5a06!important;border-color:#154804!important}

/* Duración / Capacidad / Ubicación / Idiomas */
.csp-cq .csp-chipsinfo{gap:8px!important;margin:12px 0 8px!important;align-items:stretch}
.csp-cq .csp-chipsinfo>div{display:flex!important;align-items:center!important;gap:10px!important;padding:10px 10px 10px 12px!important;min-height:76px!important;background:#fbfbf9!important;border:1px solid #e6e8ea!important;border-radius:10px!important;box-shadow:0 1px 2px rgba(16,24,40,.03)!important}
.csp-cq .csp-chipsinfo .csp-ci{flex:0 0 26px!important;width:26px!important;height:26px;display:flex!important;align-items:center;justify-content:center;color:#1f7a14!important}
.csp-cq .csp-chipsinfo .csp-ci svg{width:24px!important;height:24px!important;max-width:26px;display:block}
.csp-cq .csp-chipsinfo .csp-ci svg[fill="currentColor"]{stroke:none!important;fill:#1f7a14!important}
.csp-cq .csp-chipsinfo .csp-ci svg:not([fill="currentColor"]){stroke:#1f7a14!important;stroke-width:2.4!important}
.csp-cq .csp-chipsinfo span{display:flex!important;flex-direction:column!important;justify-content:center;gap:4px!important;min-width:0}
.csp-cq .csp-chipsinfo small{display:block;font-size:11.5px!important;font-weight:500!important;line-height:1.2!important;color:#1f2937!important;margin:0!important}
.csp-cq .csp-chipsinfo b{display:block;font-size:13.5px!important;font-weight:800!important;line-height:1.25!important;color:#111827!important;margin:0!important;overflow-wrap:break-word}
@media(max-width:600px){.csp-cq .csp-chipsinfo{grid-template-columns:1fr 1fr!important}}

/* Menú de secciones: fijo, subrayado verde y barra de desplazamiento */
.csp-cq .csp-tabsph{height:0}
.csp-cq .csp-tabsw{position:relative;z-index:40;background:#fff!important;transition:box-shadow .2s}
.csp-cq .csp-tabsw.csp-pinned{position:fixed!important;z-index:9990;margin:0!important;border-radius:0 0 12px 12px!important;box-shadow:0 8px 20px rgba(16,24,40,.12)!important}
.csp-cq .csp-tabs{position:relative!important;scroll-behavior:auto}
.csp-cq .csp-tabs a{flex:0 0 auto;padding:12px 0 16px!important;outline:none!important;-webkit-tap-highlight-color:transparent}
.csp-cq .csp-tabs a:focus{outline:none!important;box-shadow:none!important}
.csp-cq .csp-tabs a:focus-visible{outline:2px solid #1a6b12!important;outline-offset:2px;border-radius:4px}
.csp-cq .csp-tabs a.on{color:#111827!important}
.csp-cq .csp-tabs a.on::after{display:none!important}
.csp-cq .csp-tind{position:absolute;left:0;bottom:2px;height:5px;width:0;border-radius:99px;background:#1a6b12;pointer-events:none;transition:transform .25s ease,width .25s ease,opacity .2s}
.csp-cq .csp-tbar{display:flex!important;align-items:center;gap:6px;margin-top:2px;user-select:none}
.csp-cq .csp-tbl,.csp-cq .csp-tbr{width:22px!important;height:22px!important;flex:0 0 22px!important;padding:0!important;margin:0!important;border:0!important;border-radius:4px!important;background:transparent!important;cursor:pointer;position:relative;box-shadow:none!important}
.csp-cq .csp-tbl::before,.csp-cq .csp-tbr::before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;transform:translate(-50%,-50%)}
.csp-cq .csp-tbl::before{border-right:10px solid #1a6b12}
.csp-cq .csp-tbr::before{border-left:10px solid #1a6b12}
.csp-cq .csp-tbl:hover,.csp-cq .csp-tbr:hover{background:#eef6ea!important}
.csp-cq .csp-ttrk{height:9px!important;cursor:pointer;touch-action:none;background:#f1f3f1!important}
.csp-cq .csp-ttrk i{cursor:grab;transition:none!important;min-width:24px}
.csp-cq .csp-ttrk.drag i{cursor:grabbing;background:#6fb34f!important}

/* Itinerario más compacto */
.csp-cq .csp-tl li{padding-top:2px!important;padding-bottom:2px!important}
/* Qué incluye / No incluye */
.csp-cq .csp-ie .inc h3{color:#111827!important}
.csp-cq .csp-ie .exc h3{color:#1e2a78!important}
/* Preguntas frecuentes compactas (una línea) */
.csp-cq .csp-faqs{gap:8px 12px!important}
.csp-cq .csp-faqs details{padding:0!important;background:#f6f7f8!important;border:1px solid #e7e9ec!important;border-radius:8px!important}
.csp-cq .csp-faqs summary{display:flex;align-items:center;gap:10px;padding:8px 14px!important;font-size:13.5px!important;font-weight:800!important;line-height:1.3!important;color:#111827!important;list-style:none}
.csp-cq .csp-faqs summary::-webkit-details-marker{display:none}
.csp-cq .csp-faqs summary::before{content:"";flex:0 0 auto;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:7px solid #111827;transition:transform .2s}
.csp-cq .csp-faqs details[open] summary::before{transform:rotate(90deg)}
.csp-cq .csp-faqs details p{margin:0!important;padding:0 14px 10px 31px!important;font-size:13.5px!important}
/* Experiencias relacionadas */
.csp-cq .csp-rel img{height:96px!important}
.csp-cq .csp-rel b{font-size:14px!important;padding:10px 12px 4px!important}
.csp-cq .csp-rel small{font-size:13px!important;font-weight:500!important;color:#111827!important;padding:2px 12px 12px!important}
/* Pago seguro: logo VISA oficial */
.csp-cq .csp-visa img{display:block;height:22px!important;width:auto!important;max-width:none!important;margin:0!important;border:0!important;box-shadow:none!important;border-radius:0!important}
/* Celular: la columna izquierda nunca se ensancha por el menú o la galería */
.csp-cq .csp-left,.csp-cq .csp-card{min-width:0!important;max-width:100%}
@media(max-width:900px){.csp-cq .csp-book{grid-template-columns:minmax(0,1fr)!important}}
.csp-cq .csp-tabs{border-bottom:0!important}
@media(max-width:480px){.csp-cq .csp-secure{flex-wrap:wrap!important;gap:10px 12px!important}.csp-cq .csp-paylogos{gap:12px!important}}

/* ==========================================================================
   PANTALLA 4 · CARRITO v2.9.3 (idéntico a la imagen de referencia)
   ========================================================================== */
.csp-cartapp{--g:#1a5c0a;--gd:#0e4d12;--gl:#eaf5e1;--gb:#e7f3dd;--ink:#111827;--tx:#1f2937;--mu:#4b5563;--bd:#e3e8ec;display:block;width:100%;max-width:100%;overflow-x:clip}
.csp-cartapp .cc-wrap{grid-template-columns:minmax(0,1fr) 368px!important;gap:24px!important;max-width:1180px!important;padding:20px 16px 48px!important;align-items:start}
.csp-cartapp .cc-main,.csp-cartapp .cc-side{min-width:0}
.csp-cartapp a{cursor:pointer;text-decoration:none;box-shadow:none}
.csp-cartapp svg{flex:none;display:inline-block;vertical-align:middle}
.csp-cartapp h2,.csp-cartapp h3,.csp-cartapp h4{font-family:var(--csp-f)!important;letter-spacing:-.01em;text-transform:none}
.csp-cartapp p{margin-top:0}
/* Migas y título */
.csp-cartapp .cc-bc{display:flex;align-items:center;gap:10px;font-size:13.5px!important;font-weight:500;color:var(--tx);margin:0 0 18px}
.csp-cartapp .cc-bc a{color:var(--g)!important;font-weight:600}
.csp-cartapp .cc-bc em{font-style:normal;color:#6b7280;font-size:16px;line-height:1}
.csp-cartapp .cc-h{font-size:30px!important;line-height:1.2!important;font-weight:800!important;color:var(--ink)!important;margin:0 0 12px!important}
.csp-cartapp .cc-hc{text-transform:capitalize!important}
.csp-cartapp .cc-sub{font-size:15.5px!important;line-height:1.55!important;color:var(--tx)!important;margin:0 0 20px!important;max-width:660px}
/* Tarjeta de la experiencia */
.csp-cartapp .cc-item{background:#fff;border:1px solid var(--bd);border-radius:12px!important;padding:14px 14px 16px!important;box-shadow:0 2px 10px rgba(16,38,26,.07)!important;margin:0 0 24px!important}
.csp-cartapp .cc-top{display:grid;grid-template-columns:122px minmax(0,1fr) auto;gap:16px;align-items:start;margin-bottom:12px}
.csp-cartapp .cc-top>img{width:122px!important;height:86px!important;object-fit:cover;border-radius:8px!important;display:block;margin:0!important;max-width:none}
.csp-cartapp .cc-ibox{min-width:0;padding-top:2px}
.csp-cartapp .cc-tag{display:inline-flex;align-items:center;gap:6px;background:var(--gb);color:var(--gd);border-radius:99px;padding:3px 12px 3px 10px;font-size:13px;font-weight:600;line-height:1.4}
.csp-cartapp .cc-ibox h3{font-size:17px!important;line-height:1.3!important;font-weight:800!important;color:var(--ink)!important;margin:8px 0 6px!important}
.csp-cartapp .cc-loc{display:flex;flex-wrap:wrap;gap:4px 18px;margin:0!important;font-size:13.5px!important;color:var(--tx)!important}
.csp-cartapp .cc-loc span{display:inline-flex;align-items:center;gap:5px}
.csp-cartapp .cc-loc svg{color:#1f2937}
.csp-cartapp .cc-price{font-size:19px!important;font-weight:800!important;color:var(--g)!important;white-space:nowrap;padding-top:4px}
.csp-cartapp .cc-bad{color:#b4141f!important;font-size:13px!important;font-weight:700;margin:6px 0 0!important}
/* Fecha · Horario · Participantes */
.csp-cartapp .cc-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;margin:0 0 14px!important}
.csp-cartapp .cc-meta>div{background:#fff!important;border:1px solid var(--bd)!important;border-radius:10px!important;padding:9px 12px!important;display:flex;align-items:center;gap:12px;min-width:0}
.csp-cartapp .cc-meta i{flex:none;width:34px;height:34px;border-radius:50%;background:var(--gl);color:var(--g);display:flex;align-items:center;justify-content:center;font-style:normal}
.csp-cartapp .cc-meta span{display:flex;flex-direction:column;min-width:0;line-height:1.35}
.csp-cartapp .cc-meta small{font-size:12.5px!important;color:var(--mu);font-weight:500}
.csp-cartapp .cc-meta b{font-size:13.5px!important;font-weight:700!important;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.csp-cartapp .cc-meta a{color:var(--g)!important;font-size:13.5px;font-weight:600;text-decoration:underline!important;text-underline-offset:2px;align-self:flex-start}
/* Editor de participantes y fechas */
.csp-cartapp .cc-ppl{display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center;background:#f6faf3;border:1px solid #e3eedc;border-radius:10px;padding:10px 14px;margin:-4px 0 14px;font-size:14px;font-weight:600}
.csp-cartapp .cc-ppl>span{display:inline-flex;align-items:center;gap:12px}
.csp-cartapp .cc-ppl[hidden]{display:none!important}
.csp-cartapp .cc-dt{background:#f6faf3;border:1px solid #e3eedc;border-radius:10px;padding:12px 14px;margin:-4px 0 14px}
.csp-cartapp .cc-chips2{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.csp-cartapp .cc-chips2 span{display:inline-flex;align-items:center;gap:6px;background:#e8f5df;color:var(--gd);border-radius:99px;padding:4px 6px 4px 12px;font-size:12.5px;font-weight:700}
.csp-cartapp .cc-chips2 button{border:0;background:var(--gd);color:#fff;width:18px;height:18px;border-radius:50%;font-size:10px;line-height:1;padding:0;cursor:pointer}
.csp-cartapp .cc-dtf{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.csp-cartapp .cc-dtf input,.csp-cartapp .cc-dtf select{border:1px solid var(--bd);border-radius:8px;padding:8px 10px;font:inherit;font-size:13.5px;background:#fff}
.csp-cartapp .cc-ed{border:1px solid var(--g)!important;background:#fff!important;color:var(--g)!important;border-radius:8px!important;padding:8px 12px!important;font:inherit;font-size:13px!important;font-weight:700!important;cursor:pointer;display:inline-flex;align-items:center;gap:5px;text-transform:none!important}
.csp-cartapp .csp-btn.sm{margin:0!important;border:0;cursor:pointer;font-family:inherit;text-transform:none!important}
/* Servicios adicionales */
.csp-cartapp .cc-h4{font-size:15px!important;font-weight:700!important;color:var(--ink)!important;margin:0 0 8px!important;padding:0!important}
.csp-cartapp .cc-ad{display:grid;grid-template-columns:22px 44px minmax(0,1fr) auto minmax(78px,auto);gap:14px;align-items:center;border:1px solid var(--bd);border-radius:10px;background:#fff;padding:9px 14px;margin:0 0 8px;min-height:56px}
.csp-cartapp .cc-ad input[type=checkbox]{-webkit-appearance:none;appearance:none;width:20px;height:20px;margin:0;border:2px solid #c3ccd3;border-radius:4px;background:#fff;cursor:pointer;display:block;position:relative}
.csp-cartapp .cc-ad input[type=checkbox]:checked{background:var(--g) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/14px no-repeat;border-color:var(--g)}
.csp-cartapp .cc-ad input[type=checkbox]:focus-visible{outline:2px solid var(--g);outline-offset:2px}
.csp-cartapp .cc-ad .csp-adok{width:20px;font-size:16px}
.csp-cartapp .cc-ad .cc-thumb,.csp-cartapp .cc-thumb{width:44px!important;height:40px!important;border-radius:10px!important;background:#f3f6f9;overflow:hidden;display:flex;align-items:center;justify-content:center}
.csp-cartapp .cc-thumb img{width:100%!important;height:100%!important;object-fit:cover;margin:0!important;border-radius:0!important;max-width:none}
.csp-cartapp .cc-thumb i{font-style:normal;font-size:22px;line-height:1}
.csp-cartapp .cc-adt{display:flex;flex-direction:column;min-width:0;line-height:1.35}
.csp-cartapp .cc-adt b{font-size:15px!important;font-weight:700!important;color:var(--ink)}
.csp-cartapp .cc-adt small{font-size:12.5px!important;color:var(--mu);font-weight:500;margin-top:2px}
.csp-cartapp .cc-ad .csp-st{gap:18px}
.csp-cartapp .cc-ad .csp-st button{width:30px!important;height:30px!important;border:2px solid var(--g)!important;background:#fff!important;border-radius:50%!important;padding:0!important;min-width:0;box-shadow:none!important}
.csp-cartapp .cc-ad .csp-st button::before,.csp-cartapp .cc-ad .csp-st button::after{background:var(--g)!important}
.csp-cartapp .cc-ad .csp-st button:hover{background:var(--g)!important}
.csp-cartapp .cc-ad .csp-st button:hover::before,.csp-cartapp .cc-ad .csp-st button:hover::after{background:#fff!important}
.csp-cartapp .cc-ad .csp-st b{font-size:16px!important;font-weight:700!important;min-width:12px;color:var(--ink)}
.csp-cartapp .cc-lt{font-size:15px!important;font-weight:700!important;color:var(--ink);text-align:right;white-space:nowrap}
.csp-cartapp .cc-ppl .csp-st button{width:30px;height:30px}
/* Eliminar / Modificar */
.csp-cartapp .cc-act{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding:0 2px}
.csp-cartapp .cc-act a{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:600}
.csp-cartapp .cc-act .cc-del{color:#dc2626!important}
.csp-cartapp .cc-act .cc-mod{color:var(--g)!important}
.csp-cartapp .cc-act a:hover{text-decoration:underline!important}
/* Agregar otra experiencia + nota */
.csp-cartapp .cc-add{display:grid;grid-template-columns:auto minmax(0,1fr);gap:22px;align-items:center;margin:0 0 44px}
.csp-cartapp .cc-more{display:inline-flex!important;align-items:center;justify-content:center;gap:10px;background:#fff!important;color:var(--gd)!important;border:2px solid var(--g)!important;border-radius:8px!important;padding:11px 22px!important;font-family:inherit!important;font-size:15.5px!important;font-weight:700!important;text-transform:none!important;letter-spacing:0!important;line-height:1.2!important;cursor:pointer;box-shadow:none!important;min-width:240px}
.csp-cartapp .cc-more:hover{background:var(--gl)!important}
.csp-cartapp .cc-note{display:flex;align-items:flex-start;gap:10px;background:var(--gl);color:#344054;border-radius:10px;padding:12px 14px;font-size:13.5px;line-height:1.55;font-weight:500}
.csp-cartapp .cc-note svg{color:var(--g);margin-top:1px}
.csp-cartapp .cc-empty{background:#fff;border:1px solid var(--bd);border-radius:12px;padding:36px 20px;text-align:center;font-size:34px;margin-bottom:24px}
.csp-cartapp .cc-empty h3{font-size:20px!important;margin:8px 0 4px!important;color:var(--ink)!important}
.csp-cartapp .cc-empty p{font-size:14px;color:var(--mu);margin:0}
/* Quizás también te interese */
.csp-cartapp .cc-relhd{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 4px!important}
.csp-cartapp .cc-relhd .cc-h3{font-size:26px!important;font-weight:800!important;color:var(--ink)!important;margin:0!important;line-height:1.2!important}
.csp-cartapp .cc-relhd a{display:inline-flex;align-items:center;gap:6px;color:var(--g)!important;font-size:14.5px!important;font-weight:700!important}
.csp-cartapp .cc-sub2{font-size:15px!important;color:var(--tx)!important;margin:0 0 16px!important}
.csp-cartapp .cc-rels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
.csp-cartapp .cc-rcard{position:relative;display:flex!important;flex-direction:column!important;background:#fff;border:1px solid var(--bd);border-radius:10px;overflow:hidden;color:var(--ink)!important;box-shadow:0 2px 8px rgba(16,38,26,.06)}
.csp-cartapp .cc-rcard:hover{box-shadow:0 8px 22px rgba(16,38,26,.12);transform:translateY(-2px)}
.csp-cartapp .cc-rcard>img{width:100%!important;height:92px!important;min-height:0!important;object-fit:cover;display:block;margin:0!important;border-radius:0!important}
.csp-cartapp .cc-rb{display:flex;flex-direction:column;gap:6px;padding:8px 12px 12px;flex:1}
.csp-cartapp .cc-rb>b{font-size:14px!important;font-weight:700!important;line-height:1.2!important;color:var(--ink)!important;padding:0!important;display:block}
.csp-cartapp .cc-rm{display:flex!important;align-items:center;flex-wrap:wrap;gap:4px;padding:0!important;font-size:11.5px!important;font-weight:500!important;color:var(--tx)!important}
.csp-cartapp .cc-rf{display:flex;align-items:baseline;gap:8px;margin-top:auto;padding-top:4px;padding-right:40px}
.csp-cartapp .cc-rf .cc-from{color:#f97316!important;font-size:16px;font-weight:700}
.csp-cartapp .cc-rf b{font-size:18px!important;font-weight:800!important;color:var(--ink)!important;white-space:nowrap}
.csp-cartapp .cc-rcard .cc-go{position:absolute;right:12px;bottom:12px;width:32px;height:32px;border-radius:50%;border:2px solid var(--g);color:var(--g);background:#fff;display:flex;align-items:center;justify-content:center;font-size:0}
/* Resumen de tu compra */
.csp-cartapp .cc-sum{background:#fff;border:1px solid #e9edf0;border-radius:14px!important;padding:20px 16px 18px!important;box-shadow:0 6px 24px rgba(16,38,26,.10)!important;position:sticky;top:20px}
.csp-cartapp .cc-sh{display:flex;align-items:center;gap:10px;color:var(--g)}
.csp-cartapp .cc-sh h3{font-size:22px!important;font-weight:800!important;line-height:1.25!important;color:var(--ink)!important;margin:0!important}
.csp-cartapp .cc-n{font-size:13.5px!important;color:var(--tx)!important;margin:6px 0 12px!important;padding-bottom:12px;border-bottom:1px solid #edf0f2}
.csp-cartapp .cc-mini{display:grid;grid-template-columns:76px minmax(0,1fr);gap:16px;align-items:start;margin:0 0 14px}
.csp-cartapp .cc-mini img{width:76px!important;height:62px!important;object-fit:cover;border-radius:6px!important;margin:0!important;display:block;max-width:none}
.csp-cartapp .cc-mini div{display:flex;flex-direction:column;gap:4px;min-width:0}
.csp-cartapp .cc-mini b{font-size:15.5px!important;font-weight:800!important;line-height:1.3;color:var(--ink)}
.csp-cartapp .cc-mini small{display:flex;align-items:center;gap:5px;font-size:13px!important;color:var(--tx)}
.csp-cartapp .cc-sl{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;font-size:15px!important;color:var(--ink);padding:5px 0;line-height:1.35}
.csp-cartapp .cc-sl>span:first-child{display:flex;align-items:flex-start;gap:8px;min-width:0}
.csp-cartapp .cc-sl>span:last-child{white-space:nowrap}
.csp-cartapp .cc-sl em{font-style:normal;display:flex;flex-direction:column}
.csp-cartapp .cc-sl em small{font-size:13px;color:var(--tx)}
.csp-cartapp .cc-sl.cc-dc{color:var(--g);font-weight:700}
.csp-cartapp .cc-sl.cc-tot{border-top:1px solid #edf0f2!important;margin-top:12px!important;padding:16px 0 18px!important;align-items:center}
.csp-cartapp .cc-sl.cc-tot b:first-child{font-size:19px!important;font-weight:800!important;color:var(--ink)!important}
.csp-cartapp .cc-sl.cc-tot b:last-child{font-size:23px!important;font-weight:800!important;color:var(--g)!important;letter-spacing:-.01em}
.csp-cartapp .cc-iva{font-size:12.5px;color:var(--mu);margin:-10px 0 12px}
.csp-cartapp .cc-go2{display:flex!important;align-items:center;justify-content:center;gap:10px;width:100%;background:var(--g)!important;color:#fff!important;border:0!important;border-radius:8px!important;padding:12px 18px!important;font-family:inherit!important;font-size:16px!important;font-weight:700!important;text-transform:none!important;letter-spacing:0!important;line-height:1.2!important;cursor:pointer;box-shadow:none!important;margin:0!important}
.csp-cartapp .cc-go2:hover{background:var(--gd)!important}
.csp-cartapp .cc-pay{display:flex;flex-direction:column;align-items:center;gap:10px;margin:18px 0 0}
.csp-cartapp .cc-pay>small{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--tx);font-weight:500}
.csp-cartapp .cc-pay .csp-paylogos{display:flex!important;justify-content:center;flex-wrap:nowrap;gap:10px!important}
.csp-cartapp .cc-pay .csp-plogo{display:flex!important;align-items:center;justify-content:center;width:70px;height:36px;border:1px solid #d9dfe4;border-radius:6px;background:#fff;padding:0 6px;overflow:hidden}
.csp-cartapp .cc-pay .csp-wompi{font-size:15px!important;font-weight:700!important;color:#4c3bcf!important;letter-spacing:-.01em}
.csp-cartapp .cc-pay .csp-visa img{height:18px!important;width:auto!important;max-width:100%!important;margin:0!important;display:block;border:0!important;box-shadow:none!important}
.csp-cartapp .cc-pay .csp-mc svg{height:24px!important;width:auto}
.csp-cartapp .cc-pay .csp-pse svg{height:24px!important;width:auto}
.csp-cartapp .cc-info{display:flex;align-items:flex-start;gap:10px;background:var(--gl);color:var(--tx);border-radius:10px;padding:11px 14px;margin:16px 0 0;font-size:14px;line-height:1.5}
.csp-cartapp .cc-info svg{color:var(--g);margin-top:1px}
.csp-cartapp .cc-trust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px;text-align:center}
.csp-cartapp .cc-trust>div{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:13px;color:var(--tx);line-height:1.35}
.csp-cartapp .cc-trust i{width:38px;height:38px;border-radius:50%;background:var(--gl);color:var(--g);display:flex;align-items:center;justify-content:center;font-style:normal;margin-bottom:6px}
.csp-cartapp .cc-trust b{font-size:13.5px;font-weight:700;color:var(--ink);margin-bottom:8px}
.csp-cartapp .cc-cp{margin:4px 0 14px;font-size:14px}
.csp-cartapp .cc-cp summary{display:flex;align-items:center;gap:6px;cursor:pointer;color:var(--g);font-weight:700}
.csp-cartapp .cc-cpf{display:flex;gap:8px;margin-top:8px}
.csp-cartapp .cc-cpf input{flex:1;min-width:0;border:1px solid var(--bd);border-radius:8px;padding:9px 12px;font:inherit;font-size:14px}
.csp-cartapp .cc-cpf button{border:1px solid var(--g)!important;background:#fff!important;color:var(--g)!important;border-radius:8px!important;padding:9px 14px!important;font:inherit;font-weight:700!important;cursor:pointer;text-transform:none!important}
/* Tableta y celular */
@media(max-width:1024px){.csp-cartapp .cc-wrap{grid-template-columns:minmax(0,1fr) 330px!important;gap:18px!important}.csp-cartapp .cc-meta b{white-space:normal}}
@media(max-width:900px){
 .csp-cartapp .cc-wrap{grid-template-columns:minmax(0,1fr)!important}
 .csp-cartapp .cc-sum{position:static}
 .csp-cartapp .cc-rels{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:640px){
 .csp-cartapp .cc-wrap{padding:14px 12px 36px!important}
 .csp-cartapp .cc-h{font-size:25px!important}
 .csp-cartapp .cc-sub{font-size:14.5px!important}
 .csp-cartapp .cc-top{grid-template-columns:96px minmax(0,1fr);gap:12px}
 .csp-cartapp .cc-top>img{width:96px!important;height:76px!important}
 .csp-cartapp .cc-price{grid-column:1/-1;padding:0;font-size:20px!important}
 .csp-cartapp .cc-ibox h3{font-size:16px!important}
 .csp-cartapp .cc-meta{grid-template-columns:minmax(0,1fr)!important}
 .csp-cartapp .cc-meta span{flex-direction:row;flex-wrap:wrap;align-items:baseline;column-gap:8px}
 .csp-cartapp .cc-meta small{width:100%}
 .csp-cartapp .cc-ad{grid-template-columns:20px 40px minmax(0,1fr) auto;gap:10px;padding:10px 12px}
 .csp-cartapp .cc-ad>.csp-st,.csp-cartapp .cc-ad>span:empty{grid-column:3;grid-row:2;justify-self:start}
 .csp-cartapp .cc-ad>span:empty{display:none}
 .csp-cartapp .cc-ad .cc-lt{grid-column:4;grid-row:1}
 .csp-cartapp .cc-ad .csp-st{gap:14px}
 .csp-cartapp .cc-act a{font-size:14px}
 .csp-cartapp .cc-add{grid-template-columns:minmax(0,1fr);gap:12px;margin-bottom:32px}
 .csp-cartapp .cc-more{width:100%}
 .csp-cartapp .cc-relhd .cc-h3{font-size:22px!important}
 .csp-cartapp .cc-rels{grid-template-columns:minmax(0,1fr)!important}
 .csp-cartapp .cc-rcard{flex-direction:row!important}
 .csp-cartapp .cc-rcard>img{width:120px!important;height:auto!important;min-height:104px!important}
 .csp-cartapp .cc-sh h3{font-size:20px!important}
 .csp-cartapp .cc-pay .csp-paylogos{gap:6px!important}
 .csp-cartapp .cc-pay .csp-plogo{width:64px}
}
@media(max-width:380px){.csp-cartapp .cc-trust{grid-template-columns:minmax(0,1fr)}.csp-cartapp .cc-pay .csp-plogo{width:58px}}
.csp-cartapp .cc-rm{display:block!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.5}
.csp-cartapp .cc-rm svg{vertical-align:-2px;margin-right:2px}
.csp-cartapp .cc-rb{gap:5px}
.csp-cartapp .cc-info{font-size:13.5px;padding:10px 14px}
@media(max-width:900px){
 .csp-cartapp .cc-wrap{display:flex!important;flex-direction:column}
 .csp-cartapp .cc-main{display:contents}
 .csp-cartapp .cc-side{order:1;width:100%;margin-bottom:36px}
 .csp-cartapp .cc-rel{order:2;width:100%}
 .csp-cartapp .cc-main>*{width:100%}
}
@media(max-width:640px){.csp-cartapp .cc-act a{font-size:13.5px;white-space:nowrap;gap:6px}}
.csp-cartapp .cc-rb{min-width:0}

/* 2.9.4 · Resumen: eliminar por experiencia y divisor */
.csp-cartapp .cc-sit{position:relative}
.csp-cartapp .cc-sit+.cc-sit{border-top:1px solid #e6ece8;margin-top:12px;padding-top:14px}
.csp-cartapp .cc-sum .cc-mini{position:relative}
.csp-cartapp .cc-sum .cc-sit .cc-mini b{padding-right:36px}
.csp-cartapp .cc-x{position:absolute!important;top:0;right:0}
.csp-cartapp .cc-x{width:30px!important;height:30px!important;min-width:30px;padding:0!important;margin:0!important;border:1px solid #cfe3d5!important;border-radius:50%!important;background:#f1f8f3!important;color:var(--g)!important;display:inline-flex!important;align-items:center;justify-content:center;cursor:pointer;box-shadow:none!important;line-height:1!important;transition:background .15s,color .15s,border-color .15s}
.csp-cartapp .cc-x:hover,.csp-cartapp .cc-x:focus-visible{background:var(--g)!important;color:#fff!important;border-color:var(--g)!important;outline:none}
.csp-cartapp .cc-x svg{width:16px;height:16px;display:block}

/* ==========================================================================
   PANTALLA 5 · FINALIZAR COMPRA v2.9.5 (idéntica a la imagen de referencia)
   ========================================================================== */
.csp-cartapp .cc-co{grid-template-columns:minmax(0,1fr) 340px!important;gap:20px!important;max-width:1140px!important;padding-top:14px!important}
.cc-co .cc-bc{margin:0 0 8px!important}
.cc-co .cc-hd{display:block!important;margin:0 0 12px!important;padding:0!important}
.cc-co .cc-h{display:flex!important;align-items:center;gap:10px;font-size:28px!important;font-weight:800!important;color:var(--ink)!important;margin:0 0 4px!important;line-height:1.15!important}
.cc-co .cc-h svg{color:var(--g)}
.cc-co .cc-sub{font-size:14.5px!important;color:var(--tx)!important;margin:0 0 14px!important}
/* Pasos */
.cc-co .cc-steps{display:flex!important;align-items:center;gap:0!important;margin:0!important;padding:0!important;list-style:none!important;font-size:14px!important;font-weight:600!important;max-width:620px}
.cc-co .cc-steps li{display:flex!important;align-items:center;gap:8px;color:var(--tx)!important;margin:0!important;padding:0!important;flex:1 1 auto;white-space:nowrap}
.cc-co .cc-steps li:first-child{flex:0 0 auto}
.cc-co .cc-steps li::marker{content:none}
.cc-co .cc-steps li+li::before{content:"";flex:1;min-width:18px;height:2px;background:#d7dde2;margin:0 12px 0 4px;width:auto}
.cc-co .cc-steps li.on::before,.cc-co .cc-steps li.done::before{background:var(--g)}
.cc-co .cc-steps i{width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-style:normal;font-size:13px;font-weight:700;background:#eceff2;color:var(--ink);border:0!important;flex:none}
.cc-co .cc-steps .on,.cc-co .cc-steps .done{color:var(--ink)!important;font-weight:700!important}
.cc-co .cc-steps .on i,.cc-co .cc-steps .done i{background:var(--g)!important;color:#fff!important}
/* Tarjetas del formulario */
.cc-co .cc-form{margin:0!important}
.cc-co .cc-form section{background:#fff!important;border:1px solid #e6ebef!important;border-radius:12px!important;padding:14px 16px 16px!important;margin:0 0 12px!important;box-shadow:0 2px 10px rgba(16,38,26,.05)!important}
.cc-co .cc-s4{display:flex;align-items:center;gap:10px;margin:0 0 3px}
.cc-co .cc-s4 i{width:28px;height:28px;border-radius:50%;background:var(--g);color:#fff;display:inline-flex;align-items:center;justify-content:center;flex:none;font-style:normal}
.cc-co .cc-s4 h4{font-size:18px!important;font-weight:800!important;color:var(--ink)!important;margin:0!important;padding:0!important;line-height:1.25!important}
.cc-co .cc-hint{font-size:13.5px!important;color:var(--tx)!important;margin:0 0 10px!important;line-height:1.4!important}
/* Campos con etiqueta interna */
.cc-co .cc-form .g2{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:10px 12px!important}
.cc-co .cc-fl{display:flex!important;flex-direction:column;gap:1px;border:1px solid #d5dbe0;border-radius:8px;padding:6px 12px 5px;background:#fff;margin:0!important;min-width:0;cursor:text;transition:border-color .15s,box-shadow .15s}
.cc-co .cc-fl:focus-within{border-color:var(--g);box-shadow:0 0 0 3px rgba(26,92,10,.12)}
.cc-co .cc-fl>span{font-size:12.5px!important;font-weight:700!important;color:var(--ink)!important;line-height:1.3!important}
.cc-co .cc-fl>span i,.cc-co .cc-terms i{color:#dc2626;font-style:normal}
.cc-co .cc-form .cc-fl input,.cc-co .cc-form .cc-fl select{border:0!important;padding:1px 0!important;margin:0!important;background-color:transparent!important;box-shadow:none!important;font-family:inherit!important;font-size:14.5px!important;color:var(--ink)!important;height:auto!important;min-height:0!important;line-height:1.45!important;outline:none!important;width:100%!important;border-radius:0!important}
.cc-co .cc-form .cc-fl select{-webkit-appearance:none;appearance:none;cursor:pointer;padding-right:24px!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23111827' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right center!important;background-size:16px!important}
.cc-co .cc-form .cc-fl input::placeholder{color:#4b5563;opacity:1}
.cc-co .cc-tel{display:flex;align-items:center;gap:8px}
.cc-co .cc-tel svg{color:#25d366;flex:none}
/* Casillas y avisos */
.cc-co .cc-ck{display:flex!important;align-items:flex-start;gap:10px;font-size:14px!important;color:var(--ink)!important;margin:2px 0 10px!important;cursor:pointer;line-height:1.4!important;font-weight:500}
.cc-co .cc-ck input{accent-color:var(--g);width:18px!important;height:18px!important;margin:1px 0 0!important;flex:none;cursor:pointer}
.cc-co .cc-ck a,.cc-co .cc-ck b{color:var(--ink)!important;font-weight:700!important;text-decoration:none!important}
.cc-co .cc-ck a:hover{color:var(--g)!important;text-decoration:underline!important}
.cc-co .cc-bill{margin:0 0 10px}
.cc-co .cc-info{display:flex!important;align-items:flex-start;gap:10px;background:#eef7e8!important;border:0!important;border-radius:8px!important;padding:9px 12px!important;font-size:13px!important;color:var(--ink)!important;line-height:1.45;margin:0!important}
.cc-co .cc-info svg{color:var(--g);margin-top:1px}
/* Revisa tu reserva */
.cc-co .cc-rvl{border:1px solid #e6ebef;border-radius:10px;overflow:hidden}
.cc-co .cc-rv{display:grid!important;grid-template-columns:96px minmax(0,1fr) auto;gap:14px;align-items:center;padding:10px 12px!important;margin:0!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important}
.cc-co .cc-rv+.cc-rv{border-top:1px solid #edf0f2!important}
.cc-co .cc-rv>img{width:96px!important;height:70px!important;object-fit:cover;border-radius:6px!important;margin:0!important;max-width:none!important;display:block}
.cc-co .cc-rv>div{display:flex!important;flex-direction:column;gap:1px;min-width:0}
.cc-co .cc-rv b{font-size:14.5px!important;font-weight:800!important;color:var(--ink)!important;line-height:1.3!important;margin:0 0 2px!important}
.cc-co .cc-rv small{display:flex!important;align-items:center;gap:6px;font-size:12.5px!important;color:var(--tx)!important;line-height:1.45!important}
.cc-co .cc-ed{display:inline-flex!important;align-items:center;gap:6px;border:1.5px solid var(--g)!important;color:var(--g)!important;background:#fff!important;border-radius:7px!important;padding:6px 12px!important;font-family:inherit!important;font-size:13px!important;font-weight:700!important;cursor:pointer;text-transform:none!important;letter-spacing:0!important;line-height:1.2!important;box-shadow:none!important;white-space:nowrap;margin:0!important}
.cc-co .cc-ed:hover{background:var(--g)!important;color:#fff!important}
/* Método de pago */
.cc-co .cc-pm{display:flex!important;align-items:center;gap:12px;border:1.5px solid var(--g)!important;background:#f3faee!important;border-radius:10px!important;padding:12px 14px!important;margin:0 0 10px!important}
.cc-co .cc-ckd{width:28px;height:28px;border-radius:50%;background:var(--g)!important;color:#fff!important;display:inline-flex!important;align-items:center;justify-content:center;flex:none}
.cc-co .cc-pmt{display:flex;flex-direction:column;flex:1;min-width:0}
.cc-co .cc-pmt b{font-size:15.5px;font-weight:800;color:var(--ink);line-height:1.3}
.cc-co .cc-wompi{color:#5b2ee0!important;font-weight:800}
.cc-co .cc-pmt small{font-size:12.5px;color:var(--tx);line-height:1.4}
.cc-co .cc-brands .csp-paylogos{display:flex!important;gap:6px!important;flex-wrap:nowrap;margin:0!important}
.cc-co .cc-brands .csp-plogo{display:flex!important;align-items:center;justify-content:center;width:50px;height:30px;border:1px solid #d5dbe0;border-radius:5px;background:#fff;padding:0 4px;overflow:hidden;margin:0!important}
.cc-co .cc-brands .csp-wompi{font-size:12px!important;font-weight:700!important;color:#4c3bcf!important}
.cc-co .cc-brands img{height:13px!important;width:auto!important;max-width:100%!important;margin:0!important;display:block;border:0!important;box-shadow:none!important}
.cc-co .cc-brands svg{height:18px!important;width:auto!important}
.cc-co .cc-secure2{display:flex!important;align-items:flex-start;gap:8px;background:#eef7e8!important;border-radius:8px!important;padding:8px 12px!important;font-size:12.5px!important;color:var(--ink)!important;margin:0 0 12px!important;line-height:1.45}
.cc-co .cc-secure2 svg{color:var(--ink);margin-top:1px}
.cc-co .cc-terms{font-size:13px!important}
.cc-co .cc-form textarea{display:block;width:100%!important;border:1px solid #d5dbe0!important;border-radius:8px!important;padding:9px 12px!important;font-family:inherit!important;font-size:13px!important;color:var(--ink)!important;min-height:56px;margin:0 0 12px!important;resize:vertical;background:#fff!important;box-shadow:none!important;line-height:1.45!important}
.cc-co .cc-form textarea:focus{border-color:var(--g)!important;outline:none!important;box-shadow:0 0 0 3px rgba(26,92,10,.12)!important}
.cc-co .cc-mtot{display:none}
.cc-co .cc-paybtn{display:flex!important;align-items:center;justify-content:center;gap:10px;width:100%!important;background:var(--g)!important;color:#fff!important;border:0!important;border-radius:8px!important;padding:14px 18px!important;font-family:inherit!important;font-size:16.5px!important;font-weight:700!important;text-transform:none!important;letter-spacing:0!important;line-height:1.2!important;box-shadow:none!important;margin:0!important;cursor:pointer}
.cc-co .cc-paybtn:hover{background:var(--gd)!important}
.cc-co .cc-paybtn:disabled{opacity:.75;cursor:wait}
.cc-co #cc-msg:empty{display:none}
.cc-co #cc-msg{margin:10px 0 0!important;color:#b91c1c;font-size:13.5px}
/* Beneficios */
.cc-co .cc-foot3{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:0!important;background:#fff;border:1px solid #e6ebef;border-radius:12px;padding:12px 4px!important;margin:0 0 24px!important;box-shadow:0 2px 10px rgba(16,38,26,.05)}
.cc-co .cc-foot3>div{display:flex!important;align-items:center;gap:12px;padding:0 14px!important;min-width:0;margin:0!important;background:none!important}
.cc-co .cc-foot3>div+div{border-left:1px solid #e3e8ec}
.cc-co .cc-foot3 svg{color:var(--g)}
.cc-co .cc-foot3 span{display:flex!important;flex-direction:column;font-size:12px!important;color:var(--tx)!important;line-height:1.3!important}
.cc-co .cc-foot3 b{font-size:13px!important;font-weight:700!important;color:var(--ink)!important;margin:0 0 1px}
/* Columna derecha */
.cc-co .cc-note2{display:flex!important;align-items:center;gap:14px;background:#eaf5e1!important;border:1px solid #d6ebc8;border-radius:12px!important;padding:14px 16px!important;margin:0 0 14px!important;font-size:14px!important;font-weight:500!important;color:var(--ink)!important;line-height:1.4!important}
.cc-co .cc-note2 svg{width:36px;height:36px;color:var(--g)}
.cc-co .cc-sum{padding:18px 16px 18px!important}
.cc-co .cc-sh svg{color:var(--g)}
.cc-co .cc-sh h3{font-size:21px!important}
.cc-co .cc-sum .cc-n{margin:2px 0 12px 36px!important;font-size:13px!important}
.cc-co .cc-sum .cc-mini{grid-template-columns:76px minmax(0,1fr);gap:12px;margin:0 0 8px}
.cc-co .cc-sum .cc-mini b{font-size:14.5px!important;padding:0!important;margin-bottom:1px}
.cc-co .cc-sum .cc-mini div{gap:1px}
.cc-co .cc-sum .cc-mini small{font-size:12.5px!important;line-height:1.45;align-items:flex-start}
.cc-co .cc-sum .cc-mini small svg{margin-top:2px}
.cc-co .cc-sum .cc-sl{font-size:13px!important;padding:3px 0!important}
.cc-co .cc-sum .cc-sl.cc-sub1{font-weight:700;color:var(--ink)}
.cc-co .cc-sum .cc-sl.cc-ads{padding-left:0!important}
.cc-co .cc-sum .cc-sl.cc-ads>span:first-child{align-items:center;gap:10px}
.cc-co .cc-sum .cc-ads .cc-thumb{width:26px!important;height:26px!important;border-radius:6px!important;background:transparent!important}
.cc-co .cc-sum .cc-ads .cc-thumb i{font-size:18px}
.cc-co .cc-sum .cc-ads em{flex-direction:row!important;gap:4px;align-items:baseline}
.cc-co .cc-sum .cc-ads em small{font-size:13px!important;color:var(--ink)!important}
.cc-co .cc-totbox{background:#eaf5e1;border-radius:10px;padding:10px 14px 8px;margin:14px 0 4px}
.cc-co .cc-totbox .cc-sl.cc-tot{border:0!important;margin:0!important;padding:0!important}
.cc-co .cc-totbox .cc-tot b:first-child{font-size:19px!important}
.cc-co .cc-totbox .cc-tot b:last-child{font-size:23px!important}
.cc-co .cc-totbox .cc-iva{text-align:right;font-size:11.5px!important;color:var(--tx)!important;margin:2px 0 0!important}
.cc-co .cc-pay>small{font-size:15px!important;font-weight:600!important;color:var(--ink)!important}
.cc-co .cc-pay>small svg{display:none}
.cc-co .cc-pay .csp-plogo{width:62px}
.cc-co .cc-trust{border-top:1px solid #edf0f2;padding-top:14px}
/* Tableta y celular */
@media(max-width:1024px){.csp-cartapp .cc-co{grid-template-columns:minmax(0,1fr) 310px!important}.cc-co .cc-pm{flex-wrap:wrap}.cc-co .cc-brands{width:100%;padding-left:40px}}
@media(max-width:900px){
 .cc-co .cc-side{margin-top:4px}
 .cc-co .cc-mtot{display:flex;align-items:center;justify-content:space-between;background:#eaf5e1;border-radius:8px;padding:10px 14px;margin:0 0 10px}
 .cc-co .cc-mtot span{font-size:16px;font-weight:800;color:var(--ink)}
 .cc-co .cc-mtot b{font-size:20px;font-weight:800;color:var(--g)}
}
@media(max-width:640px){
 .cc-co .cc-h{font-size:24px!important}
 .cc-co .cc-steps{font-size:12.5px!important}
 .cc-co .cc-steps li{gap:5px}
 .cc-co .cc-steps i{width:22px;height:22px;font-size:12px}
 .cc-co .cc-steps li+li::before{min-width:8px;margin:0 6px 0 2px}
 .cc-co .cc-form section{padding:12px 12px 14px!important}
 .cc-co .cc-s4 h4{font-size:16.5px!important}
 .cc-co .cc-form .g2{grid-template-columns:minmax(0,1fr)!important}
 .cc-co .cc-rv{grid-template-columns:76px minmax(0,1fr);gap:10px;align-items:start}
 .cc-co .cc-rv>img{width:76px!important;height:60px!important}
 .cc-co .cc-ed{grid-column:2;justify-self:start}
 .cc-co .cc-brands{padding-left:0}
 .cc-co .cc-foot3{grid-template-columns:minmax(0,1fr)!important;padding:4px 0!important}
 .cc-co .cc-foot3>div{padding:10px 14px!important}
 .cc-co .cc-foot3>div+div{border-left:0;border-top:1px solid #e3e8ec}
}
@media(max-width:380px){.cc-co .cc-steps span{font-size:11.5px}.cc-co .cc-steps li+li::before{margin:0 4px 0 0}}
.cc-co .cc-form .cc-bill[hidden]{display:none!important}
.cc-co .cc-form .cc-fl input,.cc-co .cc-form .cc-fl select{font-weight:400!important;letter-spacing:0!important}
.cc-co .cc-sum .cc-sl.cc-ads{align-items:center}
.cc-co .cc-paybtn span{white-space:nowrap;flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}
.cc-co .cc-form textarea{min-height:64px}
@media(max-width:640px){.cc-co .cc-paybtn{font-size:15.5px!important;padding:14px 12px!important;gap:8px}.cc-co .cc-form textarea{min-height:84px}.cc-co .cc-foot3{margin-bottom:20px!important}}

/* 2.9.6 — el día elegido se pinta verde al instante (el estilo "hover" ya no lo tapa) */
.csp-d{-webkit-tap-highlight-color:transparent;transition:none!important}
.csp-d.on:hover,.csp-d.on:active,.csp-d.on:focus{background:#0e4d12!important;border-color:#0e4d12!important;color:#fff!important}
.csp-cq .csp-d.on:hover,.csp-cq .csp-d.on:active,.csp-cq .csp-d.on:focus,.csp-cq .csp-d.on.free:hover{background:#1c5a06!important;border-color:#154804!important;color:#fff!important;-webkit-text-fill-color:#fff}
@media (hover:none){.csp-cq .csp-d.free:not(.on):hover,.csp-d.free:not(.on):hover{background:#fff!important;border-color:#dfe3e6!important}}

/* ==========================================================================
   REVISIÓN RESPONSIVE 2.9.8 · celulares y tabletas (no cambia escritorio)
   ========================================================================== */
.csp-cq .csp-slot,.csp-cartapp .cc-rb,.csp-rel{min-width:0}
.cc-ico{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#1a5c0a;font-style:normal}
.cc-ico svg{width:22px;height:22px}
@media (max-width:900px){
 .csp-hero-in{flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;min-height:0!important;padding:44px 20px!important;gap:26px!important}
 .csp-hero-txt{max-width:none!important}
 .csp-hero .csp-fcard{width:100%!important;max-width:520px;margin:0 auto}
}
@media (max-width:580px){
 .csp-hero-in{padding:36px 16px!important}
 .csp-herotitle{font-size:clamp(1.85rem,8.4vw,2.4rem)!important;overflow-wrap:break-word}
 .csp-herosub{font-size:14.5px}
 .csp-hero-btns .csp-btn{padding:11px 18px!important;font-size:14px!important}
 .csp-hero .csp-fcard{padding:18px 14px!important}
 .csp-cq .csp-rel,.csp-rel{display:grid!important;grid-template-columns:104px minmax(0,1fr);grid-template-rows:auto 1fr;align-items:start}
 .csp-cq .csp-rel img,.csp-rel img{grid-row:1/3;width:104px!important;height:100%!important;min-height:92px;object-fit:cover}
 .csp-cq .csp-rel b,.csp-rel b{grid-column:2;padding:10px 12px 2px!important}
 .csp-cq .csp-rel small,.csp-rel small{grid-column:2;padding:2px 12px 10px!important;font-size:12.5px!important}
 .csp-cq .csp-prices th,.csp-cq .csp-prices td{font-size:13px!important;padding:6px 7px!important;white-space:normal!important;overflow-wrap:anywhere}
 .csp-cq .csp-prices th:nth-child(1){width:30%!important}
 .csp-cq .csp-prices th:nth-child(2){width:32%!important}
 .csp-cq .csp-prices th:nth-child(3){width:38%!important}
 .csp-cq .csp-tp{flex-wrap:wrap;column-gap:6px;row-gap:0}
 .csp-cq .csp-tp b{white-space:nowrap}
 .csp-cq .csp-row.csp-tot{flex-wrap:wrap;gap:4px 10px;align-items:baseline}
 .csp-cq .csp-tot span{font-size:17px!important}
 .csp-cq .csp-total{font-size:22px!important;white-space:nowrap}
 .csp-cq .csp-secure{justify-content:center!important;text-align:center}
 .csp-cq .csp-paylogos{display:flex!important;flex-wrap:wrap!important;justify-content:center;gap:10px 14px!important;max-width:100%}
 .csp-cq .csp-plogo svg{height:20px!important}
 .csp-cq .csp-visa img{height:18px!important;width:auto!important}
}
@media (max-width:480px){
 .csp-cq .csp-slots{grid-template-columns:minmax(0,1fr)!important}
 .csp-cq .csp-slot{white-space:normal!important}
 .csp-cq .csp-nav b{font-size:15px!important;white-space:nowrap}
}
@media (max-width:640px){
 .csp-cartapp .cc-act{flex-wrap:wrap;justify-content:flex-start!important;gap:10px 18px!important}
 .csp-cartapp .cc-act a{white-space:nowrap}
 .csp-cartapp .cc-pay .csp-paylogos{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;gap:6px!important}
 .csp-cartapp .cc-pay .csp-plogo{width:auto!important;min-width:0}
 .csp-cartapp .cc-rf{flex-wrap:wrap;gap:0 6px!important;padding-right:44px!important}
 .csp-cartapp .cc-rf .cc-from{font-size:14px!important}
 .csp-cartapp .cc-rf b{font-size:16px!important}
 .csp-cartapp .cc-rcard>img{width:108px!important}
 .cc-co .cc-paybtn span{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;text-align:center}
 .cc-co .cc-brands{padding-left:0!important}
 .cc-co .cc-brands .csp-paylogos{flex-wrap:wrap!important}
}
@media (max-width:480px){
 .cc-co .cc-steps{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));max-width:none!important;width:100%}
 .cc-co .cc-steps li{position:relative;flex-direction:column!important;justify-content:flex-start;gap:5px!important;text-align:center;white-space:normal!important;min-width:0}
 .cc-co .cc-steps li:first-child{flex:initial!important}
 .cc-co .cc-steps li span{font-size:11.5px!important;line-height:1.2}
 .cc-co .cc-steps li+li::before{position:absolute;top:13px;left:calc(-50% + 17px);right:calc(50% + 17px);width:auto!important;min-width:0!important;margin:0!important;flex:none!important}
 .cc-co .cc-steps i{position:relative;z-index:1}
}
@media (max-width:640px){.csp-cartapp .cc-rf{flex-direction:column!important;align-items:flex-start!important}}
@media (max-width:640px){.csp-cartapp .cc-rf b,.csp-cartapp .cc-rf .cc-from{margin:0!important;text-align:left!important}}
@media (max-width:380px){
 .csp-cq .csp-prices th,.csp-cq .csp-prices td{font-size:12px!important;padding:5px 4px!important;overflow-wrap:normal!important}
 .csp-cq .csp-prices td:not(:first-child){white-space:nowrap!important}
 .csp-cq .csp-nav b{font-size:13.5px!important}
 .csp-cartapp .cc-tot{flex-wrap:wrap;gap:2px 8px}
 .csp-cartapp .cc-tot b:last-child{font-size:21px!important;white-space:nowrap}
 .csp-cartapp .cc-pay .csp-wompi{font-size:12px!important}
 .csp-cartapp .cc-pay .csp-plogo{padding:0 3px!important}
 .csp-cartapp .cc-pay .csp-plogo svg,.csp-cartapp .cc-pay .csp-visa img{max-width:100%!important;height:18px!important}
}


/* ==========================================================================
   REVISIÓN RESPONSIVE 2.9.9 – tabletas, celular acostado y áreas táctiles
   ========================================================================== */
/* Tableta / celular acostado (901–1100px): la tarjeta de reserva es angosta */
@media (min-width:901px) and (max-width:1100px){
 .csp-cq .csp-prices th,.csp-cq .csp-prices td{font-size:13px!important;padding-left:8px!important;padding-right:8px!important;white-space:normal!important}
 .csp-cq .csp-secure{flex-wrap:wrap!important;justify-content:center!important;gap:10px 14px!important}
 .csp-cq .csp-paylogos{gap:12px!important;flex-wrap:wrap;justify-content:center}
 .csp-cq .csp-slot{font-size:13px!important;padding-left:4px!important;padding-right:4px!important}
}
/* Barra fija "Reservar": no tapa el final de la página y se esconde sobre la tarjeta */
@media (max-width:900px){
 body.csp-has-jump{padding-bottom:calc(50px + env(safe-area-inset-bottom,0px))!important}
 .csp-jump{padding-bottom:calc(14px + env(safe-area-inset-bottom,0px))!important;transition:transform .25s ease}
 .csp-jump.csp-jump-off{transform:translateY(110%);box-shadow:none!important}
}
/* Celular acostado (pantallas bajas): menú fijo y barra más compactos */
@media (max-height:500px) and (max-width:1100px){
 .csp-cq .csp-tabsw.csp-pinned{padding-top:0!important;padding-bottom:4px!important}
 .csp-cq .csp-tabsw.csp-pinned .csp-tabs a{padding-top:8px!important;padding-bottom:8px!important}
 .csp-cq .csp-tabsw.csp-pinned .csp-tbar{margin-top:0!important}
 .csp-jump{padding-top:10px!important;padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))!important;font-size:14px!important}
 body.csp-has-jump{padding-bottom:42px!important}
}
/* Áreas táctiles más cómodas sin cambiar el aspecto */
@media (hover:none),(max-width:900px){
 .csp-cq .csp-tbl,.csp-cq .csp-tbr{width:34px!important;flex:0 0 34px!important;height:30px!important;margin:-4px 0!important}
 .csp-cartapp a[data-act="dt"],.csp-cartapp a[data-act="ppl"]{display:inline-block;padding:7px 10px 7px 0!important;margin:-7px 0!important}
}
/* Celulares muy angostos (≤380px): servicios adicionales del carrito con más aire */
@media (max-width:380px){
 .csp-cartapp .cc-ad{grid-template-columns:20px 34px minmax(0,1fr)!important;gap:8px 10px!important;padding:10px!important}
 .csp-cartapp .cc-ad .cc-thumb{width:34px!important;height:34px!important}
 .csp-cartapp .cc-ad>.csp-st{grid-column:2/4!important;grid-row:2!important;justify-self:start}
 .csp-cartapp .cc-ad .cc-lt{grid-column:3!important;grid-row:2!important;justify-self:end;align-self:center}
 .csp-cartapp .cc-ad .csp-st{gap:10px!important}
}
/* Ficha en contenedor angosto (lo decide el ancho real que deja el tema) */
.csp-cq .csp-book.csp-narrow{grid-template-columns:minmax(0,1fr)!important}
.csp-cq .csp-book.csp-narrow .csp-jump{display:block;position:fixed;left:0;right:0;bottom:0;z-index:99;background:#1a5c0a;color:#fff!important;text-align:center;padding:14px 16px calc(14px + env(safe-area-inset-bottom,0px));font-size:15px;font-weight:700;text-decoration:none;box-shadow:0 -4px 16px rgba(0,0,0,.18);transition:transform .25s ease}
.csp-cq .csp-book.csp-narrow .csp-jump b{color:#fff}
.csp-cq .csp-book.csp-narrow .csp-jump.csp-jump-off{transform:translateY(110%);box-shadow:none}
body.csp-has-jump:has(.csp-narrow){padding-bottom:calc(50px + env(safe-area-inset-bottom,0px))}


/* ==========================================================================
   REVISIÓN 3.0.0 · icono de carrito, filtros en celular y servicios adicionales
   ========================================================================== */
/* Icono del carrito (el mismo en el botón «Añadir al carrito», el carrito y el mini carrito) */
.csp-cart-ico{flex:none;display:inline-block;vertical-align:middle;fill:none}
.csp-cart-ico *{vector-effect:none}
.csp-cq .csp-cartbtn svg.csp-cart-ico{width:24px!important;height:24px!important}
.csp-mini svg.csp-cart-ico{width:22px;height:22px}

/* Filtros de la portada: nunca más anchos que la pantalla y sin bloquear el desplazamiento */
.csp-find{max-width:100%;overflow-x:clip}
.csp-hero .csp-fcard{max-width:100%}
.csp-fcard input[type=range]{touch-action:pan-y!important}
.csp-fcard .csp-dd-b span.csp-dd-t{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;text-align:left}
@media (max-width:900px){
 .csp-hero .csp-fcard{width:100%!important;max-width:520px!important;margin-left:auto!important;margin-right:auto!important}
 .csp-hero-in{min-height:0!important}
}
@media (max-width:380px){
 .csp-hero-in{padding:28px 12px!important}
 .csp-hero .csp-fcard{padding:16px 12px!important}
 .csp-fcard .csp-dd-b{padding:10px 12px!important}
 .csp-pr2-h .csp-prv{font-size:12.5px!important}
 .csp-fcard .csp-go{font-size:14px!important}
}

/* Servicios adicionales de la ficha: el nombre nunca se parte letra por letra.
   Se reacomoda según el ancho REAL de la tarjeta (no solo el de la pantalla). */
.csp-adt{min-width:0}
.csp-adt b,.csp-adt small{overflow-wrap:break-word;word-break:normal;hyphens:manual}
.csp-ad{container-type:inline-size;container-name:csp-ad}
@container csp-ad (max-width:460px){
 .csp-adr,.csp-cq .csp-adr{grid-template-columns:auto 44px minmax(0,1fr) auto!important;column-gap:10px!important;row-gap:8px!important;align-items:center}
 .csp-adr>.csp-adc,.csp-adr>.csp-adok{grid-column:1;grid-row:1}
 .csp-adr>.cc-thumb{grid-column:2;grid-row:1}
 .csp-adr>.csp-adt{grid-column:3/5;grid-row:1}
 .csp-adr>.csp-aq{grid-column:3;grid-row:2;justify-self:start}
 .csp-adr>.csp-adp{grid-column:3/5;grid-row:2;justify-self:end;text-align:right}
 .csp-adr>.csp-adp:empty{display:none}
}
/* Respaldo para navegadores sin container queries */
@supports not (container-type:inline-size){
 .csp-narrow .csp-adr{grid-template-columns:auto 44px minmax(0,1fr) auto!important;row-gap:8px!important}
 .csp-narrow .csp-adr>.csp-adt{grid-column:3/5;grid-row:1}
 .csp-narrow .csp-adr>.csp-aq{grid-column:3;grid-row:2;justify-self:start}
 .csp-narrow .csp-adr>.csp-adp{grid-column:3/5;grid-row:2;justify-self:end}
}

/* Cupón: quitar y mensaje */
.cc-rmc{border:0;background:none;padding:0 2px;margin-left:4px;color:#b32d2e;font-size:12px;font-weight:600;text-decoration:underline;cursor:pointer}
.cc-dc small{opacity:.75}
.cc-cp .csp-msg.ok{color:#1a5c0a}

/* Cupón de descuento (Finalizar compra) */
.csp-cartapp .cc-cp{border:1.5px solid #dce2e6;border-radius:10px;padding:12px 14px;margin:12px 0;background:#fff}
.csp-cartapp .cc-cp summary{list-style:none;display:flex;align-items:center;gap:8px;cursor:pointer;color:#1f2d3a;font-weight:700;font-size:14px}
.csp-cartapp .cc-cp summary::-webkit-details-marker{display:none}
.csp-cartapp .cc-cp summary svg{color:#1a5c0a;flex:none}
.csp-cartapp .cc-cp summary::after{content:"";margin-left:auto;width:8px;height:8px;border-right:2px solid #1f2d3a;border-top:2px solid #1f2d3a;transform:rotate(-45deg);transition:transform .2s}
.csp-cartapp .cc-cp[open] summary::after{transform:rotate(135deg)}
.csp-cartapp .cc-cpf{display:flex;gap:10px;margin-top:12px}
.csp-cartapp .cc-cpf input{flex:1;min-width:0;height:44px;border:1.5px solid #dce2e6;border-radius:8px;padding:0 12px;font:inherit;font-size:14px;text-transform:uppercase}
.csp-cartapp .cc-cpf input::placeholder{text-transform:none}
.csp-cartapp .cc-cpf button{height:44px;border:0!important;background:#14530a!important;color:#fff!important;border-radius:8px!important;padding:0 22px!important;font:inherit;font-weight:700!important;cursor:pointer;text-transform:none!important}
.csp-cartapp .cc-cpf button:hover{background:#0e4d12!important}
.csp-cartapp .cc-cpf button:disabled{opacity:.6;cursor:wait}
.csp-cartapp .cc-cp .csp-msg{margin:8px 0 0;font-size:13px;color:#b32d2e}
.csp-cartapp .cc-cp .csp-msg:empty{display:none}
.csp-cartapp .cc-cp .csp-msg.ok{color:#1a5c0a}

/* Opciones de contacto: novedades y recordar datos */
.cc-co .cc-opts{margin:14px 0 2px;padding:12px 14px;border:1px dashed #bcd7b0;border-radius:10px;background:#f4faf0}
.cc-co .cc-opts .cc-ck{margin:0 0 10px!important;font-size:13.5px!important}
.cc-co .cc-opts .cc-ck:last-child{margin-bottom:0!important}
.cc-co .cc-opts .cc-ck b{color:var(--g)!important}

/* 3.2.7 — aviso de pagos deshabilitados */
.csp-cartapp .cc-gom{margin:10px 0 0;padding:10px 12px;border-radius:10px;background:#fdecec;color:#b4141f;font-size:14px;text-align:center}

/* 3.2.8 — el título del buscador puede ser div/h2/h1 y se ve igual */
.csp-hero .csp-herotitle { display: block; font-family: var(--csp-f) !important; font-size: clamp(2.3rem, 4.5vw, 3.4rem); line-height: 1.1; font-weight: 700; color: #ffffff; margin: 0 0 16px; padding: 0; letter-spacing: -0.01em; text-transform: none; }
@media (max-width: 580px) { .csp-hero .csp-herotitle { font-size: clamp(1.85rem, 8.4vw, 2.4rem) !important; } }

/* ---------- [csp_promo] tarjeta publicitaria para artículos ---------- */
.csp-promo-wrap{container-type:inline-size;margin:28px 0!important;font-family:var(--csp-f)!important;clear:both}
.csp-promo-wrap *,.csp-promo-wrap *::before,.csp-promo-wrap *::after{box-sizing:border-box}
.csp-promo-many{display:flex;flex-direction:column;gap:18px}
.csp-promo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}
.csp-promo{display:flex;flex-direction:column;background:#fff;border:1px solid #e3e8ec;border-radius:16px;overflow:hidden;box-shadow:0 8px 28px rgba(16,38,26,.09);margin:0!important;transition:box-shadow .2s,transform .2s}
.csp-promo:hover{box-shadow:0 12px 34px rgba(16,38,26,.15);transform:translateY(-2px)}
.csp-promo a{text-decoration:none!important;box-shadow:none!important;border:0!important}
.csp-promo-media{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:#eaf5e1;margin:0!important}
.csp-promo-media img.csp-promo-img,.csp-promo-media img{display:block!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;margin:0!important;border-radius:0!important;transition:transform .4s}
.csp-promo:hover .csp-promo-media img{transform:scale(1.04)}
.csp-promo-noimg{display:block;width:100%;height:100%;background:linear-gradient(135deg,#cfe8d3,#9fcfae)}
.csp-promo-feat{position:absolute;top:12px;left:12px;display:inline-flex;align-items:center;gap:5px;background:#fff;color:#0e4d12;font-size:11.5px;font-weight:700;padding:5px 10px;border-radius:999px;box-shadow:0 2px 8px rgba(0,0,0,.12)}
.csp-promo-body{display:flex;flex-direction:column;flex:1;padding:18px 20px 20px;min-width:0}
.csp-promo-kicker{display:block;font-size:11.5px!important;font-weight:700!important;letter-spacing:.06em!important;text-transform:uppercase!important;color:#f0561a!important;margin:0 0 6px!important;line-height:1.2}
.csp-promo .csp-promo-title{font-family:var(--csp-f)!important;font-size:20px!important;line-height:1.2!important;font-weight:700!important;margin:0 0 8px!important;padding:0!important;letter-spacing:0!important;text-transform:none!important;border:0!important}
.csp-promo .csp-promo-title::before,.csp-promo .csp-promo-title::after{content:none!important}
.csp-promo .csp-promo-title a{color:#0e4d12!important}
.csp-promo .csp-promo-title a:hover{color:#1a7a12!important}
.csp-promo .csp-promo-text{font-size:14px!important;line-height:1.5!important;color:#1f2937!important;margin:0 0 12px!important;padding:0!important}
.csp-promo .csp-promo-meta{list-style:none!important;margin:0 0 14px!important;padding:0!important;display:flex;flex-wrap:wrap;gap:6px 16px}
.csp-promo .csp-promo-meta li{display:flex;align-items:center;gap:6px;margin:0!important;padding:0!important;list-style:none!important;font-size:13px;font-weight:500;line-height:1.3;color:#12201a}
.csp-promo .csp-promo-meta li::before,.csp-promo .csp-promo-meta li::marker{content:none!important}
.csp-promo .csp-promo-meta svg{flex:none;color:#1a5c0a}
.csp-promo-foot{margin-top:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap;padding-top:12px;border-top:1px solid #eef1f3}
.csp-promo-price{display:flex;flex-direction:column;line-height:1.15}
.csp-promo-price small{font-size:12.5px;font-weight:700;color:#f0561a}
.csp-promo-price b{font-size:22px;font-weight:700;color:#0a1a10}
.csp-promo-price span{font-size:12px;font-weight:500;color:#1b3a8c}
.csp-promo .csp-promo-btn{display:inline-flex;align-items:center;gap:8px;background:#1a5c0a!important;color:#fff!important;font-size:14.5px!important;font-weight:700!important;line-height:1!important;padding:13px 20px!important;border-radius:999px!important;white-space:nowrap;transition:background .2s}
.csp-promo .csp-promo-btn:hover,.csp-promo .csp-promo-btn:focus-visible{background:#0e4d12!important;color:#fff!important}
.csp-promo .csp-promo-btn svg{transition:transform .2s}.csp-promo .csp-promo-btn:hover svg{transform:translateX(3px)}
.csp-promo-note{align-self:start;margin:0!important;padding:10px 14px;border:1px dashed #f26a00;background:#fff7ed;color:#9a3412;font-size:13px;border-radius:8px}
@container (min-width:600px){
 .csp-promo--horizontal{flex-direction:row}
 .csp-promo--horizontal .csp-promo-media{flex:0 0 42%;aspect-ratio:auto;min-height:250px}
 .csp-promo--horizontal .csp-promo-body{padding:22px 24px}
 .csp-promo--horizontal .csp-promo-title{font-size:22px!important}
}
@container (max-width:380px){
 .csp-promo-foot{flex-direction:column;align-items:stretch}
 .csp-promo .csp-promo-btn{justify-content:center}
}
