/* Compact schedules: one intact time range per line. */
.agency-hours{margin:16px 0 18px;padding:14px;background:#fcfaf6;border:1px solid #e7ddcd;border-radius:10px;color:#302823}
.agency-hours .agency-hours-title{font-size:.98rem;line-height:1.3;font-weight:750;color:#790d20;margin:0 0 9px;letter-spacing:0}
.agency-hours-list{margin:0}
.agency-hours-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:7px 0;border-top:1px solid #ebe3d7}
.agency-hours-list dt{font-size:.82rem;line-height:1.5;font-weight:600;color:#65564e}
.agency-hours-list dd{display:grid;gap:2px;margin:0;text-align:right;font-size:.88rem;font-weight:650;font-variant-numeric:tabular-nums;line-height:1.5}
.agency-hours-separator{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.agency-hours-range{display:block;white-space:nowrap}
.agency-hours-list .agency-hours-closed dd{font-size:.82rem;font-weight:400;color:#756b64}
.agency-hours .agency-hours-note,.agency-hours .agency-hours-caption{font-size:.8rem;font-weight:400;line-height:1.5;margin:9px 0 0;color:#65564e}
.agency-hours .agency-hours-caption{margin-bottom:8px}
.agency-closure{background:#fff0ed;border:1px solid #dd9c9a;border-radius:8px;padding:11px;margin:0 0 12px}
.agency-closure>strong{display:block;color:#850719;font-size:.9rem}
.agency-closure-date{display:block;font-size:.82rem;font-weight:650;margin-top:5px;line-height:1.45}
.agency-closure p{font-size:.85rem;line-height:1.5;margin:7px 0 0;overflow-wrap:anywhere}
.agency-closure-effective{font-weight:700;color:#780c1d}
/* Align the contact controls across the three agency cards. */
.locations .location{display:flex;flex-direction:column}
.locations .location-body{display:flex;flex-direction:column;flex:1;padding:20px}
.locations .location .phone{display:block;margin-top:auto;padding-top:4px;font-size:1.08rem;font-weight:800;line-height:1.4}
.locations .location .actions{margin-top:14px;gap:8px}
.locations .location-detail-link{padding:0 20px 20px;font-size:.88rem;line-height:1.45}
.hours-admin{max-width:1180px;margin:auto;padding:36px 24px 64px}.hours-admin h1{font-size:clamp(1.9rem,4vw,2.6rem);color:#750b1c}.hours-admin h2{font-size:1.4rem;margin-top:0}.hours-admin-toolbar{display:flex;align-items:end;gap:18px;flex-wrap:wrap;margin:25px 0}.hours-admin label{display:grid;gap:7px;font-size:.94rem;font-weight:700}.hours-admin input,.hours-admin select,.hours-admin textarea{padding:11px 12px;border:1px solid #cabba9;border-radius:8px;background:#fff;color:#29211c;font:inherit;max-width:100%;min-width:0}.hours-admin select{min-height:46px}.hours-admin-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.85fr);gap:24px;align-items:start}.hours-admin-card{padding:25px;background:white;border:1px solid #e5d8c8;border-radius:16px;margin-bottom:24px}.hours-admin-card>p{font-size:.95rem;line-height:1.6}.hours-admin-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:16px}.hours-admin-form>label{margin-bottom:16px}.hours-admin [hidden]{display:none!important}.hours-admin-preview{position:sticky;top:110px}.hours-admin-preview>.agency-hours{margin-top:16px}.hours-preview-label{font-size:.8rem;letter-spacing:.08em;font-weight:800;color:#795620;text-transform:uppercase}.hours-save-status{min-height:1.5em;font-weight:700;line-height:1.5}.hours-save-status[data-error=true]{color:#9b1223}.hours-closure-row{padding:16px 0;border-bottom:1px solid #e5d8c8}.hours-closure-row p{margin:7px 0 12px;font-size:.94rem}.hours-closure-row strong{display:block;font-size:.95rem}.hours-closure-row .actions{margin-top:10px;gap:8px}.hours-week-day{border:0;border-bottom:1px solid #e5d8c8;margin:0 0 16px;padding:0 0 16px;min-width:0}.hours-week-day legend{font-weight:800;margin-bottom:10px}.hours-week-ranges{display:grid;grid-template-columns:1fr 1fr;gap:12px}.hours-week-ranges label{font-size:.8rem}.hours-week-range{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hours-admin details>summary{font-size:1.3rem;font-weight:800;cursor:pointer}.hours-admin details[open]>summary{margin-bottom:18px}.hours-admin .btn{white-space:normal;cursor:pointer}.hours-admin .btn:disabled{opacity:.5;cursor:wait}
@media(max-width:1000px){.hours-admin-grid{grid-template-columns:1fr}.hours-admin-preview{position:static}.hours-admin{padding-inline:16px}.hours-week-ranges{grid-template-columns:1fr}}
@media(max-width:500px){.hours-admin-fields{grid-template-columns:1fr}.hours-admin-card{padding:18px}.hours-admin-toolbar>*{width:100%}}
