/* Public-facing clarity layer. */
.public-home-intro{max-width:760px;margin:0 0 22px}
.public-home-intro h1{margin:0 0 10px;font-size:clamp(2.1rem,5vw,4.3rem);line-height:.98}
.public-home-intro p{max-width:660px;margin:0 0 18px;font-size:1.05rem}
.public-home-links{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.public-home-links>a:not(.btn){color:#fff;font-weight:780;text-decoration:none}
.public-home-links>a:not(.btn):hover{text-decoration:underline}
.home-map-controls.public-simple-map-controls{grid-template-columns:repeat(2,minmax(0,1fr));max-width:640px}
.public-service-controls{grid-template-columns:minmax(0,1.5fr) minmax(210px,.7fr)}
.public-service-note{margin:9px 0 18px}
.public-advanced{margin-top:22px;padding:16px 18px;border:1px solid var(--line,#cbd5d1);border-radius:14px;background:#fff}
.public-advanced>summary{cursor:pointer;font-weight:780;color:#155d7f}
.public-advanced[open]>summary{margin-bottom:14px}
.public-data-downloads{margin-top:20px}
.public-stop{max-width:920px}
.segment-links{display:flex;gap:18px;flex-wrap:wrap;margin-top:22px}
.landing-hero.landing-hero--ask{padding:36px 0 40px;min-height:0;background-image:linear-gradient(90deg,rgba(5,32,52,.88),rgba(5,32,52,.6)),url('/images/landing-mountains-1920.jpg');background-size:cover;background-position:center 60%}
.landing-hero--ask .landing-copy--wide{max-width:880px;margin:0 auto}
.landing-hero--ask .landing-ask-panel{max-width:none;padding:26px;background:rgba(7,39,61,.9)}
.landing-hero--ask .landing-ask-head h1{margin:0;color:#fff;font-size:clamp(28px,4vw,42px);line-height:1.1;letter-spacing:-.02em}
.landing-hero--ask .home-ask-description{margin:10px 0 18px;color:#e0eef6;font-size:1rem;line-height:1.5}
.landing-hero--ask .qa textarea{min-height:104px;font-size:16px}
.home-question-examples{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.home-question-examples button{padding:8px 11px;border:1px solid rgba(210,235,245,.4);border-radius:20px;background:transparent;color:#e0eef6;font:inherit;font-size:14px;line-height:1.3;cursor:pointer;text-align:left}
.home-question-examples button:hover{background:rgba(255,255,255,.12);color:#fff}
.featured-rides .featured-head{align-items:center}
@media(max-width:700px){
  .landing-hero.landing-hero--ask{padding:20px 0 24px;background-image:linear-gradient(90deg,rgba(5,32,52,.88),rgba(5,32,52,.6)),url('/images/landing-mountains-960.jpg')}
  .landing-hero--ask .landing-ask-panel{padding:18px}
  .home-question-examples{gap:7px}
  .featured-rides .featured-head{align-items:flex-start;flex-direction:column}
  .home-map-controls.public-simple-map-controls,.public-service-controls{grid-template-columns:1fr}
  .public-home-links{gap:12px}
}

/* Parallel role headings on About. */
.section h2.about-role-title{margin:0 0 18px;font-size:30px;line-height:1.1;color:#123f5e}
@media(max-width:650px){.section h2.about-role-title{font-size:26px}}
@media(max-width:560px){.about-role-spacer{display:none}}
.about-bullets{margin:0;padding-left:1.25em;line-height:1.62;list-style:disc}
.about-bullets li{margin:0 0 .8em;padding-left:.15em}
.about-bullets li:last-child{margin-bottom:0}

/* Ask: readable answers, compact evidence, and a recoverable loading state. */
.qa .qa-actions{flex-wrap:wrap}
.qa [data-qa-status]{flex-basis:100%;line-height:1.45}
.qa [data-qa-status]:empty{display:none}
.qa [data-qa-input]{color:#163a51;background:#fff;line-height:1.5}
.qa :is(textarea,button,input):focus-visible{outline:3px solid #f5bf59;outline-offset:3px}
.qa .qa-loading{flex-wrap:wrap}
.qa .qa-text-action{border:1px solid currentColor;border-radius:8px;padding:7px 12px;background:transparent;color:inherit;font:inherit;font-size:.9rem;cursor:pointer;min-height:40px}
.qa .qa-loading .qa-text-action{margin-left:auto}
.qa .qa-text-action:hover{background:rgba(255,255,255,.1)}
.qa .answer{line-height:1.6;overflow-wrap:anywhere}
.landing-ask-panel .qa .answer{max-height:none;overflow:visible}
.qa .answer-section{max-width:75ch}
.qa .answer-section h3{font-family:inherit;font-size:1.05rem;line-height:1.35;margin:1.25em 0 .45em;letter-spacing:0}
.qa .answer-section h3:first-child{margin-top:0}
.qa .answer-section :is(ul,ol){padding-left:1.25em;margin:.5em 0 1em}
.qa .answer-section li{padding-left:.15em;margin-bottom:.65em}
.qa .answer-section strong{font-weight:780;color:#fff}
.qa .answer a{text-decoration:underline;text-underline-offset:3px;color:inherit}
.qa .answer-evidence{margin-top:18px;border-top:1px solid rgba(255,255,255,.2);padding-top:14px}
.qa .answer-evidence>summary{cursor:pointer;font-size:.9rem;font-weight:700;line-height:1.5}
.qa .answer-records{padding-left:1.25em;margin:16px 0;font-size:.92rem;max-width:75ch}
.qa .answer-records>li{padding-left:4px;margin:0 0 16px}
.qa .answer-records h4{margin:0 0 5px;font-size:1rem;font-weight:750;line-height:1.4}
.qa .answer-records p{margin:0 0 7px;line-height:1.55}
.qa .answer-records .answer-caption{margin-top:5px!important}
.qa .answer-notice{margin:16px 0 0;font-size:.8rem;line-height:1.5}
.qa .qa-error p{margin:0 0 12px}
@media(max-width:560px){
  .qa .answer{padding:14px}
  .qa .qa-loading{align-items:flex-start}
  .qa .qa-loading>span:last-of-type{flex:1;min-width:0}
  .qa .qa-loading .qa-text-action{margin-left:28px}
  .qa .qa-public-option{align-items:flex-start!important;line-height:1.45}
}
@media(prefers-reduced-motion:reduce){.qa .qa-spinner{animation:none}}



