.town-hero h1 {max-width:1100px;font-size:clamp(2.2rem,4.1vw,4rem)}
.town-story {max-width:850px;margin-inline:auto}
.town-story > p {line-height:1.85}
.town-story h2 {margin-top:48px}
.town-cover {margin:0 0 32px}
.town-cover img {display:block;width:100%;height:auto;border-radius:16px}
.town-cover figcaption {font-size:.79rem;color:var(--ink-soft);margin-top:10px}
.travel-planner {margin:34px 0;padding:28px;background:#edf5f1;border:1px solid #c4dcd4;border-radius:16px}
.travel-planner h3 {margin-top:0;font-size:1.55rem}
.travel-fields {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0}
.travel-fields label {display:flex;flex-direction:column;gap:7px;font-size:.88rem;font-weight:700;color:var(--navy)}
.travel-fields input {width:100%;min-width:0;padding:11px;border:1px solid #9ebbb5;border-radius:7px;font:inherit;background:white;color:var(--navy)}
.travel-fields input:focus-visible {outline:3px solid var(--teal);outline-offset:2px}
.travel-result {margin:22px 0 14px;padding:18px;background:white;border-radius:9px;border-left:4px solid var(--teal)}
.travel-result p {margin:0}
.travel-planner .planner-note,.town-method {font-size:.82rem;line-height:1.7;color:var(--ink-soft)}
.route-options {margin:26px 0;border-top:1px solid var(--line)}
.route-options section {display:grid;grid-template-columns:190px minmax(0,1fr);gap:0 26px;padding:24px 0;border-bottom:1px solid var(--line)}
.route-options h3 {grid-row:1 / 4;font-size:1.28rem;margin:0}
.route-options p {margin:0 0 12px;font-size:.95rem}
.route-options p:last-child {margin-bottom:0}
.town-method {margin-top:36px;padding-top:20px;border-top:1px solid var(--line)}
@media(max-width:680px){.travel-planner{padding:20px}.travel-fields{grid-template-columns:1fr}.route-options section{display:block}.route-options h3{margin-bottom:15px}.town-story h2{margin-top:38px}.travel-planner .button{width:100%;white-space:normal}.town-cover img{border-radius:10px}}

