  .lead-max {
    max-width: 880px
  }

  .price-card {
    border: 0;
    border-radius: 14px;
    box-shadow: 0 8px 30px rgba(16, 24, 40, .08)
  }

  .price-number {
    font-size: clamp(40px, 8vw, 64px);
    line-height: 1;
    font-weight: 800
  }

  .price-suf {
    font-size: .7em;
    font-weight: 700
  }

  .price-pill {
    font-size: .75rem;
    padding: .25rem .6rem;
    border-radius: 999px
  }

  .list-check li {
    display: flex;
    gap: .5rem;
    align-items: flex-start;
    margin-bottom: .5rem
  }

  .list-check i {
    color: #16a34a
  }

  .btn-kamak {
    --bs-btn-bg: #16a34a;
    --bs-btn-border-color: #16a34a;
    --bs-btn-hover-bg: #15803d;
    --bs-btn-hover-border-color: #15803d
  }

  .btn-kamak-outline {
    --bs-btn-color: #16a34a;
    --bs-btn-border-color: #16a34a;
    --bs-btn-hover-bg: #16a34a;
    --bs-btn-hover-border-color: #16a34a;
    --bs-btn-hover-color: #fff
  }

  .footer-kamak {
    background: #0b1720
  }

  .footer-divider {
    border-top: 1px solid rgba(255, 255, 255, .08)
  }

  .logo-kamak {
    height: 40px
  }

  @media (min-width:992px) {
    .faq-col {
      column-count: 2;
      column-gap: 2rem
    }

    .faq-col .faq-item {
      break-inside: avoid;
      margin-bottom: 1.25rem
    }
  }

  /* Pequeños ajustes visuales de esta página */
  .review-list-value {
    font-weight: 600;
    margin-left: .25rem
  }

  .avatar-xl {
    width: 96px;
    height: 96px;
    object-fit: cover
  }

  .text-inherit {
    color: inherit;
    text-decoration: none
  }

  .text-inherit:hover {
    color: var(--bs-primary)
  }

  /* Footer */
  .footer-dark {
    background: #073848;
  }

  .footer-dark a {
    color: #d6e7ef;
    text-decoration: none;
  }

  .footer-dark a:hover {
    color: #fff;
  }

  .footer-dark .heading {
    color: #fff;
    font-weight: 700;
    margin-bottom: .5rem;
  }

  .footer-dark p,
  .footer-dark li {
    margin-bottom: .25rem;
  }

  .footer-dark .logo {
    max-width: 200px;
    height: auto;
  }

  @media (min-width:992px) {
    .footer-dark .logo-col {
      padding-right: 3.5rem;
      margin-right: 3.5rem;
      border-right: 1px solid rgba(255, 255, 255, .15);
    }
  }

  /* Tarjeta */
  .comment-card {
    border: 1px solid #e9e9f3;
    border-radius: 12px;
  }

  /* Campos */
  .comment-card .form-control {
    border-color: #e1e5ee;
    border-radius: 8px;
  }

  .comment-card .form-control:focus {
    border-color: #a5b4fc;
    box-shadow: 0 0 0 .2rem rgba(99, 102, 241, .15);
  }

  /* Botón morado como en la imagen */
  .btn-purple {
    background: #6f5bff;
    border-color: #6f5bff;
    color: #fff;
    border-radius: 10px;
    padding: .65rem 1.1rem;
  }

  .btn-purple:hover {
    background: #5e4cf2;
    border-color: #5e4cf2;
  }

  /* Asterisco requerido */
  .req {
    color: #ef4444;
  }

  /* Bordes suaves del textarea */
  .comment-textarea {
    min-height: 160px;
  }

  .bg-cover {
    background-size: cover;
    background-position: center
  }

  .thumb-tile {
    position: relative;
    overflow: hidden;
    border-radius: .75rem
  }

  .thumb-tile img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block
  }

  .thumb-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    border-radius: .75rem;
    background: rgba(0, 0, 0, .35);
    color: #fff
  }

  .thumb-tile:focus,
  .thumb-tile:hover {
    outline: 0;
    box-shadow: 0 0 0 3px rgba(99, 102, 241, .6)
  }

  /* Ajustes de separación y estilo del footer */
  .footer-dark {
    background: #073848;
  }

  /* tono parecido al de la captura */
  .footer-dark a {
    color: #d6e7ef;
    text-decoration: none;
  }

  .footer-dark a:hover {
    color: #fff;
  }

  .footer-dark .heading {
    color: #fff;
    font-weight: 700;
    margin-bottom: .5rem;
  }

  .footer-dark p,
  .footer-dark li {
    margin-bottom: .25rem;
  }

  .footer-dark .logo {
    max-width: 200px;
    height: auto;
  }

  /* En desktop: gran separación del logo vs columnas (línea divisoria opcional) */
  @media (min-width: 992px) {
    .footer-dark .logo-col {
      padding-right: 3.5rem;
      /* distancia a la derecha del logo */
      margin-right: 3.5rem;
      border-right: 1px solid rgba(255, 255, 255, .15);
    }
  }

  /* ====== Tiles de galería ====== */

  /* contenedor clickeable */
  .thumb-tile {
    position: relative;
    display: block;
    width: 100%;
    /* proporción bonita por defecto */
    aspect-ratio: 4 / 3;
    border-radius: .75rem;
    overflow: hidden;
    box-shadow: 0 .25rem .6rem rgba(0, 0, 0, .08);
    background: #f6f7f9;
    transition: transform .18s ease, box-shadow .18s ease;
  }

  .thumb-tile:hover {
    transform: translateY(-2px);
    box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .12);
  }

  .thumb-tile:focus-visible {
    outline: 3px solid rgba(13, 110, 253, .5);
    /* azul bootstrap */
    outline-offset: 2px;
    border-radius: .85rem;
  }

  /* imagen dentro del tile */
  .thumb-tile img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    /* recorte elegante */
    object-position: center;
    /* centra el recorte */
    transition: transform .35s ease;
  }

  .thumb-tile:hover img {
    transform: scale(1.03);
    /* leve zoom al hover */
  }

  /* overlay (aparece al pasar el mouse) */
  .thumb-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: .5rem 1rem;
    background: linear-gradient(to top, rgba(0, 0, 0, .55), rgba(0, 0, 0, .15));
    color: #fff;
    font-weight: 600;
    letter-spacing: .2px;
    opacity: 0;
    transition: opacity .2s ease;
  }

  .thumb-tile:hover .thumb-overlay,
  .thumb-tile:focus .thumb-overlay {
    opacity: 1;
  }

  /* ====== Variantes útiles (opcional) ====== */
  /* cambia la proporción si quieres otros cortes */
  .thumb-tile--16x9 {
    aspect-ratio: 16 / 9;
  }

  .thumb-tile--1x1 {
    aspect-ratio: 1 / 1;
  }

  /* bordes más marcados (si tu tema es más “cardy”) */
  .thumb-tile.rounded {
    border-radius: 1rem;
  }
  
                        /* ====== Header autor compacto ====== */
                        .author-header {
                            display: flex;
                            gap: 16px;
                            align-items: flex-start;
                        }

                        .author-avatar {
                            width: 64px;
                            height: 64px;
                            border-radius: 50%;
                            overflow: hidden;
                            flex: 0 0 64px;
                            box-shadow: 0 2px 10px rgba(0, 0, 0, .06);
                        }

                        .author-avatar img {
                            width: 100%;
                            height: 100%;
                            object-fit: cover;
                            display: block;
                        }

                        .author-meta h3 {
                            margin: 0 0 4px;
                            font-weight: 700;
                        }

                        .author-desc {
                            margin: 0 0 8px;
                            color: var(--bs-gray-700);
                            line-height: 1.35;
                        }

                        .author-social a {
                            color: var(--bs-gray-700);
                            margin-right: 12px;
                            font-size: 14px;
                        }

                        .author-social a:hover {
                            color: var(--bs-dark);
                        }

                        .author-stats {
                            display: flex;
                            align-items: center;
                            gap: 8px;
                            font-size: 12px;
                            color: var(--bs-gray-600);
                        }

                        @media (max-width:576px) {
                            .author-header {
                                gap: 12px;
                            }

                            .author-avatar {
                                width: 56px;
                                height: 56px;
                                flex-basis: 56px;
                            }
                        }
                    
  /* altura del header; bájale este valor para que el mapa crezca */
  :root{ --map-top-offset: 96px;  /* antes tenías 140px */ 
         --map-bottom-gap: 12px; }

  /* Columna derecha fija y alta */
  .map-sticky{
    position: sticky;
    top: var(--map-top-offset);
    height: calc(100vh - var(--map-top-offset) - var(--map-bottom-gap));
    border-radius: 12px;
    box-shadow: 0 6px 18px rgba(0,0,0,.08);
    overflow: hidden;
  }

  /* El mapa debe ocupar todo el contenedor */
  #mapid_2{
    height: 100% !important;     /* quita el 280px fijo */
    width: 100%;
  }

  /* Por si el theme fuerza posicionamientos raros */
  .listinghalfmap-map{ position: relative !important; top: auto !important; }

  /* Opcional: un poquito más en pantallas grandes */
  @media (min-width: 1400px){
    :root{ --map-top-offset: 84px; } /* más alto todavía */
  }


    /* sólo estilos de esta sección */
  .agent-card .avatar{
    width: 96px; height: 96px; border-radius: 50%; object-fit: cover;
  }
  .agent-card .social a{ opacity:.75; transition:transform .2s, opacity .2s; }
  .agent-card .social a:hover{ opacity:1; transform:translateY(-2px); }


   :root {
    --brand-x: #01060b;
    --gray-light-x: #f8f9fa;
    --gray-border-x: #ddd;
    --text-x: #333;
    --radius-x: 12px;
  }

  body .main-wrapper-x {
    display: flex;
    justify-content: center;
    background-color: var(--gray-light-x);
    padding: 60px 20px;
    font-family: "Inter", sans-serif;
    color: var(--text-x);
  }

  .container-x {
    max-width: 800px;
    width: 100%;
    background: #fff;
    border-radius: var(--radius-x);
    box-shadow: 0 6px 20px rgba(0,0,0,0.05);
    padding: 40px;
  }

  .titulo-x {
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 30px;
    text-align: center;
  }

  .grid-x {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 16px;
  }

  .option-x {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 16px;
    background: #fff;
    border: 2px solid var(--gray-border-x);
    border-radius: var(--radius-x);
    cursor: pointer;
    transition: all 0.2s ease;
    text-align: center;
  }

  .option-x:hover {
    border-color: var(--brand-x);
    background: rgba(0,122,255,0.05);
    transform: translateY(-2px);
  }

  .option-x svg {
    width: 30px;
    height: 30px;
    margin-bottom: 10px;
    fill: var(--brand-x);
  }

  .option-x span {
    font-size: 0.95rem;
    font-weight: 500;
  }

  @media (max-width: 600px) {
    .container-x {
      padding: 25px;
    }
    .option-x {
      padding: 14px;
    }
  }

    :root {
    --brand-z:#5b44ff;
    --text-z:#1f2937;
    --muted-z:#667085;
    --line-z:#e5e7eb;
    --bg-z:#f7f7fb;
    --chip-z:#f1f2ff;
    --green-z:#16a34a;
    --danger-z:#ef4444;
    --radius-z:14px;
  }

  /* scope */
  .main-wrapper-z{font-family:Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;background:#fff;color:var(--text-z)}
  .main-wrapper-z *{box-sizing:border-box}
  .container-z{max-width:980px;margin:0 auto;padding:40px 20px}

  /* título */
  .page-title-z{font-size:34px;margin:4px 0 28px;text-align:center;font-weight:800}

  /* sección */
  .section-z{padding:22px 0;border-top:1px solid var(--line-z)}
  .section-z:first-of-type{border-top:0}
  .section-head-z{display:flex;align-items:center;gap:10px;margin-bottom:16px}
  .section-head-z h3{font-size:18px;margin:0;font-weight:700}
  .section-note-z{font-size:13px;color:var(--muted-z);margin-top:4px}

  /* formularios */
  .grid-2-z{display:grid;grid-template-columns:1fr 1fr;gap:16px}
  .grid-3-z{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}
  .field-z{display:flex;flex-direction:column;gap:8px}
  .label-z{font-size:13px;color:#475569;font-weight:600}
  .input-z,.select-z,.textarea-z{
    width:100%;border:1px solid var(--line-z);background:#fff;border-radius:10px;
    padding:12px 14px;font-size:14px;color:var(--text-z);outline:none
  }
  .textarea-z{min-height:120px;resize:vertical}
  .help-z{font-size:12px;color:var(--muted-z)}

  /* “editor” falso */
  .editor-bar-z{display:flex;gap:8px;border:1px solid var(--line-z);border-radius:10px 10px 0 0;padding:8px}
  .editor-btn-z{border:1px solid var(--line-z);background:#fff;border-radius:8px;padding:6px 8px;font-size:12px}

  /* Disposición / steppers */
  .disp-row-z{display:grid;grid-template-columns:1fr 120px;gap:16px;align-items:center;margin-bottom:10px}
  .stepper-z{display:flex;gap:10px;align-items:center;justify-content:flex-end}
  .stepper-btn-z{
    width:34px;height:34px;border-radius:999px;border:1px solid var(--line-z);background:#fff;
    display:grid;place-items:center;font-weight:700;color:#111;cursor:default
  }
  .stepper-val-z{min-width:36px;text-align:center;border:1px dashed var(--line-z);border-radius:10px;padding:6px 8px;color:#111}

  /* amenities */
  .checks-z{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 18px}
  .checks-z .check-z{display:flex;gap:10px;align-items:center;font-size:14px;color:#475569}
  .checks-z input{width:16px;height:16px}

  /* chips */
  .chips-z{display:flex;flex-wrap:wrap;gap:8px}
  .chip-z{
    background:var(--chip-z);border:1px solid #dfe1ff;color:#374151;
    padding:8px 12px;border-radius:999px;font-weight:600;font-size:13px
  }

  /* radios estilo tarjeta */
  .radio-line-z{display:flex;gap:14px;flex-wrap:wrap}
  .radio-pill-z{
    display:flex;gap:8px;align-items:center;border:1px solid var(--line-z);
    padding:10px 14px;border-radius:999px;background:#fff
  }

  /* galería */
  .gallery-wrap-z{display:flex;gap:12px;flex-wrap:wrap}
  .thumb-z{
    width:92px;height:92px;border:2px dashed #c9ccda;border-radius:14px;background:#fff;
    display:grid;place-items:center;position:relative
  }
  .thumb-z::after{content:"+";font-weight:800;color:#8a8faa;font-size:22px}

  /* “o” separador */
  .or-z{display:flex;align-items:center;gap:12px;margin:12px 0}
  .or-z span{height:1px;background:var(--line-z);flex:1}
  .or-z b{font-size:12px;color:#6b7280;font-weight:700}

  /* tarjetas información */
  .note-card-z{
    background:#f9fafb;border:1px solid var(--line-z);border-radius:12px;padding:14px;color:#374151;font-size:13px
  }

  /* botones */
  .btn-z{
    display:inline-block;padding:12px 18px;border-radius:12px;border:1px solid transparent;
    background:var(--brand-z);color:#fff;font-weight:700;text-align:center
  }
  .btn-soft-z{background:#fff;border-color:var(--brand-z);color:var(--brand-z)}
  .btn-outline-z{background:#fff;border-color:var(--line-z);color:#111}
  .center-z{display:flex;justify-content:center}

  /* tarjetas pequeñas */
  .small-cards-z{display:grid;grid-template-columns:1fr 1fr;gap:16px}
  .mini-z{border:1px solid var(--line-z);border-radius:12px;padding:14px;background:#fff}
  .price-z{font-weight:800;font-size:18px;margin-top:6px}

  /* Impuestos */
  .tax-row-z{display:flex;gap:10px;flex-wrap:wrap;align-items:center}

  /* Descuentos */
  .discounts-z{display:grid;gap:12px}
  .disc-card-z{
    border:1px solid var(--line-z);border-radius:14px;background:#fff;display:grid;
    grid-template-columns:80px 1fr 40px;align-items:center;padding:12px 14px
  }
  .disc-left-z{font-size:22px;font-weight:800;text-align:center}
  .disc-mid-z{font-size:13px;color:#475569}
  .disc-mid-z b{color:#111}
  .disc-check-z{display:grid;place-items:center}
  .disc-check-z input{width:18px;height:18px}

  /* responsive */
  @media (max-width: 760px){
    .grid-2-z,.grid-3-z{grid-template-columns:1fr}
    .disp-row-z{grid-template-columns:1fr}
    .small-cards-z{grid-template-columns:1fr}
    .disc-card-z{grid-template-columns:60px 1fr 36px}
  }
   :root{
    --brand-y:#22c55e;
    --text-y:#1f2937;
    --muted-y:#6b7280;
    --line-y:#e5e7eb;
    --bg-y:#ffffff;
    --radius-y:12px;
  }
  /* Scope: sólo afecta a esta vista */
  .final-details-y{font-family:Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;color:var(--text-y)}
  .final-details-y *{box-sizing:border-box}

  .title-y{font-size:32px;font-weight:800;margin:0 0 18px}
  .q-title-y{font-weight:700;margin:0 0 6px}
  .q-note-y{margin:0 0 14px;font-size:13px;color:var(--muted-y)}

  .field-y{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}
  .label-y{font-size:13px;font-weight:600;color:#475569}

  .input-y{
    width:100%;background:var(--bg-y);border:1px solid var(--line-y);
    border-radius:var(--radius-y);padding:12px 14px;font-size:14px;outline:none;
  }

  /* select con flecha */
  .select-wrap-y{position:relative}
  .select-y{appearance:none;-webkit-appearance:none;-moz-appearance:none}
  .select-wrap-y .chev-y{
    position:absolute;right:12px;top:50%;transform:translateY(-50%);
    pointer-events:none;color:#111;font-size:14px
  }

  /* grids */
  .grid-2-y{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  @media (max-width:760px){.grid-2-y{grid-template-columns:1fr}}

  /* separadores/encabezado seccion derecha con línea */
  .hr-title-y{display:flex;align-items:center;gap:10px;margin:20px 0 14px}
  .hr-title-y span{white-space:nowrap;font-weight:700}
  .hr-title-y:after{content:"";height:1px;background:var(--line-y);flex:1}

  /* botón */
  .btn-next-y{
    display:inline-block;background:var(--brand-y);color:#fff;border:0;
    padding:10px 22px;border-radius:8px;font-weight:700;cursor:pointer
  }
  .center-y{display:flex;justify-content:center;margin-top:12px}

    :root{
    --brand-w:#111827;
    --accent-w:#111827;
    --ring-w:#11182720;
    --line-w:#e5e7eb;
    --muted-w:#6b7280;
    --radius-w:12px;
  }
  .payout-w{font-family:Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;color:#111}
  .payout-w *{box-sizing:border-box}

  .title-w{font-size:28px;font-weight:800;margin:6px 0 6px}
  .sub-w{color:var(--muted-w);margin:0 0 18px}

  .field-w{margin-bottom:18px}
  .label-w{display:block;font-weight:700;margin:0 0 10px}
  .help-w{font-size:12px;color:var(--muted-w);margin-top:8px}
  .link-w{color:#2563eb;text-decoration:none}

  .input-w{
    width:100%;border:1px solid var(--line-w);border-radius:var(--radius-w);
    padding:12px 14px;font-size:14px;background:#fff;outline:none;
  }
  .select-wrap-w{position:relative}
  .select-w{appearance:none;-webkit-appearance:none;-moz-appearance:none}
  .chev-w{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#111}

  .options-w{margin-top:12px}
  .option-w{
    display:flex;align-items:flex-start;gap:12px;
    padding:14px;border:1.5px solid var(--line-w);border-radius:14px;background:#fff;
    box-shadow:0 1px 0 rgba(0,0,0,.01);margin-bottom:10px;
  }
  .option-w.selected-w{border-color:var(--accent-w);box-shadow:0 0 0 4px var(--ring-w)}
  .opt-left-w{width:36px;height:36px;display:grid;place-items:center}
  .logo-w{max-width:28px;max-height:28px}
  .bank-ico-w{font-size:26px;line-height:1}
  .opt-body-w{flex:1}
  .opt-title-w{font-weight:700;margin-bottom:6px}
  .bullets-w{margin:0;padding:0 0 0 16px;color:var(--muted-w);font-size:14px}
  .opt-radio-w{width:28px;height:28px;margin-left:6px;display:grid;place-items:center}
  .radio-dot-w,.radio-ring-w{
    width:16px;height:16px;border-radius:999px;border:2px solid var(--accent-w);display:block;
  }
  .radio-dot-w{background:var(--accent-w)}
  /* radios invisibles pero funcionales */
.option-w > input[type="radio"]{position:absolute;opacity:0;pointer-events:none}

/* borde y halo cuando está seleccionado */
.option-w:has(> input[type="radio"]:checked){
  border-color:var(--accent-w);
  box-shadow:0 0 0 4px var(--ring-w);
}

/* alterna anillo/punto del “radio” */
.option-w .radio-dot-w{display:none}
.option-w:has(> input[type="radio"]:checked) .radio-dot-w{display:block}
.option-w:has(> input[type="radio"]:checked) .radio-ring-w{display:none}


/* Outline autosuficiente */
.btn-outline-z{
  display:inline-block;
  padding:12px 18px;
  border-radius:12px;
  border:1px solid var(--line-z);
  background:#fff;
  color:#111;
  font-weight:700;
  text-align:center;
}
.btn-outline-z:hover{ background:#f9fafb }
button.btn-outline-z, a.btn-outline-z{ text-decoration:none; }
