/* ---- 00-core.css ---- */
/* Rome Tourz UX layer. Plain stylesheet for JS-built widgets (search, drawer, compare, map, planner results, bars). ACSS root is 62.5%: px only.
   Uses the --rtd-* tokens from rt-base.css; no new hex outside the accessible-orange tokens below. */
:root{
  --rtux-orange-aa:#d93800;      /* white on this = 4.65:1 (AA). The brand orange #ff4d12 stays for fills, borders, text on navy. */
  --rtux-orange-aa-h:#c93500;
  --rtux-green-aa:#007a54;       /* white on this = 5.3:1, on the soft green 4.8:1 */
  --rtux-shadow:0 8px 24px color-mix(in srgb,var(--rtd-navy,#0e1a33) 12%,transparent);
  --rtux-ease:cubic-bezier(.2,.7,.2,1);
}
.rt-ux-sr{position:absolute!important;inline-size:1px;block-size:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
[hidden]{display:none!important}

/* ---------- accessible primary buttons (toggle in Rome Tourz > Site experience) ---------- */
body.rt-ux-btn{--rtd-btn-bg:var(--rtux-orange-aa)}
body.rt-ux-btn .rt-btn:not(.rt-btn--mini):not(.rt-btn--ghost):not(.rt-btn--dark):not(.rt-btn--light):not(:disabled),
body.rt-ux-btn .fluentform .ff-btn-submit,
body.rt-ux-btn .rt-top:hover,
body.rt-ux-btn .rt-hsearch__btn:hover{background:var(--rtux-orange-aa)!important}
body.rt-ux-btn .rt-btn:not(.rt-btn--mini):not(.rt-btn--ghost):not(.rt-btn--dark):not(.rt-btn--light):not(:disabled):hover,
body.rt-ux-btn .fluentform .ff-btn-submit:hover,
body.rt-ux-btn .fluentform .ff-btn-submit:focus-visible{background:var(--rtux-orange-aa-h)!important}
body.rt-ux-btn .rt-btn--primary:not(:disabled){background:var(--rtux-orange-aa)!important}
body.rt-ux-btn .rt-btn--primary:not(:disabled):hover{background:var(--rtux-orange-aa-h)!important}
body.rt-ux-btn .rt-hsearch__btn:hover{background:var(--rtux-orange-aa-h)!important}
body.rt-ux-btn .rt-tag,body.rt-ux-btn .rt-guide__free{background:var(--rtux-green-aa)}

/* ---------- consistent focus ring ---------- */
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid color-mix(in srgb,var(--rtd-orange,#ff4d12) 85%,var(--rtd-navy,#0e1a33));outline-offset:2px;border-radius:6px}
.rt-card__wish{position:absolute}
.rt-card__wish::after{content:"";position:absolute;inset:-6px}   /* 32px heart, 44px hit area */
.rt-card__wish{overflow:visible}
@media (pointer:coarse){
  .rt-filterchip,.rt-sortbar__select,.rt-rail__reset,.rt-fopt,.rt-plchip__label,.rt-pl__chip,.rt-card__book,.rt-crumbs__link,.rt-footer__link{min-block-size:44px;display:inline-flex;align-items:center}
  .rt-fopt{display:flex}
  .rt-footer__item{margin-block:2px}
}

/* ---------- toast ---------- */
.rt-ux-toast{position:fixed;inset-inline:16px;inset-block-end:84px;z-index:1200;display:flex;align-items:center;gap:14px;max-inline-size:440px;margin-inline:auto;padding:12px 16px;border-radius:12px;background:var(--rtd-navy,#0e1a33);color:var(--rtd-white,#fff);font-size:14px;font-weight:600;box-shadow:var(--rtux-shadow)}
.rt-ux-toast.is-in{animation:rtux-up .22s var(--rtux-ease)}
.rt-ux-toast__act{flex:none;min-block-size:44px;padding:0 14px;border:0;border-radius:8px;background:transparent;color:var(--rtd-white,#fff);font:inherit;font-weight:800;text-decoration:underline;cursor:pointer}
@keyframes rtux-up{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

/* ---------- search autocomplete ---------- */
.rt-ac{position:fixed;z-index:1100;overflow:auto;overscroll-behavior:contain;background:var(--rtd-white,#fff);border:1px solid var(--rtd-line,#e4e8f0);border-radius:12px;box-shadow:var(--rtux-shadow);animation:rtux-up .16s var(--rtux-ease)}
.rt-ac__list{margin:0;padding:6px;list-style:none}
.rt-ac__head{padding:10px 10px 4px;font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--rtd-slate,#5c6880)}
.rt-ac__note{padding:12px 10px;font-size:14px;color:var(--rtd-ink,#37405a)}
.rt-ac__opt{display:flex;align-items:center;gap:12px;min-block-size:48px;padding:6px 10px;border-radius:9px;color:var(--rtd-navy,#0e1a33);cursor:pointer}
.rt-ac__opt[aria-selected="true"],.rt-ac__opt:hover{background:var(--rtd-cool,#f4f6fa)}
.rt-ac__opt[aria-selected="true"]{box-shadow:inset 3px 0 0 var(--rtd-orange,#ff4d12)}
.rt-ac__thumb{flex:none;inline-size:44px;block-size:44px;border-radius:8px;overflow:hidden;background:var(--rtd-cool,#f4f6fa)}
.rt-ac__thumb img{inline-size:100%;block-size:100%;object-fit:cover}
.rt-ac__txt{display:flex;flex-direction:column;min-inline-size:0;flex:1}
.rt-ac__title{font-size:14.5px;font-weight:700;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rt-ac__meta{font-size:12.5px;color:var(--rtd-slate,#5c6880);line-height:1.3}
.rt-ac__mark{background:color-mix(in srgb,var(--rtd-yellow,#ffc400) 45%,transparent);color:inherit;border-radius:3px;padding:0 1px}
.rt-ac__opt--all .rt-ac__title,.rt-ac__opt--plan .rt-ac__title{color:var(--rtd-orange-dark,#c93500)}
.rt-ac__opt--recent .rt-ac__title::before{content:"\21BB\00a0";color:var(--rtd-slate,#5c6880)}
@media (max-width:860px){.rt-ac{border-radius:10px}}

/* ---------- images: fade in, no layout shift ---------- */
img.rt-ux-fade{opacity:0;transition:opacity .35s ease}
img.rt-ux-fade.is-in{opacity:1}
@media (prefers-reduced-motion:reduce){img.rt-ux-fade{opacity:1;transition:none}.rt-ac,.rt-ux-toast.is-in{animation:none}}

/* ---------- page transitions (Chrome/Edge cross-document view transitions; ignored elsewhere) ---------- */
@media (prefers-reduced-motion:no-preference){
  body:not(.rt-ux-off-transitions){view-transition-name:none}
  @view-transition{navigation:auto}
  ::view-transition-old(root){animation:rtux-fade-out .14s ease both}
  ::view-transition-new(root){animation:rtux-fade-in .2s ease both}
  .rt-header{view-transition-name:rt-header}
}
@keyframes rtux-fade-out{to{opacity:0}}
@keyframes rtux-fade-in{from{opacity:0}}

/* ---------- back to top: progress ring ---------- */
.rt-top{--rt-prog:0;background:conic-gradient(var(--rtd-orange,#ff4d12) calc(var(--rt-prog)*360deg),var(--rtd-navy,#0e1a33) 0)!important;position:fixed}
.rt-top::before{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--rtd-navy,#0e1a33)}
.rt-top{isolation:isolate;font-size:0}
.rt-top::after{content:"\2191";position:relative;z-index:1;font-size:18px;color:var(--rtd-white,#fff);line-height:1}
.rt-top:hover::before{background:var(--rtux-orange-aa)}
@media print{.rt-top,.rt-ux-toast,.rt-ac{display:none!important}}
/* shared building blocks for JS-built sections (Etch classes only load on pages that use them) */
.rt-ux-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
@media (max-width:520px){.rt-ux-grid{grid-template-columns:minmax(0,1fr);gap:14px}}
.rt-ux-pill{min-block-size:40px;padding:0 15px;border:1px solid var(--rtd-line,#e4e8f0);border-radius:999px;background:var(--rtd-white,#fff);color:var(--rtd-slate,#5c6880);font:inherit;font-size:13.5px;font-weight:700;cursor:pointer;transition:border-color .16s ease,background .16s ease,color .16s ease}
.rt-ux-pill:hover{border-color:var(--rtd-orange,#ff4d12);color:var(--rtd-orange-dark,#c93500)}
.rt-ux-pill[aria-pressed="true"]{border-color:var(--rtd-orange,#ff4d12);background:var(--rtd-orange-soft,#fff0eb);color:var(--rtd-orange-dark,#c93500)}
/* contrast fixes found by the axe audit (same toggle as the buttons): white text on the brand orange and brand green text */
body.rt-ux-btn :is(.rt-booking__flag,.rt-badge--hot,.rt-deals__num,.rt-deal__badge,.rt-jav--hot,.rt-plan__flag,.rt-daytheme[aria-pressed="true"],.rt-bd__city[aria-pressed="true"]){background:var(--rtux-orange-aa)}
body.rt-ux-btn :is(.rt-card__cancel,.rt-stat__note,.rt-booking__tick,.rt-ux-why__li svg){color:var(--rtux-green-aa)}
body.rt-ux-btn .rt-pill--ok{color:var(--rtux-green-aa)}
body.rt-ux-btn :is(.rt-dayslot__h,.rt-bhelp__link,.rt-trust__link){color:var(--rtd-orange-dark,#c93500)}
.rt-hsearch__input:focus-visible{outline:none}
body.rt-ux-btn .rt-trust__link{text-decoration:underline;text-underline-offset:3px}
body.rt-ux-btn .rt-btn--primary:not(:disabled),body.rt-ux-btn .rt-btn:not(.rt-btn--mini):not(.rt-btn--ghost):not(.rt-btn--dark):not(.rt-btn--light):not(:disabled){color:var(--rtd-white,#fff)!important}
/* ACSS gives every <section> block padding; our JS-built sections manage their own spacing */
html body main section.rt-ux-facts,html body main section.rt-ux-why,html body main section.rt-ux-wl__grp{padding-block:0}

/* ---- 05-carousel.css ---- */
/* ============ carousel (scroll-snap) ============ */
.rt-ux-carw{--rt-gap:20px;--rt-spv:4.2;position:relative}
@media (max-width:1080px){.rt-ux-carw{--rt-spv:3.2}}
@media (max-width:840px){.rt-ux-carw{--rt-spv:2.2;--rt-gap:14px}}
@media (max-width:520px){.rt-ux-carw{--rt-spv:1.18}}
.rt-ux-carw--sp3{--rt-spv:3.2}
@media (min-width:1081px){.rt-ux-carw--fit4{--rt-spv:4}}
@media (min-width:841px) and (max-width:1080px){.rt-ux-carw--fit3{--rt-spv:3}}
@media (min-width:521px) and (max-width:840px){.rt-ux-carw--fit2{--rt-spv:2}}
.rt-ux-carw:not(.rt-ux-carw--m)>.rt-ux-car,
.rt-ux-carw--m>.rt-ux-car.rt-ux-car--on{display:grid!important;grid-auto-flow:column;grid-template-columns:none!important;grid-auto-columns:calc((100% - (var(--rt-spv) - 1) * var(--rt-gap)) / var(--rt-spv));gap:var(--rt-gap)!important;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;padding-block:4px 10px;margin-block:-4px -10px;cursor:grab}
.rt-ux-carw>.rt-ux-car::-webkit-scrollbar{display:none}
.rt-ux-carw>.rt-ux-car.is-drag{cursor:grabbing;scroll-snap-type:none;user-select:none}
.rt-ux-carw>.rt-ux-car.is-drag a{pointer-events:none}
.rt-ux-carw>.rt-ux-car>.rt-ux-slide{scroll-snap-align:start;min-inline-size:0}
.rt-ux-carw>.rt-ux-car:focus-visible{outline-offset:6px;border-radius:12px}
.rt-ux-carw .rt-ux-car__btn{min-inline-size:0;min-block-size:0;max-inline-size:46px;position:absolute;inset-block-start:calc(50% - 40px);z-index:3;display:grid;place-items:center;inline-size:46px;block-size:46px;padding:0;border:0;border-radius:50%;background:var(--rtd-white,#fff);color:var(--rtd-navy,#0e1a33);box-shadow:0 4px 16px color-mix(in srgb,var(--rtd-navy,#0e1a33) 24%,transparent);cursor:pointer;transition:transform .16s ease,opacity .16s ease,background .16s ease}
.rt-ux-car__btn::before{content:"";inline-size:10px;block-size:10px;border:solid currentColor;border-width:0 0 2.5px 2.5px}
.rt-ux-car__btn--prev{inset-inline-start:-14px}.rt-ux-car__btn--prev::before{transform:rotate(45deg) translate(1px,-1px)}
.rt-ux-car__btn--next{inset-inline-end:-14px}.rt-ux-car__btn--next::before{transform:rotate(-135deg) translate(1px,-1px)}
.rt-ux-car__btn:hover:not(:disabled){transform:scale(1.07);background:var(--rtd-navy,#0e1a33);color:var(--rtd-white,#fff)}
.rt-ux-car__btn:disabled{opacity:0;pointer-events:none}
.rt-ux-car__ctl{display:flex;align-items:center;justify-content:center;gap:14px;margin-block-start:14px}
.rt-ux-car__bar{position:relative;inline-size:min(220px,50%);block-size:4px;border-radius:4px;background:var(--rtd-line,#e4e8f0);overflow:hidden}
.rt-ux-car__fill{position:absolute;inset-block:0;inset-inline-start:0;border-radius:4px;background:var(--rtd-navy,#0e1a33);transition:transform .12s linear}
.rt-ux-car__pause{min-block-size:44px;padding:0 10px;border:0;background:none;color:var(--rtd-slate,#5c6880);font:inherit;font-size:13px;font-weight:700;text-decoration:underline;cursor:pointer}
.rt-ux-carw.is-static .rt-ux-car__btn,.rt-ux-carw.is-static .rt-ux-car__ctl{display:none}
@media (max-width:1280px){.rt-ux-car__btn--prev{inset-inline-start:-6px}.rt-ux-car__btn--next{inset-inline-end:-6px}}
@media (hover:none){.rt-ux-car__btn{display:none}}
@media (prefers-reduced-motion:reduce){.rt-ux-carw>.rt-ux-car{scroll-behavior:auto}}
/* mobile-only carousels: plain grid on desktop, controls hidden there */
@media (min-width:961px){.rt-ux-carw--m>.rt-ux-car__btn,.rt-ux-carw--m>.rt-ux-car__ctl{display:none}}

/* ---- 10-archive.css ---- */
/* ============ skeletons ============ */
.rt-skel{display:block;border-radius:10px;background:linear-gradient(100deg,var(--rtd-cool,#f4f6fa) 30%,color-mix(in srgb,var(--rtd-white,#fff) 70%,var(--rtd-cool,#f4f6fa)) 50%,var(--rtd-cool,#f4f6fa) 70%) 0 0/220% 100%;animation:rtux-shim 1.3s linear infinite}
.rt-skel--pill{display:inline-block;inline-size:92px;block-size:34px;border-radius:999px}
.rt-skel--map{block-size:520px;border-radius:14px}
.rt-skel--card{block-size:300px;border-radius:12px}
@keyframes rtux-shim{to{background-position:-220% 0}}
@media (prefers-reduced-motion:reduce){.rt-skel{animation:none}}
html.rt-ux-pending [data-rt-grid]{position:relative;min-block-size:560px}
html.rt-ux-pending [data-rt-grid]>*{visibility:hidden}
html.rt-ux-pending [data-rt-grid]::after{content:"";position:absolute;inset:0;border-radius:14px;background:linear-gradient(100deg,var(--rtd-cool,#f4f6fa) 30%,color-mix(in srgb,var(--rtd-white,#fff) 70%,var(--rtd-cool,#f4f6fa)) 50%,var(--rtd-cool,#f4f6fa) 70%) 0 0/220% 100%;animation:rtux-shim 1.3s linear infinite}

/* ============ tours archive 2.0 ============ */
body.rt-ux-arch .rt-sortbar{position:sticky;inset-block-start:var(--rt-hh,76px);z-index:40;margin-block-end:12px;padding-block:10px;background:var(--rtd-white,#fff);transition:box-shadow .2s ease}
body.rt-ux-arch .rt-sortbar.is-stuck{box-shadow:0 6px 14px -8px color-mix(in srgb,var(--rtd-navy,#0e1a33) 22%,transparent)}
body.rt-ux-arch .rt-sortbar .rt-filterchips{flex:1 1 0;min-inline-size:0}
body.rt-ux-arch .rt-sortbar__select{min-block-size:40px}
.rt-ux-filterbtn{display:none;align-items:center;gap:8px;min-block-size:44px;padding:0 16px;border:1px solid var(--rtd-navy,#0e1a33);border-radius:999px;background:var(--rtd-white,#fff);color:var(--rtd-navy,#0e1a33);font:inherit;font-size:14px;font-weight:800;cursor:pointer}
.rt-ux-filterbtn__n{display:inline-grid;place-items:center;min-inline-size:22px;block-size:22px;padding:0 6px;border-radius:999px;background:var(--rtux-orange-aa);color:#fff;font-size:12px}
.rt-ux-views{display:inline-flex;border:1px solid var(--rtd-line,#e4e8f0);border-radius:999px;overflow:hidden;background:var(--rtd-white,#fff)}
.rt-ux-views__b{display:inline-grid;place-items:center;min-block-size:40px;min-inline-size:44px;padding:0 10px;border:0;background:transparent;color:var(--rtd-slate,#5c6880);font:inherit;font-size:13.5px;font-weight:700;cursor:pointer}
.rt-ux-views__b[aria-pressed="true"]{background:var(--rtd-navy,#0e1a33);color:var(--rtd-white,#fff)}
.rt-ux-views__b:focus-visible{outline-offset:-3px}
.rt-ux-aud{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-block-end:12px}
.rt-ux-aud__l{font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--rtd-slate,#5c6880);margin-inline-end:4px}
.rt-ux-aud .rt-filterchip{min-block-size:40px}
.rt-ux-status{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-block-end:16px;min-block-size:36px}
.rt-ux-count{margin:0!important;font-size:14px;font-weight:700;color:var(--rtd-ink,#37405a)}
.rt-ux-active{display:flex;flex-wrap:wrap;gap:8px}
.rt-ux-chip{display:inline-flex;align-items:center;gap:8px;min-block-size:36px;padding:0 8px 0 14px;border:1px solid color-mix(in srgb,var(--rtd-orange,#ff4d12) 50%,var(--rtd-line,#e4e8f0));border-radius:999px;background:var(--rtd-orange-soft,#fff0eb);color:var(--rtd-orange-dark,#c93500);font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.rt-ux-chip:hover{background:color-mix(in srgb,var(--rtd-orange,#ff4d12) 14%,var(--rtd-white,#fff))}
.rt-ux-chip__x{display:inline-grid;place-items:center;inline-size:22px;block-size:22px;border-radius:50%;font-size:17px;line-height:1}
.rt-ux-chip--clear{padding-inline:14px;border-color:var(--rtd-line,#e4e8f0);background:var(--rtd-white,#fff);color:var(--rtd-navy,#0e1a33);text-decoration:underline}
.rt-ux-relax{margin-block-start:14px}.rt-ux-relax__l{margin:0 0 8px;font-weight:700}.rt-ux-relax__row{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
/* dual slider */
.rt-ux-dual{position:relative;block-size:32px;margin:6px 2px 0}
.rt-ux-dual__track{position:absolute;inset-inline:0;inset-block-start:14px;block-size:4px;border-radius:2px;background:var(--rtd-line,#e4e8f0)}
.rt-ux-dual__fill{position:absolute;inset-block:0;border-radius:2px;background:var(--rtd-orange,#ff4d12)}
.rt-ux-dual__in{position:absolute;inset:0;inline-size:100%;margin:0;background:none;pointer-events:none;-webkit-appearance:none;appearance:none}
.rt-ux-dual__in::-webkit-slider-runnable-track{background:none;block-size:32px}
.rt-ux-dual__in::-moz-range-track{background:none}
.rt-ux-dual__in::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;inline-size:24px;block-size:24px;margin-block-start:4px;border-radius:50%;border:3px solid var(--rtd-white,#fff);background:var(--rtd-navy,#0e1a33);box-shadow:0 1px 4px color-mix(in srgb,var(--rtd-navy,#0e1a33) 40%,transparent);cursor:grab}
.rt-ux-dual__in::-moz-range-thumb{pointer-events:auto;inline-size:18px;block-size:18px;border-radius:50%;border:3px solid var(--rtd-white,#fff);background:var(--rtd-navy,#0e1a33);cursor:grab}
.rt-ux-dual__in:focus-visible{outline:none}
.rt-ux-dual__in:focus-visible::-webkit-slider-thumb{outline:3px solid var(--rtd-orange,#ff4d12);outline-offset:2px}
.rt-ux-dual__in:focus-visible::-moz-range-thumb{outline:3px solid var(--rtd-orange,#ff4d12);outline-offset:2px}
.rt-ux-dual__out{margin-block-start:4px;font-size:13px;font-weight:700;color:var(--rtd-ink,#37405a);font-variant-numeric:tabular-nums}
.rt-ux-presets{display:flex;flex-wrap:wrap;gap:6px}
.rt-ux-preset{min-block-size:40px;padding:0 12px;border:1px solid var(--rtd-line,#e4e8f0);border-radius:999px;background:var(--rtd-white,#fff);color:var(--rtd-slate,#5c6880);font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.rt-ux-preset:hover{border-color:var(--rtd-orange,#ff4d12);color:var(--rtd-orange-dark,#c93500)}
.rt-ux-preset[aria-pressed="true"]{border-color:var(--rtd-orange,#ff4d12);background:var(--rtd-orange-soft,#fff0eb);color:var(--rtd-orange-dark,#c93500)}
/* list view */
[data-rt-grid].rt-ux-list{grid-template-columns:minmax(0,1fr)!important;gap:14px}
[data-rt-grid].rt-ux-list .rt-card{display:grid;grid-template-columns:260px minmax(0,1fr) auto;grid-template-areas:"m b f"}
[data-rt-grid].rt-ux-list .rt-card__media{grid-area:m;aspect-ratio:auto;min-block-size:170px}
[data-rt-grid].rt-ux-list .rt-card__body{grid-area:b;align-self:center}
[data-rt-grid].rt-ux-list .rt-card__foot{grid-area:f;flex-direction:column;align-items:flex-end;justify-content:center;gap:10px;border-inline-start:1px solid var(--rtd-line,#e4e8f0);border-block-start:0;padding:16px}
@media (max-width:700px){[data-rt-grid].rt-ux-list .rt-card{grid-template-columns:128px minmax(0,1fr);grid-template-areas:"m b" "f f"}[data-rt-grid].rt-ux-list .rt-card__foot{flex-direction:row;align-items:center;justify-content:space-between;border-inline-start:0;border-block-start:1px solid var(--rtd-line,#e4e8f0);padding:10px 14px}[data-rt-grid].rt-ux-list .rt-card__media{min-block-size:120px}}
/* map view */
body.rt-ux-arch [data-rt-explorer].rt-ux-mapview [data-rt-grid],body.rt-ux-arch [data-rt-explorer].rt-ux-mapview .rt-gridmore,body.rt-ux-arch [data-rt-explorer].rt-ux-mapview [data-rt-more]{display:none!important}
.rt-ux-mapwrap{position:relative;margin-block-end:20px}
.rt-ux-map{block-size:clamp(420px,68vh,640px);border-radius:14px;border:1px solid var(--rtd-line,#e4e8f0);overflow:hidden;background:var(--rtd-cool,#f4f6fa);z-index:0}
.rt-ux-mapnote{margin:8px 2px 0;font-size:13px;color:var(--rtd-slate,#5c6880)}
.rt-ux-maperr{padding:30px;text-align:center;color:var(--rtd-slate,#5c6880)}
.rt-ux-pin{display:grid;place-items:center;inline-size:auto;min-inline-size:44px;block-size:32px;padding:0 10px;border:2px solid var(--rtd-white,#fff);border-radius:999px;background:var(--rtd-navy,#0e1a33);color:var(--rtd-white,#fff);font:800 12.5px/1 Manrope,system-ui,sans-serif;box-shadow:0 2px 8px color-mix(in srgb,var(--rtd-navy,#0e1a33) 35%,transparent);white-space:nowrap}
.rt-ux-pin:hover,.rt-ux-pin.is-on{background:var(--rtux-orange-aa);transform:scale(1.08)}
.rt-ux-cluster{display:grid;place-items:center;inline-size:44px;block-size:44px;border:3px solid var(--rtd-white,#fff);border-radius:50%;background:var(--rtd-orange,#ff4d12);color:var(--rtd-navy,#0e1a33);font:800 14px/1 Manrope,system-ui,sans-serif;box-shadow:0 3px 10px color-mix(in srgb,var(--rtd-navy,#0e1a33) 35%,transparent)}
.rt-ux-pop{display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px;inline-size:260px;font-family:Manrope,system-ui,sans-serif}
.rt-ux-pop__img{inline-size:72px;block-size:72px;border-radius:8px;object-fit:cover;background:var(--rtd-cool,#f4f6fa)}
.rt-ux-pop__t{display:block;margin:0 0 4px;font-size:14px;font-weight:800;line-height:1.25;color:var(--rtd-navy,#0e1a33);text-decoration:none}
.rt-ux-pop__m{margin:0 0 6px;font-size:12.5px;color:var(--rtd-slate,#5c6880)}
.rt-ux-pop__row{display:flex;align-items:center;justify-content:space-between;gap:8px}
.rt-ux-pop__p{font-size:15px;font-weight:800}
.leaflet-container{font-family:Manrope,system-ui,sans-serif}
.leaflet-popup-content{margin:12px}
.leaflet-container a.leaflet-popup-close-button{inline-size:32px;block-size:32px;font-size:22px;line-height:30px}
/* drawer + scrim (mobile) */
.rt-ux-scrim{position:fixed;inset:0;z-index:1040;background:color-mix(in srgb,var(--rtd-navy,#0e1a33) 55%,transparent);animation:rtux-fade-in .18s ease both}
body.rt-ux-lock{overflow:hidden}
.rt-ux-railclose{display:none;margin-inline-start:8px;inline-size:44px;block-size:44px;border:0;border-radius:50%;background:var(--rtd-cool,#f4f6fa);color:var(--rtd-navy,#0e1a33);font-size:26px;line-height:1;cursor:pointer}
.rt-ux-railfoot{display:none}
@media (max-width:960px){
  .rt-ux-filterbtn{display:inline-flex}
  body.rt-ux-arch .rt-rail{position:fixed;inset:auto 0 0 0;z-index:1050;max-block-size:88vh;overflow:auto;overscroll-behavior:contain;margin:0;padding:0 18px;border-radius:18px 18px 0 0;border-width:0;background:var(--rtd-white,#fff);box-shadow:0 -12px 40px color-mix(in srgb,var(--rtd-navy,#0e1a33) 30%,transparent);transform:translateY(105%);visibility:hidden;transition:transform .26s var(--rtux-ease),visibility 0s .26s}
  body.rt-ux-arch .rt-rail.is-open{transform:none;visibility:visible;transition:transform .26s var(--rtux-ease)}
  body.rt-ux-arch .rt-rail__top{position:sticky;inset-block-start:0;z-index:2;padding-block:12px;background:var(--rtd-white,#fff);border-block-end:1px solid var(--rtd-line,#e4e8f0)}
  .rt-ux-railclose{display:inline-grid;place-items:center}
  .rt-ux-railfoot{display:block;position:sticky;inset-block-end:0;margin-inline:-18px;padding:12px 18px calc(12px + env(safe-area-inset-bottom));background:var(--rtd-white,#fff);border-block-start:1px solid var(--rtd-line,#e4e8f0)}
  body.rt-ux-arch .rt-sortbar{gap:8px}
  body.rt-ux-arch .rt-sortbar .rt-filterchips{order:5;flex:1 0 100%;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-block-end:2px}
  body.rt-ux-arch .rt-sortbar .rt-filterchips::-webkit-scrollbar{display:none}
  .rt-ux-aud{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:-3vw;padding-inline:3vw}
  .rt-ux-aud::-webkit-scrollbar{display:none}
  .rt-ux-aud .rt-filterchip,.rt-ux-aud__l{flex:none;white-space:nowrap}
}
.rt-ux-views__t{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.rt-ux-views__b{position:relative}
.rt-ux-views__b::before{content:"";inline-size:18px;block-size:18px;background:currentColor;-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.rt-ux-views__b--grid{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 3h8v8H3zM13 3h8v8h-8zM3 13h8v8H3zM13 13h8v8h-8z'/%3E%3C/svg%3E")}
.rt-ux-views__b--list{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 4h18v4H3zM3 10h18v4H3zM3 16h18v4H3z'/%3E%3C/svg%3E")}
.rt-ux-views__b--map{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5.2 7 13 7 13s7-7.8 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.500a2.500 2.500 0 0 1 0 5z'/%3E%3C/svg%3E")}
.leaflet-control-attribution{padding:0 4px;font-size:11px}
.leaflet-control-attribution a{display:inline-block;padding:7px 3px}

/* ---- 20-compare.css ---- */
/* ============ compare ============ */
.rt-ux-cmp{position:absolute;inset-block-end:8px;inset-inline-start:8px;z-index:2;display:inline-flex;align-items:center;gap:7px;min-block-size:32px;padding:0 11px 0 8px;border:0;border-radius:999px;background:color-mix(in srgb,var(--rtd-white,#fff) 94%,transparent);color:var(--rtd-navy,#0e1a33);font:inherit;font-size:12.5px;font-weight:800;cursor:pointer;box-shadow:0 1px 4px color-mix(in srgb,var(--rtd-navy,#0e1a33) 18%,transparent);transition:background .16s ease,color .16s ease}
.rt-ux-cmp::after{content:"";position:absolute;inset:-6px -4px}
.rt-ux-cmp:hover{background:var(--rtd-white,#fff)}
@media (hover:hover){.rt-ux-cmp:not([aria-pressed="true"]){opacity:0;transform:translateY(4px);transition:opacity .16s ease,transform .16s ease,background .16s ease}.rt-card:hover .rt-ux-cmp,.rt-card:focus-within .rt-ux-cmp,.rt-ux-cmp:focus-visible{opacity:1;transform:none}}
.rt-ux-cmp__box{display:inline-grid;place-items:center;inline-size:16px;block-size:16px;border:2px solid var(--rtd-navy,#0e1a33);border-radius:4px;background:var(--rtd-white,#fff)}
.rt-ux-cmp[aria-pressed="true"]{background:var(--rtd-navy,#0e1a33);color:var(--rtd-white,#fff)}
.rt-ux-cmp[aria-pressed="true"] .rt-ux-cmp__box{border-color:var(--rtd-white,#fff);background:var(--rtd-orange,#ff4d12)}
.rt-ux-cmp[aria-pressed="true"] .rt-ux-cmp__box::before{content:"";inline-size:8px;block-size:4px;border:solid var(--rtd-white,#fff);border-width:0 0 2px 2px;transform:rotate(-45deg) translate(1px,-1px)}
.rt-ux-tray{position:fixed;inset-inline:0;inset-block-end:0;z-index:1030;padding:10px 0 calc(10px + env(safe-area-inset-bottom));background:var(--rtd-white,#fff);border-block-start:1px solid var(--rtd-line,#e4e8f0);box-shadow:0 -8px 24px color-mix(in srgb,var(--rtd-navy,#0e1a33) 12%,transparent);animation:rtux-up .22s var(--rtux-ease)}
.rt-ux-tray__in{display:flex;align-items:center;gap:14px;inline-size:min(1280px,94vw);margin-inline:auto}
.rt-ux-tray__lab{flex:none;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--rtd-slate,#5c6880)}
.rt-ux-tray__list{display:flex;flex:1;gap:10px;min-inline-size:0;margin:0;padding:0;list-style:none;overflow-x:auto}
.rt-ux-tray__it{display:flex;align-items:center;gap:8px;flex:0 1 240px;min-inline-size:150px;padding:4px 4px 4px 4px;border:1px solid var(--rtd-line,#e4e8f0);border-radius:10px;background:var(--rtd-cool,#f4f6fa)}
.rt-ux-tray__it--empty{justify-content:center;color:var(--rtd-slate,#5c6880);font-size:13px;border-style:dashed;background:transparent;min-block-size:48px}
.rt-ux-tray__img{inline-size:40px;block-size:40px;border-radius:7px;object-fit:cover;flex:none}
.rt-ux-tray__tt{flex:1;min-inline-size:0;font-size:13px;font-weight:700;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rt-ux-tray__x{flex:none;inline-size:44px;block-size:44px;border:0;border-radius:8px;background:transparent;color:var(--rtd-slate,#5c6880);font-size:22px;cursor:pointer}
.rt-ux-tray__x:hover{color:var(--rtd-navy,#0e1a33);background:var(--rtd-white,#fff)}
.rt-ux-tray__clear{flex:none;min-block-size:44px;padding:0 10px;border:0;background:none;color:var(--rtd-ink,#37405a);font:inherit;font-size:13.5px;font-weight:700;text-decoration:underline;cursor:pointer}
.rt-ux-tray__go{flex:none}
.rt-ux-tray__go:disabled{opacity:.55;cursor:not-allowed}
body.rt-ux-tray-on{padding-block-end:84px}
body.rt-ux-tray-on .rt-top{inset-block-end:98px}
@media (max-width:700px){.rt-ux-tray__lab{display:none}.rt-ux-tray__it{flex-basis:130px;min-inline-size:120px}.rt-ux-tray__tt{font-size:12px}.rt-ux-tray__it--empty{display:none}.rt-ux-tray__img{display:none}}
.rt-ux-cmpt__wrap{overflow:auto;padding:0 18px}
.rt-ux-cmpt{inline-size:100%;min-inline-size:560px;border-collapse:separate;border-spacing:0;table-layout:fixed}
.rt-ux-cmpt__corner{inline-size:132px}
.rt-ux-cmpt__tour{padding:14px 10px 10px;text-align:start;vertical-align:top;position:sticky;inset-block-start:0;background:var(--rtd-white,#fff);z-index:1}
.rt-ux-cmpt__img{inline-size:100%;aspect-ratio:3/2;object-fit:cover;border-radius:10px;background:var(--rtd-cool,#f4f6fa);margin-block-end:8px}
.rt-ux-cmpt__name{display:block;font-size:15px;font-weight:800;line-height:1.25;color:var(--rtd-navy,#0e1a33);text-decoration:none}
.rt-ux-cmpt__name:hover{text-decoration:underline}
.rt-ux-cmpt__rm{margin-block-start:4px;min-block-size:44px;padding:0;border:0;background:none;color:var(--rtd-slate,#5c6880);font:inherit;font-size:13px;text-decoration:underline;cursor:pointer}
.rt-ux-cmpt__h{padding:12px 10px 12px 0;text-align:start;vertical-align:top;font-size:12px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--rtd-slate,#5c6880);border-block-start:1px solid var(--rtd-line,#e4e8f0)}
.rt-ux-cmpt__c{padding:12px 10px;vertical-align:top;font-size:14px;line-height:1.45;color:var(--rtd-ink,#37405a);border-block-start:1px solid var(--rtd-line,#e4e8f0)}
.rt-ux-cmpt__c.is-best{background:color-mix(in srgb,var(--rtd-green,#00a66c) 8%,var(--rtd-white,#fff))}
.rt-ux-cmpt__flag{display:inline-block;margin-inline-start:8px;padding:1px 8px;border-radius:999px;background:var(--rtux-green-aa);color:#fff;font-size:11px;font-weight:800;vertical-align:2px;white-space:nowrap}
.rt-ux-cmpt__price{font-size:18px;color:var(--rtd-navy,#0e1a33)}
.rt-ux-cmpt__was{margin-inline-start:8px;color:var(--rtd-slate,#5c6880);font-size:13px}
.rt-ux-cmpt__list{margin:0;padding-inline-start:18px}
.rt-ux-cmpt__ctarow .rt-ux-cmpt__c{border-block-start:0}
@media (max-width:700px){.rt-ux-cmpt__corner{inline-size:92px}.rt-ux-cmpt{min-inline-size:520px}}
@media print{body>*:not(dialog){display:none!important}dialog.rt-ux-dialog{position:static;max-inline-size:none;inline-size:100%;box-shadow:none}dialog.rt-ux-dialog::backdrop{display:none}.rt-ux-dialog__close,.rt-ux-dialog__print,.rt-ux-cmpt__rm,.rt-ux-cmpt__ctarow{display:none!important}.rt-ux-cmpt__wrap{overflow:visible}}

/* native dialog */
dialog.rt-ux-dialog{position:fixed;inset:0;margin:auto;block-size:fit-content;padding:0;border:0;border-radius:18px;background:var(--rtd-white,#fff);color:var(--rtd-navy,#0e1a33);box-shadow:var(--rtux-shadow);inline-size:min(560px,calc(100vw - 24px));max-inline-size:none;max-block-size:calc(100vh - 24px);overflow:hidden}
dialog.rt-ux-dialog--lg{inline-size:min(880px,calc(100vw - 24px))}
dialog.rt-ux-dialog--xl{inline-size:min(1040px,calc(100vw - 24px))}
dialog.rt-ux-dialog--sm{inline-size:min(460px,calc(100vw - 24px))}
dialog.rt-ux-dialog[open]{display:flex;animation:rtux-up .22s var(--rtux-ease)}
dialog.rt-ux-dialog::backdrop{background:color-mix(in srgb,var(--rtd-navy,#0e1a33) 62%,transparent);animation:rtux-fade-in .2s ease both}
.rt-ux-dialog__box{display:flex;flex-direction:column;inline-size:100%;min-block-size:0;max-block-size:calc(100vh - 24px)}
.rt-ux-dialog__head{display:flex;align-items:center;gap:10px;padding:14px 14px 12px 20px;border-block-end:1px solid var(--rtd-line,#e4e8f0)}
.rt-ux-dialog__title{flex:1;margin:0;font-size:19px;line-height:1.25;letter-spacing:-.02em}
.rt-ux-dialog__close{flex:none;display:grid;place-items:center;inline-size:44px;block-size:44px;padding:0;border:0;border-radius:50%;background:var(--rtd-cool,#f4f6fa);color:var(--rtd-navy,#0e1a33);font-size:26px;line-height:1;cursor:pointer;min-inline-size:0}
.rt-ux-dialog__close:hover{background:var(--rtd-line,#e4e8f0)}
.rt-ux-dialog__print{flex:none;min-block-size:44px;padding:0 14px;border:1px solid var(--rtd-line,#e4e8f0);border-radius:999px;background:var(--rtd-white,#fff);color:var(--rtd-navy,#0e1a33);font:inherit;font-size:13.5px;font-weight:700;cursor:pointer}
.rt-ux-dialog__body{overflow:auto;overscroll-behavior:contain}
.rt-ux-dialog__note{margin:0;padding:10px 20px 16px;font-size:12.5px;color:var(--rtd-slate,#5c6880)}
@media (max-width:700px){dialog.rt-ux-dialog{inline-size:100vw;max-inline-size:100vw;margin:auto 0 0;inset:auto 0 0 0;border-radius:18px 18px 0 0;max-block-size:94vh}.rt-ux-dialog__box{max-block-size:94vh}}
@media (prefers-reduced-motion:reduce){dialog.rt-ux-dialog[open],dialog.rt-ux-dialog::backdrop{animation:none}}
/* quick view */
.rt-ux-qv{position:absolute;inset-block-end:8px;inset-inline-end:8px;z-index:2;display:inline-flex;align-items:center;min-block-size:32px;padding:0 12px;border:0;border-radius:999px;background:color-mix(in srgb,var(--rtd-navy,#0e1a33) 88%,transparent);color:var(--rtd-white,#fff);font:inherit;font-size:12.5px;font-weight:800;cursor:pointer;min-inline-size:0}
.rt-ux-qv::after{content:"";position:absolute;inset:-6px -4px}
@media (hover:hover){.rt-ux-qv{opacity:0;transform:translateY(4px);transition:opacity .16s ease,transform .16s ease}.rt-card:hover .rt-ux-qv,.rt-card:focus-within .rt-ux-qv,.rt-ux-qv:focus-visible{opacity:1;transform:none}}
.rt-ux-qvw{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}
.rt-ux-qvw__fig{position:relative;min-block-size:280px;background:var(--rtd-cool,#f4f6fa)}
.rt-ux-qvw__img{position:absolute;inset:0;inline-size:100%;block-size:100%;object-fit:cover}
.rt-ux-qvw__side{display:flex;flex-direction:column;gap:12px;padding:20px}
.rt-ux-qvw__facts{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.rt-ux-qvw__fact{padding:4px 11px;border-radius:999px;background:var(--rtd-cool,#f4f6fa);font-size:13px;font-weight:700;color:var(--rtd-ink,#37405a)}
.rt-ux-qvw__hl{margin:0;padding-inline-start:18px;font-size:14.5px;line-height:1.5;color:var(--rtd-ink,#37405a)}
.rt-ux-qvw__ok{margin:0;font-size:13.5px;font-weight:800;color:var(--rtux-green-aa)}
.rt-ux-qvw__low{margin:0;font-size:13.5px;font-weight:800;color:var(--rtd-orange-dark,#c93500)}
.rt-ux-qvw__buy{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-block-start:auto;padding-block-start:14px;border-block-start:1px solid var(--rtd-line,#e4e8f0)}
.rt-ux-qvw__price{display:flex;align-items:baseline;gap:6px;color:var(--rtd-slate,#5c6880);font-size:13px}
.rt-ux-qvw__price b{font-size:26px;letter-spacing:-.03em;color:var(--rtd-navy,#0e1a33)}
.rt-ux-qvw__price s{font-size:14px}
.rt-ux-qvw__save{align-self:flex-start;min-block-size:44px;padding:0;border:0;background:none;color:var(--rtd-ink,#37405a);font:inherit;font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
@media (max-width:700px){.rt-ux-qvw{grid-template-columns:minmax(0,1fr)}.rt-ux-qvw__fig{min-block-size:0;aspect-ratio:16/10}}

/* cookie preferences + newsletter prompt */
.rt-consent__pref{flex:none;min-block-size:44px;padding:0 10px;border:0;background:none;color:inherit;font:inherit;font-size:13px;text-decoration:underline;cursor:pointer;min-inline-size:0}
.rt-ux-footlink{margin-inline-start:10px;padding:0;border:0;background:none;color:inherit;font:inherit;text-decoration:underline;cursor:pointer;min-inline-size:0;min-block-size:24px}
.rt-ux-prefs{padding:16px 20px 22px}
.rt-ux-prefs__lead{margin:0 0 14px;color:var(--rtd-ink,#37405a)}
.rt-ux-prefs__row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-block-start:1px solid var(--rtd-line,#e4e8f0)}
.rt-ux-prefs__tx{display:flex;flex-direction:column;gap:2px}.rt-ux-prefs__tx span{font-size:13.5px;color:var(--rtd-slate,#5c6880)}
.rt-ux-prefs__note{margin:6px 0 16px;padding-block-start:14px;border-block-start:1px solid var(--rtd-line,#e4e8f0);font-size:13px;color:var(--rtd-slate,#5c6880)}
.rt-ux-prefs__acts{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.rt-ux-prefs__wipe{min-block-size:44px;padding:0;border:0;background:none;color:var(--rtd-ink,#37405a);font:inherit;font-size:13.5px;font-weight:700;text-decoration:underline;cursor:pointer;min-inline-size:0}
.rt-ux-switch{position:relative;flex:none;inline-size:52px;block-size:32px}
.rt-ux-switch input{position:absolute;inset:0;inline-size:100%;block-size:100%;margin:0;opacity:0;cursor:pointer;z-index:1}
.rt-ux-switch__ui{position:absolute;inset:0;border-radius:999px;background:var(--rtd-slate,#5c6880);transition:background .18s ease}
.rt-ux-switch__ui::after{content:"";position:absolute;inset-block-start:3px;inset-inline-start:3px;inline-size:26px;block-size:26px;border-radius:50%;background:var(--rtd-white,#fff);transition:transform .18s ease}
.rt-ux-switch input:checked+.rt-ux-switch__ui{background:var(--rtux-green-aa)}
.rt-ux-switch input:checked+.rt-ux-switch__ui::after{transform:translateX(20px)}
.rt-ux-switch input:disabled+.rt-ux-switch__ui{opacity:.7}
.rt-ux-switch input:focus-visible+.rt-ux-switch__ui{outline:3px solid var(--rtd-orange,#ff4d12);outline-offset:2px}
.rt-ux-nl{padding:16px 20px 22px}.rt-ux-nl__lead{margin:0 0 14px;color:var(--rtd-ink,#37405a)}
.rt-ux-nl__no{display:block;margin:10px auto 0;min-block-size:44px;padding:0 10px;border:0;background:none;color:var(--rtd-slate,#5c6880);font:inherit;font-size:13.5px;text-decoration:underline;cursor:pointer}
.rt-ux-nl .ff-t-container{display:block!important}.rt-ux-nl .ff-t-cell{inline-size:100%!important;flex-basis:auto!important;padding:0!important}.rt-ux-nl .ff-btn-submit{inline-size:100%;min-block-size:48px}.rt-ux-nl .ff-el-group{margin-block-end:10px}
@media (hover:none){.rt-ux-qv{display:none}}

/* ---- 30-tour.css ---- */
/* ============ tour page 2.0 ============ */
.rt-ux-ico{flex:none}
.rt-skel--facts{block-size:84px;border-radius:14px}
.rt-ux-actions{display:flex;flex-wrap:wrap;gap:8px;margin-block-start:14px}
.rt-ux-act{display:inline-flex;align-items:center;gap:8px;min-block-size:44px;padding:0 16px;border:1px solid var(--rtd-line,#e4e8f0);border-radius:999px;background:var(--rtd-white,#fff);color:var(--rtd-navy,#0e1a33);font:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .12s ease}
.rt-ux-act:hover{border-color:var(--rtd-navy,#0e1a33);background:var(--rtd-cool,#f4f6fa)}
.rt-ux-act:active{transform:translateY(1px)}
.rt-ux-act[aria-pressed="true"]{background:var(--rtd-navy,#0e1a33);color:var(--rtd-white,#fff);border-color:var(--rtd-navy,#0e1a33)}
/* sticky section nav + mini buy */
.rt-ux-tnav{position:sticky;inset-block-start:var(--rt-hh,76px);z-index:45;margin-block:8px 18px;background:var(--rtd-white,#fff);border-block:1px solid var(--rtd-line,#e4e8f0)}
.rt-ux-tnav.is-stuck{box-shadow:0 8px 16px -10px color-mix(in srgb,var(--rtd-navy,#0e1a33) 30%,transparent)}
.rt-ux-tnav__in{display:flex;align-items:center;gap:16px;min-block-size:56px}
.rt-ux-tnav__nav{flex:1;min-inline-size:0;overflow-x:auto;scrollbar-width:none}
.rt-ux-tnav__nav::-webkit-scrollbar{display:none}
.rt-ux-tnav__list{display:flex;gap:4px;margin:0;padding:0;list-style:none}
.rt-ux-tnav__a{position:relative;display:inline-flex;align-items:center;min-block-size:56px;padding:0 14px;color:var(--rtd-slate,#5c6880);font-size:14.5px;font-weight:700;text-decoration:none;white-space:nowrap;transition:color .16s ease}
.rt-ux-tnav__a::after{content:"";position:absolute;inset-inline:14px;inset-block-end:0;block-size:3px;border-radius:3px 3px 0 0;background:var(--rtd-orange,#ff4d12);transform:scaleX(0);transition:transform .2s var(--rtux-ease)}
.rt-ux-tnav__a:hover{color:var(--rtd-navy,#0e1a33)}
.rt-ux-tnav__a[aria-current]{color:var(--rtd-navy,#0e1a33)}
.rt-ux-tnav__a[aria-current]::after{transform:none}
.rt-ux-tnav__buy{display:flex;align-items:center;gap:14px;flex:none;opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .2s ease,transform .2s ease}
.rt-ux-tnav__buy.is-on{opacity:1;transform:none;pointer-events:auto}
.rt-ux-tnav__price{font-size:14px;color:var(--rtd-slate,#5c6880)}
.rt-ux-tnav__price b{font-size:20px;color:var(--rtd-navy,#0e1a33);letter-spacing:-.02em}
.rt-ux-tnav__cta{min-block-size:44px}
@media (max-width:960px){.rt-ux-tnav__buy{display:none}.rt-ux-tnav__in{gap:0}}
html{scroll-padding-top:150px}
/* facts + why book */
.rt-ux-facts{margin-block-end:22px}
.rt-ux-facts__list{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(178px,1fr));gap:10px;margin:0}
.rt-ux-fact{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--rtd-line,#e4e8f0);border-radius:12px;background:var(--rtd-white,#fff)}
.rt-ux-fact__ico{display:grid;place-items:center;flex:none;inline-size:40px;block-size:40px;border-radius:50%;background:var(--rtd-orange-soft,#fff0eb);color:var(--rtd-orange-dark,#c93500)}
.rt-ux-fact__tx{display:flex;flex-direction:column;min-inline-size:0}
.rt-ux-fact__k{margin:0;font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--rtd-slate,#5c6880)}
.rt-ux-fact__v{margin:2px 0 0;font-size:14.5px;font-weight:700;line-height:1.3;color:var(--rtd-navy,#0e1a33)}
.rt-ux-why{margin-block-end:26px;padding:18px 20px;border-radius:14px;background:linear-gradient(120deg,color-mix(in srgb,var(--rtd-green,#00a66c) 9%,var(--rtd-white,#fff)),var(--rtd-white,#fff));border:1px solid color-mix(in srgb,var(--rtd-green,#00a66c) 22%,var(--rtd-line,#e4e8f0))}
.rt-ux-why__t{margin:0 0 10px!important;font-size:16px!important;letter-spacing:-.01em}
.rt-ux-why__list{display:flex;flex-wrap:wrap;gap:8px 22px;margin:0;padding:0;list-style:none}
.rt-ux-why__li{display:flex;align-items:center;gap:8px;font-size:14.5px;font-weight:600;color:var(--rtd-ink,#37405a)}
.rt-ux-why__li svg{color:var(--rtux-green-aa)}
/* booking notices */
.rt-ux-notes{display:grid;gap:8px;margin:0;padding:12px 16px 0;list-style:none}
.rt-ux-note{display:flex;align-items:flex-start;gap:9px;padding:9px 12px;border-radius:10px;background:var(--rtd-cool,#f4f6fa);font-size:13.5px;font-weight:700;line-height:1.35;color:var(--rtd-navy,#0e1a33)}
.rt-ux-note svg{margin-block-start:1px}
.rt-ux-note--down{background:color-mix(in srgb,var(--rtd-green,#00a66c) 12%,var(--rtd-white,#fff));color:var(--rtux-green-aa)}
.rt-ux-note--deal{background:var(--rtd-orange-soft,#fff0eb);color:var(--rtd-orange-dark,#c93500)}
.rt-ux-note--low{background:color-mix(in srgb,var(--rtd-yellow,#ffc400) 22%,var(--rtd-white,#fff))}
.rt-ux-simbtn{display:block;inline-size:calc(100% - 32px);margin:10px 16px 0;min-block-size:44px;border:0;background:none;color:var(--rtd-ink,#37405a);font:inherit;font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.rt-ux-linkbtn{border:0;background:none;font:inherit;cursor:pointer;min-block-size:44px}
/* mobile bottom booking bar */
.rt-ux-sbar{position:fixed;inset-inline:0;inset-block-end:0;z-index:1020;padding:10px 0 calc(10px + env(safe-area-inset-bottom));background:var(--rtd-white,#fff);border-block-start:1px solid var(--rtd-line,#e4e8f0);box-shadow:0 -8px 24px color-mix(in srgb,var(--rtd-navy,#0e1a33) 12%,transparent);animation:rtux-up .22s var(--rtux-ease)}
.rt-ux-sbar__in{display:flex;align-items:center;justify-content:space-between;gap:14px;inline-size:min(1280px,94vw);margin-inline:auto}
.rt-ux-sbar__p{display:flex;align-items:baseline;gap:6px;color:var(--rtd-slate,#5c6880);font-size:13px}
.rt-ux-sbar__p b{font-size:22px;letter-spacing:-.02em;color:var(--rtd-navy,#0e1a33)}
.rt-ux-sbar__cta{min-block-size:48px;padding-inline:22px}
body.rt-ux-sbar-on{padding-block-end:76px}
@media (max-width:960px){body.rt-ux-tour .rt-top{inset-block-end:90px}}
body.rt-ux-sbar-on .rt-ux-tray{inset-block-end:70px}
@media (min-width:961px){.rt-ux-sbar{display:none!important}}
.rt-ux-recent{padding-block-start:0}
/* print: itinerary only */
@media print{
  body.rt-ux-tour .rt-util,body.rt-ux-tour .rt-header,body.rt-ux-tour .rt-footer,body.rt-ux-tour .rt-tgal,body.rt-ux-tour .rt-tlb,body.rt-ux-tour .rt-tshell__aside,body.rt-ux-tour .rt-ux-tnav,body.rt-ux-tour .rt-ux-actions,body.rt-ux-tour .rt-ux-sbar,body.rt-ux-tour .rt-ux-tray,body.rt-ux-tour .rt-consent,body.rt-ux-tour .rt-crumbs,body.rt-ux-tour main>section.rt-section,body.rt-ux-tour .rt-topcard,body.rt-ux-tour .rt-accordion{display:none!important}
  body.rt-ux-tour .rt-tshell{display:block}
  body.rt-ux-tour .rt-tshell__main{inline-size:100%}
  body.rt-ux-tour{color:var(--rtd-black,#000);padding:0!important}
  body.rt-ux-tour .rt-thd__title{font-size:26px}
  body.rt-ux-tour .rt-tline__item{break-inside:avoid}
  body.rt-ux-tour .rt-ux-fact,body.rt-ux-tour .rt-ux-why{border:1px solid var(--rtd-line,#ccc);background:none}
  body.rt-ux-tour main::after{content:"rometourz.com " attr(data-print-url);display:block;margin-top:16px;font-size:12px}
}

.rt-ux-enqw{padding:16px 18px 20px}
.rt-ux-enqw__tour{margin:0 0 10px;font-size:14px;font-weight:700;color:var(--rtd-slate,#5c6880)}
.rt-ux-dialog--enq .rt-enq__title{display:none}
.rt-ux-dialog--enq .rt-enq{margin:0;padding:0;border:0;box-shadow:none}
.rt-tlb.is-zoomed .rt-tlb__nav{opacity:.35}
@media (max-width:520px){.rt-ux-act__more{display:none}.rt-ux-actions{gap:6px;flex-wrap:nowrap}.rt-ux-act{padding:0 12px;gap:6px;font-size:13.5px;flex:1 1 0;justify-content:center;min-inline-size:0}}

/* ---- 40-wish.css ---- */
/* ============ wishlist 2.0 ============ */
body.rt-ux-wlpage .rt-wl__list,body.rt-ux-wlpage .rt-wl__empty{display:none!important}
.rt-ux-wl__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;margin-block-end:20px}
.rt-ux-wl__seg{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.rt-ux-wl__lab{font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--rtd-slate,#5c6880);margin-inline-end:4px}
.rt-ux-wl__acts{display:flex;flex-wrap:wrap;gap:8px}
.rt-ux-wl__shared{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin-block-end:18px;padding:14px 18px;border-radius:12px;background:var(--rtd-cool,#f4f6fa);border:1px solid var(--rtd-line,#e4e8f0)}
.rt-ux-wl__shared p{margin:0;font-weight:700}
.rt-ux-wl__link{font-weight:700;color:var(--rtd-ink,#37405a)}
.rt-ux-wl__notes{display:grid;gap:8px;margin:0 0 20px;padding:0;list-style:none}
.rt-ux-wl__note{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 14px;padding:12px 16px;border-radius:12px;font-size:14.5px;font-weight:700}
.rt-ux-wl__note a{font-weight:800;color:inherit}
.rt-ux-wl__note--drop{background:color-mix(in srgb,var(--rtd-green,#00a66c) 12%,var(--rtd-white,#fff));color:var(--rtux-green-aa)}
.rt-ux-wl__note--deal{background:var(--rtd-orange-soft,#fff0eb);color:var(--rtd-orange-dark,#c93500)}
.rt-ux-wl__grp{margin-block-end:30px}
.rt-ux-wl__gh{display:flex;align-items:baseline;gap:10px;margin:0 0 14px!important;font-size:20px!important}
.rt-ux-wl__gh small{font-size:13px;font-weight:700;color:var(--rtd-slate,#5c6880)}

.rt-ux-wl__empty{padding:34px 24px;border:1px dashed var(--rtd-line,#e4e8f0);border-radius:16px;text-align:center}
.rt-ux-wl__et{margin:0 0 8px!important}
.rt-ux-wl__empty .rt-cluster{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-block:16px 28px}
.rt-ux-wl__sub{margin:10px 0 14px!important;text-align:start;font-size:17px!important}
.rt-ux-wl__empty .rt-grid-4{text-align:start}
[data-rt-listmail]{margin-block-start:24px;padding:22px;border:1px solid var(--rtd-line,#e4e8f0);border-radius:14px;background:var(--rtd-cool,#f4f6fa)}
@media print{body.rt-ux-wlpage .rt-ux-wl__bar,body.rt-ux-wlpage .rt-cmp,body.rt-ux-wlpage .rt-card__wish,body.rt-ux-wlpage .rt-ux-cmp,body.rt-ux-wlpage .rt-card__book{display:none!important}}

/* ---- 50-plan.css ---- */
/* ============ planner quiz ============ */
.rt-quiz__head.is-compact{padding-block:18px}
.rt-quiz__head.is-compact .rt-quiz__lead,.rt-quiz__head.is-compact .rt-quiz__kicker{display:none}
.rt-quiz__q[hidden]{display:none}
.rt-quiz__q:not([hidden]){animation:rtux-up .24s var(--rtux-ease)}
@media (prefers-reduced-motion:reduce){.rt-quiz__q:not([hidden]){animation:none}}
.rt-quizr__stop .rt-quizr__link{display:contents}
@media (max-width:520px){.rt-quizr__days{grid-template-columns:minmax(0,1fr)}.rt-quizr__stop{grid-template-columns:56px minmax(0,1fr) auto;padding-inline:12px}.rt-quizr__thumb{inline-size:56px;block-size:50px}}
@media print{
  body.rt-ux-planpage .rt-util,body.rt-ux-planpage .rt-header,body.rt-ux-planpage .rt-footer,body.rt-ux-planpage .rt-ph,body.rt-ux-planpage .rt-quiz__body,body.rt-ux-planpage .rt-quizr__acts,body.rt-ux-planpage .rt-quizr__mail,body.rt-ux-planpage .rt-quizr__redo,body.rt-ux-planpage .rt-quizr__swap,body.rt-ux-planpage .rt-pl,body.rt-ux-planpage .rt-consent,body.rt-ux-planpage .rt-top,body.rt-ux-planpage .rt-quiz__lead,body.rt-ux-planpage main>.rt-page>.rt-section:not(.rt-quiz),body.rt-ux-planpage main>.rt-page>.rt-wrap{display:none!important}
  body.rt-ux-planpage .rt-quiz__card{border:0;box-shadow:none}
  body.rt-ux-planpage .rt-quiz__head{background:none;color:var(--rtd-black,#000);padding:0}
  body.rt-ux-planpage .rt-quiz__title{color:var(--rtd-black,#000)}
  body.rt-ux-planpage .rt-quizr{padding:0}
  body.rt-ux-planpage .rt-quizr__day{break-inside:avoid}
  body.rt-ux-planpage .rt-quizr__days{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* ---- 60-guide.css ---- */
/* ============ guide pages ============ */
.rt-ux-readtime::before{content:"\00b7";margin-inline-end:8px}
.rt-ux-prog{position:fixed;inset-block-start:0;inset-inline:0;z-index:1010;block-size:4px;background:transparent;pointer-events:none}
.rt-ux-prog__f{display:block;block-size:100%;background:var(--rtd-orange,#ff4d12);transform:scaleX(0);transform-origin:0 50%}
.rt-ux-toc{margin-block-end:18px;padding:16px 18px;border:1px solid var(--rtd-line,#e4e8f0);border-radius:14px;background:var(--rtd-white,#fff)}
.rt-ux-toc__t{margin:0 0 8px!important;font-size:12px!important;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--rtd-slate,#5c6880)}
.rt-ux-toc__list{max-block-size:54vh;overflow:auto;margin:0;padding:0;list-style:none;display:grid;gap:2px}
.rt-ux-toc__a{display:block;min-block-size:40px;padding:9px 10px;border-radius:8px;border-inline-start:3px solid transparent;color:var(--rtd-ink,#37405a);font-size:14.5px;font-weight:700;line-height:1.3;text-decoration:none}
.rt-ux-toc__a:hover{background:var(--rtd-cool,#f4f6fa);color:var(--rtd-navy,#0e1a33)}
.rt-ux-toc__a[aria-current]{border-inline-start-color:var(--rtd-orange,#ff4d12);background:var(--rtd-orange-soft,#fff0eb);color:var(--rtd-navy,#0e1a33)}
.rt-ux-toc--m{display:none}
.rt-ux-toc--m summary{cursor:pointer;min-block-size:44px;display:flex;align-items:center}
@media (min-width:961px){.rt-ux-aside .rt-ux-toc:not(.rt-ux-toc--m){position:sticky;inset-block-start:calc(var(--rt-hh,76px) + 16px)}}
@media (max-width:960px){.rt-ux-aside>.rt-ux-toc:not(.rt-ux-toc--m){display:none}.rt-ux-toc--m{display:block}}
.rt-ux-stopcount{margin:0 0 14px;padding:8px 14px;border-radius:999px;background:color-mix(in srgb,var(--rtd-green,#00a66c) 12%,var(--rtd-white,#fff));color:var(--rtux-green-aa);font-size:13.5px;font-weight:800;inline-size:fit-content}
.rt-tline__item.is-done .rt-tline__title,.rt-tline__item.is-done .rt-tline__text{opacity:.55;text-decoration:line-through}
.rt-ux-stop{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;margin-block-start:6px}
.rt-ux-stop__chk{display:inline-flex;align-items:center;gap:8px;min-block-size:44px;padding:0 4px;border:0;background:none;color:var(--rtd-ink,#37405a);font:inherit;font-size:13.5px;font-weight:700;cursor:pointer}
.rt-ux-stop__box{display:inline-grid;place-items:center;inline-size:20px;block-size:20px;border:2px solid var(--rtd-slate,#5c6880);border-radius:6px;background:var(--rtd-white,#fff);transition:background .16s ease,border-color .16s ease}
.rt-ux-stop__chk[aria-pressed="true"] .rt-ux-stop__box{border-color:var(--rtux-green-aa);background:var(--rtux-green-aa)}
.rt-ux-stop__chk[aria-pressed="true"] .rt-ux-stop__box::before{content:"";inline-size:9px;block-size:5px;border:solid var(--rtd-white,#fff);border-width:0 0 2.5px 2.5px;transform:rotate(-45deg) translate(1px,-1px)}
.rt-ux-stop__map{display:inline-flex;align-items:center;min-block-size:44px;font-size:13.5px;font-weight:700;color:var(--rtd-orange-dark,#c93500)}
.rt-ux-inline{margin:22px 0 30px;padding:14px;border:1px solid var(--rtd-line,#e4e8f0);border-radius:16px;background:var(--rtd-cool,#f4f6fa)}
.rt-ux-inline__k{display:block;margin:0 0 10px 4px;font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--rtd-slate,#5c6880)}
.rt-ux-inline .rt-card{display:grid;grid-template-columns:190px minmax(0,1fr) auto;grid-template-areas:"m b f"}
.rt-ux-inline .rt-card__media{grid-area:m;aspect-ratio:auto;min-block-size:130px}
.rt-ux-inline .rt-card__body{grid-area:b;align-self:center}
.rt-ux-inline .rt-card__foot{grid-area:f;flex-direction:column;align-items:flex-end;justify-content:center;gap:10px;border-block-start:0;border-inline-start:1px solid var(--rtd-line,#e4e8f0);padding:14px}
.rt-ux-inline .rt-ux-cmp{display:none}
@media (max-width:620px){.rt-ux-inline .rt-card{grid-template-columns:104px minmax(0,1fr);grid-template-areas:"m b" "f f"}.rt-ux-inline .rt-card__foot{flex-direction:row;justify-content:space-between;align-items:center;border-inline-start:0;border-block-start:1px solid var(--rtd-line,#e4e8f0)}}
@media print{
  body.rt-ux-guide .rt-util,body.rt-ux-guide .rt-header,body.rt-ux-guide .rt-footer,body.rt-ux-guide .rt-crumbs,body.rt-ux-guide .rt-shell__aside,body.rt-ux-guide .rt-ux-actions,body.rt-ux-guide .rt-ux-prog,body.rt-ux-guide .rt-ux-toc--m,body.rt-ux-guide .rt-consent,body.rt-ux-guide .rt-top,body.rt-ux-guide main>section.rt-section,body.rt-ux-guide .rt-ux-stop,body.rt-ux-guide .rt-ux-tray{display:none!important}
  body.rt-ux-guide .rt-shell{display:block}
  body.rt-ux-guide .rt-ux-inline{break-inside:avoid;border:1px solid var(--rtd-line,#ccc);background:none}
  body.rt-ux-guide .rt-ux-inline .rt-card__book,body.rt-ux-guide .rt-ux-inline .rt-card__wish{display:none}
  body.rt-ux-guide .rt-tline__item{break-inside:avoid}
}
.rt-ux-qvw__hl,.rt-ux-cmpt__list{list-style:disc}
body.rt-ux-toc-on .rt-jump{display:none}

/* ---- 70-reserve.css ---- */
/* ============ reserved space (zero layout shift while the UX layer builds its blocks) ============
   PHP adds body.rt-ux-pre-* ; the module adds the real block and the class that ends the reservation in the same frame. */
/* tour page */
body.rt-ux-pre-tour:not(.rt-ux-tour) .rt-thd__head{padding-block-end:58px}
body.rt-ux-pre-tour:not(.rt-ux-tour) .rt-tshell{margin-block-start:84px}
body.rt-ux-pre-tour:not(.rt-ux-data) .rt-tshell__main{padding-block-start:308px}
@media (max-width:1080px){body.rt-ux-pre-tour:not(.rt-ux-data) .rt-tshell__main{padding-block-start:374px}}
@media (max-width:900px){body.rt-ux-pre-tour:not(.rt-ux-data) .rt-tshell__main{padding-block-start:306px}}
@media (max-width:520px){body.rt-ux-pre-tour:not(.rt-ux-data) .rt-tshell__main{padding-block-start:497px}}
/* guide page */
body.rt-ux-pre-guide:not(.rt-ux-guide) .rt-ghd{padding-block-end:58px}
@media (max-width:960px){body.rt-ux-pre-guide:not(.rt-ux-guide) .rt-shell__main{margin-block-start:104px}}
/* tours archive: audience row + status row + sticky padding */
body.rt-ux-pre-arch:not(.rt-ux-arch) .rt-sortbar{padding-block:10px;margin-block-end:116px}
@media (max-width:960px){body.rt-ux-pre-arch:not(.rt-ux-arch) .rt-sortbar{margin-block-end:128px}}
