/* Calm mobile rhythm; desktop keeps the full reading view. */
.path-mini-art, .route-glance { display: none; }
.hwf-guide-article-page .destination-intro { margin: .5rem 0 1rem; color: var(--body); font: 500 1rem/1.6 system-ui,sans-serif; }
.hwf-guide-article-page .field-article-content > .local-guide-photo { max-width: 600px; margin: 1rem auto 1.25rem; }
.hwf-guide-article-page .field-article-content > .local-guide-photo img { width: 100%; height: auto; border-radius: 10px; }
.hwf-guide-article-page .route-glance { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin: .85rem 0 1rem; padding: .85rem 1rem; border: 1px solid var(--reading-line); border-radius: 8px; }
.route-glance dt { margin-bottom: .2rem; color: var(--teal-dark); font: 650 .78rem/1.4 system-ui,sans-serif; }
.route-glance dd { margin: 0; color: var(--ink); font: 500 .95rem/1.5 system-ui,sans-serif; }
/* One useful chooser replaces the route article's duplicate table of contents. */
.local-route-chooser { margin: 1rem 0 1.75rem; border: 1px solid var(--reading-line); border-radius: 10px; overflow: hidden; }
.local-route-chooser > summary { padding: 1rem; min-height: 44px; cursor: pointer; color: var(--ink); font: 700 1.05rem/1.5 system-ui,sans-serif; background: var(--paper); }
.local-route-chooser > summary > span { display: block; margin: .2rem 0 0 1rem; color: var(--body); font: 400 .875rem/1.5 system-ui,sans-serif; }
.local-route-chooser ol { display: grid; grid-template-columns: 1fr 1fr; list-style: none; margin: 0; padding: .5rem; gap: .25rem; }
.local-route-chooser li { margin: 0; min-width: 0; }
.local-route-chooser li a { display: grid; gap: .3rem; padding: .8rem; min-height: 44px; height: 100%; box-sizing: border-box; border: 1px solid var(--reading-line); border-radius: 6px; color: var(--ink); text-decoration: none; }
.local-route-chooser li a:hover { background: var(--paper); }
.local-route-chooser strong { color: var(--teal-dark); text-decoration: underline; text-underline-offset: .18em; font: 650 1rem/1.4 system-ui,sans-serif; }
.local-route-chooser li span { font: 500 .85rem/1.4 system-ui,sans-serif; }
.local-route-chooser li small { color: var(--body); font: 400 .85rem/1.5 system-ui,sans-serif; }
.local-route-chooser a:focus-visible,.local-route-chooser > summary:focus-visible,.activity-route-details > summary:focus-visible { outline: 3px solid var(--teal-dark); outline-offset: -3px; }
.activity-route-details { margin: .75rem 0 1rem; border-bottom: 1px solid var(--reading-line); }
.activity-route-details > summary { display: list-item; cursor: pointer; min-height: 44px; padding-block: .65rem; color: var(--teal-dark); font: 650 .95rem/1.5 system-ui,sans-serif; }
.activity-route-details > div { padding: .1rem 0 .65rem; }
.activity-companion { margin: .6rem 0 1.5rem; font: 500 .9rem/1.55 system-ui,sans-serif; }
.activity-companion a { display: inline-flex; align-items: center; min-height: 44px; gap: .3rem; }
.field-article-meta .local-checked-date { color: var(--teal-dark); }
.hwf-guide-article-page .field-article-content .event-date-status { margin: .4rem 0 .8rem; color: var(--teal-dark); font: 650 .78rem/1.5 system-ui,sans-serif; }
.local-status-note { padding: .7rem 1rem; border-left: 3px solid var(--teal-dark); font: 600 .95rem/1.6 system-ui,sans-serif; }
.mobile-reading-extra > summary, .home-about-extra > summary { min-height: 44px; padding-block: .65rem; cursor: pointer; font: 650 .95rem/1.5 system-ui,sans-serif; color: var(--teal-dark); }
.mobile-reading-extra > div, .home-about-extra > div { min-width: 0; }
.mobile-reading-extra > div > p:first-child, .home-about-extra > div > p:first-child { margin-top: .35rem; }
.outing-glance { margin: 1rem 0; }
.outing-glance > div { display: grid; grid-template-columns: 95px minmax(0,1fr); gap: .65rem; padding: .45rem 0; border-bottom: 1px solid var(--reading-line); }
.outing-glance dt, .outing-glance dd { margin: 0; font: .95rem/1.55 system-ui,sans-serif; }
.outing-glance dt { font-weight: 650; color: var(--ink); }
/* 2.8.1: Buying & Selling labels include single long words such as "Condominium". */
.hwf-consumer-page .outing-glance > div { grid-template-columns: minmax(0, 8.5rem) minmax(0, 1fr); }
.event-heading small { display: block; margin-top: .4rem; color: var(--teal-dark); font: 650 .95rem/1.5 system-ui,sans-serif; }
.footer-utilities .appearance-settings { flex-direction: row; align-items: center; gap: 0; }
.appearance-options { padding: 2px; border-radius: 7px; }
.appearance-options label > span { padding: .25rem .55rem; min-height: 44px; font-size: .75rem; }
.appearance-options i { font-size: .9rem; }
/* Keep help and saved-state announcements accessible without growing the footer. */
#appearance-help, #hwf-appearance-status, #hwf-appearance legend { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.mobile-reading-extra:focus-within, .home-about-extra:focus-within { outline-offset: 3px; }
.mobile-reading-extra > summary:focus-visible, .home-about-extra > summary:focus-visible { outline: 3px solid var(--teal-dark); outline-offset: 3px; }
.hwf-homepage .decision-copy .home-about-extra > summary { color: #edcc8c; }
.hwf-homepage .home-about-extra > summary:focus-visible { outline-color: #edcc8c; }
@media (min-width: 761px) {
  .mobile-reading-extra > summary, .home-about-extra > summary { display: none; }
}
@media (max-width: 760px) {
  .local-route-chooser ol { grid-template-columns: 1fr; }
  .local-route-chooser li a { gap: .25rem; padding: .75rem; }
  .hwf-homepage .section-heading, .hwf-homepage .process-heading { gap: .65rem; }
  .hwf-homepage .path-card { position: relative; padding: 1.25rem; }
  .hwf-homepage .path-mini-art { display: block; position: absolute; top: 1.25rem; right: 1.25rem; width: 88px; height: 58px; margin: 0; border-radius: 7px; object-fit: contain; }
  .hwf-homepage .path-card .card-number { min-height: 58px; display: flex; align-items: center; padding-right: 100px; margin: 0 0 .5rem; }
  .hwf-homepage .path-card h3 { clear: both; margin-top: .3rem; }
  .hwf-homepage .path-card > p:not(.card-number) { max-width: 40ch; font-size: 1rem; line-height: 1.65; }
  .hwf-homepage .process-callout { display: none; }
  .hwf-homepage .home-about-extra { margin: .7rem 0 1rem; border-block: 1px solid #71817f; }
  .hwf-homepage .home-about-extra p { font: 1rem/1.7 system-ui,sans-serif; }
  .hwf-homepage .decision-inner { gap: 1.5rem; }
  .hwf-homepage .process-grid { gap: 1.1rem; }
  .hwf-homepage .process-card { padding-bottom: 1rem; }
  .hwf-guide-article-page .field-article-content { font: 1rem/1.75 system-ui,sans-serif; }
  .hwf-guide-article-page .field-article-content > p { margin-block: .9rem; }
  .hwf-guide-article-page .field-article-content .local-opening-hook { font: 600 1.1rem/1.6 system-ui,sans-serif; max-width: 40ch; color: var(--ink); }
  /* These default local decks/hooks repeat the visible short answer. Owner decks stay. */
  .hwf-bike-guide-page .compact-local-deck, .hwf-bike-guide-page .local-opening-hook { display: none; }
  .hwf-guide-article-page .route-glance { display: block; margin: .85rem 0 .6rem; border: 0; border-left: 3px solid var(--teal-dark); padding: .1rem 0 .1rem .9rem; border-radius: 0; }
  .route-glance > div + div { margin-top: .6rem; }
  .route-glance dt { margin: 0 0 .2rem; color: var(--teal-dark); font: 700 .75rem/1.4 system-ui,sans-serif; }
  .route-glance dd { margin: 0; color: var(--ink); font: 600 .95rem/1.5 system-ui,sans-serif; }
  .mobile-reading-extra { margin: .8rem 0 1.2rem; border-bottom: 1px solid var(--reading-line); }
  .mobile-reading-extra > div { padding: 0 .15rem .75rem; }
  .hwf-guide-article-page .field-article-content :is(h2[id],h3[id]) { scroll-margin-top: 1rem; }
  .hwf-guide-article-page .field-article-content h3 { margin-top: 1.75rem; padding-top: 1rem; border-top: 1px solid var(--reading-line); font-size: 1.25rem; line-height: 1.3; }
  .outing-glance > div { grid-template-columns: 80px minmax(0,1fr); gap: .5rem; }
  .hwf-guide-article-page .field-article-content .halloween-planning-note { padding: .9rem; font-size: .9rem; line-height: 1.6; }
  .hwf-guide-article-page .field-article-content .halloween-planning-note p { margin: 0; }
  .article-jumps { margin-block: 1rem 1.25rem; }
  .article-jumps a { min-height: 44px; display: flex; align-items: center; }
  .discovery-actions { gap: .55rem 1rem; }
  .discovery-credit a { display: inline-block; padding-block: .35rem; }
  .menu-button { min-height: 44px; }
  .hwf-homepage .profile-links :is(a), .hwf-guide-article-page .next-reading-link, .article-topic-back { min-height: 44px; }
  .footer-utilities .appearance-settings { flex-basis: auto; align-items: center; }
  .footer-utilities { gap: .75rem; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  .discovery-card, .path-card { transition: none !important; }
}
