.route-dashboard{--routes-red:var(--a4n-brand);--routes-red-deep:var(--a4n-brand-dark);--routes-gold:var(--a4n-accent);--routes-coral:#ff6b4a;--routes-map-sea:#fff7e9;--routes-map-line:#d91e2c;--routes-map-ink:#5b2024;overflow:clip}.route-dashboard .eyebrow{margin:0 0 .55rem;color:var(--routes-red-deep);font-size:.74rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.route-dashboard-hero h1{margin:.08em 0 .3em;font-size:clamp(3rem,6.8vw,6.25rem);line-height:.91;letter-spacing:-.065em}.route-dashboard-hero__lead{max-width:42rem;color:var(--a4n-muted);font-size:clamp(1.04rem,1.6vw,1.27rem);line-height:1.65}.route-dashboard-hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.65rem}.route-dashboard-map-section{padding:clamp(4.5rem,8vw,7.5rem) 0;background:radial-gradient(circle at 10% 15%,rgba(245,158,11,.18),transparent 24%),radial-gradient(circle at 88% 78%,rgba(217,30,44,.12),transparent 30%),var(--routes-map-sea)}.route-dashboard-section-heading{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.75fr);gap:clamp(1.5rem,5vw,4rem);align-items:end;margin-bottom:2rem}.route-dashboard-section-heading h2,.route-dashboard-overview h2{margin:.1em 0 0;font-size:clamp(2.1rem,4.6vw,4.2rem);line-height:.98;letter-spacing:-.052em}.route-dashboard-section-heading>p{margin:0;color:var(--a4n-muted);font-size:1.02rem;line-height:1.72}.route-dashboard-itinerary,.route-dashboard-preparation,.route-dashboard-gallery,.route-dashboard-related{padding:clamp(4rem,8vw,7rem) 0}.route-dashboard-overview,.route-dashboard-preparation,.route-dashboard-related{background:var(--a4n-canvas)}.route-dashboard-itinerary{background:var(--a4n-subtle)}.route-day-navigator{display:flex;flex-wrap:wrap;gap:.45rem}.route-day-navigator a{padding:.58rem .82rem;border:1px solid var(--a4n-border);border-radius:999px;background:var(--a4n-surface);color:var(--a4n-ink);font-size:.82rem;font-weight:790;text-decoration:none;cursor:pointer}.routes-v3-filters button.is-active,.route-day-navigator a:hover{border-color:var(--routes-red);background:var(--routes-red);color:#fff}.routes-v3-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.route-dashboard-empty{padding:2.5rem;border:1px dashed var(--a4n-border);border-radius:1.2rem;background:var(--a4n-surface);text-align:center}.routes-v3-planner-cta{padding:4rem 0;background:#111824;color:#fff}.routes-v3-planner-cta .container{display:flex;gap:2rem;align-items:center;justify-content:space-between;padding:clamp(1.5rem,5vw,3rem);border:1px solid rgba(255,255,255,.16);border-radius:1.7rem;background:radial-gradient(circle at 87% 12%,rgba(245,158,11,.22),transparent 32%),radial-gradient(circle at 12% 90%,rgba(217,30,44,.25),transparent 36%)}.routes-v3-planner-cta h2{max-width:750px;margin:.12em 0 .3em;font-size:clamp(2rem,4vw,3.7rem)}.routes-v3-planner-cta p{max-width:690px;margin-bottom:0;color:#d5dce5}.routes-v3-planner-cta .eyebrow{color:#ffbd45}.routes-v3-planner-cta .button{flex:0 0 auto}.route-dashboard-hero{padding:clamp(3.5rem,7vw,6rem) 0 4.5rem;background:linear-gradient(140deg,var(--a4n-canvas),var(--a4n-subtle))}.route-dashboard-hero__grid{display:grid;grid-template-columns:minmax(0,.93fr) minmax(430px,1.07fr);gap:clamp(2rem,6vw,5rem);align-items:center}.route-dashboard-breadcrumb{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.35rem;color:var(--a4n-muted);font-size:.82rem}.route-dashboard-breadcrumb a{color:var(--routes-red-deep);font-weight:760}.route-dashboard-hero__countries{display:flex;flex-wrap:wrap;gap:.4rem}.route-dashboard-hero__countries span{padding:.3rem .57rem;border:1px solid color-mix(in srgb,var(--routes-red) 35%,var(--a4n-border));border-radius:999px;background:var(--a4n-brand-soft);color:var(--routes-red-deep);font-size:.7rem;font-weight:900;letter-spacing:.09em}.route-dashboard-hero__media{position:relative;min-height:clamp(360px,42vw,570px);margin:0;overflow:hidden;border-radius:1.75rem;background:var(--a4n-subtle);box-shadow:0 28px 70px rgba(20,24,33,.17)}.route-dashboard-hero__media::after{position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(8,10,15,.65));content:""}.route-dashboard-hero__media>img{width:100%;height:100%;min-height:inherit;object-fit:cover}.route-dashboard-hero__media figcaption{position:absolute;z-index:1;right:1.2rem;bottom:1.2rem;left:1.2rem;color:#fff}.route-dashboard-hero__media figcaption span,.route-dashboard-hero__media figcaption strong{display:block}.route-dashboard-hero__media figcaption span{color:#ffd27c;font-size:.7rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.route-dashboard-hero__media figcaption strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.route-dashboard-facts{position:relative;z-index:3;display:grid;grid-template-columns:repeat(5,1fr);margin-top:-2rem;margin-bottom:0;padding:.45rem;border:1px solid var(--a4n-border);border-radius:1.25rem;background:var(--a4n-surface);box-shadow:0 19px 55px rgba(20,24,33,.13)}.route-dashboard-facts div{min-width:0;padding:1rem 1.1rem;border-inline-end:1px solid var(--a4n-border)}.route-dashboard-facts div:last-child{border:0}.route-dashboard-facts dt{color:var(--a4n-muted);font-size:.67rem;font-weight:760;letter-spacing:.1em;text-transform:uppercase}.route-dashboard-facts dd{overflow-wrap:anywhere;margin:.23rem 0;font-size:1.02rem;font-weight:880;line-height:1.25}.route-dashboard-facts small{display:block;overflow:hidden;color:var(--a4n-muted);font-size:.69rem;text-overflow:ellipsis;white-space:nowrap}.route-dashboard-nav{position:sticky;z-index:30;top:var(--a4n-header-offset,0);border-block:1px solid var(--a4n-border);background:color-mix(in srgb,var(--a4n-surface) 91%,transparent);backdrop-filter:blur(15px)}.route-dashboard-nav .container{display:flex;gap:.25rem;overflow-x:auto;padding-block:.55rem;scrollbar-width:thin}.route-dashboard-nav a{flex:0 0 auto;padding:.52rem .75rem;border-radius:.55rem;color:var(--a4n-ink);font-size:.81rem;font-weight:780;text-decoration:none}.route-dashboard-nav a:hover,.route-dashboard-nav a:focus-visible{background:var(--a4n-brand-soft);color:var(--routes-red-deep)}.route-regional-map{display:grid;grid-template-columns:minmax(0,1fr) 260px;overflow:hidden;border:1px solid color-mix(in srgb,var(--routes-red) 24%,var(--a4n-border));border-radius:1.6rem;background:var(--a4n-surface);box-shadow:0 28px 75px rgba(91,40,21,.14)}.route-regional-map__main{min-width:0}.route-regional-map__toolbar{display:flex;justify-content:flex-end;gap:.4rem;padding:.65rem;border-bottom:1px solid var(--a4n-border);background:var(--a4n-surface)}.route-regional-map__toolbar button{min-width:42px;min-height:40px;border:1px solid var(--a4n-border);border-radius:.65rem;background:var(--a4n-surface);color:var(--a4n-ink);font-weight:780;cursor:pointer}.route-regional-map__toolbar button:hover{border-color:var(--routes-red);color:var(--routes-red-deep)}.route-regional-map__viewport{position:relative;overflow:hidden;aspect-ratio:16 / 8.5;min-height:430px;background:radial-gradient(circle at 20% 75%,rgba(245,158,11,.18),transparent 30%),var(--routes-map-sea)}.route-regional-map__viewport svg{width:100%;height:100%;min-height:inherit;touch-action:none}.route-regional-map__world{opacity:.13}.route-regional-map__country{opacity:.94;filter:drop-shadow(0 7px 8px rgba(137,56,27,.1))}.route-map-segment.is-active{stroke-width:3.2;filter:drop-shadow(0 0 4px rgba(217,30,44,.55))}.route-map-marker.is-active .route-map-marker__pin{fill:var(--routes-gold);stroke:var(--routes-red-deep)}.route-regional-map__legend{display:flex;flex-wrap:wrap;gap:.5rem;padding:.65rem .9rem;border-top:1px solid var(--a4n-border);background:var(--a4n-surface)}.route-map-legend{display:inline-flex;align-items:center;gap:.35rem;color:var(--a4n-muted);font-size:.72rem;font-weight:720}.route-map-legend::before{width:22px;height:2px;background:var(--routes-red);content:""}.route-regional-map__sidebar{border-inline-start:1px solid var(--a4n-border);background:color-mix(in srgb,var(--a4n-subtle) 75%,var(--a4n-surface))}.route-map-active-card{margin:.85rem;padding:1rem;border-radius:1rem;background:#171d27;color:#fff;box-shadow:0 12px 28px rgba(20,24,33,.17)}.route-map-active-card .eyebrow{color:#ffbd45}.route-map-active-card h3{margin:.1rem 0}.route-map-active-card p:not(.eyebrow){color:#cbd3dd;font-size:.8rem}.route-map-active-card a{color:#ffd27c;font-size:.8rem;font-weight:760}.route-map-stop-list{display:grid;gap:.35rem;max-height:430px;overflow:auto;margin:0;padding:0 .65rem .85rem;list-style:none}.route-map-stop-list button{display:grid;width:100%;grid-template-columns:34px 1fr;gap:.65rem;align-items:center;padding:.65rem;border:1px solid transparent;border-radius:.8rem;background:transparent;color:var(--a4n-ink);text-align:start;cursor:pointer}.route-map-stop-list button:hover,.route-map-stop-list button.is-active{border-color:var(--a4n-border);background:var(--a4n-surface)}.route-map-stop-list strong,.route-map-stop-list small{display:block}.route-map-stop-list small{color:var(--a4n-muted);font-size:.7rem}.route-stop-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:.75rem;background:var(--a4n-brand-soft)}.route-stop-icon::before{width:9px;height:9px;border:3px solid var(--routes-red);border-radius:50%;content:""}.route-dashboard-overview{padding:clamp(4rem,8vw,7rem) 0}.route-dashboard-overview__grid{display:grid;grid-template-columns:minmax(260px,.65fr) minmax(0,1.2fr);gap:clamp(2rem,8vw,6rem);align-items:start}.route-dashboard-prose{max-width:49rem;color:var(--a4n-muted);font-size:clamp(1.05rem,1.5vw,1.17rem);line-height:1.85}.route-dashboard-prose p:last-child{margin-bottom:0}.route-day-card__summary p:last-child{margin:0}.route-dashboard-budget{padding:clamp(4rem,8vw,7rem) 0;background:#171d27;color:#fff}.route-dashboard-budget .route-dashboard-section-heading>p{color:#cbd3dd}.route-dashboard-budget .eyebrow{color:#ffbd45}.route-budget-total{display:grid;justify-items:end}.route-budget-total small,.route-budget-total span{color:#cbd3dd}.route-budget-total strong{font-size:clamp(1.7rem,3vw,2.6rem)}.route-budget-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem 1.5rem}.route-budget-grid article{padding:1rem;border:1px solid rgba(255,255,255,.13);border-radius:.9rem;background:rgba(255,255,255,.045)}.route-budget-grid article>div:first-child{display:flex;justify-content:space-between;gap:1rem}.route-budget-grid small{color:#cbd3dd}.route-budget-bar{height:7px;margin:.65rem 0 .25rem;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.12)}.route-budget-bar span{display:block;width:var(--budget-share);height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--routes-red),var(--routes-gold))}.route-budget-note{max-width:760px;margin-top:1.4rem;color:#dce2e9}.route-preparation-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.route-preparation-grid section{padding:clamp(1.25rem,3vw,2rem);border:1px solid var(--a4n-border);border-radius:1.2rem;background:var(--a4n-surface)}.route-preparation-grid ul{display:grid;gap:.7rem;margin:0;padding:0;list-style:none}.route-preparation-grid li{position:relative;padding-inline-start:1.6rem;color:var(--a4n-muted)}.route-preparation-grid li::before{position:absolute;left:.15rem;top:.28rem;width:.4rem;height:.7rem;border-right:2px solid var(--routes-red);border-bottom:2px solid var(--routes-red);content:"";transform:rotate(45deg)}.route-dashboard-gallery{background:var(--a4n-subtle)}.route-gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:190px;gap:.65rem}.route-gallery-grid a{display:block;overflow:hidden;border-radius:1rem}.route-gallery-grid a:first-child{grid-column:span 2;grid-row:span 2}.route-gallery-grid img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.route-gallery-grid a:hover img{transform:scale(1.045)}.route-v3-lightbox{width:min(1100px,94vw);max-width:none;padding:3rem 1rem 1rem;border:0;border-radius:1.2rem;background:#0b111b;color:#fff}.route-v3-lightbox::backdrop{background:rgba(0,0,0,.84);backdrop-filter:blur(8px)}.route-v3-lightbox img{max-height:80vh;margin:auto}.route-v3-lightbox button{position:absolute;top:.55rem;right:.75rem;width:42px;height:42px;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:#202936;color:#fff;font-size:1.4rem;cursor:pointer}.route-dashboard-tips{padding:clamp(4rem,8vw,7rem) 0;background:var(--a4n-canvas)}.route-dashboard-tips>.container{display:grid;grid-template-columns:minmax(240px,.6fr) minmax(0,1.4fr);gap:clamp(2rem,6vw,5rem)}.route-tip-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.route-tip-grid article{padding:1rem;border-top:3px solid var(--routes-red);border-radius:0 0 .9rem .9rem;background:var(--a4n-subtle)}.route-tip-grid article span{color:var(--routes-red-deep);font-size:.72rem;font-weight:900}.route-tip-grid article p{margin:.35rem 0 0}.routes-v3-planner-cta--single{margin-top:0}:root[data-theme="dark"] .route-dashboard{--routes-map-sea:#17191f;--routes-map-ink:#fff6e8}:root[data-theme="dark"] .route-dashboard-hero{background:radial-gradient(circle at 10% 10%,rgba(245,158,11,.11),transparent 30%),linear-gradient(145deg,#0c111a,#181c24)}:root[data-theme="dark"] .route-dashboard-map-section{background:radial-gradient(circle at 10% 15%,rgba(245,158,11,.12),transparent 25%),radial-gradient(circle at 88% 78%,rgba(255,75,88,.1),transparent 30%),#131821}:root[data-theme="dark"] .route-regional-map__country{filter:brightness(.72) saturate(.85)}:root[data-theme="dark"] .route-activity__meta strong{background:#173523;color:#8de3a8}@keyframes routes-v3-flow{to{stroke-dashoffset:-100}}@keyframes routes-v3-pulse{0%{opacity:.9;transform:scale(.55)}85%,100%{opacity:0;transform:scale(1.45)}}@keyframes routes-v3-map-pulse{0%{opacity:.9;transform:scale(.55);transform-origin:center}85%,100%{opacity:0;transform:scale(1.5);transform-origin:center}}@keyframes routes-v3-atlas-glow{to{transform:rotate(1turn)}}@media (max-width:1050px){.route-dashboard-hero__grid{grid-template-columns:1fr 1fr;gap:2rem}.route-dashboard-facts{grid-template-columns:repeat(3,1fr)}.route-dashboard-facts div:nth-child(3){border-inline-end:0}.route-dashboard-facts div:nth-child(-n+3){border-bottom:1px solid var(--a4n-border)}.route-regional-map{grid-template-columns:1fr}.route-regional-map__sidebar{display:grid;grid-template-columns:250px 1fr;border-top:1px solid var(--a4n-border);border-inline-start:0}.route-map-stop-list{grid-template-columns:repeat(2,1fr);max-height:260px;padding-top:.85rem}}@media (max-width:820px){.route-dashboard-hero__grid{grid-template-columns:1fr}.route-dashboard-hero__media{min-height:430px}.routes-v3-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.route-dashboard-overview__grid,.route-dashboard-tips>.container{grid-template-columns:1fr}.route-gallery-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:640px){.route-dashboard-hero{padding-top:3.25rem}.route-dashboard-hero h1{font-size:clamp(3rem,14vw,4.4rem)}.route-dashboard-hero__media{min-height:320px}.route-dashboard-section-heading{grid-template-columns:1fr;gap:.8rem}.routes-v3-card-grid{grid-template-columns:1fr}.routes-v3-planner-cta .container{align-items:flex-start;flex-direction:column}.route-dashboard-facts{width:calc(100% - 2rem);grid-template-columns:repeat(2,1fr)}.route-dashboard-facts div,.route-dashboard-facts div:nth-child(3){border-inline-end:1px solid var(--a4n-border);border-bottom:1px solid var(--a4n-border)}.route-dashboard-facts div:nth-child(even),.route-dashboard-facts div:last-child{border-inline-end:0}.route-dashboard-facts div:nth-last-child(-n+2){border-bottom:0}.route-regional-map__viewport{min-height:370px}.route-regional-map__sidebar{display:block}.route-map-stop-list{grid-template-columns:1fr 1fr;max-height:310px}.route-day-card__header{grid-template-columns:62px 1fr}.route-day-card__number{width:54px;height:54px}.route-day-card__header figure{display:none}.route-activity{grid-template-columns:54px minmax(0,1fr);gap:.65rem}.route-activity__meta{grid-column:2;justify-content:flex-start}.route-budget-grid,.route-preparation-grid,.route-tip-grid{grid-template-columns:1fr}.route-budget-total{justify-items:start}.route-gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:150px}.route-gallery-grid a:first-child{grid-column:span 2}}@media (max-width:400px){.route-dashboard-hero__actions{align-items:stretch;flex-direction:column}.route-dashboard-hero__actions .button{justify-content:center;width:100%}.route-map-stop-list{grid-template-columns:1fr}.route-activity{grid-template-columns:1fr}.route-activity__meta{grid-column:1}}@media (prefers-reduced-motion:reduce){.route-gallery-grid img{transition:none !important;transform:none !important}}@media print{.route-dashboard-nav,.route-regional-map__toolbar,.routes-v3-planner-cta,.route-days-more{display:none !important}.route-dashboard-map-section,.route-dashboard-itinerary,.route-dashboard-budget{background:#fff !important;color:#000 !important}.has-routes-v3-js .route-day-card.is-extra:not(.is-revealed){display:block}}.route-regional-map--tiles{grid-template-columns:minmax(0,1fr) minmax(270px,320px);background:var(--a4n-surface)}.route-regional-map--tiles .route-regional-map__main{position:relative;min-width:0;background:#efe7d9}.route-regional-map--tiles .route-regional-map__toolbar{position:absolute;z-index:20;inset:1rem 1rem auto auto;display:flex;width:auto;margin:0;padding:.35rem;gap:.35rem;border:1px solid rgba(91,32,36,.15);border-radius:999px;background:rgba(255,253,250,.94);box-shadow:0 12px 32px rgba(38,27,18,.16);backdrop-filter:blur(10px)}.route-regional-map--tiles .route-regional-map__toolbar button{min-width:42px;height:42px;padding:0 .8rem;border-color:transparent;border-radius:999px;background:transparent;color:#251d19;box-shadow:none}.route-regional-map--tiles .route-regional-map__toolbar button:hover,.route-regional-map--tiles .route-regional-map__toolbar button:focus-visible{border-color:rgba(217,30,44,.24);background:#fff1ed;color:var(--routes-red-deep)}.route-regional-map--tiles .route-regional-map__viewport{position:relative;min-height:clamp(430px,48vw,610px);overflow:hidden;border:0;background:#efe7d9}.route-live-map{position:absolute;inset:0;overflow:hidden;isolation:isolate;background:linear-gradient(145deg,#f9efd9,#e9deca);cursor:grab;touch-action:pan-y pinch-zoom}.route-live-map:focus-visible{outline:4px solid var(--routes-gold);outline-offset:-4px}.route-live-map.is-dragging{cursor:grabbing}.route-live-map__fallback,.route-live-map__tiles,.route-live-map__overlay,.route-live-map__markers{position:absolute;inset:0;width:100%;height:100%}.route-live-map__fallback{z-index:0;opacity:.3;transition:opacity .25s ease}.route-live-map.has-map-tiles .route-live-map__fallback{opacity:0}.route-live-map__fallback .route-regional-map__world{opacity:.24}.route-live-map__fallback .route-regional-map__country{opacity:.74;filter:drop-shadow(0 4px 10px rgba(217,30,44,.18))}.route-live-map__tiles{z-index:1;overflow:hidden}.route-live-map__tile{position:absolute;max-width:none;width:256px;height:256px;border:0;user-select:none;-webkit-user-drag:none;filter:saturate(.82) sepia(.06) contrast(1.02) brightness(1.035)}.route-live-map__overlay{z-index:2;overflow:visible;pointer-events:none}.route-osm-segment{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;transition:stroke .2s ease,stroke-width .2s ease,opacity .2s ease}.route-osm-segment.is-active.route-osm-segment--casing{stroke-width:11}.route-osm-segment.is-active.route-osm-segment--line{stroke:var(--routes-gold);stroke-width:6;opacity:1}.route-live-map__markers{z-index:3;pointer-events:none}.route-osm-marker{position:absolute;width:38px;height:38px;margin:0;padding:0;pointer-events:auto;border:3px solid #fff;border-radius:50%;background:linear-gradient(145deg,var(--routes-coral),var(--routes-red));color:#fff;box-shadow:0 8px 20px rgba(91,32,36,.32);font:900 .83rem/1 var(--a4n-font-sans);transform:translate(-50%,-118%);transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.route-osm-marker::after{position:absolute;z-index:-1;left:50%;bottom:-8px;width:14px;height:14px;border-right:3px solid #fff;border-bottom:3px solid #fff;background:var(--routes-red);content:"";transform:translateX(-50%) rotate(45deg)}.route-osm-marker:hover,.route-osm-marker:focus-visible,.route-osm-marker.is-active{z-index:5;background:linear-gradient(145deg,#ffca45,var(--routes-gold));color:#301b0b;box-shadow:0 0 0 7px rgba(217,30,44,.13),0 12px 26px rgba(91,32,36,.38);transform:translate(-50%,-118%) scale(1.12)}.route-osm-marker:hover::after,.route-osm-marker:focus-visible::after,.route-osm-marker.is-active::after{background:var(--routes-gold)}.route-osm-marker:focus-visible{outline:3px solid #17202d;outline-offset:4px}.route-osm-marker__tooltip{position:absolute;bottom:calc(100% + 13px);left:50%;max-width:190px;padding:.48rem .68rem;border:1px solid rgba(91,32,36,.14);border-radius:.65rem;background:rgba(255,253,250,.97);box-shadow:0 9px 24px rgba(38,27,18,.18);color:#241916;font-size:.76rem;font-weight:850;line-height:1.15;opacity:0;pointer-events:none;transform:translate(-50%,5px);transition:opacity .16s ease,transform .16s ease;white-space:nowrap}.route-osm-marker:hover .route-osm-marker__tooltip,.route-osm-marker:focus-visible .route-osm-marker__tooltip,.route-osm-marker.is-active .route-osm-marker__tooltip{opacity:1;transform:translate(-50%,0)}.route-live-map__status{position:absolute;z-index:5;inset:1rem auto auto 1rem;max-width:min(280px,60%);margin:0;padding:.55rem .75rem;border-radius:.7rem;background:rgba(23,32,45,.9);color:#fff;font-size:.76rem;font-weight:750;box-shadow:0 8px 22px rgba(23,32,45,.2)}.route-live-map__attribution{position:absolute;z-index:6;inset:auto .45rem .45rem auto;margin:0;padding:.3rem .46rem;border-radius:.35rem;background:rgba(255,255,255,.9);color:#3d3833;font-size:.62rem;line-height:1}.route-live-map__attribution a{color:#3d3833;text-decoration:underline;text-underline-offset:2px}.route-regional-map--tiles .route-regional-map__legend{position:absolute;z-index:7;inset:auto auto .8rem .8rem;display:flex;max-width:calc(100% - 15rem);margin:0;padding:.42rem .55rem;border:1px solid rgba(91,32,36,.1);border-radius:.65rem;background:rgba(255,253,250,.92);box-shadow:0 8px 20px rgba(38,27,18,.12);backdrop-filter:blur(8px)}.route-map-noscript{padding:1rem 1.15rem;border-top:1px solid var(--a4n-border);background:var(--a4n-subtle)}.route-map-noscript p{margin:0 0 .65rem;font-weight:750}.route-map-noscript ol{display:flex;flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none}.route-map-noscript a{display:inline-flex;padding:.45rem .65rem;border:1px solid var(--a4n-border);border-radius:999px;background:var(--a4n-surface);font-size:.82rem;font-weight:800}[data-theme="dark"] .route-regional-map--tiles .route-regional-map__main,[data-theme="dark"] .route-regional-map--tiles .route-regional-map__viewport,[data-theme="dark"] .route-live-map{background:#1a2028}[data-theme="dark"] .route-live-map__tile{filter:brightness(.7) contrast(1.14) saturate(.58)}[data-theme="dark"] .route-regional-map--tiles .route-regional-map__toolbar,[data-theme="dark"] .route-regional-map--tiles .route-regional-map__legend{border-color:rgba(255,255,255,.14);background:rgba(20,27,36,.92)}[data-theme="dark"] .route-regional-map--tiles .route-regional-map__toolbar button{color:#f9f4eb}[data-theme="dark"] .route-osm-marker__tooltip{border-color:rgba(255,255,255,.14);background:rgba(20,27,36,.96);color:#fff}@media(max-width:900px){.route-regional-map--tiles{grid-template-columns:1fr}.route-regional-map--tiles .route-regional-map__viewport{min-height:500px}.route-regional-map--tiles .route-regional-map__sidebar{max-height:none}.route-regional-map--tiles .route-map-stop-list{max-height:none}.route-regional-map--tiles .route-regional-map__legend{max-width:calc(100% - 1.6rem)}}@media(max-width:640px){.route-regional-map--tiles .route-regional-map__viewport{min-height:420px}.route-regional-map--tiles .route-regional-map__toolbar{inset:.65rem .65rem auto auto}.route-regional-map--tiles .route-regional-map__toolbar button{min-width:38px;height:38px;padding:0 .58rem;font-size:.76rem}.route-regional-map--tiles .route-regional-map__legend{inset:auto .55rem 2rem .55rem;overflow-x:auto;max-width:none;white-space:nowrap}.route-osm-marker{width:34px;height:34px;font-size:.74rem}.route-live-map__attribution{font-size:.56rem}.route-live-map__status{inset:.65rem auto auto .65rem;max-width:46%;font-size:.68rem}}@media(prefers-reduced-motion:reduce){.route-live-map__fallback,.route-osm-segment,.route-osm-marker,.route-osm-marker__tooltip{transition:none}}.route-regional-map--tiles>.route-regional-map__main,.route-regional-map--tiles>.route-regional-map__sidebar{min-width:0;}.route-regional-map--tiles>.route-regional-map__main{z-index:0;overflow:hidden;}.route-regional-map--tiles>.route-regional-map__sidebar{position:relative;z-index:1;overflow:hidden;}.route-live-map__status[hidden],.route-regional-map--tiles .route-regional-map__legend:empty{display:none !important;}@media (max-width:1180px){.route-regional-map--tiles{grid-template-columns:minmax(0,1fr);}.route-regional-map--tiles .route-regional-map__sidebar{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);border-top:1px solid var(--a4n-border);border-inline-start:0;}.route-regional-map--tiles .route-map-stop-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:280px;padding-top:.85rem;}}@media (max-width:640px){.route-regional-map--tiles .route-regional-map__sidebar{display:block;}.route-regional-map--tiles .route-map-stop-list{grid-template-columns:1fr;max-height:none;}}.route-activity__note p{margin:.4rem 0 0;color:var(--a4n-muted);font-size:.86rem;line-height:1.65}.route-activity__details{display:grid;gap:.38rem;margin:.7rem 0 0;padding:0;list-style:none}.route-activity__details li{position:relative;padding-inline-start:1rem;color:var(--a4n-muted);font-size:.84rem;line-height:1.55}.route-activity__details li::before{position:absolute;left:.1rem;top:.65em;width:.38rem;height:.38rem;border:2px solid var(--routes-red);border-radius:50%;content:""}.route-activity__links{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.75rem}.route-activity__links a{display:inline-flex;align-items:center;gap:.35rem;min-height:2.35rem;padding:.48rem .68rem;border:1px solid color-mix(in srgb,var(--routes-red) 36%,var(--a4n-border));border-radius:.7rem;background:var(--a4n-brand-soft);color:var(--routes-red-deep);font-size:.76rem;font-weight:800;line-height:1.25;text-decoration:none}.route-activity__links a:hover,.route-activity__links a:focus-visible{border-color:var(--routes-red);background:var(--a4n-surface)}.route-preparation-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.route-preparation-grid section{border-top:4px solid var(--routes-red)}.route-preparation-grid section:nth-child(2){border-top-color:var(--routes-gold)}.route-preparation-grid section:nth-child(3){border-top-color:#2458a6}.route-preparation-grid h3{margin-bottom:1rem;font-size:1.3rem}.route-preparation-grid ul{max-height:34rem;overflow:auto;padding-inline-end:.35rem}.route-preparation-empty{margin:0;color:var(--a4n-muted)}@media(max-width:900px){.route-preparation-grid{grid-template-columns:1fr}.route-preparation-grid ul{max-height:none}}@media(max-width:640px){.route-activity__time-empty{display:none}.route-activity__links a{width:100%;justify-content:space-between}.route-day-card__summary{font-size:.94rem;line-height:1.65}}.route-dashboard--compact{position:relative;isolation:isolate}.route-dashboard--compact .route-dashboard-hero--immersive{position:relative;display:grid;min-height:clamp(610px,69vh,820px);align-items:end;overflow:hidden;padding:clamp(7rem,14vw,11rem) 0 clamp(6.5rem,10vw,8rem);background:#141923;color:#fff;isolation:isolate}.route-dashboard-hero__backdrop,.route-dashboard-hero__veil{position:absolute;inset:0;margin:0}.route-dashboard-hero__backdrop{z-index:-2;background:linear-gradient(135deg,#8e1b21,#e85c38)}.route-dashboard-hero__backdrop img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(1.04) contrast(1.03);transform:scale(1.015)}.route-dashboard-hero__veil{z-index:-1;background:linear-gradient(90deg,rgba(8,13,21,.91) 0%,rgba(8,13,21,.74) 47%,rgba(8,13,21,.28) 76%,rgba(8,13,21,.48) 100%),linear-gradient(0deg,rgba(8,13,21,.75),transparent 58%)}.route-dashboard--compact .route-dashboard-hero__content{max-width:880px}.route-dashboard--compact .route-dashboard-breadcrumb{color:rgba(255,255,255,.78)}.route-dashboard--compact .route-dashboard-breadcrumb a{color:#ffd27c}.route-dashboard--compact .route-dashboard-hero__countries span{border-color:rgba(255,255,255,.38);background:rgba(20,24,33,.58);color:#fff;backdrop-filter:blur(9px)}.route-dashboard--compact .route-dashboard-hero h1{max-width:12ch;color:#fff;text-wrap:balance;text-shadow:0 8px 34px rgba(0,0,0,.35)}.route-dashboard--compact .route-dashboard-hero__lead{max-width:47rem;color:rgba(255,255,255,.9);font-size:clamp(1.05rem,1.8vw,1.32rem)}.route-dashboard-hero__route-line{max-width:45rem;margin-top:1.25rem;padding-left:1rem;border-left:3px solid #ffbd45;color:#fff}.route-dashboard-hero__route-line span{color:#ffca66}.route-dashboard-hero__route-line strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.route-dashboard--compact .route-dashboard-hero__actions .button--secondary{border-color:rgba(255,255,255,.6);background:rgba(255,255,255,.12);color:#fff;backdrop-filter:blur(10px)}.route-dashboard--compact .route-dashboard-hero__actions .button--secondary:hover{background:#fff;color:#171d27}.route-dashboard-itinerary--compact{overflow:clip;background:radial-gradient(circle at 92% 6%,rgba(245,158,11,.12),transparent 25%),var(--a4n-subtle)}.route-stage-navigator{display:grid;grid-template-columns:minmax(190px,.75fr) minmax(220px,1.2fr) auto auto;gap:.65rem;align-items:center;margin-bottom:1.15rem;padding:.85rem;border:1px solid var(--a4n-border);border-radius:1rem;background:var(--a4n-surface);box-shadow:0 12px 32px rgba(20,24,33,.055)}.route-stage-navigator label{font-size:.75rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.route-stage-navigator select{width:100%;min-height:44px;padding:.5rem 2.5rem .5rem .7rem;border:1px solid var(--a4n-border);border-radius:.7rem;background:var(--a4n-surface);color:var(--a4n-ink);font:inherit;font-weight:720}.route-stage-navigator p{margin:0;color:var(--a4n-muted);font-size:.79rem;white-space:nowrap}.route-stage-navigator__actions{display:flex;gap:.4rem}.route-stage-navigator__actions button{min-height:42px;padding:.5rem .7rem;border:1px solid var(--a4n-border);border-radius:.65rem;background:var(--a4n-surface);color:var(--a4n-ink);font-size:.76rem;font-weight:790;cursor:pointer}.route-stage-navigator__actions button:hover,.route-stage-navigator__actions button:focus-visible{border-color:var(--routes-red);background:var(--a4n-brand-soft);color:var(--routes-red-deep)}.route-stage-list{display:grid;gap:.9rem}.route-stage,.route-itinerary-day,.route-itinerary-activity{scroll-margin-top:8rem}.route-stage summary,.route-itinerary-day summary,.route-itinerary-activity summary{list-style:none;cursor:pointer}.route-stage summary::-webkit-details-marker,.route-itinerary-day summary::-webkit-details-marker,.route-itinerary-activity summary::-webkit-details-marker{display:none}.route-stage>summary{display:grid;grid-template-columns:54px minmax(0,1fr) auto 18px;gap:.9rem;align-items:center;min-height:86px;padding:.85rem 1rem;border:1px solid color-mix(in srgb,var(--routes-red) 20%,var(--a4n-border));border-radius:1.05rem;background:linear-gradient(100deg,var(--a4n-brand-soft),var(--a4n-surface) 36%);box-shadow:0 12px 34px rgba(20,24,33,.05)}.route-stage[open]>summary{border-radius:1.05rem 1.05rem 0 0;border-color:color-mix(in srgb,var(--routes-red) 43%,var(--a4n-border))}.route-stage__marker{display:grid;width:48px;height:48px;place-items:center;border-radius:.9rem;background:linear-gradient(145deg,var(--routes-red),var(--routes-coral));color:#fff;font-weight:900}.route-stage__heading,.route-stage__range,.route-itinerary-day__heading,.route-itinerary-activity__heading{display:grid;min-width:0}.route-stage__heading small,.route-itinerary-day__heading time{color:var(--routes-red-deep);font-size:.67rem;font-weight:820;letter-spacing:.08em;text-transform:uppercase}.route-stage__range{justify-items:end;color:var(--a4n-ink);font-size:.82rem;font-weight:800;white-space:nowrap}.route-details-chevron{width:11px;height:11px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translate(-2px,-2px);transition:transform .2s ease}.route-stage[open]>summary .route-details-chevron,.route-itinerary-day[open]>summary .route-details-chevron,.route-itinerary-activity[open]>summary .route-details-chevron{transform:rotate(225deg) translate(-2px,-2px)}.route-stage__days{display:grid;gap:.65rem;padding:1rem;border:1px solid var(--a4n-border);border-top:0;border-radius:0 0 1.05rem 1.05rem;background:color-mix(in srgb,var(--a4n-surface) 76%,var(--a4n-subtle))}.route-itinerary-day{overflow:hidden;border:1px solid var(--a4n-border);border-radius:.9rem;background:var(--a4n-surface)}.route-itinerary-day>summary{display:grid;grid-template-columns:92px minmax(0,1fr) auto 18px;gap:.8rem;align-items:center;min-height:70px;padding:.72rem .85rem}.route-itinerary-day__number{color:var(--routes-red-deep);font-size:.76rem;font-weight:900;text-transform:uppercase}.route-itinerary-day__heading strong{overflow-wrap:anywhere}.route-itinerary-day__count{padding:.3rem .48rem;border-radius:999px;background:var(--a4n-subtle);color:var(--a4n-muted);font-size:.68rem;font-weight:730;white-space:nowrap}.route-itinerary-day__body{padding:0 .85rem .85rem;border-top:1px solid var(--a4n-border)}.route-itinerary-day__body>.route-day-card__summary{padding:.8rem 0;color:var(--a4n-muted)}.route-itinerary-activities{display:grid;gap:.45rem;margin-top:.7rem}.route-itinerary-activity{border:1px solid var(--a4n-border);border-radius:.75rem;background:color-mix(in srgb,var(--a4n-surface) 88%,var(--a4n-subtle))}.route-itinerary-activity>summary{display:grid;grid-template-columns:58px minmax(0,1fr) auto 16px;gap:.7rem;align-items:center;min-height:58px;padding:.65rem .72rem}.route-itinerary-activity__time{color:var(--routes-red-deep);font-size:.77rem;font-weight:850}.route-itinerary-activity__heading strong{overflow-wrap:anywhere;font-size:.88rem}.route-itinerary-activity__heading small{color:var(--a4n-muted);font-size:.7rem}.route-itinerary-activity__meta{display:flex;flex-wrap:wrap;gap:.3rem;justify-content:flex-end}.route-itinerary-activity__meta span,.route-itinerary-activity__meta strong{padding:.25rem .4rem;border-radius:.42rem;background:var(--a4n-subtle);font-size:.67rem;white-space:nowrap}.route-itinerary-activity__meta strong{background:#edf8f0;color:#137a3f}.route-itinerary-activity__body{padding:.1rem .8rem .85rem 4.75rem;border-top:1px solid var(--a4n-border)}.route-dashboard-costs{background:radial-gradient(circle at 85% 15%,rgba(245,158,11,.17),transparent 32%),radial-gradient(circle at 6% 90%,rgba(217,30,44,.18),transparent 34%),#171d27}.route-dashboard-costs .route-dashboard-section-heading>p{color:#cbd3dd}.route-costs-summary{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center;margin-bottom:1.3rem;padding:1rem 1.2rem;border:1px solid rgba(255,255,255,.14);border-radius:1rem;background:rgba(255,255,255,.055)}.route-costs-summary span,.route-costs-summary strong,.route-costs-summary small{display:block}.route-costs-summary span{color:#ffca66;font-size:.69rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.route-costs-summary__total{text-align:right}.route-costs-summary__total strong{font-size:clamp(1.45rem,3vw,2.3rem)}.route-cost-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.route-cost-group{min-width:0;padding:1rem;border:1px solid rgba(255,255,255,.14);border-radius:1rem;background:rgba(255,255,255,.04)}.route-cost-lines{display:grid;gap:.6rem}.route-cost-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.65rem;padding:.8rem;border-radius:.75rem;background:rgba(255,255,255,.065)}.route-cost-line p{margin:0;color:#cbd3dd;font-size:.72rem}.route-cost-line__type{color:#ffca66;font-size:.62rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.route-cost-line__amount{text-align:right}.route-cost-line__amount strong,.route-cost-line__amount small{display:block;white-space:nowrap}.route-cost-line__source{grid-column:1/-1;padding-top:.55rem;border-top:1px solid rgba(255,255,255,.1)}.route-cost-line__source a{color:#ffd27c;font-weight:750}.route-cost-notes{margin-top:1rem;padding:1rem;border-left:3px solid #ffbd45}.route-cost-notes ul{margin:0;padding-left:1.2rem;color:#dce2e9;font-size:.79rem}.route-dashboard--compact .routes-v3-planner-cta--visual{position:relative;overflow:hidden;padding:clamp(4.5rem,8vw,7rem) 0;background:linear-gradient(125deg,#80131d,#d91e2c 48%,#f26b35);isolation:isolate}.route-dashboard--compact .routes-v3-planner-cta--visual .container{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.72fr);gap:clamp(2rem,6vw,5rem);padding:clamp(1.5rem,4vw,3rem);background:linear-gradient(135deg,rgba(16,20,28,.88),rgba(16,20,28,.62));box-shadow:0 28px 72px rgba(67,8,13,.35)}.routes-v3-planner-cta__content .button{display:inline-flex;gap:.7rem;min-height:54px;margin-top:1.5rem;padding-inline:1.25rem;font-size:.96rem;box-shadow:0 14px 30px rgba(217,30,44,.28)}.routes-v3-planner-cta__visual{position:relative;min-height:320px;margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.18);border-radius:1.3rem;background:linear-gradient(145deg,#ffefe2,#ffbd45);box-shadow:0 24px 55px rgba(0,0,0,.25)}.routes-v3-planner-cta__visual img{width:100%;height:100%;min-height:320px;object-fit:cover}.has-routes-v3-js .routes-v3-planner-cta--visual .routes-v3-planner-cta__content,.has-routes-v3-js .routes-v3-planner-cta--visual .routes-v3-planner-cta__visual{opacity:0;transform:translateY(28px);transition:opacity .65s ease,transform .65s ease}.has-routes-v3-js .routes-v3-planner-cta--visual.is-visible .routes-v3-planner-cta__content,.has-routes-v3-js .routes-v3-planner-cta--visual.is-visible .routes-v3-planner-cta__visual{opacity:1;transform:none}.route-dashboard-ambience{position:fixed;z-index:2;inset:76px 0 0;overflow:hidden;pointer-events:none}.route-dashboard-ambience__particle{position:absolute;left:2vw;top:-8%;width:13px;height:19px;border-radius:75% 12%;background:#ef8da8;opacity:.65;animation:routes-v3-petal 14s linear infinite}.route-dashboard-ambience__particle:nth-child(even){left:96vw;animation-delay:-7s}.route-dashboard-ambience__particle:nth-child(3n){animation-delay:-11s;animation-duration:18s}@keyframes routes-v3-petal{to{top:108%;transform:translateX(35px) rotate(1turn)}}@keyframes routes-v3-plane{0%{opacity:0;transform:translate3d(35px,92vh,0) rotate(-18deg) scale(.86)}12%{opacity:.96}55%{opacity:.96;transform:translate3d(-3vw,42vh,0) rotate(-10deg) scale(1)}to{opacity:0;transform:translate3d(18px,-140px,0) rotate(-6deg) scale(.9)}}:root[data-theme="dark"] .route-dashboard--compact .route-dashboard-hero__veil{background:linear-gradient(90deg,rgba(4,8,14,.94),rgba(4,8,14,.72))}:root[data-theme="dark"] .route-stage>summary{background:var(--a4n-surface)}@media(max-width:1050px){.route-stage-navigator{grid-template-columns:1fr 1.2fr}.route-stage-navigator p{white-space:normal}.route-cost-groups{grid-template-columns:1fr}.route-dashboard--compact .routes-v3-planner-cta--visual .container{grid-template-columns:1fr 340px}.route-dashboard-ambience{display:none}}@media(max-width:720px){.route-dashboard--compact .route-dashboard-hero--immersive{min-height:600px;padding:6rem 0}.route-dashboard-hero__veil{background:linear-gradient(0deg,rgba(8,13,21,.92),rgba(8,13,21,.28))}.route-stage-navigator{grid-template-columns:1fr}.route-stage-navigator__actions button{flex:1}.route-stage>summary,.route-itinerary-day>summary,.route-itinerary-activity>summary{grid-template-columns:minmax(0,1fr) 16px}.route-stage__marker{display:none}.route-stage__heading,.route-stage__range,.route-itinerary-day__number,.route-itinerary-day__heading,.route-itinerary-day__count,.route-itinerary-activity__time,.route-itinerary-activity__heading,.route-itinerary-activity__meta{grid-column:1;justify-items:start}.route-stage>summary>.route-details-chevron,.route-itinerary-day>summary>.route-details-chevron,.route-itinerary-activity>summary>.route-details-chevron{grid-column:2;grid-row:1/4}.route-itinerary-activity__body{padding:.1rem .75rem .75rem}.route-costs-summary,.route-cost-line{grid-template-columns:1fr}.route-costs-summary__total,.route-cost-line__amount{text-align:left}.route-cost-line__source{grid-column:1}.route-dashboard--compact .routes-v3-planner-cta--visual .container{grid-template-columns:1fr}.routes-v3-planner-cta__visual,.routes-v3-planner-cta__visual img{min-height:250px}}@media(prefers-reduced-motion:reduce){.route-dashboard-ambience{display:none}.route-dashboard--compact .routes-v3-planner-cta--visual::before{animation:none}.has-routes-v3-js .routes-v3-planner-cta--visual .routes-v3-planner-cta__content,.has-routes-v3-js .routes-v3-planner-cta--visual .routes-v3-planner-cta__visual{opacity:1;transform:none;transition:none}}@media print{.route-stage-navigator,.route-dashboard-ambience{display:none!important}.route-stage,.route-itinerary-day,.route-itinerary-activity{break-inside:avoid}.route-dashboard--compact .route-dashboard-hero--immersive{min-height:0;padding:2rem 0;background:#fff!important;color:#000}.route-dashboard-hero__backdrop,.route-dashboard-hero__veil{display:none}.route-dashboard--compact .route-dashboard-hero h1,.route-dashboard--compact .route-dashboard-hero__lead{color:#000}.route-stage__days,.route-itinerary-day__body,.route-itinerary-activity__body{display:block!important}}
.route-osm-segment--flight.route-osm-segment--line,.route-osm-segment--plane.route-osm-segment--line{stroke-dasharray:9 9}.route-osm-segment--train.route-osm-segment--line{stroke:var(--routes-gold);stroke-dasharray:3 6}.route-osm-segment--car.route-osm-segment--line{stroke:#b54c25}.route-osm-segment--boat.route-osm-segment--line{stroke:#1677a8;stroke-dasharray:12 6}.route-map-legend--flight::before,.route-map-legend--plane::before{background:repeating-linear-gradient(90deg,var(--routes-red) 0 6px,transparent 6px 10px)}.route-map-legend--train::before{background:#9b4a16}.route-map-legend--car::before{background:#b54c25}.route-map-legend--boat::before{background:#2470a8}.route-dashboard-ambience--stars .route-dashboard-ambience__particle{height:13px;border-radius:0;background:#ffca66;clip-path:polygon(50% 0,62% 36%,100% 50%,62% 64%,50% 100%,38% 64%,0 50%,38% 36%)}
.route-attraction-marker{position:absolute;z-index:9;display:grid;width:28px;height:28px;place-items:center;border:2px solid #fff;border-radius:50%;background:var(--routes-red);color:#fff;transform:translate(-50%,-50%)}.route-attraction-marker[hidden],.route-map-attraction-group[hidden]{display:none!important}.route-attraction-marker:focus-visible,.route-attraction-marker.is-active{z-index:11;outline:5px solid #f59e0b55}.route-attraction-marker__icon{width:7px;height:7px;border:2px solid;border-radius:50%}.route-attraction-marker--nature,.route-attraction-marker--viewpoint{background:#168052}.route-attraction-marker--food{background:#d45b18}.route-attraction-marker--museum,.route-attraction-marker--culture,.route-attraction-marker--temple{background:#2463a8}.route-attraction-marker--theme_park{background:#b66b00}.route-attraction-marker--shopping,.route-attraction-marker--stadium{background:#7a45a8}.route-attraction-marker__tooltip{bottom:calc(100% + .4rem)}.route-attraction-marker:hover .route-attraction-marker__tooltip,.route-attraction-marker:focus-visible .route-attraction-marker__tooltip{opacity:1;transform:translate(-50%,0)}.route-map-attractions-panel{grid-column:1/-1;padding:1rem}.route-map-attraction-group[hidden]{display:none!important}.route-map-attraction-group ul{display:grid;gap:.5rem;padding:0;list-style:none}.route-map-attraction-group a{color:inherit}.route-map-attraction-empty{color:var(--a4n-muted)}
.route-dashboard-ambience__plane{position:absolute;top:0;right:-12px;width:clamp(78px,7vw,112px);aspect-ratio:512/329;background:url('../images/routes/route-airplane-game-v1.webp') center/contain no-repeat;filter:drop-shadow(0 10px 13px rgba(91,22,27,.28));will-change:transform,opacity;animation:routes-v3-plane 18s ease-in-out infinite}
@media(max-width:1280px){.route-dashboard-ambience__plane{display:none}}.route-osm-segment{fill:none;stroke-linecap:round}.route-osm-segment--casing{stroke:#fff;stroke-width:9}.route-live-map .route-osm-segment--line{stroke:var(--routes-red)!important;stroke-width:4}.route-live-map .route-osm-day-segment.route-osm-segment--line{stroke-width:6}.route-map-explorer{min-height:0}.route-map-stop-list--nested{grid-template-columns:1fr!important}.route-map-city>.route-map-day-panel{padding:0 .65rem .6rem}.route-map-day-panel[hidden]{display:none}.route-map-day{border-top:1px solid var(--a4n-border)}.route-map-day>summary{display:grid;grid-template-columns:1fr auto;gap:.4rem;padding:.6rem .2rem;cursor:pointer;list-style:none}.route-map-day>summary::-webkit-details-marker{display:none}.route-map-day>summary strong,.route-map-day>summary small{display:block}.route-map-day>summary small{color:var(--a4n-muted);font-size:.68rem}.route-map-day>summary b{font-size:.7rem}.route-map-day.is-active>summary{color:var(--routes-red-deep)}.route-live-map .route-osm-segment.is-active.route-osm-segment--line{stroke:var(--routes-gold)!important;stroke-width:7}.route-live-map .route-osm-day-segment.is-active.route-osm-segment--line{stroke:var(--routes-red)!important}.route-dashboard-facts--band{width:100%;max-width:none;margin-top:-2rem;padding-inline:max(.45rem,calc((100vw - 1800px)/2));border-radius:0;border-inline:0}.route-map-location-list{padding:.15rem .1rem .65rem}.route-map-location-list ul{display:grid;gap:.35rem;margin:0;padding:0;list-style:none}.route-map-location-list li{padding:.45rem;border:1px solid var(--a4n-border);border-radius:.65rem;background:var(--a4n-surface)}.route-map-location-list li.is-active{border-color:var(--routes-red)}.route-map-location-list__main{display:flex;justify-content:space-between;gap:.4rem;color:var(--a4n-ink);font-size:.74rem;text-decoration:none}.route-map-location-list strong,.route-map-location-list small{display:block}.route-map-location-list small,.route-map-location-list p{color:var(--a4n-muted);font-size:.66rem}.route-map-location-list em{color:var(--routes-red-deep);font-size:.6rem;font-style:normal}.route-map-location-list__maps{display:flex;justify-content:space-between;margin-top:.35rem;padding-top:.35rem;border-top:1px solid var(--a4n-border);color:var(--routes-red-deep);font-size:.65rem;font-weight:800;text-decoration:none}main.route-dashboard+.site-footer{margin-top:0}
@media(min-width:1181px){.route-regional-map--tiles{height:clamp(430px,48vw,610px)}.route-regional-map__main{display:flex;flex-flow:column}.route-regional-map__viewport{flex:1;min-height:0}.route-regional-map__sidebar{padding:.75rem}.route-map-explorer{height:100%}.route-map-explorer>*{height:100%;max-height:none}}
@media(max-width:640px){.route-regional-map__viewport{width:100%;height:370px;min-height:370px;aspect-ratio:auto}}
/* A4N RouteMapStopList 1.1.3: não distribui poucas cidades pela altura inteira do mapa. */
@media (min-width: 1181px) {
	.route-regional-map--tiles .route-map-explorer > .route-map-stop-list--nested {
		align-content: start;
		grid-auto-rows: max-content;
		gap: .55rem;
		overflow-y: auto;
		overscroll-behavior-y: contain;
		scrollbar-gutter: stable;
	}

	.route-regional-map--tiles .route-map-city {
		min-height: 0;
	}
}

/* A4N RouteCosts + PlannerVisual 1.3.5 */
.route-cost-groups--single {
	grid-template-columns: minmax(0, 1fr);
}
.routes-v3-planner-cta__visual picture {
	position: absolute;
	inset: 0;
	display: block;
}
.routes-v3-planner-cta__visual picture img {
	width: 100%;
	height: 100%;
	min-height: 0;
	object-fit: cover;
	object-position: center;
}

/* A4N RouteLegacyFallback 1.4.1: mantém o painel antigo íntegro quando o
 * cutover compacto ainda não foi concluído em uma instalação. */
.route-map-attractions-panel {
	display: grid;
	gap: 1rem;
	padding: clamp(1rem, 2.5vw, 1.6rem);
	border-top: 1px solid var(--a4n-border);
	background: color-mix(in srgb, var(--a4n-surface) 92%, var(--a4n-subtle));
}
.route-map-attractions-panel > header {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 1rem;
}
.route-map-attractions-panel > header h3 {
	margin: 0;
	font-size: clamp(1.45rem, 2.5vw, 2rem);
}
.route-map-attractions-panel > header [role="status"] {
	margin: 0;
	color: var(--a4n-muted);
	font-size: .8rem;
}
.route-map-attraction-group__title {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
}
.route-map-attraction-group ul {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr));
	gap: .65rem;
	margin: 0;
}
.route-map-attraction-group li {
	min-width: 0;
}
.route-map-attraction-group li > a {
	display: grid;
	grid-template-columns: 46px minmax(0, 1fr);
	gap: .75rem;
	align-items: center;
	min-height: 66px;
	padding: .58rem;
	border: 1px solid var(--a4n-border);
	border-radius: .85rem;
	background: var(--a4n-surface);
	color: var(--a4n-ink);
	text-decoration: none;
	box-shadow: 0 8px 22px rgba(20, 24, 33, .045);
	transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.route-map-attraction-group li > a:hover,
.route-map-attraction-group li > a:focus-visible,
.route-map-attraction-group li.is-active > a {
	border-color: color-mix(in srgb, var(--routes-red) 55%, var(--a4n-border));
	box-shadow: 0 12px 28px rgba(91, 32, 36, .12);
	transform: translateY(-1px);
}
.route-map-attraction-card__image,
.route-map-attraction-card__icon {
	display: grid;
	width: 46px;
	height: 46px;
	place-items: center;
	overflow: hidden;
	border-radius: .7rem;
	background: var(--a4n-brand-soft);
}
.route-map-attraction-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.route-map-attraction-card__image + .route-map-attraction-card__icon {
	display: none;
}
.route-map-attraction-card__icon::before {
	width: 10px;
	height: 10px;
	border: 3px solid var(--routes-red);
	border-radius: 50%;
	content: "";
}
.route-map-attraction-group li > a > span:last-child {
	display: grid;
	min-width: 0;
	gap: .15rem;
}
.route-map-attraction-group strong {
	overflow-wrap: anywhere;
	line-height: 1.25;
}
.route-map-attraction-group small {
	color: var(--routes-red-deep);
	font-size: .7rem;
	font-weight: 780;
}

@media (min-width: 1181px) {
	.route-dashboard:not(.route-dashboard--compact) .route-regional-map--tiles {
		height: auto;
	}
	.route-dashboard:not(.route-dashboard--compact) .route-regional-map__main,
	.route-dashboard:not(.route-dashboard--compact) .route-map-explorer,
	.route-dashboard:not(.route-dashboard--compact) .route-map-explorer > * {
		height: auto;
	}
}

@media (max-width: 640px) {
	.route-map-attractions-panel > header {
		align-items: start;
		flex-direction: column;
	}
	.route-map-attraction-group ul {
		grid-template-columns: 1fr;
	}
}

@media (prefers-reduced-motion: reduce) {
	.route-map-attraction-group li > a {
		transition: none;
	}
	.route-map-attraction-group li > a:hover,
	.route-map-attraction-group li > a:focus-visible,
	.route-map-attraction-group li.is-active > a {
		transform: none;
	}
}
