*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f4f0e7;color:#24392f;font:17px/1.65 system-ui,sans-serif}a{color:inherit;text-underline-offset:5px}header,main,footer{max-width:1160px;margin:auto;padding:24px}header{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid #cdd0bf}nav{display:flex;gap:24px;flex-wrap:wrap}nav a{text-decoration:none;font-size:14px}.brand{font-weight:700;letter-spacing:.08em;font-size:13px}.hero{padding:70px 0 48px;display:grid;grid-template-columns:1.3fr 1fr;gap:50px;align-items:center}.eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#64735c}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.08}h1{font-size:clamp(48px,7vw,90px);margin:20px 0 30px}h2{font-size:clamp(32px,5vw,49px);margin:10px 0 24px}h3{font-size:26px;margin:0 0 16px}.lead{font-size:21px;max-width:620px}.button,button{display:inline-block;background:#294b3c;color:#fff;border:0;padding:14px 22px;text-decoration:none;font:inherit;cursor:pointer;border-radius:3px}.secondary{background:transparent;color:#294b3c;border:1px solid #8a9783;margin-left:8px}.placeholder{min-height:390px;padding:35px;background:#e1e4d5;display:flex;flex-direction:column;justify-content:space-between;border:1px solid #cdd2bf}.placeholder strong{font:32px Georgia,serif}.placeholder small{max-width:260px;color:#596952}section{padding:55px 0;border-top:1px solid #cdd0bf}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#faf8f2;padding:28px;border:1px solid #d9dbce}.card p:last-child{margin-bottom:0}.route{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stop{border-top:3px solid #8e9c73;padding:18px 8px}.stop b{display:block;font:23px Georgia,serif}.stop span{font-size:14px}.number{font-size:12px;color:#768367;margin-bottom:14px}.split{display:grid;grid-template-columns:1fr 1fr;gap:45px}.muted,small{color:#65725f}.entry{display:grid;grid-template-columns:130px 1fr;gap:22px;padding:25px 0;border-top:1px solid #d9dbce}.entry h3{font-size:25px}.badge{font-size:12px;display:inline-block;background:#e3e8d8;padding:5px 10px;margin-bottom:20px}input{display:block;width:100%;padding:14px;border:1px solid #a7ae9a;border-radius:3px;font:inherit;margin:10px 0 20px;background:#fff}form{max-width:430px}footer{font-size:13px;border-top:1px solid #cdd0bf;padding-bottom:40px}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #bb6b38;outline-offset:4px}.narrow{max-width:800px}li{margin-bottom:10px}.error{color:#913c28} @media(max-width:700px){header{align-items:flex-start;flex-direction:column}nav{gap:16px}.hero,.split{grid-template-columns:1fr;gap:24px}.hero{padding-top:35px}.placeholder{min-height:230px}.grid{grid-template-columns:1fr}.route{grid-template-columns:1fr}.stop{display:grid;grid-template-columns:30px 1fr;column-gap:12px}.stop span{grid-column:2}.entry{grid-template-columns:1fr;gap:5px}section{padding:36px 0}main,header,footer{padding-left:20px;padding-right:20px}.secondary{margin:12px 0 0}.lead{font-size:19px}}
.nav-support{font-weight:700;border-bottom:2px solid #aa613c}.support-intro{font-size:15px;max-width:520px;color:#596952;margin-top:20px}.support-card{border-top:4px solid #aa613c}.pagination{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:30px 0}.pagination a{padding:8px 14px;border:1px solid #8a9783}.card+.card{margin-top:18px}.tabs{display:flex;gap:22px;flex-wrap:wrap;margin:20px 0}.tabs [aria-current]{font-weight:700}

.family-bar{border:1px solid #a1ab93;background:#e5ebda;padding:18px;margin:24px 0;display:flex;gap:15px;align-items:center;flex-wrap:wrap}.family-bar form{margin:0}.family-bar button{font-size:14px;margin:0;padding:10px}.family-summary{list-style:none;padding:0}.family-summary li{margin:8px 0}.reaction-buttons{display:flex;gap:10px;flex-wrap:wrap}.reaction{background:#fff;color:#294b3c;border:2px solid #a5b09a;padding:12px 16px;min-height:48px;min-width:120px}.reaction.selected{border:3px solid #294b3c;background:#dbe9cb;font-weight:700}.reaction.reset{min-width:100px;border-style:dashed}.save-status{font-weight:700}select{font:inherit;width:100%;min-height:50px;padding:12px;background:white;border:1px solid #9da98e}.family-idea{scroll-margin-top:20px}.family-idea form{max-width:none}@media(max-width:700px){.family-bar{align-items:flex-start;flex-direction:column}.reaction-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px}.reaction{width:100%;min-width:0;font-size:16px;padding:12px 8px}}
