.appointments-page{background:radial-gradient(circle at 86% 10%,rgba(15,76,129,.16),rgba(15,76,129,0)),linear-gradient(180deg,#f6fbff,#edf7fc)}.appointments-page__form-row,.appointments-page__info,.appointments-page__notice,.appointments-page__visit-types{margin-bottom:3rem}.appointments-page__section-title{margin:0}.appointments-page__visit-grid{margin-top:.85rem;display:grid;gap:.9rem}.appointments-page__form-card,.appointments-page__info-card,.appointments-page__notice-inner,.appointments-page__visit-card{border:1px solid #d5e2ef;border-radius:1rem;background-color:#fff;padding:1rem}.appointments-page__visit-card h3,.appointments-page__visit-card p{margin:0}.appointments-page__visit-card p{margin-top:.55rem;color:#5d6f83}.appointments-page__visit-meta{font-size:.93rem}.appointments-page__card-note{margin:.5rem 0 0;color:#5d6f83}.appointments-page__calendar-month{margin:0;color:#0f4c81;font-weight:700}.appointments-page__calendar-header{display:flex;align-items:center;justify-content:space-between;gap:.55rem}.appointments-page__calendar-nav-button{width:2rem;height:2rem;display:inline-flex;align-items:center;justify-content:center;border:1px solid #d5e2ef;border-radius:999px;background-color:#fff;cursor:pointer}.appointments-page__calendar-nav-button:disabled{opacity:.5;cursor:not-allowed}.appointments-page__calendar-nav-icon{width:1rem;height:1rem}.appointments-page__calendar-wrap{overflow-x:auto}.appointments-page__calendar-table{width:100%;min-width:640px;border-collapse:collapse;table-layout:fixed}.appointments-page__calendar-cell,.appointments-page__calendar-table th{border:1px solid #d5e2ef}.appointments-page__calendar-table th{font-size:.88rem;text-align:center;background-color:#e8f4ff;color:#5d6f83;padding:.5rem .2rem}.appointments-page__calendar-cell{height:3.3rem;padding:.2rem;background-color:#fff}.appointments-page__day-button{width:100%;height:100%;border:1px solid rgba(0,0,0,0);border-radius:.45rem;background-color:rgba(0,0,0,0);color:#132238;font:inherit;font-weight:600;cursor:pointer}.appointments-page__day-button:hover{background-color:#e8f4ff}.appointments-page__day-button:disabled{color:#5d6f83;opacity:.5;cursor:not-allowed}.appointments-page__day-button:disabled:hover{background-color:rgba(0,0,0,0)}.appointments-page__day-button--selected{border-color:#0b8f91;background-color:rgba(11,143,145,.12);color:#0f4c81}.appointments-page__picker-group{display:grid;gap:.55rem}.appointments-page__picker-note{margin:0;color:#5d6f83;font-size:.92rem}.appointments-page__time-grid{margin-top:.6rem;display:grid;gap:.55rem;grid-template-columns:repeat(2,minmax(0,1fr))}.appointments-page__time-button{border:1px solid #d5e2ef;border-radius:999px;background-color:#fff;color:#132238;font:inherit;font-weight:700;font-size:.9rem;padding:.5rem .7rem;cursor:pointer}.appointments-page__time-button:disabled{opacity:.6;cursor:not-allowed}.appointments-page__time-button--selected{border-color:#0b8f91;background-color:rgba(11,143,145,.12);color:#0f4c81}.appointments-page__form{margin-top:.85rem;display:grid;gap:.55rem}.appointments-page__form label{font-size:.92rem;font-weight:700;margin-top:1.2rem}.appointments-page__form input,.appointments-page__form select,.appointments-page__form textarea{width:100%;border:1px solid #d5e2ef;border-radius:.65rem;padding:.62rem .72rem;font:inherit;background-color:#fff}.appointments-page__form input[aria-invalid=true],.appointments-page__form select[aria-invalid=true],.appointments-page__form textarea[aria-invalid=true]{border-color:#c03f47}.appointments-page__form textarea{min-height:150px;resize:vertical}.appointments-page__honeypot{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}.appointments-page__form .appointments-page__checkbox-field{margin-top:.7rem;display:flex;align-items:flex-start;gap:.55rem;min-height:1.75rem;font-size:.92rem;font-weight:400;cursor:pointer}.appointments-page__checkbox-input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}.appointments-page__checkbox-icon{width:1.6rem;height:1.6rem;display:inline-flex;flex-shrink:0;margin-top:.04rem}.appointments-page__checkbox-icon img{width:100%;height:100%}.appointments-page__checkbox-input:focus-visible+.appointments-page__checkbox-icon{outline:2px solid #0f4c81;outline-offset:2px;border-radius:.2rem}.appointments-page__submit{margin-top:.4rem;display:inline-flex;align-items:center;justify-content:center;border:1px solid #d5e2ef;border-radius:999px;background-color:#0f4c81;color:#fff;font:inherit;cursor:pointer;font-weight:700;padding:.68rem 1.05rem}.appointments-page__submit:disabled{opacity:.75;cursor:not-allowed}.appointments-page__field-error{margin:.2rem 0 0;color:#b3242d;font-size:.85rem}.appointments-page__form-status{margin:.35rem 0 0;border-radius:.65rem;padding:.65rem .75rem;font-size:.9rem;font-weight:700}.appointments-page__form-status--success{background-color:#e8f8ee;color:#1b6a3b}.appointments-page__form-status--error{background-color:#fdecee;color:#9e1f2b}.appointments-page__form-status--submitting{background-color:#edf4ff;color:#15477f}.appointments-page__info-grid{display:grid;gap:.9rem}.appointments-page__info-card p,.appointments-page__info-card ul{margin:.55rem 0 0;color:#5d6f83}.appointments-page__info-card ul{padding-left:1rem;display:grid;gap:.35rem}.appointments-page__availability-highlight{font-weight:700;color:#0f4c81}.appointments-page__response-time{font-weight:700}.appointments-page__hero-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.7rem}.appointments-page__hero-action{width:100%}.appointments-page__notice-inner p{margin:0;color:#5d6f83}@media(min-width:1008px){.appointments-page__visit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.appointments-page__time-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.appointments-page__info-grid{align-items:start}.appointments-page__hero-action{width:auto}}