/* 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%}}
/* Public notices follow the navigation and never cover the page or its controls. */
.scgold-hours-notice[hidden]{display:none!important}
.scgold-hours-notice{background:#fcfaf5;border-bottom:1px solid #e9dfcc;padding:16px 0;color:#302823;animation:hours-notice-enter .35s ease-out}
.hours-notice-wrap{width:min(1180px,calc(100% - 40px));margin:auto;display:grid;gap:10px}
.hours-notice-caption{margin:0;font:800 .7rem/1.5 Arial,sans-serif;letter-spacing:.11em;text-transform:uppercase;color:#776047}
.hours-notice-card{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:16px;align-items:center;border:1px solid #e5cf94;border-left:4px solid #b58b26;border-radius:12px;background:linear-gradient(110deg,#fff3ce,#fffaf0);padding:17px 20px}
.hours-notice-icon{width:42px;height:42px;display:grid;place-items:center;border:1px solid #ddc787;border-radius:50%;background:#fff9e7;color:#826016;font:32px/1 Georgia,serif;animation:hours-notice-pulse 2s ease-in-out 2}
.hours-notice-copy{min-width:0}.hours-notice-meta{margin:0 0 3px;font-size:.8rem;font-weight:750;color:#71561f;line-height:1.5;overflow-wrap:anywhere}
.hours-notice-title{margin:0;font-size:clamp(1rem,2vw,1.18rem);line-height:1.45;font-weight:800;color:#690f1c}
.hours-notice-message{margin:5px 0 0;font-size:.88rem;line-height:1.5;color:#5d4d32;overflow-wrap:anywhere}
.hours-notice-effective{margin:4px 0 0;font-size:.8rem;line-height:1.5;color:#6c5d44}
.hours-notice-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 15px;border:1px solid #b99750;border-radius:9px;color:#67421c;background:#fffaf0;font-size:.82rem;font-weight:800;line-height:1.4;text-decoration:none;white-space:nowrap}
.hours-notice-link:hover{background:#fff1c6}.hours-notice-link:focus-visible,.hours-notice-more summary:focus-visible{outline:3px solid #790d20;outline-offset:3px}
.hours-notice-green{background:linear-gradient(110deg,#e7f3e9,#f6fbf5);border-color:#b8d7bf;border-left-color:#4c8560}.hours-notice-green .hours-notice-icon{background:#f2faf2;border-color:#b5d4bc;color:#356e49}.hours-notice-green .hours-notice-meta,.hours-notice-green .hours-notice-title{color:#245c3c}.hours-notice-green .hours-notice-message,.hours-notice-green .hours-notice-effective{color:#40694e}.hours-notice-green .hours-notice-link{color:#245c3c;background:#f6fbf5;border-color:#8db399}.hours-notice-green .hours-notice-link:hover{background:#deefe1}
.hours-notice-more summary{width:fit-content;padding:8px 0;cursor:pointer;font-size:.86rem;font-weight:700;color:#690f1c}.hours-notice-more .hours-notice-card{margin-top:10px}
#horaires{scroll-margin-top:120px}
.hours-admin-preview .scgold-hours-notice{border:1px solid #e9dfcc;border-radius:12px;margin:12px 0 24px;padding:14px 0}.hours-admin-preview .hours-notice-wrap{width:calc(100% - 24px)}.hours-admin-preview .hours-notice-card{grid-template-columns:32px minmax(0,1fr);gap:10px;padding:12px}.hours-admin-preview .hours-notice-icon{width:32px;height:32px;font-size:25px}.hours-admin-preview .hours-notice-link{grid-column:2;justify-self:start;white-space:normal}.hours-admin-preview .hours-notice-title{font-size:1rem}
@keyframes hours-notice-enter{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@keyframes hours-notice-pulse{50%{box-shadow:0 0 0 5px #b58b2614}}
@media(max-width:620px){.hours-notice-wrap{width:calc(100% - 28px)}.scgold-hours-notice{padding:12px 0}.hours-notice-card{grid-template-columns:30px minmax(0,1fr);gap:9px 12px;padding:14px}.hours-notice-icon{width:30px;height:30px;font-size:25px;align-self:start;margin-top:3px}.hours-notice-link{grid-column:2;justify-self:start;font-size:.8rem;white-space:normal}.hours-notice-meta{font-size:.76rem}.hours-notice-message{font-size:.82rem}}
@media(prefers-reduced-motion:reduce){.scgold-hours-notice,.hours-notice-icon{animation:none}}
