


.player-hero--photo { position: relative; overflow: hidden; background-color: var(--ridge, #26413C); background-size: cover; background-position: center 35%; }
.player-hero.player-hero--photo, .ui-v13 .v13-hero.player-hero--photo { padding-top: 190px; }
.player-hero--photo .player-hero__img {
  position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%;
  object-fit: cover; object-position: center 35%;
}
.player-hero--photo::before {
  content: ''; position: absolute; inset: 0; z-index: 1;
  background: linear-gradient(180deg, rgba(20,38,34,.05) 0%, rgba(20,38,34,.30) 28%, rgba(30,52,47,.90) 58%, var(--ridge, #26413C) 100%);
}
.player-hero--photo > .container { position: relative; z-index: 2; }
.player-hero--photo .breadcrumb, .player-hero--photo .breadcrumb a { color: rgba(255,255,255,.92); }
.player-hero__credit {
  position: absolute; z-index: 2; top: 8px; right: 10px; margin: 0;
  padding: 2px 6px; border-radius: 4px; background: rgba(0,0,0,.38);
  font-size: 11px; line-height: 1.2; color: rgba(255,255,255,.92);
}

.ui-v15.v13-active.v14-stops .stop-item__dist { display: none; }
.ui-v15.v13-active.v14-stops #tour-status { min-height: 0; }


.ui-p3 { --p3-forest: #1F3A2E; --p3-orange: #A84A17; --p3-cream: #F2EADB; --p3-card: #FAF6EE;
  --p3-ink: #1c1c1c; --p3-ink2: #33372f; --p3-line: #DDD3C1; font-size: 17px; }
.ui-p3 main { color: var(--p3-ink); }


.ui-p3 .player-hero .badge--preview, .ui-p3 .v14-notstarted, .ui-p3 .v13-hero__facts,
.ui-p3 .v13-hero__tags, .ui-p3 .access-note--preview { display: none !important; }
.ui-p3 .player-hero h1 { font-size: 30px; line-height: 1.15; }
.ui-p3 .v13-hero__park { font-size: 17px; }
.ui-p3 .p3-facts { display: grid; grid-template-columns: repeat(var(--p3-cols, 4), 1fr); background: var(--p3-forest);
  color: #fff; text-align: center; padding: 12px 4px 8px; }
.ui-p3 .p3-fact b { display: block; font-size: 18px; }
.ui-p3 .p3-fact span { font-size: 14px; }
.ui-p3 .p3-total { margin: 0; background: var(--p3-forest); color: #fff; text-align: center; font-size: 15px; line-height: 1.4; padding: 0 14px 14px; }
.ui-p3 .p3-line { margin: 0; background: var(--p3-forest); color: #fff; text-align: center; font: 700 19px/1.4 system-ui, sans-serif; padding: 4px 14px 18px; }
.ui-p3.v13-active .p3-facts, .ui-p3.v13-active .p3-line, .ui-p3.v13-active .p3-total, .ui-p3.v13-active .p3-before { display: none; }
.ui-p3 .v13-desc { font-size: 17px; line-height: 1.5; }


.ui-p3 .p3-before { background: var(--p3-card); border: 1px solid var(--p3-line); border-radius: 16px; padding: 14px 16px; margin: 16px 0 4px; }
.ui-p3 .p3-before__head { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.ui-p3 .p3-before h2 { margin: 0; font-family: Georgia, 'Times New Roman', serif; font-size: 20px; color: var(--p3-ink); }
.ui-p3 .p3-before__toggle { min-height: 48px; min-width: 64px; padding: 0 10px; border: 0; background: none; font: 600 15px inherit; color: var(--p3-ink2); text-decoration: underline; cursor: pointer; }
.ui-p3 .p3-steps { list-style: none; margin: 6px 0 0; padding: 0; }
.ui-p3 .p3-steps li { display: flex; gap: 12px; align-items: flex-start; padding: 8px 0; font-size: 17px; line-height: 1.4; }
.ui-p3 .p3-num { flex: 0 0 32px; height: 32px; border-radius: 50%; background: var(--p3-forest); color: #fff; display: grid; place-items: center; font-weight: 700; }
.ui-p3 .p3-steps a { color: var(--p3-orange); font-weight: 700; }


.ui-p3 #v14-ready, .ui-p3 #start-block .start-block__row, .ui-p3 #start-block .start-block__hint,
.ui-p3 #start-block .v14-startlinks, .ui-p3:not(.v13-active) #gps-state, .ui-p3:not(.v13-active) #gps-status { display: none !important; }
.ui-p3 #start-block { border: 0; background: none; padding: 0; margin: 0; }

.ui-p3 #start-block > #nav-modes, .ui-p3 #start-block > #nav-modes-orientation, .ui-p3 #start-block > #nav-modes-advisory { display: none !important; }
.ui-p3 #start-tour-btn { display: block; width: 100%; min-height: 72px; border: 0; border-radius: 18px; background: var(--p3-orange);
  color: #fff; padding: 16px; margin: 16px 0 4px; box-shadow: 0 6px 16px rgba(168,74,23,.3); text-align: center; }
.ui-p3 .p3-start__main { display: block; font-size: 21px; font-weight: 700; }
.ui-p3 .p3-start__sub { display: block; font-size: 15px; font-weight: 500; margin-top: 2px; }
.ui-p3 .p3-explore-link { display: block; width: 100%; min-height: 48px; border: 0; background: none; font-size: 17px; font-weight: 600;
  color: var(--p3-forest); text-decoration: underline; cursor: pointer; }


.ui-p3 .p3-sheet { position: fixed; inset: 0; z-index: 9800; display: flex; align-items: flex-end; }
.ui-p3 .p3-sheet[hidden] { display: none; }
.ui-p3 .p3-sheet__scrim { position: absolute; inset: 0; background: rgba(20,30,25,.55); }
.ui-p3 .p3-sheet__panel { position: relative; width: 100%; max-width: 560px; margin: 0 auto; background: var(--p3-cream);
  border-radius: 22px 22px 0 0; padding: 22px 20px calc(24px + env(safe-area-inset-bottom)); max-height: 90vh; overflow: auto; }
.ui-p3 .p3-sheet h2 { font-family: Georgia, 'Times New Roman', serif; font-size: 24px; margin: 4px 0 10px; color: var(--p3-ink); }
.ui-p3 .p3-sheet p { font-size: 18px; line-height: 1.45; margin: 0 0 14px; color: var(--p3-ink); }
.ui-p3 .p3-sheet__icon { font-size: 32px; }
.ui-p3 .p3-cta { display: block; width: 100%; min-height: 60px; border: 0; border-radius: 16px; background: var(--p3-orange); color: #fff; font-size: 20px; font-weight: 700; margin-top: 4px; }
.ui-p3 .p3-ghost { display: block; width: 100%; min-height: 48px; border: 0; background: none; font-size: 17px; font-weight: 600; color: var(--p3-ink2); margin-top: 6px; }
.ui-p3 #p3-explore-modes .nav-modes { display: flex; flex-direction: column; gap: 10px; }
.ui-p3 #p3-explore-modes [data-nav-mode] { display: flex; flex-direction: column; align-items: flex-start; width: 100%; min-height: 64px; text-align: left;
  padding: 12px 16px; border-radius: 14px; border: 2px solid var(--p3-line); background: #fff; color: var(--p3-ink); }
.ui-p3 #p3-explore-modes [data-nav-mode][aria-checked="true"] { border-color: var(--p3-forest); background: #E7F0E8; }
.ui-p3 .p3-mode__t { font-size: 18px; font-weight: 700; }
.ui-p3 .p3-mode__s { font-size: 15px; color: var(--p3-ink2); margin-top: 2px; }
.ui-p3 #p3-explore-modes .nav-modes__orientation, .ui-p3 #p3-explore-modes .nav-modes__advisory { font-size: 15px; color: var(--p3-ink2); margin-top: 10px; }
body.p3-sheet-open { overflow: hidden; }


.ui-p3 .tour-map-card { margin: 16px 0 0; border-radius: 16px; overflow: hidden; border: 1px solid var(--p3-line); background: var(--p3-card); }
.ui-p3 .tour-map-card .tour-map-bar { display: none; }
.ui-p3 .p3-mapfoot { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 12px 14px; font-size: 15px; }
.ui-p3 .p3-mapfoot__text b { display: block; font-size: 17px; }
.ui-p3 .p3-mapfoot__text span { color: var(--p3-ink2); }
.ui-p3 .p3-btn2 { min-height: 48px; border: 2px solid var(--p3-forest); color: var(--p3-forest); background: #fff; border-radius: 12px;
  padding: 10px 16px; font-size: 16px; font-weight: 700; white-space: nowrap; cursor: pointer; }
.ui-p3 .tour-map-card .tour-map-note { font-size: 13px; color: var(--p3-ink2); }
.ui-p3 .p3-mapbar, .ui-p3 .p3-legend { display: none; }
body.ui-p3.p3-mapfull { overflow: hidden; }

.ui-p3.p3-mapfull #p3-mapcard { display: block !important; position: fixed !important; inset: 0; z-index: 9500 !important; margin: 0; border-radius: 0; border: 0; }
.ui-p3.p3-mapfull .tour-map-card .tour-map-wrap { position: absolute; inset: 0; height: 100% !important; aspect-ratio: auto; border-radius: 0; border: 0; }
.ui-p3.p3-mapfull .p3-mapfoot, .ui-p3.p3-mapfull .tour-map-note { display: none; }
.ui-p3.p3-mapfull .p3-mapbar { display: flex; position: absolute; z-index: 1200; top: calc(12px + env(safe-area-inset-top)); left: 12px; right: 12px;
  justify-content: space-between; align-items: center; background: var(--p3-forest); color: #fff; border-radius: 16px; padding: 4px 16px 4px 4px; font-size: 17px; font-weight: 700; }
.ui-p3 .p3-mapbar__back { min-height: 48px; border: 0; background: none; color: #fff; font: inherit; padding: 0 12px; cursor: pointer; }
.ui-p3.p3-mapfull .p3-legend { display: flex; flex-wrap: nowrap; justify-content: center; gap: 14px; position: absolute; z-index: 1200; left: 12px; right: 12px;
  bottom: calc(8px + env(safe-area-inset-bottom)); background: #fff; border-radius: 14px; padding: 6px 12px; font-size: 13px; line-height: 1.2; color: var(--p3-ink); }

.ui-p3 .p3-dock { display: none; }
.ui-p3.p3-mapfull .p3-dock { display: block; position: absolute; z-index: 1200; left: 12px; right: 12px; bottom: calc(46px + env(safe-area-inset-bottom));
  max-height: calc(33vh - 56px); box-sizing: border-box; background: #fff; border-radius: 16px; padding: 8px 10px 10px; box-shadow: 0 4px 18px rgba(0,0,0,.22); }
.p3-dock__state { font: 700 11px/1.2 system-ui, sans-serif; letter-spacing: .06em; color: #5b6b66; text-transform: uppercase; }
.p3-dock__title { font: 700 16px/1.25 system-ui, sans-serif; color: #163B2E; margin: 1px 0 7px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.p3-dock__row { display: flex; gap: 8px; }
.p3-dk { flex: 1 1 0; min-width: 0; min-height: 46px; border: 0; border-radius: 12px; background: #E8EFEB; color: #163B2E; font: 700 14px/1.1 system-ui, sans-serif; cursor: pointer; padding: 4px 6px; }
.p3-dk--main { flex: 1.5 1 0; background: #1B3552; color: #fff; font-size: 16px; min-height: 50px; }
.p3-dock__next { display: flex; justify-content: space-between; gap: 8px; margin-top: 8px; padding: 7px 10px; border-radius: 10px; background: #E8771E; color: #fff; font: 700 13px/1.2 system-ui, sans-serif; }
.p3-dock__nl { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; } .p3-dock__nd { white-space: nowrap; font-weight: 600; }
.ui-p3 .p3-key--next { background: #E8771E; }
.ui-p3 .p3-legend span { white-space: nowrap; }

.ui-p3.p3-mapfull #tour-map .stop-dot { background: #fff; color: #163B2E; border: 2.5px solid #163B2E; width: 32px; height: 32px; }
.ui-p3.p3-mapfull #tour-map .stop-dot.p3-pin--done { background: var(--p3-forest); color: #fff; }
.ui-p3.p3-mapfull #tour-map .stop-dot.p3-pin--next { background: #E8771E; color: #fff; border-color: #fff; width: 42px; height: 42px; font-size: 16px; box-shadow: 0 0 0 3px rgba(232,119,30,.35); }
.ui-p3 .p3-legend span { display: flex; align-items: center; gap: 6px; }
.ui-p3 .p3-legend__tip { width: 100%; color: var(--p3-ink2); }
.ui-p3 .p3-key { width: 14px; height: 14px; border-radius: 50%; display: inline-block; }
.ui-p3 .p3-key--you { background: #4CAF50; border: 2px solid #26413C; }
.ui-p3 .p3-key--done { background: var(--p3-forest); }
.ui-p3 .p3-key--todo { background: var(--p3-orange); }
.ui-p3 .stop-dot { width: 36px; height: 36px; background: var(--p3-orange); border-color: #fff; cursor: pointer; font-size: 14px; }
.ui-p3 .stop-dot.p3-pin--done { background: var(--p3-forest); }


.ui-p3 .p3-save { margin: 12px 0 0; padding: 12px 14px; border-radius: 16px; border: 1px solid var(--p3-line); background: var(--p3-card); }
.ui-p3 .p3-save__btn { width: 100%; }
.ui-p3 .p3-meter { height: 8px; border-radius: 4px; background: #e3dac8; margin: 10px 0 0; overflow: hidden; }
.ui-p3 .p3-meter i { display: block; height: 100%; width: 0; background: var(--p3-forest); transition: width .3s; }
.ui-p3 .p3-save__line { font-size: 15px; color: var(--p3-ink2); margin-top: 8px; }
.ui-p3.v13-active .p3-save { display: none; }


.ui-p3:not(.v13-active) .stop-list .v12-stops__heading, .ui-p3:not(.v13-active) .stop-list .stop-list__heading {
  font-family: Georgia, 'Times New Roman', serif; font-size: 21px; border: 0; margin: 22px 0 8px; }
.ui-p3:not(.v13-active) .stop-list .stop-item { display: flex; align-items: center; gap: 12px; background: var(--p3-card); border: 1px solid var(--p3-line);
  border-radius: 14px; padding: 12px 14px; margin-bottom: 8px; min-height: 64px; cursor: pointer; }
.ui-p3:not(.v13-active) .stop-list:not(.p3-all) .stop-item.p3-more { display: none !important; }
.ui-p3:not(.v13-active) .stop-item__title { font-size: 17px; font-weight: 600; }
.ui-p3:not(.v13-active) .stop-item__dist, .ui-p3 .p3-len { font-size: 15px; color: var(--p3-ink2); }
.ui-p3 .p3-len { display: block; }
.ui-p3.v13-active .p3-len { display: none; }
.ui-p3:not(.v13-active) .stop-item__action { position: relative; flex: none; width: 48px; height: 48px; min-width: 48px; border-radius: 50%; padding: 0; border: 0;
  background: var(--p3-orange); color: #fff; display: grid; place-items: center; justify-content: center; align-content: center; }
.ui-p3:not(.v13-active) .stop-item__action .stop-item__action-icon { color: #fff; font-size: 16px; margin-left: 3px; }
.ui-p3:not(.v13-active) .stop-item__action .stop-item__action-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.ui-p3:not(.v13-active) #stops-toggle { display: none !important; }
.ui-p3 .p3-seeall { display: block; width: 100%; min-height: 52px; background: #fff; border: 2px solid var(--p3-line); border-radius: 14px;
  font-size: 17px; font-weight: 700; color: var(--p3-forest); margin: 4px 0 8px; cursor: pointer; }
.ui-p3.v13-active .p3-seeall { display: none; }


.ui-p3 .footer-share, .ui-p3 .how-it-works { display: none !important; }

.ui-p3 .v15-map-hint, .ui-p3:not(.v13-active) .toggle-row, .ui-p3:not(.v13-active) #wakelock-indicator { display: none !important; }
.ui-p3 .site-footer { padding: 18px 0; font-size: 15px; }


.ui-p3.v13-active #tour-status > * { order: 20; }
.ui-p3.v13-active #v13-idrow { order: 0; }
.ui-p3.v13-active #tour-status-label { order: 1; }
.ui-p3.v13-active #v14-banner { order: 2; }
.ui-p3.v13-active #v14-attn { order: 3; }
.ui-p3.v13-active #v13-card { order: 4; }
.ui-p3.v13-active #v14-next { order: 5; }
.ui-p3.v13-active #p3-prog { order: 6; }
.ui-p3.v13-active #p3-dots { order: 7; }
.ui-p3.v13-active #p3-pocket { order: 8; }
.ui-p3.v13-active #v14-nav { order: 30; }
.ui-p3.v13-active #v14-nav-end { order: 31; }
.ui-p3.v13-active .v13-sticky__chips, .ui-p3.v13-active #v14-upnext { display: none !important; }
.ui-p3:not(.v13-active) #p3-prog, .ui-p3:not(.v13-active) #p3-dots, .ui-p3:not(.v13-active) #p3-pocket { display: none; }

.ui-p3.v13-active .v14-card__title { font-size: 28px; line-height: 1.15; }
.ui-p3 .p3-now-meta { font-size: 15px; font-weight: 600; color: var(--p3-ink2); margin: 4px 0 0; }
.ui-p3.v13-active .v15-times { font-size: 15px; color: var(--p3-ink2); font-weight: 600; }

.ui-p3.v13-active.v15-live #v14-next { padding: 12px 16px; }
.ui-p3.v13-active.v15-live #v14-next-title { font-size: 19px; }
.ui-p3.v13-active #v14-next-dist { font-size: 16px; }
.ui-p3 .p3-walk { font-size: 15px; color: var(--p3-ink2); margin-top: 2px; }
.ui-p3 .p3-walk:empty { display: none; }

.ui-p3.v13-active:not(.v15-live) #v14-next { order: 4; border-radius: 22px 22px 0 0; margin-bottom: -16px; padding-bottom: 8px; }
.ui-p3.v13-active:not(.v15-live) #v13-card { order: 5; border-top-left-radius: 0; border-top-right-radius: 0; }
.ui-p3.v13-active:not(.v15-live) #v14-next-title { font-size: 28px; line-height: 1.15; }
.ui-p3.v13-active:not(.v15-live) #v14-next-dist { font-size: 18px; font-weight: 700; color: var(--p3-ink); }
.ui-p3.v13-active:not(.v15-live) #v13-card .v15-zone__head,
.ui-p3.v13-active:not(.v15-live) #v13-card .v15-progress,
.ui-p3.v13-active:not(.v15-live) #v13-card #transport,
.ui-p3.v13-active:not(.v15-live) #v13-card .v16-speed-row { display: none !important; }
.ui-p3 #v15-playnow-label { font-size: 0; }
.ui-p3 #v15-playnow-label::after { content: 'Play it now'; font-size: 19px; }
.ui-p3 .p3-far { background: #FBEBD9; border-radius: 12px; padding: 12px; font-size: 16px; line-height: 1.4; color: var(--p3-ink); margin-top: 8px; }
.ui-p3.p3-is-far #v14-next-dist, .ui-p3.p3-is-far #p3-walk { display: none; }

.ui-p3 .p3-prog { display: flex; justify-content: space-between; font-size: 15px; font-weight: 700; color: var(--p3-forest); margin-top: 4px; }
.ui-p3 .p3-dots { display: flex; gap: 3px; }
.ui-p3 .p3-dots i { flex: 1; height: 6px; border-radius: 3px; background: #d6ccb8; }
.ui-p3 .p3-dots i.p3-dot--done { background: var(--p3-forest); }
.ui-p3 .p3-pocket { background: #E7F0E8; border-radius: 12px; padding: 10px 12px; font-size: 15px; line-height: 1.4; color: var(--p3-ink); }

.ui-p3.v13-active .v15-nav__item, .ui-p3.v13-active .v14-nav__link { min-height: 48px; }
.ui-p3.v13-active .v15-note__text, .ui-p3.v13-active .v15-helper { font-size: 15px; color: var(--p3-ink2); }
.ui-p3.v13-active:not(.v15-live) #v15-waiting > .v15-eyebrow { display: none; }

.ui-p3 .whatsapp-btn { background: #177245; border-color: #177245; color: #fff; }


.ui-p3 .player-hero.player-hero--photo, .ui-p3.ui-v13 .v13-hero.player-hero--photo { padding-top: 120px; }
.ui-p3 .player-hero--photo::before {
  background: linear-gradient(180deg, rgba(20,38,34,0) 0%, rgba(20,38,34,.18) 30%, rgba(30,52,47,.82) 66%, var(--ridge, #26413C) 100%);
}
@media (max-width: 600px) { .ui-p3 .player-hero .breadcrumb { display: none; } .ui-p3 .player-hero h1 { font-size: 27px; } }
.ui-p3 .p3-startbar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 9400; padding: 10px 14px calc(10px + env(safe-area-inset-bottom));
  background: rgba(242,234,219,.97); border-top: 1px solid var(--p3-line); box-shadow: 0 -6px 18px rgba(0,0,0,.12); }
.ui-p3 .p3-startbar[hidden] { display: none; }
.ui-p3 .p3-startbar button { display: block; width: 100%; max-width: 560px; margin: 0 auto; min-height: 56px; border: 0; border-radius: 16px;
  background: var(--p3-orange); color: #fff; font-size: 19px; font-weight: 700; cursor: pointer; }
.ui-p3 .p3-startbar small { font-size: 15px; font-weight: 500; }
body.ui-p3.p3-has-bar { padding-bottom: calc(84px + env(safe-area-inset-bottom)); }
.ui-p3 .p3-before--compact { padding: 4px 8px; }
.ui-p3 .p3-howto { display: flex; width: 100%; min-height: 48px; align-items: center; justify-content: space-between; border: 0; background: none;
  font-family: Georgia, 'Times New Roman', serif; font-size: 19px; color: var(--p3-ink); cursor: pointer; padding: 0 8px; }
.ui-p3 .p3-howto__chev { font-family: inherit; font-size: 22px; transition: transform .2s; }
.ui-p3 .p3-howto[aria-expanded="true"] .p3-howto__chev { transform: rotate(90deg); }
.ui-p3 .p3-before + .v13-desc { margin-top: 16px; }


@font-face { font-family: 'Fraunces Atlas'; font-style: normal; font-weight: 100 900; font-display: optional;
  src: url('../fonts/atlas/fraunces-latin-opsz-normal.woff2') format('woff2-variations'), url('../fonts/atlas/fraunces-latin-opsz-normal.woff2') format('woff2'); }
@font-face { font-family: 'Instrument Sans Atlas'; font-style: normal; font-weight: 400; font-display: optional; src: url('../fonts/atlas/instrument-sans-latin-400-normal.woff2') format('woff2'); }
@font-face { font-family: 'Instrument Sans Atlas'; font-style: normal; font-weight: 500; font-display: optional; src: url('../fonts/atlas/instrument-sans-latin-500-normal.woff2') format('woff2'); }
@font-face { font-family: 'Instrument Sans Atlas'; font-style: normal; font-weight: 600 800; font-display: optional; src: url('../fonts/atlas/instrument-sans-latin-600-normal.woff2') format('woff2'); }

@font-face { font-family: 'Public Sans Atlas'; font-style: normal; font-weight: 600; font-display: optional; src: url('../fonts/atlas/public-sans-latin-600-normal.woff2') format('woff2'); }

body.brand-atlas {
  --atlas-display: 'Fraunces Atlas', Georgia, 'Times New Roman', serif;
  --atlas-body: 'Instrument Sans Atlas', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --atlas-paper: #F5F1E8; --atlas-surface: #FFFFFF; --atlas-ink: #15201D; --atlas-ink-2: #3E4845; --atlas-stone: #56605C;
  --atlas-line: #DDD6C8; --atlas-spruce: #26413C; --atlas-spruce-deep: #1F3531; --atlas-spruce-tint: #E3EAE6;
  
  --brand21-green: #163B2E; --brand21-green-dark: #0E241C; --brand21-gold: #C9A227;
  --brand21-paper: #FBF8F1; --brand21-cream: #F6F1E4; --brand21-ink: #2B2B27;
  --atlas-ember: #B4532A; --atlas-ember-ink: #8A4A26; --atlas-on-dark: #D6DDD8;
  
  --ridge: var(--atlas-spruce); --ridge-dark: var(--atlas-spruce-deep); --ember: var(--atlas-ember); --cream: var(--atlas-paper);
  --charcoal: var(--atlas-ink); --muted: var(--atlas-stone); --border: var(--atlas-line);
  --font-heading: var(--atlas-display); --font-body: var(--atlas-body);
  background: var(--atlas-paper); color: var(--atlas-ink);
}

body.brand-atlas.ui-v15 { --v15-bg: #F5F1E8; --v15-ink: #15201D; --v15-green: #26413C; --v15-card: #FFFFFF; --v15-muted: #56605C; --v15-ember: #B4532A; --v15-end: #8A4A26; }
body.brand-atlas.ui-p3 { --p3-forest: #26413C; --p3-orange: #B4532A; --p3-cream: #F5F1E8; --p3-card: #FFFFFF; --p3-ink: #15201D; --p3-ink2: #3E4845; --p3-line: #DDD6C8; }

body.brand-atlas, body.brand-atlas *:not(svg):not(svg *):not(.leaflet-container):not(.leaflet-container *) { font-family: var(--atlas-body) !important; }
body.brand-atlas :is(h1, h2, h3, .v14-card__title, #v14-next-title, .v15-next__title, .v15-banner__top, .v13-hero__park, .p3-fact b,
  .p3-mapfoot__text b, .p3-howto, .atlas-lockup__name, .stop-list__heading, #stops-heading, .p3-mode__t) { font-family: var(--atlas-display) !important; }
body.brand-atlas :is(h1, h2, h3, .v14-card__title, #v14-next-title) { font-weight: 600; letter-spacing: -0.01em; }
body.brand-atlas .v13-hero__park { font-weight: 400; }
body.brand-atlas .p3-steps a, body.brand-atlas .back-link a { color: var(--atlas-ember-ink); }

body.brand-atlas .site-header { background: var(--atlas-paper); border-bottom: 1px solid var(--atlas-line); }
body.brand-atlas .atlas-lockup { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; color: var(--brand21-green); text-decoration: none; }
body.brand-atlas .atlas-mark { width: 32px; height: 32px; flex: none; }
body.brand-atlas .atlas-lockup__words { display: flex; flex-direction: column; justify-content: center; gap: 1px; }
body.brand-atlas .atlas-lockup__name {
  font-family: var(--atlas-display) !important; font-weight: 700; font-size: 22px;
  letter-spacing: -0.015em; line-height: 1; text-transform: uppercase; color: var(--brand21-green);
}
body.brand-atlas .atlas-lockup .atlas-lockup__words .atlas-lockup__descriptor {
  
  font-family: 'Public Sans Atlas', system-ui, -apple-system, 'Segoe UI', sans-serif !important;
  font-weight: 600; font-size: 9.5px; line-height: 1; text-transform: uppercase;
  letter-spacing: 0.17em; color: var(--brand21-green); opacity: .82;
}
body.brand-atlas .atlas-lockup__place { font-size: 15px; font-weight: 500; color: var(--atlas-stone); line-height: 1; }

@media (max-width: 359px) {
  body.brand-atlas .atlas-lockup__descriptor, body.brand-atlas .atlas-lockup__place { display: none; }
  body.brand-atlas .atlas-mark { width: 26px; height: 26px; }
}

body.brand-atlas .atlas-footer__lockup { display: inline-flex; align-items: center; gap: 10px; margin: 0 0 10px; color: #FBF8F1; }
body.brand-atlas .atlas-footer__lockup .atlas-mark { width: 30px; height: 30px; }
body.brand-atlas .atlas-footer__lockup .atlas-lockup__name,
body.brand-atlas .atlas-footer__lockup .atlas-lockup__descriptor { color: #FBF8F1; }

body.brand-atlas .atlas-lockup__descriptor:not(svg):not(svg *):not(.leaflet-container):not(.leaflet-container *) {
  font-family: 'Public Sans Atlas', system-ui, -apple-system, 'Segoe UI', sans-serif !important; }
body.brand-atlas .nav__links a { color: var(--atlas-ink); font-weight: 600; }

body.brand-atlas .site-footer { background: var(--brand21-green-dark); color: var(--atlas-on-dark); }
body.brand-atlas .atlas-footer__line { margin: 0; font-size: 15px; line-height: 1.5; color: var(--atlas-on-dark); }
body.brand-atlas .atlas-footer__mark { font-family: var(--atlas-display) !important; font-weight: 600; font-size: 18px; color: #F5F1E8; margin-right: 6px; }


.ui-p3 .p3-save--top { margin: 12px 0 0; }
.ui-p3 .p3-save--top .p3-save__btn { min-height: 56px; font-size: 18px; }


.ui-p3 .stop-item .stop-item__action.stop-item__action--pending,
.ui-p3:not(.v13-active) .stop-item .stop-item__action.stop-item__action--pending {
  position: static; display: inline-flex; align-items: center; width: auto; height: auto; min-width: 0; min-height: 32px;
  padding: 4px 10px; border-radius: 999px; border: 1px dashed currentColor; background: none; box-shadow: none;
  color: var(--p3-ink2, #3E4845); font-size: 13px; font-weight: 600; line-height: 1.2; text-align: center; white-space: normal; max-width: 96px; }


body.brand-atlas .atlas-footer__contact { margin: 6px 0 0; }
body.brand-atlas .atlas-contact { color: var(--brand21-paper); text-decoration: underline; display: inline-block; min-height: 44px; line-height: 44px; }


.mail-panel { border: 0; border-radius: 20px; padding: 24px; width: min(92vw, 420px);
  background: #FFFFFF; color: #2B2B27; box-shadow: 0 18px 48px rgba(14,36,28,.28); }
.mail-panel::backdrop { background: rgba(14, 36, 28, 0.6); }
.mail-panel__title { font-size: 26px; margin: 0 0 6px; }
.mail-panel__lead { margin: 0; color: #56605C; }
.mail-panel__addr { margin: 4px 0 16px; font-size: 20px; font-weight: 600; color: #163B2E;
  word-break: break-all; user-select: all; }
.mail-panel__actions { display: flex; flex-direction: column; gap: 10px; }
.mail-panel__btn { display: flex; align-items: center; justify-content: center; min-height: 52px;
  border-radius: 999px; border: 1.5px solid #163B2E; background: transparent; color: #163B2E;
  font: inherit; font-weight: 600; font-size: 17px; text-decoration: none; cursor: pointer; }
.mail-panel__btn--primary { background: #163B2E; color: #fff; }
.mail-panel__btn:hover { background: #E3EAE6; color: #163B2E; }
.mail-panel__btn--primary:hover { background: #0E241C; color: #fff; }
.mail-panel__btn:focus-visible, .mail-panel__close:focus-visible { outline: 3px solid #163B2E; outline-offset: 2px; }
.mail-panel__toast { margin: 12px 0 0; min-height: 1.4em; font-weight: 600; color: #163B2E; }
.mail-panel__close { margin-top: 10px; width: 100%; min-height: 44px; border: 0; background: none;
  color: #56605C; font: inherit; text-decoration: underline; cursor: pointer; }
.mail-panel__sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0);
  clip-path: inset(50%); white-space: nowrap; }


.ui-p3.v13-active #v14-banner-sub { display: none !important; }


.ui-p3 .p3-mapfoot.p3-maprow { display: flex; flex-wrap: nowrap; justify-content: stretch; align-items: stretch; gap: 8px; padding: 10px; }
.ui-p3 .p3-maprow > button { flex: 1 1 0; min-width: 0; width: auto; min-height: 56px; margin: 0; padding: 6px 4px;
  font-size: 14px; line-height: 1.2; font-weight: 700; white-space: normal; text-align: center; display: flex; align-items: center; justify-content: center; }
.ui-p3 .p3-maprow > #p3-open-map { order: 1; }
.ui-p3 .p3-maprow > #ps-locate { order: 2; }
.ui-p3 .p3-maprow > #p3-save-btn { order: 3; }
.ui-p3 .p3-maprow > button { border: 2px solid var(--brand21-green, #163B2E) !important; border-radius: 14px !important; background: #fff !important;
  color: var(--brand21-green, #163B2E) !important; margin-left: 0 !important; padding: 6px 4px !important; font-size: 14px !important; }
.ui-p3 .p3-maprow > button[disabled] { opacity: .7; }



.ic{vertical-align:-3px;margin-right:6px}
.ui-p3 .stop-item{align-items:flex-start}
.ui-p3 .stop-item__number{align-self:flex-start;margin-top:3px}
.ui-p3 .stop-item__action{align-self:center}
.ui-p3 .stop-item__body{min-width:0;flex:1;display:flex;flex-wrap:wrap;align-items:center;gap:2px 10px}
.ui-p3 .stop-item__title,.ui-p3 .stop-item__sub{flex:1 1 100%;overflow-wrap:anywhere}
.ui-p3 .stop-item__sub{margin:0 0 4px;font-size:14px;line-height:1.35;color:var(--p3-ink2,#3E4845)}
.ui-p3 .stop-item__dist{flex:none}
.ui-p3 .ra-take--row{display:inline-flex;margin:0}
.ui-p3 .mb-read{min-height:40px;padding:0 14px;border-radius:999px}
.ui-p3 .mb-tx{flex:1 1 100%}


body.p3-preview .stop-item__dist,body.p3-preview #ra-box{display:none!important}
