.clinic-schedule{max-width:1360px;margin:0 auto;padding:48px 32px 90px;color:#202932}
.schedule-sr-only,.schedule-calendar-table caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.schedule-breadcrumb a{font-size:12px;letter-spacing:.12em;color:#64757a;text-decoration:none}
.schedule-month-tabs{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin:16px 0 34px}
.schedule-month-tabs button{min-height:44px;padding:10px 22px;border:1px solid #d7e2e8;background:#fff;color:#516575;font:inherit;cursor:pointer}
.schedule-month-tabs button[aria-selected=true]{background:#edf8fd;border-color:#24a2d7;color:#117eaf;font-weight:600}
.schedule-month-tabs button:focus-visible{outline:2px solid #117eaf;outline-offset:3px}
.schedule-calendar{margin-bottom:42px}
.schedule-calendar[hidden]{display:none}
.schedule-calendar:focus-visible{outline:2px solid #24a2d7;outline-offset:5px}
.schedule-calendar-header{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:40px;align-items:center;margin:20px 0 36px}
.schedule-month{display:flex;align-items:baseline;gap:18px;min-width:0}
.schedule-month>span{font-family:Georgia,"Times New Roman",serif;font-size:clamp(100px,12vw,172px);line-height:1;font-weight:400;color:#1c2428}
.schedule-month p{font-size:clamp(18px,2.8vw,34px);color:#46aed5;line-height:1.45;margin:0;font-weight:500;overflow-wrap:anywhere}
.schedule-heading{min-width:0}
.schedule-heading h2{font-size:clamp(25px,3vw,40px);font-weight:400;letter-spacing:.04em;margin:0;padding:0 0 16px;border-bottom:1px solid #b9c8d2}
.schedule-heading>div{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-top:16px}
.schedule-heading p{font-size:15px;line-height:1.65;color:#7a90a0;margin:0;max-width:300px}
.schedule-heading time{font-size:18px;letter-spacing:.13em;color:#7a90a0;white-space:nowrap;direction:ltr}
.schedule-calendar-table{border-collapse:collapse;table-layout:fixed;width:100%;border-top:1px solid #d2dce2;border-bottom:1px solid #d2dce2}
.schedule-calendar-table th{height:50px;padding:8px 4px;font-size:15px;font-weight:500;line-height:1.5;overflow-wrap:anywhere}
.schedule-calendar-table th:first-child,.schedule-calendar-table th:last-child{color:#079fe7}
.schedule-calendar-table th,.schedule-calendar-table td{border-inline-end:1px solid #d2dce2}
.schedule-calendar-table th:last-child,.schedule-calendar-table td:last-child{border-inline-end:0}
.schedule-calendar-table td{height:108px;vertical-align:top;border-top:1px solid #d2dce2;padding:13px 15px;overflow-wrap:anywhere}
.calendar-day time{display:block;font-size:20px;font-variant-numeric:tabular-nums;line-height:1.3;direction:ltr;text-align:start}
.calendar-weekend time{color:#079fe7}
.calendar-status{display:block;text-align:center;margin-top:13px;font-size:15px;line-height:1.5;overflow-wrap:anywhere}
.calendar-open .calendar-status{color:#009be3;font-weight:500}
.calendar-closed{background:#fff3f2}
.calendar-closed time,.calendar-closed .calendar-status{color:#df392d}
.calendar-holiday .calendar-status{color:#e65342}
.calendar-holiday[data-day="9"] time{color:#e65342}
.schedule-summary{margin-top:26px;border-top:1px solid #b9c8d2;padding-top:20px}
.schedule-summary p{display:flex;flex-wrap:wrap;gap:10px 22px;font-size:16px;line-height:1.8;margin:0}
.schedule-closed{color:#df392d}
.schedule-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:start}
.schedule-panel{min-width:0;border:1px solid #dce4e2;background:#fff;padding:30px}
.schedule-panel h2,.schedule-holiday h2{font-size:23px;font-weight:500;line-height:1.4;margin:0 0 24px}
.schedule-hours{margin:0}
.schedule-hours>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 20px;padding:18px 0;border-bottom:1px solid #e7ecea}
.schedule-hours dt{font-size:16px;line-height:1.5}
.schedule-hours dd{margin:0;font-size:19px;font-variant-numeric:tabular-nums;white-space:nowrap;direction:ltr}
.schedule-timezone{font-size:13px;line-height:1.6;color:#697a7c;margin:20px 0 0}
.schedule-booking p{font-size:16px;line-height:1.8;margin:0 0 22px;color:#64757a}
.schedule-actions{display:flex;flex-wrap:wrap;gap:10px}
.schedule-actions a{display:inline-flex;justify-content:center;align-items:center;min-height:46px;padding:10px 16px;border:1px solid #235661;color:#235661;background:#fff;text-decoration:none;font-size:14px;line-height:1.5;text-align:center}
.schedule-actions a:first-child{background:#235661;color:#fff}
.schedule-actions a:hover{background:#eaf0ef;color:#173e45}
.schedule-actions a:focus-visible{outline:3px solid #b49468;outline-offset:3px}
@media(max-width:700px){.clinic-schedule{padding:30px 16px 60px}.schedule-month-tabs{justify-content:center;margin-bottom:22px}.schedule-month-tabs button{padding:10px 16px;font-size:14px}.schedule-calendar-header{grid-template-columns:minmax(0,1fr);gap:20px;margin-bottom:24px}.schedule-month{gap:14px}.schedule-month>span{font-size:94px}.schedule-month p{font-size:25px}.schedule-heading h2{font-size:26px;padding-bottom:12px}.schedule-heading>div{margin-top:12px;gap:14px}.schedule-heading p{font-size:13px}.schedule-heading time{font-size:15px}.schedule-calendar-table th{height:38px;font-size:11px;padding:6px 2px}.schedule-calendar-table td{height:100px;padding:8px 4px}.calendar-day time{font-size:16px}.calendar-status{font-size:11px;line-height:1.6;margin-top:10px}.schedule-summary{margin-top:18px;padding-top:16px}.schedule-summary p{font-size:14px;gap:6px}.schedule-summary p span{display:block;width:100%}.schedule-grid{grid-template-columns:minmax(0,1fr);gap:18px}.schedule-panel{padding:24px 20px}.schedule-actions a{flex:1 1 135px}.schedule-panel h2{font-size:21px}}
