/* Shared navigation clearance and footer consistency */
.foot-social{text-align:center}.foot-icons{justify-content:center;align-items:center;flex-wrap:wrap}.foot-icons .social-pending{width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;color:white}
body.route-page{--nav-height:78px}body.route-page .crumb{padding-top:calc(var(--nav-height) + 12px)}html:has(body.route-page){scroll-padding-top:150px}body.route-page #hdr{background:#14140f}body.route-page .jump{top:78px;border-bottom:0;padding-inline:max(24px,calc((100vw - 1128px)/2));scrollbar-width:thin}body.route-page .jump a{border-bottom-color:transparent!important}body.route-page .jump a.active{background:#292b22;color:#fff}#voices header{position:static;inset:auto;z-index:auto}

/* Whole-pixel menu height and opaque edge prevent fractional scroll seams. */
body.route-page .jump{height:52px;min-height:52px;box-sizing:border-box;border:0;box-shadow:0 2px 0 var(--ink);align-items:stretch}body.route-page .jump a{display:flex;align-items:center;padding-block:0;border:0}

/* GM detail batch: shared Adventures disclosure navigation. */
.main-nav-toggle{display:none}
nav.main .adventures-nav,nav.main .on-road-nav{position:relative}
nav.main :is(.adventures-toggle,.on-road-toggle){font:inherit;font-size:17px;font-weight:500;color:rgba(255,255,255,.86);background:none;border:0;border-bottom:2px solid transparent;padding:3px 0;cursor:pointer;text-align:left}
nav.main .adventures-toggle span{font-size:10px;margin-left:3px}
nav.main :is(.adventures-toggle,.on-road-toggle):focus-visible,nav.main .adventures-panel a:focus-visible{outline:2px solid var(--signal);outline-offset:3px}
nav.main .adventures-toggle[aria-expanded="true"]{color:#fff}
nav.main :is(.adventures-panel,.destination-panel){position:absolute;background:var(--ink-soft,#1e1e17);border:1px solid var(--line-dk,#33332a);box-shadow:0 12px 30px rgba(0,0,0,.35);padding:8px;min-width:300px;z-index:130}
nav.main .adventures-panel{top:calc(100% + 12px);left:0}
nav.main .destination-panel{top:-9px;left:calc(100% + 8px);min-width:235px}
nav.main :is(.adventures-panel,.destination-panel)[hidden]{display:none}
nav.main .adventures-panel a,nav.main .on-road-toggle{display:flex;align-items:center;justify-content:space-between;white-space:nowrap;width:100%;font-size:14px;line-height:1.5;padding:12px 14px;border:0}
nav.main .adventures-panel a:hover,nav.main .on-road-toggle:hover,nav.main .on-road-toggle[aria-expanded="true"]{background:rgba(255,255,255,.08);color:#fff}
nav.main .destination-panel.flip{left:auto;right:calc(100% + 8px)}
#own-motorcycle,.route-region{scroll-margin-top:100px}
.route-region+.route-region .block-head{margin-top:56px}
.route-region:last-child .route-grid{margin-bottom:0}
.block-head .region-subtitle{font-size:15px;font-weight:600;margin:10px 0 16px;color:var(--stone)}
@media(max-width:1000px){
 .main-nav-toggle{display:block;margin-left:auto;font:inherit;font-size:14px;color:#fff;background:none;border:1px solid rgba(255,255,255,.4);padding:7px 10px;cursor:pointer}
 #hdr nav.main{display:none;position:absolute;top:78px;left:0;right:0;margin:0;padding:16px 26px;background:var(--ink);flex-direction:column;align-items:stretch;gap:12px;max-height:calc(100dvh - 78px);overflow-y:auto}
 #hdr nav.main.main-open{display:flex}
 nav.main :is(.adventures-panel,.destination-panel){position:static;margin-top:8px;min-width:0;box-shadow:none}
 nav.main .adventures-panel a{white-space:normal}
 nav.main .destination-panel.flip{position:static}
}

/* Approved dark Option 1: Orange trail. */
nav.main :is(.adventures-panel,.destination-panel){background:var(--ink-soft);border-color:#49483c;box-shadow:0 14px 32px rgba(0,0,0,.3)}nav.main .adventures-panel a,nav.main .on-road-toggle{color:var(--paper);transition:background .15s,color .15s}nav.main .on-road-toggle[aria-expanded="true"]{background:#2c2b23;box-shadow:inset 3px 0 var(--signal)}nav.main .on-road-toggle[aria-expanded="true"] span{color:var(--signal);transform:translateX(2px)}nav.main .destination-panel a{position:relative;gap:16px}nav.main .destination-panel a:after{content:'›';color:var(--stone-lt);font-size:19px}nav.main .destination-panel a:hover,nav.main .destination-panel a:focus-visible{background:#2c2b23;color:var(--paper);box-shadow:inset 3px 0 var(--signal);outline:1px solid #575244;outline-offset:0}nav.main .destination-panel a:focus-visible:after,nav.main .destination-panel a:hover:after{color:var(--signal);transform:translateX(2px)}
/* Accepted Option 1: retain top-level spacing without navigation underlines. */
#hdr nav.main>a,#hdr nav.main>.adventures-nav>.adventures-toggle{border-bottom-color:transparent!important;text-decoration:none!important}
#hdr nav.main>a:focus-visible,#hdr nav.main>.adventures-nav>.adventures-toggle:focus-visible{outline:2px solid var(--paper,#F7F4EC);outline-offset:5px}
@media(prefers-reduced-motion:reduce){nav.main .adventures-panel a,nav.main .on-road-toggle{transition:none}}

/* One preparation-status treatment on cards and shared Adventures menu. */
.route-preparation{font-family:var(--body,'Inter',system-ui,sans-serif);font-size:13px;font-weight:500;line-height:1.5;letter-spacing:.02em;text-transform:none;color:var(--paper,#F7F4EC);background:none;border:0;padding:0}
nav.main .destination-panel .nav-destination-label{display:block;white-space:normal}
nav.main .destination-panel .route-preparation{display:block;margin:4px 0 0}
nav.main .destination-panel .preparation-heading{font-family:var(--body);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--stone-lt);border-top:1px solid var(--line-dk);margin:8px 14px 2px;padding-top:12px}

/* Desktop hover bridges preserve the approved 12px / 8px menu spacing. */
@media(min-width:1001px) and (hover:hover) and (pointer:fine){
 nav.main .adventures-panel::before{content:'';position:absolute;left:0;right:0;top:-13px;height:13px}
 nav.main .destination-panel::before{content:'';position:absolute;top:0;bottom:0;left:-9px;width:9px}
 nav.main .destination-panel.flip::before{left:auto;right:-9px}
 nav.main .region-panel::before{content:'';position:absolute;top:0;bottom:0;left:-9px;width:9px}
 nav.main .region-panel.flip::before{left:auto;right:-9px}
}
/* Destination route flyouts share the approved dark menu treatment. */
nav.main .region-nav{position:relative;display:flex;align-items:stretch}
nav.main .region-nav>a{flex:1;min-width:0;width:auto;white-space:normal}
nav.main .region-nav>a::after{content:none}
nav.main .region-toggle{flex:0 0 34px;font:inherit;font-size:19px;color:var(--stone-lt);border:0;background:none;cursor:pointer;padding:8px}
nav.main .region-toggle:hover,nav.main .region-toggle[aria-expanded=true]{background:#2c2b23;color:var(--signal)}
nav.main .region-toggle:focus-visible{outline:2px solid var(--paper);outline-offset:-2px}
nav.main .region-panel{position:absolute;top:-9px;left:calc(100% + 8px);width:260px;max-height:calc(100dvh - 110px);overflow:visible;background:var(--ink-soft);border:1px solid #49483c;box-shadow:0 14px 32px rgba(0,0,0,.3);padding:8px;z-index:140}
nav.main .region-panel[hidden]{display:none}
nav.main .region-panel.flip{left:auto;right:calc(100% + 8px)}
nav.main .region-panel a{width:auto;white-space:normal}
nav.main .region-panel a::after{content:none}
@media(max-width:1000px){nav.main .region-nav{flex-wrap:wrap}nav.main .region-panel,nav.main .region-panel.flip{position:static;width:100%;max-height:none;box-shadow:none;margin:0 0 8px}nav.main .region-nav>a{flex-basis:calc(100% - 34px)}}

/* Desktop audit: all flyouts remain rightward; adventures.js positions the complete group. */
@media(min-width:1001px){nav.main .adventures-panel{max-width:calc(100vw - 24px)}}

/* First-level link and separate disclosure preserve direct navigation and keyboard/touch access. */
nav.main .on-road-nav{display:flex;align-items:stretch}nav.main .on-road-nav>.on-road-link{flex:1;min-width:0;width:auto}
nav.main .on-road-nav>.on-road-toggle{flex:0 0 34px;width:34px;padding:8px;justify-content:center;font-size:19px}
nav.main .on-road-nav:has(.on-road-toggle[aria-expanded=true])>.on-road-link{background:#2c2b23;box-shadow:inset 3px 0 var(--signal)}
nav.main .on-road-toggle:focus-visible{outline:2px solid var(--paper,#f7f4ec);outline-offset:-2px}
@media(max-width:1000px){nav.main .on-road-nav{flex-wrap:wrap}nav.main .on-road-nav>.on-road-link{flex-basis:calc(100% - 34px)}nav.main .on-road-nav>.destination-panel{width:100%}}
