#places-main{max-width:1160px;margin:auto;padding:60px 28px 80px}.places-intro h1{font:normal clamp(42px,6vw,70px)/1.08 Georgia,serif;letter-spacing:-2px;margin:18px 0}.places-intro h1 em{color:#47705b;font-weight:normal}.places-intro{padding:5px 0 34px}.places-controls{padding:28px;background:#fff;border:1px solid #d4dfcf;border-radius:8px;margin:28px 0}.places-controls label{display:block;margin:14px 0 8px;font-size:14px;font-weight:600}.places-controls input,.places-controls select{padding:13px;border:1px solid #c4d0c4;border-radius:5px;width:100%;font:inherit;background:#fff}.places-controls #radius{max-width:220px}.places-search{display:flex;gap:12px}.places-search input{flex:1;min-width:0}.places-search button{white-space:nowrap}.places-controls .school-toolbar{margin:20px 0 8px}.manual-search{padding:18px 0;border-top:1px solid #dbe3d8;border-bottom:1px solid #dbe3d8;margin:18px 0}.manual-search summary{cursor:pointer;font-weight:600}.manual-search button{margin-top:18px}.location-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.places-results-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px}.places-results-heading h2,.places-invite h2{font:normal 32px/1.2 Georgia,serif}.places-distance{display:inline-block;padding:7px 10px;background:#e9efdd;color:#254c3f;border-radius:4px;font-size:13px}.places-empty{padding:36px;background:#edf1e7;border:1px solid #d4dfcf;border-radius:8px;grid-column:1/-1}.places-empty h3{font:normal 26px Georgia,serif}.places-empty p{max-width:70ch;line-height:1.7}.places-invite{margin-top:52px;padding:32px;border-left:3px solid #78926d;background:#edf1e7}.places-invite p{max-width:75ch;line-height:1.7}#load-places{margin-top:24px}#directory-error{padding:18px;border:1px solid #d99c8c;background:#fff0e9;color:#852e22}.school-card .school-link{display:inline-block;margin:12px 0}@media(max-width:650px){#places-main{padding:30px 20px}.places-search{flex-direction:column}.location-fields{grid-template-columns:1fr;gap:0}.places-controls{padding:20px}.places-results-heading{display:block}.places-intro h1{letter-spacing:-1px}.places-invite{padding:24px}}
