/* Keep cards and controls within narrow screens, including installed iPhone apps. */
.page,.panel,.card,.cardbody,.content-panel,.entry,.entry-body,.lower>*,.grid>*{min-width:0}
.page p,.cardbody,.panel,.entry-body{overflow-wrap:anywhere}
button,a.btn{min-height:44px}
img{max-width:100%;height:auto}
input,select,textarea{max-width:100%;box-sizing:border-box}
@media(max-width:760px){
 main{padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}
 body>aside{height:calc(72px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px)}
 .grid,.grid.two,.lower{grid-template-columns:minmax(0,1fr)}
 input,select,textarea{font-size:16px}
 .hero h1{font-size:clamp(29px,8vw,37px);max-width:100%}
 .hero-copy{padding:28px 22px}
 .hero .btn{gap:12px;max-width:100%;white-space:normal;text-align:left}
 .entry-body{padding:18px}
 .route-story-part img{max-width:100%;height:auto;object-fit:contain}
 dialog{max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card img{transition:none}}
