/* Ficha de tour — diseño de tour-detalle.html. Todo bajo .lks para no chocar con Traveler. */
.lks{--white:#fff;--surface:#F4F8F6;--ink:#1C2949;--ink-900:#101B33;--brand:#5DBA9E;--brand-700:#2C7861;--brand-050:#E8F5F0;--accent:#F8B33F;--alert:#C63A2B;--muted:#5A6478;--line:rgba(28,41,73,.10);--line-2:rgba(28,41,73,.18);--r-card:20px;--r-media:16px;--r-pill:999px;--sh-card:0 10px 30px rgba(16,27,51,.08);--ff:"Onest",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-family:var(--ff);color:var(--muted);background:var(--white);line-height:1.6;font-size:1rem;overflow-wrap:break-word}
.lks *,.lks *::before,.lks *::after{box-sizing:border-box}
.lks h1,.lks h2,.lks h3{font-family:var(--ff);color:var(--ink);margin:0;line-height:1.15;letter-spacing:-.01em}
.lks p{margin:0}
.lks ul{list-style:none;margin:0;padding:0}
.lks a{color:inherit}
.lks-sprite{position:absolute;inline-size:0;block-size:0;overflow:hidden}
.lks .ico{inline-size:20px;block-size:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.lks .ico--sm{inline-size:16px;block-size:16px}
.lks .ico--solid{fill:currentColor}
.lks-wrap{inline-size:min(100% - 48px,1320px);margin-inline:auto}
@media(max-width:600px){.lks-wrap{inline-size:min(100% - 32px,1320px)}}

/* cabecera */
.lks-head{background:radial-gradient(70% 90% at 90% 10%,var(--brand-050) 0%,transparent 62%),var(--surface);padding-block:clamp(36px,5vw,64px);border-block-end:1px solid var(--line)}
.lks-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:.8125rem;font-weight:600;margin-block-end:16px}
.lks-crumbs a{text-decoration:none;color:var(--muted)}
.lks-crumbs svg{color:var(--muted)}
.lks-crumbs [aria-current]{color:var(--ink)}
.lks-head__top{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:20px 32px}
.lks-head__top--sec{align-items:flex-end;margin-block-end:clamp(24px,3vw,40px)}
.lks-stack{display:grid;gap:14px}
.lks-stack--lg{gap:32px}
/* Móvil: las pistas del grid deben poder encogerse. Sin esto, el ancho mínimo de
   contenido (p. ej. la tira de pestañas) estira la columna y la ficha se sale de la pantalla. */
.lks-stack>*{min-inline-size:0}
.lks-detail>*{min-inline-size:0}
.lks-cluster{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.lks-head h1{font-size:clamp(2rem,4vw,3.25rem);font-weight:700;max-inline-size:22ch}
.lks-lead{max-inline-size:56ch;font-size:1.0625rem}
.lks-rating{display:flex;align-items:center;gap:6px;font-size:.875rem;font-weight:700;color:var(--ink)}
.lks-rating svg{inline-size:16px;block-size:16px;color:var(--accent)}
.lks-rating span{font-weight:500;color:var(--muted)}
.lks-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--r-pill);background:var(--white);border:1px solid var(--line);font-size:.8125rem;font-weight:600;color:var(--ink)}
.lks-chip svg{color:var(--brand-700)}
.lks-icon-btn{inline-size:44px;block-size:44px;border-radius:var(--r-pill);border:1.5px solid var(--line-2);background:var(--white);display:inline-grid;place-items:center;color:var(--ink);cursor:pointer;padding:0;position:relative;text-decoration:none}
.lks-icon-btn:hover,.lks-icon-btn.added{background:var(--ink);color:var(--white);border-color:var(--ink)}
.lks-icon-btn.added svg{fill:currentColor}
.lks-icon-btn .lds-dual-ring{display:none}
.lks-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--ff);font-weight:700;border-radius:var(--r-pill);text-decoration:none;cursor:pointer;min-block-size:48px;padding:0 24px;border:1.5px solid transparent}
.lks-btn--sm{min-block-size:44px;padding:0 18px;font-size:.875rem}
.lks-btn--ghost{background:transparent;color:var(--ink);border-color:var(--line-2)}
.lks-btn--ghost:hover{background:var(--ink);color:var(--white)}

/* galería */
.lks-section{padding-block:clamp(40px,5vw,72px)}
.lks-section--tight{padding-block:clamp(24px,3vw,40px)}
.lks-section--body{padding-block-start:0}
.lks-section--surface{background:var(--surface)}
.lks-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:repeat(2,1fr);gap:12px}
.lks-gallery>*{border-radius:var(--r-media);overflow:hidden;margin:0;position:relative}
.lks-gallery>:first-child{grid-row:span 2}
.lks-gallery a{display:block;block-size:100%}
.lks-gallery img{display:block;inline-size:100%;block-size:100%;object-fit:cover;aspect-ratio:4/3}
.lks-gallery>:first-child img{aspect-ratio:4/3.2}
.lks-gallery--1{grid-template-columns:1fr}.lks-gallery--1>:first-child{grid-row:auto}.lks-gallery--1>:first-child img{aspect-ratio:16/7}
.lks-gallery--2{grid-template-columns:2fr 1fr}
.lks-gallery--3{grid-template-columns:2fr 1fr}.lks-gallery--3>:first-child{grid-row:span 2}
@media(max-width:780px){
	.lks-gallery,.lks-gallery--2,.lks-gallery--3{grid-template-columns:1fr 1fr}
	.lks-gallery>:first-child{grid-column:span 2;grid-row:auto}
}
.lks-gallery__more{position:absolute;inset-block-end:14px;inset-inline-end:14px;background:rgba(255,255,255,.95);color:var(--ink);border-radius:var(--r-pill);padding:10px 18px;font-size:.8125rem;font-weight:700;pointer-events:none;display:inline-flex;align-items:center;gap:6px}

/* detalle */
.lks-detail{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:clamp(28px,4vw,56px);align-items:start}
@media(max-width:1020px){.lks-detail{grid-template-columns:1fr}}
.lks-main{min-inline-size:0}
/* Datos rápidos (duración, tarifa, dificultad, idiomas).
   Minimalismo suizo: un solo panel, sin bordes ni sombras, columnas separadas por líneas
   finas, iconos monocromos y jerarquía tipográfica en dos niveles. */
.lks-factbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--surface);border-radius:20px;padding:6px}
.lks-factbar--1{grid-template-columns:minmax(0,1fr)}
.lks-factbar--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.lks-factbar--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.lks-fact{display:grid;align-content:start;gap:7px;padding:18px 20px;border-inline-start:1px solid var(--line)}
.lks-fact:first-child{border-inline-start:0}
.lks-fact__head{display:flex;align-items:center;gap:7px;min-inline-size:0}
.lks-fact__ico{display:inline-flex;flex:none;color:var(--brand-700);transition:color .2s ease}
.lks-fact__ico .ico{inline-size:16px;block-size:16px;stroke-width:1.9}
.lks-fact__label{font-size:.6875rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lks-fact__value{display:block;font-size:1.0625rem;font-weight:700;color:var(--ink);line-height:1.3;font-variant-numeric:tabular-nums}
.lks-fact__note{font-size:.8125rem;font-weight:600;color:var(--muted);margin-inline-start:6px}
.lks-fact:hover .lks-fact__ico{color:var(--ink)}
/* Medidor de dificultad: el único color con significado. */
.lks-fact__meter{display:inline-grid;grid-auto-flow:column;align-items:end;gap:3px;vertical-align:-1px;margin-inline-start:9px}
.lks-fact__meter i{display:block;inline-size:3px;block-size:6px;border-radius:99px;background:var(--line-2)}
.lks-fact__meter i:nth-child(2){block-size:9px}
.lks-fact__meter i:nth-child(3){block-size:12px}
.lks-fact--easy .lks-fact__meter i.is-on{background:#2C7861}
.lks-fact--medium .lks-fact__meter i.is-on{background:#D08A1E}
.lks-fact--hard .lks-fact__meter i.is-on{background:#C63A2B}
@media(max-width:1319px){
	.lks-factbar{grid-template-columns:repeat(2,minmax(0,1fr))}
	.lks-factbar--1{grid-template-columns:minmax(0,1fr)}
	.lks-factbar--2{grid-template-columns:repeat(2,minmax(0,1fr))}
	.lks-factbar--3{grid-template-columns:repeat(2,minmax(0,1fr))}
	.lks-fact{padding:16px 18px}
	.lks-fact:nth-child(odd){border-inline-start:0}
	.lks-fact:nth-child(n+3){border-block-start:1px solid var(--line)}
}
@media(max-width:600px){
	.lks-fact{padding:14px 14px}
	.lks-fact__head{gap:6px}
	.lks-fact__ico .ico{inline-size:15px;block-size:15px}
	.lks-fact__label{font-size:.625rem;letter-spacing:.09em}
	.lks-fact__value{font-size:.9375rem}
	.lks-fact__note{font-size:.75rem;margin-inline-start:5px}
}
@media(max-width:380px){
	.lks-factbar,.lks-factbar--2,.lks-factbar--3{grid-template-columns:minmax(0,1fr)}
	.lks-fact:nth-child(n){border-inline-start:0}
	.lks-fact:nth-child(n+2){border-block-start:1px solid var(--line)}
}

.lks-tabs{display:flex;gap:0;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;border-block-end:1px solid var(--line);margin-block-end:32px;scrollbar-width:none;min-inline-size:0;--lk-tabfade-start:0px;--lk-tabfade-end:0px}
.lks-tabs::-webkit-scrollbar{display:none}
/* Pistas de que la tira se puede deslizar: solo cuando hay contenido oculto (lo marca el JS). */
.lks-tabs.is-scrollable{--lk-tabfade-end:44px}
.lks-tabs.is-scrollable:not(.is-start){--lk-tabfade-start:22px}
.lks-tabs.is-scrollable.is-end{--lk-tabfade-end:0px}
.lks-tabs.is-scrollable{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 var(--lk-tabfade-start),#000 calc(100% - var(--lk-tabfade-end)),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 var(--lk-tabfade-start),#000 calc(100% - var(--lk-tabfade-end)),transparent 100%)}
.lks-tabs button{font-family:var(--ff);background:none;border:0;border-block-end:3px solid transparent;margin-block-end:-1px;padding:16px 4px;margin-inline-end:28px;min-block-size:52px;font-weight:700;font-size:.9375rem;color:var(--muted);cursor:pointer;white-space:nowrap;flex:0 0 auto;scroll-margin-inline-start:4px}
.lks-tabs button[aria-selected="true"]{color:var(--ink);border-block-end-color:var(--accent)}
.lks-tabs button:hover{color:var(--ink)}
.lks-tabs button:focus-visible{outline:2px solid var(--brand-700);outline-offset:-4px;border-radius:6px}
@media(max-width:600px){
	.lks-tabs{margin-block-end:24px}
	.lks-tabs button{padding:14px 2px;margin-inline-end:20px;min-block-size:48px;font-size:.875rem}
}
.lks-tabpanel[hidden]{display:none}
.lks-prose{display:grid;gap:16px}
/* Ningún hijo de los grids internos debe estirar el panel por su ancho mínimo de contenido. */
.lks-prose>*,.lks-faq>*,.lks-two>*,.lks-itinerary>*,.lks-checks>*{min-inline-size:0}
.lks-prose h3{font-size:1.375rem;font-weight:700}
.lks-prose p,.lks-prose li{font-size:1rem}
.lks-prose img{max-inline-size:100%;block-size:auto;border-radius:var(--r-media)}
.lks-prose a{color:var(--brand-700)}
.lks-prose>ul:not(.lks-checks),.lks-prose>ol{list-style:revert;padding-inline-start:1.25rem;display:grid;gap:8px}
.lks-checks{display:grid;gap:10px}
.lks-checks li{display:flex;gap:12px;align-items:flex-start}
.lks-checks svg{color:var(--brand-700);margin-block-start:5px}
.lks-checks.is-excluded svg{color:var(--alert)}
.lks-two{display:grid;grid-template-columns:1fr 1fr;gap:32px}
@media(max-width:700px){.lks-two{grid-template-columns:1fr}}

.lks-itinerary{display:grid;gap:12px}
.lks-day{border:1px solid var(--line);border-radius:var(--r-media);overflow:hidden;background:var(--white)}
.lks-day__head{inline-size:100%;display:flex;align-items:center;gap:16px;padding:18px 20px;min-block-size:64px;text-align:start;background:none;border:0;cursor:pointer;font-family:var(--ff)}
.lks-day__n{inline-size:40px;block-size:40px;border-radius:var(--r-pill);flex:none;display:grid;place-items:center;background:var(--brand-050);color:var(--brand-700);font-weight:700}
.lks-day__head b{flex:1 1 auto;color:var(--ink);font-size:1rem}
.lks-day__head svg{color:var(--muted);transition:transform .18s}
.lks-day__head[aria-expanded="true"]{background:var(--surface)}
.lks-day__head[aria-expanded="true"] svg{transform:rotate(180deg)}
.lks-day__head[aria-expanded="true"] .lks-day__n{background:var(--accent);color:var(--ink)}
.lks-day__body{padding:4px 20px 22px 76px}
.lks-day__body[hidden]{display:none}
@media(max-width:600px){.lks-day__body{padding-inline-start:20px}}

.lks-faq{display:grid;gap:10px}
.lks-faq details{border:1px solid var(--line);border-radius:var(--r-media);background:var(--white)}
.lks-faq summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;font-weight:700;color:var(--ink);cursor:pointer;list-style:none}
.lks-faq summary::-webkit-details-marker{display:none}
.lks-faq details[open] summary svg{transform:rotate(180deg)}
.lks-faq details>div{padding:0 20px 18px}

.lks-map{position:relative;aspect-ratio:16/9;border-radius:var(--r-media);overflow:hidden;background:var(--brand-050);border:1px solid var(--line);display:grid;place-items:center;text-align:center;padding:24px}
.lks-map__ph{display:grid;gap:8px;justify-items:center}
.lks-map__ph svg{inline-size:40px;block-size:40px;color:var(--brand-700)}
.lks-map__ph b{font-size:1.25rem;color:var(--ink)}
.lks-map iframe{position:absolute;inset:0;inline-size:100%;block-size:100%;border:0}

/* reserva */
.lks-booking{position:sticky;inset-block-start:96px;background:var(--white);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--sh-card);padding:24px;display:grid;gap:20px}
@media(max-width:1020px){.lks-booking{position:static}}
.lks-booking .st-form-head-book{padding-block-end:18px;border-block-end:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:12px}
.lks-booking .st-unit{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.lks-booking .st-price-origin{flex-direction:column;align-items:flex-start;gap:2px}
.lks-booking .price{font-size:2rem;font-weight:800;color:var(--ink);line-height:1.1}
.lks-booking .st-review-score{font-size:.875rem;color:var(--ink);font-weight:700}
.lks-booking label,.lks-booking .st-form-label{font-weight:700;color:var(--ink);font-size:.875rem}
.lks-booking input[type=text],.lks-booking input[type=number],.lks-booking input[type=email],.lks-booking input[type=tel],.lks-booking select,.lks-booking textarea{inline-size:100%;min-block-size:48px;border:1.5px solid var(--line-2);border-radius:12px;padding:10px 14px;font-family:var(--ff);color:var(--ink);background:var(--white)}
.lks-booking .form-group{margin-block-end:14px}
.lks-booking .btn-primary,.lks-booking .btn-book-ajax,.lks-booking .btn-default,.lks-booking button[type=submit],.lks-booking input[type=submit]{display:inline-flex;align-items:center;justify-content:center;inline-size:100%;min-block-size:56px;border:0;border-radius:var(--r-pill);background:var(--accent);color:var(--ink);font-family:var(--ff);font-weight:800;font-size:1.0625rem;cursor:pointer;padding:0 24px;text-transform:none}
.lks-booking .btn-primary:hover,.lks-booking .btn-book-ajax:hover,.lks-booking button[type=submit]:hover{filter:brightness(.96)}
.lks-booking .total-price,.lks-booking .st-total-price{color:var(--ink);font-weight:800}
.lks-booking .st-form-book-wrapper{display:grid;gap:18px}
.lks-trust{display:grid;gap:8px;font-size:.8125rem}
.lks-trust li{display:flex;gap:10px;align-items:center}
.lks-trust svg{color:var(--brand-700)}

/* reseñas (vista de Traveler) */
.lks .st-reviews{color:var(--ink)}
.lks .st-heading-section{font-size:1.375rem;font-weight:700;color:var(--ink);margin-block-end:16px}
.lks .st-review-box-top .review-avg{gap:8px}
.lks .review-score{font-size:3rem;line-height:1;font-weight:800;color:var(--ink)}
.lks .progress{block-size:8px;border-radius:99px;background:var(--surface);overflow:hidden;flex:1;margin-inline:12px}
.lks .progress .percent{block-size:100%;background:var(--accent);border-radius:99px}
.lks .review-box .item{display:flex;align-items:center;font-size:.8125rem;font-weight:600;margin-block-end:8px}
.lks .st-reviews .comment-form input[type=text],.lks .st-reviews .comment-form input[type=email],.lks .st-reviews .comment-form textarea{inline-size:100%;border:1.5px solid var(--line-2);border-radius:12px;padding:10px 14px;font-family:var(--ff)}
.lks .st-reviews .comment-form input[type=submit]{background:var(--ink);color:var(--white);border:0;border-radius:var(--r-pill);padding:14px 28px;font-weight:700;cursor:pointer}

/* relacionados */
.lks-eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--brand-700)}
.lks-section--surface h2{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:700}
.lks-link{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--ink);text-decoration:none}
.lks-link:hover{color:var(--brand-700)}
.lks-rel{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,28px)}
@media(max-width:1000px){.lks-rel{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.lks-rel{grid-template-columns:1fr}}

/* lightbox */
.lks-lightbox{position:fixed;inset:0;z-index:100000;background:rgba(10,16,32,.92);display:grid;place-items:center;padding:24px}
.lks-lightbox[hidden]{display:none}
.lks-lightbox img{max-inline-size:min(1200px,90vw);max-block-size:86vh;border-radius:12px;object-fit:contain}
.lks-lightbox button{position:absolute;inline-size:48px;block-size:48px;border-radius:50%;border:0;background:rgba(255,255,255,.14);color:#fff;display:grid;place-items:center;cursor:pointer}
.lks-lightbox button:hover{background:rgba(255,255,255,.28)}
.lks-lightbox__close{inset-block-start:20px;inset-inline-end:20px}
.lks-lightbox__nav--prev{inset-inline-start:20px}
.lks-lightbox__nav--next{inset-inline-end:20px}
.lks-lightbox svg{inline-size:22px;block-size:22px}

/* Reserva — refinamiento visual (funcionalidad Traveler intacta) */
.lks-booking{--booking-border:rgba(28,41,73,.12);--booking-focus:rgba(93,186,158,.22);padding:clamp(20px,2.2vw,28px);gap:18px;border-color:var(--booking-border);box-shadow:0 18px 50px rgba(16,27,51,.10)}
.lks-booking .st-form-book-wrapper{display:block;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.lks-booking .form-booking-price{padding:0 0 18px!important;margin:0 0 20px;border-block-end:1px solid var(--booking-border)}
.lks-booking .form-booking-price h4{margin:0 0 12px!important;padding:0!important;text-align:start!important;color:var(--ink);font:700 1.25rem/1.25 var(--ff);letter-spacing:-.02em}
.lks-booking .st-form-head-book{padding:0!important;border:0;flex-wrap:wrap;gap:6px 14px}
.lks-booking .st-price-origin{flex-direction:column;align-items:flex-start;gap:2px}
.lks-booking .st-unit{color:var(--brand-700);font-size:.6875rem;letter-spacing:.11em}
.lks-booking .st-price-origin .st-unit{order:1;flex:none;align-self:flex-start!important}
.lks-booking .price{order:2;font-size:clamp(1.85rem,3vw,2.25rem);flex-direction:row-reverse!important;flex-wrap:wrap;align-items:baseline;gap:2px 10px}
.lks-booking .price .item{line-height:1.05}
/* Precio con descuento: el precio anterior se atenúa y se tacha; el actual manda. */
.lks-booking .price .item.onsale{font-size:.9375rem;font-weight:600;color:var(--muted);text-decoration:line-through;text-decoration-thickness:1.5px;text-decoration-color:rgba(90,100,120,.6)}
.lks-booking .price .item:not(.onsale){font-size:clamp(1.85rem,3vw,2.25rem);font-weight:800;color:var(--ink);letter-spacing:-.02em}
/* Etiqueta de descuento. Traveler la pinta como una cinta azul rotada en la esquina; aquí pasa a ser
   una píldora de marca (mismo rojo de aviso que la etiqueta «-N%» de las tarjetas). */
.lks-booking .tour-sale-box{order:3;align-self:flex-start;flex:none;margin:2px 0 0}
.lks-booking .tour-sale-box .st_sale_class,.lks-booking .st_sale_class.box_sale.sale_small{position:static!important;inset:auto!important;transform:none!important;display:inline-flex!important;align-items:center;justify-content:center;inline-size:auto!important;block-size:auto!important;min-inline-size:0!important;min-block-size:0!important;padding:5px 11px!important;border-radius:var(--r-pill)!important;background:rgba(198,58,43,.12)!important;color:var(--alert)!important;box-shadow:none!important;font:800 .75rem/1.05 var(--ff)!important;letter-spacing:.01em;text-align:center!important;white-space:nowrap;z-index:auto!important}
.lks-booking .st_sale_class.box_sale::before,.lks-booking .st_sale_class.box_sale::after{content:none!important;border:0!important}
.lks-booking .st_sale_class.box_sale::before{content:"Descuento"!important;font-weight:700;opacity:.85;margin-inline-end:5px}
.lks-booking .st-review-score{margin-inline-start:auto}
.lks-booking .st-form-booking-action,.lks-booking .st-group-form{margin:0;padding:0}
.lks-booking .form-group{margin:0 0 16px!important;padding:0!important}
.lks-booking label{display:block;margin:0 0 7px;font-size:.8125rem;line-height:1.25}
.lks-booking .date-wrapper,.lks-booking .starttime_box select{inline-size:100%;min-block-size:52px;border:1.5px solid var(--booking-border)!important;border-radius:14px!important;background:#fff!important;color:var(--ink);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.lks-booking .date-wrapper{padding:9px 14px;cursor:pointer}
.lks-booking .date-wrapper:hover,.lks-booking .starttime_box select:hover{border-color:rgba(44,120,97,.45)!important}
.lks-booking .date-wrapper:focus-within,.lks-booking .starttime_box select:focus{outline:0;border-color:var(--brand-700)!important;box-shadow:0 0 0 4px var(--booking-focus)}
.lks-booking .date-wrapper .check-in-wrapper{display:grid;gap:2px}
.lks-booking .date-wrapper label{margin:0;color:var(--muted);font-size:.72rem}
.lks-booking .date-wrapper .render{color:var(--ink);font-weight:700;line-height:1.25}
.lks-booking .date-wrapper i{color:var(--brand-700)}
/* Inputs auxiliares: activos para el calendario, ocultos visualmente. */
.lks-booking .form-date-field>.check-in-input,.lks-booking .form-date-field>.check-in-out-input{position:absolute!important;inline-size:1px!important;block-size:1px!important;min-block-size:0!important;padding:0!important;margin:0!important;border:0!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important}
.lks-booking .starttime_box{display:block}
.lks-booking .starttime_box select{appearance:auto;padding:0 14px!important;font:600 .9375rem/1.2 var(--ff)}
.lks-booking .form-guest-search{padding:14px 0 4px;border-block-start:1px solid var(--booking-border)}
.lks-booking .guest-wrapper{gap:16px}
.lks-booking .guest-wrapper label{margin:0 0 2px}
.lks-booking .guest-wrapper .render{color:var(--muted);font-size:.875rem}
.lks-booking .st-number-wrapper{gap:7px}
.lks-booking .st-number-wrapper .prev,.lks-booking .st-number-wrapper .next{display:grid;place-items:center;inline-size:44px;block-size:44px;flex:0 0 44px;border:1.5px solid var(--booking-border);border-radius:50%;background:#fff;color:var(--ink);cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease}
.lks-booking .st-number-wrapper .prev:hover,.lks-booking .st-number-wrapper .next:hover{background:var(--brand-050);border-color:var(--brand)}
.lks-booking .st-number-wrapper .prev:active,.lks-booking .st-number-wrapper .next:active{transform:scale(.96)}
.lks-booking .st-number-wrapper input.st-input-number{inline-size:36px!important;min-block-size:44px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;text-align:center;font-weight:800;font-size:1rem}
.lks-booking .submit-group{margin-block-start:18px}
.lks-booking .btn-primary,.lks-booking .btn-book-ajax,.lks-booking button[type=submit]{min-block-size:54px;border-radius:14px;box-shadow:0 10px 22px rgba(248,179,63,.26);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
.lks-booking .btn-primary:hover,.lks-booking .btn-book-ajax:hover,.lks-booking button[type=submit]:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(248,179,63,.32)}
.lks-booking .btn-primary:focus-visible,.lks-booking .btn-book-ajax:focus-visible,.lks-booking button[type=submit]:focus-visible{outline:3px solid rgba(44,120,97,.32);outline-offset:3px}
.lks-trust{gap:10px;padding-block-start:2px;color:var(--muted)}
.lks-trust li{line-height:1.35}
@media(max-width:1020px){.lks-booking{max-inline-size:640px;margin-inline:auto}}
@media(max-width:520px){.lks-booking{padding:18px;border-radius:16px}.lks-booking .guest-wrapper{align-items:center}.lks-booking .st-number-wrapper .prev,.lks-booking .st-number-wrapper .next{inline-size:42px;block-size:42px;flex-basis:42px}}
@media(prefers-reduced-motion:reduce){.lks-booking *,.lks-booking *::before,.lks-booking *::after{transition-duration:.01ms!important;animation-duration:.01ms!important}}



/* Ajustes finales del formulario de reserva. */
.lks-booking .form-guest-search{padding:14px 0 4px!important}
.lks-booking .lks-whatsapp-booking{display:inline-flex;align-items:center;justify-content:center;inline-size:100%;min-block-size:52px;margin-block-start:10px;padding:0 22px;border:1.5px solid var(--brand-700);border-radius:14px;background:#fff;color:var(--brand-700)!important;font:800 1rem/1.2 var(--ff);text-align:center;text-decoration:none!important;transition:background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}
.lks-booking .lks-whatsapp-booking:hover{background:var(--brand-050);color:var(--brand-700)!important;transform:translateY(-1px);box-shadow:0 10px 22px rgba(44,120,97,.14)}
.lks-booking .lks-whatsapp-booking:focus-visible{outline:3px solid rgba(44,120,97,.32);outline-offset:3px}


/* Estados visuales finales de los botones de reserva. */
.lks-booking .btn-primary,.lks-booking .btn-book-ajax,.lks-booking button[type=submit],.lks-booking .btn-primary:hover,.lks-booking .btn-book-ajax:hover,.lks-booking button[type=submit]:hover{box-shadow:none!important}
.lks-booking .lks-whatsapp-booking:hover{background:var(--brand-700)!important;border-color:var(--brand-700)!important;color:#fff!important;box-shadow:none!important}


/* Calendario de reserva — estilo Like Xplorer. */
body.single-st_tours .daterangepicker.dropdown-menu{
  width:min(360px,calc(100vw - 32px))!important;
  max-width:360px!important;
  margin-top:10px!important;
  padding:16px!important;
  border:1px solid rgba(28,41,73,.12)!important;
  border-radius:18px!important;
  background:#fff!important;
  color:#1c2949!important;
  font-family:"Onest",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  box-shadow:0 18px 48px rgba(16,27,51,.16)!important;
  overflow:hidden;
  z-index:1100!important;
}
body.single-st_tours .daterangepicker::before{border-bottom-color:rgba(28,41,73,.12)!important}
body.single-st_tours .daterangepicker::after{border-bottom-color:#fff!important}
body.single-st_tours .daterangepicker .calendar{width:100%!important;max-width:none!important;margin:0!important}
body.single-st_tours .daterangepicker .calendar-table{padding:0!important;border:0!important;background:#fff!important}
body.single-st_tours .daterangepicker .table-header{display:grid!important;grid-template-columns:44px 1fr 44px;align-items:center;min-height:52px;padding-bottom:12px;border-bottom:1px solid rgba(28,41,73,.10)}
body.single-st_tours .daterangepicker .table-header .month{color:#1c2949!important;font-size:1rem!important;font-weight:800!important;text-align:center}
body.single-st_tours .daterangepicker .table-header .prev,
body.single-st_tours .daterangepicker .table-header .next{width:44px!important;height:44px!important;display:grid!important;place-items:center;border-radius:12px!important;color:#2c7861!important;transition:background-color .2s ease}
body.single-st_tours .daterangepicker .table-header .prev:hover,
body.single-st_tours .daterangepicker .table-header .next:hover{background:#e8f5f0!important}
body.single-st_tours .daterangepicker .table-sub-header{display:grid!important;grid-template-columns:repeat(7,1fr);gap:4px;padding:12px 0 8px;color:#5a6478!important;font-size:.78rem!important;font-weight:750!important}
body.single-st_tours .daterangepicker .day-off-week{text-align:center!important}
body.single-st_tours .daterangepicker table{width:100%!important;table-layout:fixed;border-collapse:separate!important;border-spacing:4px!important}
body.single-st_tours .daterangepicker td{height:40px!important;padding:0!important;border:0!important;background:transparent!important;border-radius:10px!important;text-align:center!important}
body.single-st_tours .daterangepicker td .date{width:40px!important;height:40px!important;margin:auto!important;display:grid!important;place-items:center;border-radius:10px!important;color:#1c2949!important;font-weight:650!important;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease}
body.single-st_tours .daterangepicker td.available:not(.active):hover .date{background:#e8f5f0!important;color:#2c7861!important}
body.single-st_tours .daterangepicker td.active,
body.single-st_tours .daterangepicker td.active:hover{background:transparent!important}
body.single-st_tours .daterangepicker td.active .date,
body.single-st_tours .daterangepicker td.active:hover .date{background:#2c7861!important;color:#fff!important;box-shadow:0 6px 16px rgba(44,120,97,.25)!important}
body.single-st_tours .daterangepicker td.today:not(.active) .date{color:#2c7861!important;box-shadow:inset 0 0 0 1.5px #5dba9e!important}
body.single-st_tours .daterangepicker td.off .date,
body.single-st_tours .daterangepicker td.disabled .date{background:transparent!important;color:#aab4c2!important;text-decoration:none!important;box-shadow:none!important}
body.single-st_tours .daterangepicker td.disabled{cursor:not-allowed!important}
@media(max-width:520px){
  body.single-st_tours .daterangepicker.dropdown-menu{width:calc(100vw - 24px)!important;padding:12px!important;border-radius:16px!important}
  body.single-st_tours .daterangepicker table{border-spacing:2px!important}
  body.single-st_tours .daterangepicker td,
  body.single-st_tours .daterangepicker td .date{width:38px!important;height:38px!important}
}
