*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f5f1e8;color:#253b38;font:17px/1.75 system-ui,sans-serif}a{color:inherit;text-underline-offset:4px}a:hover{color:#b34f32}header,main,footer{max-width:1140px;margin:auto;padding:22px 28px}header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ccd1c4;gap:18px;flex-wrap:wrap}.brand{font-weight:800;letter-spacing:.1em;text-decoration:none;font-size:20px}nav{display:flex;gap:22px;font-size:14px;flex-wrap:wrap}h1,h2,h3{font-family:Georgia,serif;line-height:1.12;font-weight:400}h1{font-size:clamp(40px,7vw,76px);margin:20px 0;letter-spacing:-.04em;max-width:800px}h2{font-size:36px;margin:45px 0 22px}h3{font-size:27px;margin:10px 0}p{max-width:760px}small,.eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#62736b}.hero{padding:55px 0 35px}.lead{font-size:20px;color:#52665e;max-width:660px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{border:1px solid #cbd2c5;padding:25px;background:#fcfaf4;border-radius:5px;text-decoration:none;display:block}.card:hover{border-color:#b34f32}.card p{font-size:15px}.number{color:#b34f32;font-size:13px;letter-spacing:.12em}.banner{background:#254b42;color:#fff9ed;padding:30px;border-radius:5px;margin:35px 0}.banner a{color:#fff9ed}.banner p{margin:8px 0}.tools{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:28px 0}label{display:block;margin:14px 0}input[type=number]{width:100%;max-width:270px;border:1px solid #81978a;background:#fffcf5;padding:11px;font:inherit;border-radius:4px}input[type=checkbox]{width:19px;height:19px;margin-right:10px;accent-color:#285d48}button,.button{display:inline-block;background:#285d48;color:white;border:0;padding:12px 20px;border-radius:4px;font:inherit;cursor:pointer;text-decoration:none}button:hover{background:#183d32}output{display:block;font-size:28px;margin-top:20px}.meta{font-size:14px;color:#6b766e}article{max-width:800px;margin:30px auto}article li{margin:12px 0}aside{border-left:3px solid #b34f32;padding:10px 20px;background:#eae8dc}.route-art{width:100%;height:130px;margin-top:25px}footer{margin-top:65px;border-top:1px solid #ccd1c4;font-size:13px;color:#65766b;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}:focus-visible{outline:3px solid #b34f32;outline-offset:5px}@media(max-width:750px){.grid{grid-template-columns:1fr}.tools{grid-template-columns:1fr}header,main,footer{padding:18px 20px}.hero{padding:26px 0}h2{font-size:30px}nav{gap:14px}}@media print{header,footer,button,.route-art{display:none}body{background:white;color:black}main{max-width:none}.tools{display:block}}