:root{--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--leading-tight:1.2;--leading-normal:1.5;--leading-relaxed:1.65;--touch-min:44px;--touch-comfort:48px;--touch-large:56px;--input-h:48px;--input-h-sm:40px;--gap-tap:8px;--z-base:0;--z-sticky:50;--z-header:100;--z-overlay:200;--z-drawer:300;--z-modal:400;--z-toast:500;--duration-fast:150ms;--duration-base:250ms;--duration-slow:400ms;--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-spring:cubic-bezier(0.34,1.56,0.64,1);--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--sticky-cta-h:64px;--sticky-cta-total:calc(var(--sticky-cta-h) + var(--safe-bottom));--card-padding-sm:1rem;--card-padding-md:1.25rem;--card-padding-lg:1.5rem}.route-card{position:relative;background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-lg);padding:1rem 4rem 1rem 1.25rem;margin-bottom:1rem;transition:border-color var(--duration-fast),box-shadow var(--duration-fast);overflow:visible}.route-card .autocomplete-dropdown{position:absolute !important;inset-inline-start:0 !important;inset-inline-end:0 !important;top:auto !important;width:auto !important;min-width:0 !important;max-width:none !important;background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:var(--z-overlay,200);margin-top:0.5rem;max-height:320px;overflow-y:auto;-webkit-overflow-scrolling:touch}.route-card .route-row:first-of-type .autocomplete-dropdown{top:calc(100% + 8px) !important}.route-card .route-row:last-of-type .autocomplete-dropdown{top:calc(100% + 8px) !important}.route-card .route-input-wrap{position:static !important}.route-card:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px rgba(196,103,76,0.1)}.route-row{display:flex;align-items:center;gap:0.875rem;position:relative}.route-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0;position:relative;z-index:1}.route-dot-from{background:#5B8C5A;box-shadow:0 0 0 4px rgba(91,140,90,0.15)}.route-dot-to{background:var(--color-accent);box-shadow:0 0 0 4px rgba(196,103,76,0.18)}.route-input-wrap{flex:1;min-width:0;position:relative}.route-label{display:block !important;font-size:0.6875rem !important;font-weight:700 !important;text-transform:uppercase;letter-spacing:0.08em !important;color:var(--color-text-muted) !important;margin:0 0 0.125rem !important}.route-input{width:100%;border:none !important;background:transparent !important;font-size:0.9375rem !important;font-weight:500;color:var(--color-primary);padding:0 !important;outline:none;min-height:auto !important}.route-input::placeholder{color:var(--color-text-muted);font-weight:400;opacity:1}.route-divider{height:1px;background:var(--color-border);margin:0.875rem 0 0.875rem 26px;position:relative}.route-divider::before{content:"";position:absolute;inset-inline-start:-20px;top:-12px;width:0;height:24px;border-inline-start:2px dotted var(--color-border-strong)}.route-swap{position:absolute;top:50%;inset-inline-end:0.875rem;transform:translateY(-50%);width:36px;height:36px;border-radius:50%;background:var(--color-bg-warm);border:1.5px solid var(--color-border);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-primary);transition:all var(--duration-base) var(--ease-out);z-index:2}.route-swap:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.route-swap.is-rotating{transform:translateY(-50%) rotate(180deg)}.datetime-grid{display:grid;grid-template-columns:1fr 1fr;gap:0.75rem;margin-bottom:1rem}.dt-field{display:flex;flex-direction:column;gap:0.375rem}.dt-field label{display:flex !important;align-items:center;gap:0.375rem;font-size:0.6875rem !important;text-transform:uppercase;letter-spacing:0.08em !important;color:var(--color-text-muted) !important;font-weight:700 !important;margin:0 !important}.dt-field label svg{color:var(--color-accent)}.dt-field input{width:100%;padding:0.75rem 0.875rem;border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);font-size:0.9375rem;font-weight:500;color:var(--color-primary);font-family:var(--font-body);outline:none;transition:border-color var(--duration-fast);min-height:48px}.dt-field input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px rgba(196,103,76,0.1)}.counter-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0.75rem;margin-bottom:1rem;width:100%}.counter-field{background:var(--color-bg-warm);border:1px solid transparent;border-radius:var(--radius-md);padding:0.875rem 1rem;display:flex;flex-direction:column;gap:0.625rem;transition:border-color var(--duration-fast);min-width:0;overflow:hidden}.counter-field:hover{border-color:var(--color-border-strong)}.counter-label{display:flex;flex-direction:column;gap:0.0625rem}.counter-label strong{font-size:0.875rem;color:var(--color-primary);font-weight:700;line-height:1.2}.counter-label small{font-size:0.6875rem;color:var(--color-text-muted);line-height:1.2}.counter{display:flex;align-items:center;justify-content:space-between;gap:0.375rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-full);padding:0.25rem}.counter-btn{width:32px;height:32px;border-radius:50%;border:1.5px solid var(--color-border);background:var(--color-surface);cursor:pointer;font-size:1.125rem;font-weight:700;color:var(--color-primary);display:flex;align-items:center;justify-content:center;transition:all var(--duration-fast);flex-shrink:0;line-height:1;padding:0}.counter-btn:hover:not(:disabled){background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.counter-btn:active:not(:disabled){transform:scale(0.92)}.counter-btn:disabled{opacity:0.35;cursor:not-allowed}.counter-value-wrap{flex:1;min-width:0;display:flex;align-items:baseline;justify-content:center;gap:0.25rem;padding:0 0.25rem}.counter-value{width:auto !important;min-width:18px;max-width:60%;text-align:end;border:none !important;background:transparent !important;font-size:1rem !important;font-weight:700 !important;color:var(--color-primary);outline:none;pointer-events:none;min-height:auto !important;padding:0 !important;font-family:var(--font-display);white-space:nowrap;overflow:hidden}.counter-suffix{font-size:0.6875rem;font-weight:600;color:var(--color-text-muted);text-transform:lowercase;letter-spacing:0.02em;white-space:nowrap}.rt-toggle{display:flex !important;align-items:center;gap:0.875rem;background:var(--color-bg-warm);border:1px solid transparent;border-radius:var(--radius-md);padding:0.875rem 1rem;cursor:pointer;margin-bottom:1rem;transition:border-color var(--duration-fast);text-transform:none !important;letter-spacing:0 !important;font-weight:500 !important;color:var(--color-text) !important;position:relative}.rt-toggle:hover{border-color:var(--color-border-strong)}.rt-toggle input[type="checkbox"]{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.rt-toggle-track{position:relative;width:44px;height:24px;background:var(--color-border-strong);border-radius:999px;transition:background var(--duration-fast);flex-shrink:0;display:inline-block}.rt-toggle-thumb{position:absolute;top:2px;inset-inline-start:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform var(--duration-base) var(--ease-out);box-shadow:0 1px 3px rgba(0,0,0,0.2)}.rt-toggle input:checked~.rt-toggle-track{background:var(--color-accent)}.rt-toggle input:checked~.rt-toggle-track .rt-toggle-thumb{transform:translateX(20px)}.rt-toggle-text{flex:1;display:flex !important;flex-direction:column;gap:0.125rem;min-width:0}.rt-toggle-text strong{font-size:0.9375rem;color:var(--color-primary);font-weight:600;line-height:1.2}.rt-toggle-sub{font-size:0.75rem;color:var(--color-text-muted);line-height:1.3}.rt-toggle-badge{background:#5B8C5A;color:#fff;font-size:0.625rem;padding:0.25rem 0.5rem;border-radius:999px;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;flex-shrink:0;white-space:nowrap}@media (max-width:768px){.route-card{padding:0.875rem 3.25rem 0.875rem 1rem}.route-swap{inset-inline-end:0.625rem;width:32px;height:32px}.route-input{font-size:16px !important}.dt-field input{font-size:16px !important}.datetime-grid,.counter-grid{gap:0.5rem}.counter-field{padding:0.625rem 0.5rem;gap:0.5rem}.counter-btn{width:28px;height:28px;font-size:0.9375rem;flex-shrink:0}.counter{padding:0.1875rem;gap:0.25rem}.counter-value{font-size:0.8125rem !important;min-width:0}.rt-toggle{padding:0.75rem 0.875rem;gap:0.625rem;flex-wrap:wrap}.rt-toggle-text strong{font-size:0.875rem}.rt-toggle-sub{font-size:0.6875rem}}@media (max-width:480px){.counter-label small{display:none}.counter-label strong{font-size:0.8125rem}.counter-btn{width:26px;height:26px;font-size:0.875rem}.counter-value{font-size:0.75rem !important}}@media (max-width:380px){.rt-toggle-sub{display:none}.rt-toggle-badge{font-size:0.5625rem;padding:0.1875rem 0.4375rem}}@media (max-width:360px){.counter-grid{grid-template-columns:1fr}.counter-value{font-size:0.875rem !important}.counter-btn{width:32px;height:32px}}.booking-stepper{flex-wrap:nowrap !important;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;gap:clamp(0.25rem,1.5vw,0.5rem) !important;justify-content:flex-start !important;padding-inline:0.5rem}.booking-stepper::-webkit-scrollbar{display:none}.booking-step-pill{flex:0 0 auto;padding:clamp(0.3rem,0.9vw,0.625rem) clamp(0.5rem,1.6vw,1rem) !important;font-size:clamp(0.6875rem,1.2vw,0.875rem) !important;gap:clamp(0.25rem,0.6vw,0.5rem) !important;white-space:nowrap}.booking-step-pill .num{width:clamp(16px,1.8vw,24px) !important;height:clamp(16px,1.8vw,24px) !important;font-size:clamp(0.5625rem,0.9vw,0.75rem) !important}.booking-step-sep{flex:0 0 auto;width:clamp(6px,1.4vw,24px) !important;min-width:6px}@media (max-width:768px){.btn,.btn-link,.nav a,.lang-switcher a,.header-lang-btn,.mobile-menu nav a,.blog-card-readmore,.footer a{min-height:var(--touch-min)}.btn-lg{min-height:var(--touch-large)}input,select,textarea{min-height:var(--input-h);font-size:var(--text-base)}}.sticky-cta{position:fixed;inset-inline:0;bottom:0;z-index:var(--z-sticky);display:none;align-items:center;justify-content:space-between;gap:1rem;padding:0.75rem 1rem;padding-bottom:calc(0.75rem + var(--safe-bottom));background:var(--color-surface);border-top:1px solid var(--color-border);box-shadow:0 -4px 16px rgba(14,42,71,0.08);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.sticky-cta-info{display:flex;flex-direction:column;gap:0.125rem;flex:1;min-width:0}.sticky-cta-label{font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:0.06em;font-weight:600}.sticky-cta-price{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-primary);font-weight:700;letter-spacing:-0.01em}.sticky-cta-price small{font-size:var(--text-xs);color:var(--color-text-muted);font-weight:500}.sticky-cta .btn{flex-shrink:0;min-height:var(--touch-large);padding:0 1.5rem;font-size:var(--text-sm)}@media (max-width:768px){.sticky-cta{display:flex}body.has-sticky-cta{padding-bottom:var(--sticky-cta-total)}body.has-sticky-cta .whatsapp-float{bottom:calc(var(--sticky-cta-total) + 1rem)}}.bottom-sheet-backdrop{position:fixed;inset:0;z-index:var(--z-overlay);background:rgba(14,42,71,0.5);opacity:0;pointer-events:none;transition:opacity var(--duration-base) var(--ease-out)}.bottom-sheet-backdrop[aria-hidden="false"]{opacity:1;pointer-events:auto}.bottom-sheet{position:fixed;inset-inline:0;bottom:0;z-index:var(--z-drawer);background:var(--color-surface);border-radius:1.25rem 1.25rem 0 0;box-shadow:0 -8px 32px rgba(14,42,71,0.16);transform:translateY(100%);transition:transform var(--duration-base) var(--ease-out);max-height:85vh;max-height:85dvh;display:flex;flex-direction:column;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 1.5rem + 56px)}.bottom-sheet[aria-hidden="false"]{transform:translateY(0)}.bottom-sheet-handle{width:36px;height:4px;background:var(--color-border-strong);border-radius:999px;margin:0.625rem auto 0.5rem;flex-shrink:0}.bottom-sheet-header{display:flex;align-items:center;justify-content:space-between;padding:0.5rem 1.25rem 0.75rem;border-bottom:1px solid var(--color-border);flex-shrink:0}.bottom-sheet-header h3{font-family:var(--font-display);font-size:var(--text-lg);color:var(--color-primary);margin:0;font-weight:700}.bottom-sheet-close{width:var(--touch-min);height:var(--touch-min);border:none;background:var(--color-bg-warm);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text)}.bottom-sheet-body{flex:1;overflow-y:auto;padding:1rem 1.25rem;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.bottom-sheet-footer{padding:0.875rem 1.25rem;padding-bottom:calc(0.875rem + var(--safe-bottom));border-top:1px solid var(--color-border);display:flex;gap:0.5rem;flex-shrink:0}.bottom-sheet-footer .btn{flex:1}.toast-container{position:fixed;inset-inline:0;bottom:var(--sticky-cta-total);z-index:var(--z-toast);display:flex;flex-direction:column;align-items:center;gap:0.5rem;pointer-events:none;padding:1rem}.toast{background:var(--color-primary);color:#fff;padding:0.75rem 1.25rem;border-radius:999px;font-size:var(--text-sm);font-weight:500;box-shadow:var(--shadow-lg);pointer-events:auto;display:flex;align-items:center;gap:0.5rem;max-width:calc(100vw - 2rem);animation:toast-in var(--duration-base) var(--ease-spring)}.toast.toast-success{background:#5B8C5A}.toast.toast-error{background:#B14242}.toast.toast-warning{background:#D4944C;color:var(--color-primary)}.toast.is-leaving{animation:toast-out var(--duration-base) var(--ease-out) forwards}@keyframes toast-in{from{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes toast-out{to{transform:translateY(100%);opacity:0}}.skeleton{background:linear-gradient(90deg,var(--color-bg-warm) 0%,var(--color-border) 40%,var(--color-bg-warm) 80%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite;border-radius:var(--radius-md);display:block}.skeleton-text{height:1em;margin-bottom:0.5em}.skeleton-text-lg{height:1.5em}.skeleton-img{aspect-ratio:16/9;width:100%}.skeleton-circle{border-radius:50%}@keyframes skeleton-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}.empty-state{text-align:center;padding:3rem 1.5rem;color:var(--color-text-secondary)}.empty-state-icon{width:96px;height:96px;margin:0 auto 1rem;background:var(--color-bg-warm);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2.5rem;color:var(--color-accent)}.empty-state h3{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-primary);margin:0 0 0.5rem}.empty-state p{font-size:var(--text-sm);margin:0 0 1.5rem;max-width:320px;margin-inline:auto}.wishlist-toggle{position:absolute;top:0.75rem;inset-inline-end:0.75rem;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,0.92);backdrop-filter:blur(8px);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform var(--duration-fast) var(--ease-spring),background var(--duration-fast);z-index:2}.wishlist-toggle:hover{transform:scale(1.05)}.wishlist-toggle:active{transform:scale(0.95)}.wishlist-toggle svg{width:20px;height:20px;stroke:var(--color-primary);fill:none;stroke-width:2;transition:fill var(--duration-fast),stroke var(--duration-fast)}.wishlist-toggle.is-saved svg{fill:var(--color-accent);stroke:var(--color-accent)}.wishlist-toggle.is-saved{animation:wishlist-pop var(--duration-base) var(--ease-spring)}@keyframes wishlist-pop{0%{transform:scale(1)}50%{transform:scale(1.25)}100%{transform:scale(1)}}@keyframes slide-up{from{transform:translateY(120%);opacity:0}to{transform:translateY(0);opacity:1}}.mobile-menu-lang{margin-top:auto;padding:1rem 1.5rem;border-top:1px solid var(--color-border);background:var(--color-bg-warm)}.mobile-menu-lang-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:0.08em;color:var(--color-text-muted);font-weight:700;margin-bottom:0.625rem}.mobile-menu-lang-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:0.5rem}.mobile-menu-lang-btn{background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);padding:0.625rem 0.25rem;text-align:center;font-size:var(--text-xs);font-weight:600;cursor:pointer;min-height:var(--touch-min);display:flex;flex-direction:column;align-items:center;gap:0.25rem;transition:all var(--duration-fast);text-decoration:none;color:var(--color-text)}.mobile-menu-lang-btn.active{border-color:var(--color-accent);background:var(--color-accent);color:#fff}.mobile-menu-lang-btn span:first-child{font-size:1.25rem}.scroll-affordance{position:relative}.scroll-affordance::after{content:"";position:absolute;top:0;bottom:0;inset-inline-end:0;width:32px;background:linear-gradient(to left,var(--color-bg) 0%,transparent 100%);pointer-events:none;z-index:1}.scroll-affordance.is-end::after{display:none}[dir="rtl"] .scroll-affordance::after{background:linear-gradient(to right,var(--color-bg) 0%,transparent 100%)}@media (max-width:768px){.page-hero{padding:var(--space-5) 0 var(--space-4) !important;background:var(--color-bg) !important;color:var(--color-text) !important}.page-hero::after{display:none}.page-hero h1{color:var(--color-primary) !important;font-size:clamp(1.5rem,5vw,2rem) !important;line-height:1.15 !important;margin-bottom:0.5rem !important}.page-hero h1 .italic{color:var(--color-accent) !important}.page-hero p{color:var(--color-text-secondary) !important;font-size:var(--text-sm) !important;line-height:var(--leading-normal) !important}.page-hero .breadcrumb{color:var(--color-text-muted) !important}.page-hero .breadcrumb a{color:var(--color-text-muted) !important}.page-hero .eyebrow{color:var(--color-accent) !important}.tour-detail-hero{grid-template-columns:none !important;display:flex !important;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;aspect-ratio:auto !important;gap:var(--space-3);padding:0 var(--space-4);margin:0 calc(-1 * var(--space-5)) var(--space-5);scrollbar-width:none}.tour-detail-hero::-webkit-scrollbar{display:none}.tour-detail-hero-main{flex:0 0 92%;scroll-snap-align:start;aspect-ratio:4/3;border-radius:var(--radius-lg);overflow:hidden}.tour-detail-hero-side{display:contents !important}.tour-detail-hero-side>div{flex:0 0 92%;scroll-snap-align:start;aspect-ratio:4/3;border-radius:var(--radius-lg);overflow:hidden}.tour-detail-hero img{width:100%;height:100%;object-fit:cover}.tour-detail .two-col{grid-template-columns:1fr !important;gap:var(--space-5)}.tour-detail aside .sidebar-card{position:static !important;top:auto !important}.tour-detail .section{padding-top:var(--space-3) !important}}@media (max-width:768px){.booking-page .booking-layout{display:flex !important;flex-direction:column !important;gap:var(--space-4) !important;grid-template-columns:none !important}.booking-page .booking-layout>aside{order:-1;position:sticky;top:0;z-index:var(--z-sticky);margin:0 calc(-1 * var(--space-5))}.booking-page .booking-summary{border-radius:0 !important;border-inline:none !important;border-top:none !important;box-shadow:0 4px 12px rgba(14,42,71,0.06) !important;padding:0.75rem 1rem !important;background:var(--color-surface)}.booking-page .booking-summary h3{font-size:var(--text-xs) !important;text-transform:uppercase;letter-spacing:0.08em;color:var(--color-text-muted);font-weight:700;margin:0 0 0.375rem !important;font-family:inherit !important;display:none !important}.booking-page .booking-summary{display:flex;flex-direction:column;gap:0}.booking-page .booking-summary .summary-line{display:flex !important;justify-content:space-between;align-items:center;gap:0.75rem;font-size:0.8125rem;line-height:1.3;padding:0.3125rem 0 !important;border-bottom:1px solid var(--color-border);margin:0 !important}.booking-page .booking-summary .summary-line:last-of-type{border-bottom:none}.booking-page .booking-summary .summary-line span:first-child{color:var(--color-text-muted);font-weight:500}.booking-page .booking-summary .summary-line span:last-child{color:var(--color-primary);font-weight:600;text-align:end}.booking-page .booking-summary .summary-total{order:-1;display:flex !important;align-items:center;justify-content:space-between;gap:0.75rem;border:none !important;border-bottom:2px solid var(--color-border-strong) !important;padding:0 0 0.5rem !important;margin:0 0 0.375rem !important;cursor:default}.booking-page .booking-summary .summary-total::after{display:none !important}.booking-page .booking-summary .summary-total span{flex:1;font-size:var(--text-xs);font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:0.08em}.booking-page .booking-summary .summary-total strong{font-family:var(--font-display);font-size:1.375rem;color:var(--color-primary);font-weight:700;letter-spacing:-0.01em}.booking-page .booking-summary .summary-mini-route{display:none !important}.booking-page .booking-summary>div[style*="margin-top:1rem"]{display:block !important;margin-top:0.5rem !important;padding-top:0.5rem;border-top:1px dashed var(--color-border);font-size:0.6875rem !important;line-height:1.5 !important;color:var(--color-text-muted) !important}.booking-page .booking-summary>div[style*="margin-top:1rem"] p{margin:0 0 0.125rem !important}.booking-page .booking-stepper{margin:0 calc(-1 * var(--space-5)) var(--space-4) !important;padding:0.5rem var(--space-4) !important;background:var(--color-bg-warm);border-bottom:1px solid var(--color-border);overflow-x:auto;flex-wrap:nowrap !important;gap:0.25rem !important;scrollbar-width:none;scroll-snap-type:x mandatory;scroll-padding-inline:var(--space-4)}.booking-page .booking-stepper::-webkit-scrollbar{display:none}.booking-page .booking-step-pill{flex:0 0 auto;font-size:0.6875rem !important;padding:0.25rem 0.5rem !important;min-height:28px !important;white-space:nowrap;gap:0.3125rem !important;scroll-snap-align:center}.booking-page .booking-step-pill .num{font-size:0.5625rem !important;width:16px !important;height:16px !important}.booking-page .booking-step-sep{flex-shrink:0;min-width:8px !important;width:8px !important}.booking-page .booking-step{margin-bottom:0 !important}.booking-page .booking-card{padding:var(--space-4) !important;border-radius:var(--radius-md) !important}.booking-page .booking-card h2{font-size:var(--text-xl) !important;margin-bottom:0.375rem !important}.booking-page .booking-card .sub{font-size:var(--text-sm) !important;margin-bottom:1rem !important}.booking-page .field-grid.cols-2,.booking-page .field-grid.cols-3{grid-template-columns:1fr !important;gap:0.75rem !important}.booking-page .booking-actions{position:sticky;bottom:0;z-index:var(--z-sticky);margin:0 calc(-1 * var(--space-5)) !important;padding:0.75rem 1rem !important;padding-bottom:calc(0.75rem + var(--safe-bottom)) !important;background:var(--color-surface);border-top:1px solid var(--color-border);box-shadow:0 -4px 12px rgba(14,42,71,0.06)}.booking-page .booking-actions .btn{flex:1;min-height:var(--touch-large)}}@media (max-width:768px){body:not(.show-low-priority) [data-mobile-priority="low"]{display:none !important}[data-mobile-priority="low"]{content-visibility:auto;contain-intrinsic-size:600px}.mobile-show-more{display:block;text-align:center;margin:var(--space-6) auto;padding:0.875rem 1.5rem;background:var(--color-surface);border:1.5px solid var(--color-border-strong);border-radius:999px;font-family:var(--font-display);font-size:var(--text-sm);font-weight:700;color:var(--color-primary);cursor:pointer;min-height:var(--touch-large);width:calc(100% - var(--space-8));max-width:320px}.mobile-show-more:hover{background:var(--color-bg-warm);border-color:var(--color-accent)}body.show-low-priority .mobile-show-more{display:none}.mobile-show-more::before{content:"▾ ";margin-inline-end:0.375rem;color:var(--color-accent)}}@media (min-width:769px){.mobile-show-more{display:none !important}}@media (max-width:768px){.promo-banner-section{padding:0.5rem 0 0}.promo-banner{border-radius:12px}.promo-banner-bg{grid-template-columns:1fr;padding:0.875rem 1rem 1rem;gap:0.5rem;text-align:start}.promo-banner-content{align-items:flex-start;gap:0.375rem;max-width:100%}.promo-banner-eyebrow{align-self:flex-start;font-size:0.625rem;padding:0.1875rem 0.5rem}.promo-banner-visual{display:none !important}.promo-discount-circle{display:none !important}.promo-banner-title{font-size:1.0625rem;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.promo-banner-desc{font-size:0.8125rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.promo-banner-desc strong{background:var(--color-accent);color:#fff;padding:0.125rem 0.4375rem;border-radius:4px;font-family:'Courier New',monospace;font-size:0.75rem;font-weight:700;letter-spacing:0.04em;margin-inline-end:0.25rem}.promo-banner-actions{flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;gap:0.75rem;margin-top:0.375rem}.promo-banner-btn-primary{font-size:0.8125rem;padding:0.5rem 1rem;flex-shrink:0}.promo-banner-btn-secondary{font-size:0.8125rem;padding:0.4375rem 0.5rem;background:transparent;border-color:transparent;text-decoration:underline;text-underline-offset:3px}.promo-banner-close{top:6px;inset-inline-end:8px;width:24px;height:24px;font-size:1rem}.bw-toggle-track{width:44px !important;height:24px !important}.bw-toggle-thumb{width:20px !important;height:20px !important}.booking-field{padding:0.875rem 1rem;gap:0.625rem}}@media (max-width:480px){.promo-banner-actions{flex-direction:row !important;align-items:center}.promo-banner-btn-primary,.promo-banner-btn-secondary{justify-content:center;font-size:0.75rem;padding:0.4375rem 0.875rem}.promo-banner-bg{padding:0.75rem 0.875rem 0.875rem}.promo-banner-title{font-size:1rem;-webkit-line-clamp:2}.promo-banner-desc{font-size:0.75rem;-webkit-line-clamp:1}}@media (max-width:380px){.promo-banner-eyebrow{display:none}.promo-banner-btn-secondary{display:none}.promo-banner-btn-primary{flex:1;justify-content:center;padding:0.5rem 0.875rem;font-size:0.8125rem}.promo-banner-desc{-webkit-line-clamp:1}.promo-banner-bg{padding:0.625rem 0.75rem 0.75rem;gap:0.375rem}}.bottom-nav{position:fixed;inset-inline:0;bottom:0;z-index:var(--z-header);display:none;align-items:stretch;background:var(--color-surface);border-top:1px solid var(--color-border);padding-bottom:var(--safe-bottom);box-shadow:0 -2px 12px rgba(14,42,71,0.06);transition:transform var(--duration-base) var(--ease-out)}.bottom-nav.is-hidden{transform:translateY(100%)}.bottom-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0.25rem;padding:0.625rem 0.25rem;min-height:56px;text-decoration:none;color:var(--color-text-muted);transition:color var(--duration-fast);position:relative}.bottom-nav-item:hover,.bottom-nav-item.is-active{color:var(--color-primary)}.bottom-nav-item.is-active::before{content:"";position:absolute;top:0;inset-inline-start:50%;transform:translateX(-50%);width:28px;height:3px;background:var(--color-accent);border-radius:0 0 3px 3px}.bottom-nav-icon{width:22px;height:22px;display:flex;align-items:center;justify-content:center}.bottom-nav-icon svg{width:100%;height:100%}.bottom-nav-label{font-size:10px;font-weight:600;letter-spacing:0.02em;white-space:nowrap}.bottom-nav-cta{background:var(--color-accent);color:#fff !important;border-radius:50%;width:56px;height:56px;margin:0.25rem auto 0;align-self:center;flex:none;padding:0;box-shadow:0 4px 12px rgba(196,103,76,0.4)}.bottom-nav-cta::before{display:none !important}.bottom-nav-cta .bottom-nav-icon{color:#fff}.bottom-nav-cta .bottom-nav-label{display:none}.bottom-nav-cta-wrap{display:flex;align-items:flex-start;justify-content:center;flex:1;position:relative;margin-top:-16px}@media (max-width:768px){.bottom-nav{display:flex}body.has-bottom-nav{padding-bottom:calc(56px + var(--safe-bottom))}body.has-bottom-nav .whatsapp-float{bottom:calc(64px + var(--safe-bottom) + 1rem)}body.has-sticky-cta.has-bottom-nav .sticky-cta{bottom:calc(56px + var(--safe-bottom))}body.has-sticky-cta.has-bottom-nav{padding-bottom:calc(56px + 64px + var(--safe-bottom))}}.share-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:0.5rem 0}.share-item{display:flex;flex-direction:column;align-items:center;gap:0.5rem;padding:0.75rem 0.25rem;background:transparent;border:none;cursor:pointer;text-decoration:none;color:var(--color-primary);font-size:var(--text-xs);font-weight:600;transition:transform var(--duration-fast)}.share-item:active{transform:scale(0.95)}.share-icon{width:56px;height:56px;border-radius:50%;background:var(--color-bg-warm);display:flex;align-items:center;justify-content:center;font-size:1.5rem}.share-icon.whatsapp{background:#25D366;color:#fff}.share-icon.telegram{background:#0088cc;color:#fff}.share-icon.x{background:#000000;color:#fff}.share-icon.email{background:var(--color-primary);color:#fff}.share-icon.copy{background:var(--color-accent);color:#fff}.wizard-overlay{position:fixed;inset:0;z-index:var(--z-modal);background:var(--color-bg);display:none;flex-direction:column;padding:var(--safe-top) 0 var(--safe-bottom)}.wizard-overlay.is-open{display:flex}.wizard-header{display:flex;align-items:center;gap:0.75rem;padding:0.75rem 1rem;border-bottom:1px solid var(--color-border);flex-shrink:0;background:var(--color-surface)}.wizard-back{width:var(--touch-min);height:var(--touch-min);border:none;background:transparent;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-primary)}.wizard-progress{flex:1;height:4px;background:var(--color-border);border-radius:2px;overflow:hidden}.wizard-progress-fill{height:100%;background:var(--color-accent);width:0;transition:width var(--duration-base) var(--ease-out)}.wizard-step-num{font-size:var(--text-xs);font-weight:700;color:var(--color-text-muted);white-space:nowrap}.wizard-body{flex:1;overflow-y:auto;padding:1.5rem 1.25rem;-webkit-overflow-scrolling:touch}.wizard-step{display:none}.wizard-step.is-active{display:block;animation:wizard-slide-in var(--duration-base) var(--ease-out)}@keyframes wizard-slide-in{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.wizard-step h2{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--color-primary);margin:0 0 0.5rem;letter-spacing:-0.01em}.wizard-step p{color:var(--color-text-secondary);font-size:var(--text-sm);margin:0 0 1.5rem}.wizard-input{width:100%;font-size:var(--text-lg);padding:1rem;border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-height:var(--touch-large)}.wizard-input:focus{outline:none;border-color:var(--color-accent)}.wizard-options{display:flex;flex-direction:column;gap:0.5rem}.wizard-option{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;text-align:start;font-size:var(--text-base);transition:all var(--duration-fast);min-height:var(--touch-large)}.wizard-option:hover,.wizard-option.is-selected{border-color:var(--color-accent);background:var(--color-bg-warm)}.wizard-option.is-selected::after{content:"";margin-inline-start:auto;color:var(--color-accent);font-weight:700;font-size:var(--text-xl)}.wizard-segment{display:flex;background:var(--color-bg-warm);border-radius:999px;padding:4px;gap:4px}.wizard-segment-btn{flex:1;border:none;background:transparent;padding:0.625rem 0.75rem;border-radius:999px;font-size:var(--text-sm);font-weight:600;cursor:pointer;color:var(--color-text-secondary);min-height:var(--touch-min)}.wizard-segment-btn.is-selected{background:var(--color-primary);color:#fff}.wizard-footer{display:flex;gap:0.5rem;padding:1rem 1.25rem;padding-bottom:calc(1rem + var(--safe-bottom));border-top:1px solid var(--color-border);flex-shrink:0;background:var(--color-surface)}.wizard-footer .btn{flex:1;min-height:var(--touch-large)}.ticket{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);max-width:480px;margin:0 auto;overflow:hidden;position:relative}.ticket-header{background:linear-gradient(135deg,var(--color-primary) 0%,#1a3a5c 100%);color:#fff;padding:1.5rem 1.5rem 1.25rem;position:relative}.ticket-header::after{content:"";position:absolute;bottom:-10px;left:0;right:0;height:20px;background-image:radial-gradient(circle at 10px 10px,var(--color-bg) 6px,transparent 6px);background-size:20px 20px;background-repeat:repeat-x}.ticket-status{display:inline-flex;align-items:center;gap:0.375rem;background:rgba(255,255,255,0.18);padding:0.25rem 0.75rem;border-radius:999px;font-size:var(--text-xs);font-weight:700;letter-spacing:0.06em;text-transform:uppercase}.ticket-code{font-family:'Courier New',monospace;font-size:var(--text-2xl);font-weight:700;letter-spacing:0.04em;margin:0.5rem 0 0}.ticket-body{padding:2rem 1.5rem 1.5rem;position:relative}.ticket-route{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.ticket-route-point{flex:1}.ticket-route-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:0.08em;color:var(--color-text-muted);font-weight:700;margin-bottom:0.25rem}.ticket-route-name{font-family:var(--font-display);font-size:var(--text-lg);font-weight:700;color:var(--color-primary);letter-spacing:-0.01em}.ticket-route-arrow{color:var(--color-accent);font-size:1.5rem}.ticket-meta{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:1rem 0;border-top:1px dashed var(--color-border);border-bottom:1px dashed var(--color-border);margin-bottom:1rem}.ticket-meta-item{display:flex;flex-direction:column}.ticket-meta-label{font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:0.06em;font-weight:600}.ticket-meta-value{font-size:var(--text-sm);color:var(--color-primary);font-weight:700;margin-top:0.125rem}.ticket-qr{margin:1rem auto;width:180px;height:180px;background:var(--color-bg-warm);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-family:'Courier New',monospace;font-size:0.625rem;text-align:center;padding:1rem;color:var(--color-text-muted);position:relative}.ticket-qr-grid{display:grid;grid-template-columns:repeat(21,1fr);gap:1px;width:100%;height:100%;padding:0.5rem}.ticket-qr-grid div{background:var(--color-primary);border-radius:1px}.ticket-qr-grid div.empty{background:transparent}.ticket-actions{display:flex;gap:0.5rem;padding:0 1.5rem 1.5rem;flex-wrap:wrap}.ticket-actions .btn{flex:1;min-height:var(--touch-min);font-size:var(--text-sm)}.settings-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:1rem;overflow:hidden}.settings-section-header{padding:0.875rem 1.25rem;font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--color-text-muted);background:var(--color-bg-warm);border-bottom:1px solid var(--color-border)}.settings-row{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--color-border);min-height:56px}.settings-row:last-child{border-bottom:none}.settings-row-label{flex:1;font-size:var(--text-sm);color:var(--color-primary);font-weight:500}.settings-row-value{font-size:var(--text-sm);color:var(--color-text-secondary)}.settings-toggle{position:relative;width:44px;height:24px;background:var(--color-border);border-radius:999px;border:none;cursor:pointer;transition:background var(--duration-fast);flex-shrink:0}.settings-toggle.is-on{background:var(--color-accent)}.settings-toggle::after{content:"";position:absolute;top:2px;inset-inline-start:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform var(--duration-fast) var(--ease-out);box-shadow:0 1px 3px rgba(0,0,0,0.2)}.settings-toggle.is-on::after{transform:translateX(20px)}.tours-mobile-filter-bar{display:none;align-items:center;justify-content:space-between;gap:1rem;padding:0.75rem 0;margin-bottom:1rem;border-bottom:1px solid var(--color-border)}.tours-mobile-filter-bar .filter-count{background:var(--color-accent);color:#fff;font-size:var(--text-xs);padding:0.125rem 0.5rem;border-radius:999px;margin-inline-start:0.375rem;display:none}.tours-mobile-filter-bar .filter-count.has-count{display:inline-flex}.tours-result-count{font-size:var(--text-sm);color:var(--color-text-muted);font-weight:600}.filter-group{margin-bottom:1.5rem}.filter-group h4{font-family:var(--font-display);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:0.06em;color:var(--color-primary);margin:0 0 0.625rem;font-weight:700}.filter-chips{display:flex;flex-wrap:wrap;gap:0.5rem}.filter-chip{background:var(--color-bg-warm);border:1.5px solid transparent;border-radius:999px;padding:0.5rem 1rem;font-size:var(--text-sm);font-weight:600;color:var(--color-primary);cursor:pointer;min-height:var(--touch-min);transition:all var(--duration-fast)}.filter-chip:hover{border-color:var(--color-border-strong)}.filter-chip.is-active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}@media (max-width:768px){.tours-mobile-filter-bar{display:flex}.locations-tabs{display:none}}.header-lang-mobile{display:none;align-items:center;gap:0.25rem;background:var(--color-surface-soft,var(--color-bg-warm));border:1px solid var(--color-border);border-radius:var(--radius-md);padding:0.4rem 0.55rem;font-size:0.8125rem;font-weight:600;min-height:var(--touch-min);cursor:pointer;color:var(--color-primary);transition:background var(--duration-fast)}.header-lang-mobile:hover{background:var(--color-bg-warm)}.header-lang-mobile-flag{font-size:1rem;line-height:1}.header-lang-mobile-code{letter-spacing:0.04em}@media (max-width:768px){.header-lang-mobile{display:none}.header-divider{display:none}.header-social{display:none}.header-login-text{display:none}}.lang-sheet-grid{display:flex;flex-direction:column;gap:0.5rem}.lang-sheet-item{display:flex;align-items:center;gap:1rem;padding:0.875rem 1rem;background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);text-decoration:none;color:var(--color-primary);min-height:var(--touch-large);transition:all var(--duration-fast)}.lang-sheet-item:hover,.lang-sheet-item.is-active{border-color:var(--color-accent);background:var(--color-bg-warm)}.lang-sheet-item.is-active::after{content:"";margin-inline-start:auto;color:var(--color-accent);font-weight:700;font-size:var(--text-xl)}.lang-sheet-flag{font-size:1.75rem;line-height:1;flex-shrink:0}.lang-sheet-name{display:flex;flex-direction:column;gap:0.125rem;min-width:0}.lang-sheet-name strong{font-family:var(--font-display);font-size:var(--text-base);font-weight:700;color:var(--color-primary)}.lang-sheet-name em{font-style:normal;font-size:var(--text-xs);font-weight:600;letter-spacing:0.06em;text-transform:uppercase;color:var(--color-text-muted)}@media (max-width:768px){.booking-card input[type="text"],.booking-card input[type="email"],.booking-card input[type="tel"],.booking-card input[type="date"],.booking-card input[type="time"],.booking-card input[type="number"],.booking-card select,.booking-card textarea{font-size:16px !important}.booking-card .field input,.booking-card .field select,.booking-card .field textarea{padding:0.625rem 0.75rem !important}.summary-mini-route{display:flex;align-items:center;gap:0.375rem;padding:0.5rem 0.75rem 0;font-size:0.8125rem;color:var(--color-text-secondary);line-height:1.3}.summary-mini-route #s-mini-route{font-weight:600;color:var(--color-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60vw}.summary-mini-pax{font-size:11px;color:var(--color-text-muted);flex-shrink:0}.booking-summary.is-expanded .summary-mini-route{display:none}}.cookie-banner{position:fixed;inset-inline:0;bottom:0;z-index:var(--z-toast,9999);display:none;background:var(--color-primary);color:#fff;padding:1rem 1.25rem;padding-bottom:calc(1rem + var(--safe-bottom,0px));box-shadow:0 -4px 16px rgba(14,42,71,0.16)}.cookie-banner.is-visible{display:block}.cookie-banner-inner{max-width:var(--container,1280px);margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:1rem}.cookie-banner-text{flex:1;min-width:240px;font-size:var(--text-sm,0.875rem);line-height:1.5}.cookie-banner-text a{color:#fff;text-decoration:underline}.cookie-banner-actions{display:flex;gap:0.5rem;flex-wrap:wrap}.cookie-banner-btn{padding:0.5rem 1rem;border-radius:999px;font-size:var(--text-sm,0.875rem);font-weight:600;cursor:pointer;border:1.5px solid rgba(255,255,255,0.4);background:transparent;color:#fff;min-height:var(--touch-min,44px)}.cookie-banner-btn-primary{background:var(--color-accent);border-color:var(--color-accent)}.cookie-banner-btn:hover{background:rgba(255,255,255,0.1)}@media (prefers-reduced-motion:reduce){.skeleton,.toast,.bottom-sheet,.wishlist-toggle.is-saved{animation:none !important;transition:none !important}}