/* Scoped visit-page additions; keep the paid site's typography and brand. */
.visit-jumps{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;padding:24px;background:#f5f7ee;border-bottom:1px solid #dce2d0}
.visit-jumps a,.visit-actions a,.visit-copy{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 20px;border:1px solid #8b9e5f;border-radius:4px;color:#3e512d;background:#fff;font:inherit;text-decoration:none;cursor:pointer}
.visit-section{padding-block:72px;scroll-margin-top:145px}
.location-map-section,.visit-card[id]{scroll-margin-top:145px}
.visit-section .sub-heading{margin-bottom:24px}
.visit-section .sub-lead{max-width:100%;line-height:1.9}
.visit-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:28px}
.visit-card{border:1px solid #dce2d1;background:#fff;padding:30px;min-width:0;border-top:3px solid #9caf6d}
.visit-card h3{font-size:23px;line-height:1.5;margin:8px 0 18px;color:#293221;word-break:keep-all}
.visit-card h3 small{font-size:15px;color:#667451}
.visit-card p,.visit-card li{font-size:16px;line-height:1.9;color:#48533f;overflow-wrap:anywhere}
.visit-card p+p{margin-top:15px}
.visit-card ul{padding-left:20px}
.visit-highlight{background:#f1f5e7}
.visit-kicker{display:block;color:#7a8d4d;font-size:12px;font-weight:700;letter-spacing:.1em}
.visit-hours{margin:0}
.visit-hours>div{padding:17px 0;border-bottom:1px solid #e0e5d6;display:flex;justify-content:space-between;gap:12px}
.visit-hours dt{font-size:15px}.visit-hours dd{margin:0;font-size:17px;font-weight:700;text-align:right;white-space:nowrap}
.visit-hours dd span{display:block;font-size:12px;color:#687d3e}
.visit-phone{display:block;font-size:30px;font-weight:700;color:#536b31;margin:22px 0;text-decoration:none}
.visit-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.visit-stop-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:30px}
.visit-card .visit-muted,.visit-source{color:#6e7864;font-size:14px;line-height:1.8}
.visit-source{margin-top:22px}.visit-source a{color:#526b32;text-decoration:underline;text-underline-offset:4px}
.visit-parking-benefit{line-height:1.9;margin:15px 0!important}.visit-parking-benefit strong{font-weight:500}.visit-card a{color:#506b30;text-decoration-color:#91a76b;text-underline-offset:4px}.visit-copy{margin-top:18px}.visit-copy-result{min-height:24px;margin-top:10px}
.visit-area-nav{display:block;margin:28px 0 36px;border-top:1px solid #d8e0cc}
.visit-area-nav>div{display:grid;grid-template-columns:175px minmax(0,1fr);gap:20px;padding:22px 0;border-bottom:1px solid #d8e0cc}
.visit-area-nav strong{padding-top:10px;font-size:17px}.visit-area-nav>div>div{display:flex;flex-wrap:wrap;gap:9px}
.visit-area-nav a{padding:9px 15px;background:#fff;border:1px solid #d3dec0;color:#3f542b;border-radius:24px;text-decoration:none;font-size:15px}
.visit-region-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.visit-region-grid h3{font-size:21px}.visit-card .visit-towns{color:#708044;font-size:14px;padding-bottom:15px;border-bottom:1px solid #e1e6d8}
.visit-more{display:inline-block;color:#506b30;margin-top:20px;text-decoration:underline;text-underline-offset:5px}
.visit-treatment-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:28px}
.visit-treatment-links a{display:block;padding:20px;background:#fff;border:1px solid #d7dfca;color:#334828;text-decoration:none;font-size:17px}
.visit-tour{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;margin-top:52px;background:#eef3e3;padding:28px}
.visit-tour h3{font-size:25px;margin-bottom:16px}.visit-tour p{line-height:1.8;margin-bottom:18px}.visit-tour img{width:100%;height:240px;object-fit:cover}.visit-tour a{color:#48602e;text-decoration:underline}
.visit-section a:focus-visible,.visit-jumps a:focus-visible,.visit-copy:focus-visible{outline:3px solid #536e2b;outline-offset:4px}
@media(max-width:900px){.visit-region-grid{grid-template-columns:1fr}.visit-tour{gap:22px}.visit-hours>div{flex-direction:column;gap:6px}.visit-hours dd{text-align:left}}
@media(max-width:600px){.visit-jumps{padding:16px;gap:8px;justify-content:flex-start}.visit-jumps a{padding:9px 13px;font-size:14px}.visit-section{padding-block:44px;scroll-margin-top:95px}.visit-card[id],.location-map-section{scroll-margin-top:95px}.visit-two-col,.visit-stop-grid,.visit-tour{grid-template-columns:1fr;gap:16px}.visit-card{padding:22px}.visit-card h3{font-size:21px}.visit-card p,.visit-card li{font-size:15px}.visit-phone{font-size:28px}.visit-area-nav>div{grid-template-columns:1fr;gap:12px}.visit-area-nav a{font-size:14px;padding:9px 13px}.visit-treatment-links{grid-template-columns:repeat(2,minmax(0,1fr))}.visit-treatment-links a{padding:15px;font-size:15px}.visit-tour{padding:22px}.visit-tour img{height:200px}.visit-actions a{font-size:14px;padding:12px}.visit-hours>div{flex-direction:row}.visit-hours dt{font-size:13px}.visit-hours dd{font-size:15px}}

.visit-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:30px}.visit-section a{color:#506b30;text-underline-offset:4px}@media(max-width:700px){.visit-summary-grid{grid-template-columns:1fr;gap:16px}}
.visit-arrival-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:64px;align-items:start}.visit-arrival-time{font-size:clamp(26px,2.8vw,36px);font-weight:700;line-height:1.45;color:#526d30;margin-bottom:18px}.visit-arrival-copy{font-size:17px;line-height:1.95;color:#414c3c}.visit-arrival-basis{margin-top:12px}.visit-arrival-cards{gap:12px;margin-top:24px}.visit-arrival-cards .visit-card{padding:22px 18px}.visit-arrival-cards .visit-card h3{font-size:18px;line-height:1.65;margin-bottom:10px}.visit-arrival-cards .visit-card p{font-size:13px;line-height:1.8}.visit-route-basis{margin-top:20px;border-bottom:1px solid #dce3d1;padding-bottom:14px;color:#68745b;font-size:13px;line-height:1.8}.visit-route-basis summary{cursor:pointer}.visit-route-basis .visit-source{margin-top:10px}@media(max-width:1000px){.visit-arrival-layout{grid-template-columns:1fr;gap:26px}}@media(max-width:700px){.visit-arrival-cards{grid-template-columns:1fr}.visit-arrival-cards .visit-card{padding:20px}.visit-arrival-copy{font-size:15px}.visit-arrival-time{font-size:27px}.visit-arrival-layout{gap:22px}}
