/* Delivery navigation follows the existing J&J owner badge and button system. */
.cycle-route-maps{margin:26px 0;color:var(--green)}
.cycle-route-maps .route-maps-heading{display:flex;align-items:center;gap:15px;margin-bottom:13px}
.cycle-route-maps .route-map-badge{display:grid;place-items:center;flex:0 0 62px;width:62px;height:62px;border:1px solid #a8c4c3;border-radius:50%;background:#e1eded;box-shadow:inset 0 0 0 4px #ffffff99,0 3px 0 #dfe4d5}
.cycle-route-maps svg{width:22px;height:22px;flex:none}
.cycle-route-maps .route-map-badge svg{width:31px;height:31px}
.cycle-route-maps .route-map-eyebrow{margin:0 0 3px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--copper)}
.cycle-route-maps h3{margin:0;font-size:24px;color:var(--green)}
.cycle-route-maps .route-maps-intro{margin:0 0 18px;max-width:790px;font-size:15px;color:var(--muted);line-height:1.6}
.cycle-route-maps .route-map-card{padding:20px;border:1px solid #c7cfbd;border-radius:20px;background:var(--white,#fffdf6);box-shadow:0 4px 0 #e3e7d9}
.cycle-route-maps .route-map-card+.route-map-card{margin-top:18px}
.cycle-route-maps .route-map-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin:0 0 12px}
.cycle-route-maps h4{margin:0 0 3px;font-size:21px;line-height:1.35;color:var(--green)}
.cycle-route-maps .route-map-card-heading p{margin:0;font-size:14px;color:var(--muted)}
.cycle-route-maps .route-stop-count{display:inline-flex;align-items:center;gap:6px;flex:none;padding:6px 11px;border:1px solid #d4d9c6;border-radius:999px;background:#f1f4e8;font-size:13px;font-weight:750;white-space:nowrap}
.cycle-route-maps .route-stop-count svg{width:17px;height:17px}
.cycle-route-maps .route-map-status{margin:0 0 12px;font-size:14px;color:var(--muted);line-height:1.55}
.cycle-route-maps .route-map-status.is-optimized{color:var(--green)}
.cycle-route-maps .route-map-status.is-optimized>span{display:inline-grid;place-items:center;width:20px;height:20px;margin-right:3px;border-radius:50%;background:#e8eee0;font-weight:800;font-size:12px}
.cycle-route-maps .route-drive-time{display:flex;align-items:center;gap:9px;margin:0 0 16px;font-size:14px;color:var(--muted)}
.cycle-route-maps .route-drive-time svg{width:19px;height:19px;color:var(--green)}
.cycle-route-maps .route-drive-time strong{color:var(--green)}
.cycle-route-maps .route-map-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px}
.cycle-route-maps .button.route-map-open{display:flex;align-items:center;justify-content:flex-start;gap:12px;width:100%;min-height:78px;padding:13px 17px;border-radius:16px;text-align:left;text-decoration:none;line-height:1.35;box-shadow:0 4px 0 #193b29}
.cycle-route-maps .route-map-open>span:nth-child(2){min-width:0}
.cycle-route-maps .route-map-open strong{display:block;font-size:16px;color:inherit}
.cycle-route-maps .route-map-open small{display:block;margin-top:4px;font-size:12px;font-weight:500;color:inherit;opacity:.9}
.cycle-route-maps .route-section-number{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border:1px solid #ffffff80;border-radius:50%;background:#ffffff16;color:inherit;font-size:17px;font-weight:800}
.cycle-route-maps .route-map-open .route-map-arrow{margin-left:auto;flex:none;font-size:23px}
.cycle-route-maps .route-next-section{margin:14px 0 0;font-size:13px;color:var(--muted)}
.cycle-route-maps .route-map-backup{margin-top:18px;padding-top:13px;border-top:1px solid #e1e3d5;font-size:13px;color:var(--muted)}
.cycle-route-maps .route-map-backup summary{min-height:34px;cursor:pointer;color:var(--green);font-weight:650}
.cycle-route-maps .route-map-backup summary:focus-visible{outline:3px solid var(--copper);outline-offset:3px;border-radius:4px}
.cycle-route-maps .route-map-backup p{margin:6px 0 11px;font-size:13px}
.cycle-route-maps .route-browser-links{display:flex;flex-wrap:wrap;gap:8px}
.cycle-route-maps .route-browser-links .button{min-height:42px;padding:8px 14px;font-size:13px;border-radius:999px;line-height:1.5}
.cycle-route-maps .route-map-address-alert{margin:12px 0 0;padding:10px 12px;border-left:3px solid var(--copper);border-radius:0 8px 8px 0;background:#fcf0df;color:var(--ink);font-size:14px}
@media(max-width:640px){
 .cycle-route-maps .route-maps-heading{gap:12px}
 .cycle-route-maps .route-map-badge{flex-basis:54px;width:54px;height:54px}
 .cycle-route-maps .route-map-badge svg{width:27px;height:27px}
 .cycle-route-maps h3{font-size:21px}
 .cycle-route-maps .route-map-eyebrow{font-size:10px}
 .cycle-route-maps .route-maps-intro{font-size:14px}
 .cycle-route-maps .route-map-card{padding:16px 13px;border-radius:17px}
 .cycle-route-maps .route-map-card-heading{gap:8px}
 .cycle-route-maps h4{font-size:19px}
 .cycle-route-maps .route-stop-count{padding:5px 8px;font-size:12px}
 .cycle-route-maps .route-map-card-heading p{font-size:13px}
 .cycle-route-maps .route-map-sections{grid-template-columns:1fr}
 .cycle-route-maps .button.route-map-open{padding:12px;gap:10px;min-height:76px}
 .cycle-route-maps .route-map-open strong{font-size:15px}
 .cycle-route-maps .route-drive-time{align-items:flex-start;font-size:13px}
 .cycle-route-maps .route-drive-time svg{margin-top:1px}
}
@media(forced-colors:active){
 .cycle-route-maps .route-map-badge,.cycle-route-maps .route-section-number{background:ButtonFace;color:ButtonText;border-color:ButtonText;box-shadow:none}
 .cycle-route-maps .route-map-card{border-color:CanvasText;box-shadow:none}
}
