/* Tickets Costa del Sol · V24.0.0 · botones para móvil en toda la web pública
   1) .btn-afiliacion  → botón de reserva (CTA de afiliación): 48 px de alto, negrita, icono opcional, rebote al pulsar
   2) .btn-dia         → botón de «salto de día» de los itinerarios (botonera deslizable con sombra)
   3) .barra-reserva   → barra fija inferior en el móvil con texto corto y botón de reserva */
/* 24.33.3: sin colores fijos en :root; antes pisaban el color «Botón de reserva» de Diseño (se cargaba después). Los valores de reserva van en cada var(). */
a.btn-afiliacion,button.btn-afiliacion,.btn-afiliacion{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:.7rem 1.25rem;border-radius:999px;
  background:linear-gradient(180deg,var(--btn-cta-2,#ff8a3d),var(--btn-cta,#f26a1b))!important;color:var(--btn-cta-ink,#fff)!important;font-weight:700;font-size:1rem;line-height:1.15;text-align:center;
  text-decoration:none!important;border:0;box-shadow:0 6px 16px rgba(242,106,27,.28);cursor:pointer;transition:filter .15s ease,transform .1s ease;-webkit-tap-highlight-color:transparent;max-width:100%}
.btn-afiliacion:hover{filter:brightness(1.07)}
.btn-afiliacion:active{transform:scale(.98)}
.btn-afiliacion:focus-visible{outline:3px solid #12324a;outline-offset:3px}
.btn-afiliacion svg,.btn-afiliacion .f24-ico{width:1.15em;height:1.15em;flex:0 0 auto}
.prose p>.btn-afiliacion:only-child{margin:.2rem 0}
.btn-dias{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:6px 0;-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}
.btn-dias::-webkit-scrollbar{display:none}
.btn-dia{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:48px;padding:.45rem 1rem;border-radius:12px;border:1px solid #e3e9ee;background:#fff;color:#12324a;font-weight:700;text-decoration:none;transition:transform .1s}
.btn-dia:active{transform:scale(.98)}
.btn-dia.is-on{background:var(--t-primary,#0f766e);border-color:var(--t-primary,#0f766e);color:#fff}
.barra-reserva{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #e3e9ee;box-shadow:0 -8px 24px rgba(18,50,74,.12)}
@media (min-width:861px){.barra-reserva{display:none}}
@media (prefers-reduced-motion:reduce){.btn-afiliacion,.btn-dia{transition:none}}
/* Widgets de Travelpayouts ([[tpw:…]]) */
.tpw{position:relative;margin:1.2rem 0;border-radius:12px;max-width:100%;overflow-x:auto}
.tpw-wait{position:absolute;inset:0;display:grid;place-items:center;color:#64748b;font-size:.9rem;background:#f4f8fb;border:1px dashed #d5dee6;border-radius:12px}
/* Menú lateral en el móvil: pestaña plegable (Configuración › Apariencia › «Menú lateral en el móvil») */
.lm-toggle{display:none}
@media (max-width:860px){
  .public-left-menu.lm-tab{padding:0!important;overflow:hidden}
  .public-left-menu.lm-tab>.lm-toggle{display:flex;align-items:center;gap:.6rem;width:100%;min-height:48px;padding:.7rem 1rem;border:0;border-radius:inherit;background:var(--card,#fff)!important;color:var(--ink,#12324a)!important;font-weight:700;text-align:left;cursor:pointer}
  .public-left-menu.lm-tab>.lm-toggle small{font-weight:500;color:#64748b;margin-left:auto}
  .public-left-menu.lm-tab>.lm-toggle i{font-style:normal;transition:transform .2s}
  .public-left-menu.lm-tab.is-open>.lm-toggle i{transform:rotate(180deg)}
  .public-left-menu.lm-tab:not(.is-open)>:not(.lm-toggle){display:none!important}
  .public-left-menu.lm-tab.is-open{padding-bottom:.6rem!important}
  .public-left-menu.lm-tab.is-open>:not(.lm-toggle){margin-inline:1rem}
  body[data-mside="hidden"] .public-left-menu{display:none!important}
}
@media (max-width:860px){.public-left-menu.lm-tab>strong{display:none!important}}
/* Colores corporativos (Configuración › Apariencia): enlaces dentro de los textos */
.prose a:not(.btn-afiliacion):not(.button):not([class*="aff-"]){color:var(--t-link,inherit)}
.brand.has-logo{display:inline-flex;align-items:center;gap:.6rem}.brand.has-logo .brand-logo{display:block;max-width:220px;object-fit:contain}
