
#info-dialog.course-dialog{width:min(820px,calc(100vw - 24px));max-height:88vh;max-height:88dvh;overflow-y:auto;overscroll-behavior:contain;padding:28px 22px;color:var(--paper-ink);background:var(--paper)}
.course-dialog .dialog-close{position:sticky;top:0;float:right;z-index:2;width:44px;height:44px;background:var(--paper);color:var(--paper-ink)}
.course-dialog #dialog-title{clear:both;font-size:30px;line-height:1.3;padding-top:18px;overflow-wrap:anywhere}.course-dialog .dialog-eyebrow{font-size:12px;letter-spacing:1px}
.course-detail{font-size:16px;line-height:1.85;overflow-wrap:anywhere}.course-detail h3{font-size:21px;line-height:1.45;margin:32px 0 16px;color:var(--paper-ink)}.course-detail p{margin:0 0 18px}.course-detail ul{padding-left:23px;margin:16px 0 24px}.course-detail li{margin:9px 0}.course-detail strong{color:var(--paper-ink)}.course-lead{font-size:19px;font-weight:600;color:var(--paper-ink)}
.course-lesson{border-top:1px solid #c4c7bb;padding-top:24px;margin-top:32px}.course-number{font-size:12px;color:#68705f;letter-spacing:2px}.course-lesson h3{margin-top:8px}.course-assignment{border-left:3px solid var(--accent);padding:12px 16px;background:#dfded3}.course-facts{border-top:1px solid #b9bdb1;border-bottom:1px solid #b9bdb1;padding:22px 0;margin:28px 0}.course-facts p{margin:8px 0}.course-signup-open{width:100%;justify-content:space-between}.course-detail [hidden]{display:none!important}
#course-signup{border-top:1px solid #b9bdb1;margin-top:28px}#course-signup-form{display:grid;gap:18px}#course-signup-form label{display:grid;gap:7px;color:var(--paper-ink);font-size:16px}#course-signup-form input:not([type=checkbox]):not([type=radio]){width:100%;min-height:48px;background:#fbfaf5;color:#20251f;border:1px solid #858e7d;border-radius:0;padding:12px;font:inherit}#course-signup-form input:focus-visible{outline:2px solid #9a481b;outline-offset:2px}#course-signup-form .course-consent{display:flex;align-items:flex-start;gap:12px;font-size:14px;line-height:1.7;cursor:pointer}#course-signup-form input[type=checkbox]{width:20px;height:20px;flex:0 0 20px;margin-top:3px;accent-color:#a64a18}#course-signup-form button{min-height:48px;justify-content:center}#course-signup-form button:disabled{opacity:.65;cursor:default}#course-signup-status{margin:0;min-height:28px}.is-error{color:#a32e21}.is-success{color:#315a2c}.course-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.course-dialog .dialog-done{margin-top:24px}.course-dialog button:focus-visible{outline:2px solid #9a481b;outline-offset:3px}
@media(min-width:768px){#info-dialog.course-dialog{padding:36px 48px}.course-dialog #dialog-title{font-size:36px}.course-detail h3{font-size:24px}}
@media(prefers-reduced-motion:reduce){.course-dialog{scroll-behavior:auto}}

#info-dialog.course-dialog[open]{display:flex;flex-direction:column;overflow:hidden;height:min(900px,88dvh)}.course-dialog .dialog-close{position:absolute;top:16px;right:16px;float:none}.course-dialog .dialog-eyebrow{padding-right:40px;flex-shrink:0}.course-dialog #dialog-title{flex-shrink:0;margin:14px 0 20px;padding-top:0;padding-right:20px;font-size:28px}.course-dialog #dialog-content{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:12px}.course-dialog .dialog-done{flex-shrink:0;align-self:flex-start;margin-top:18px;min-height:44px}@media(min-width:768px){.course-dialog #dialog-title{font-size:34px}}

#course-signup-form select{width:100%;min-height:48px;background:#fbfaf5;color:#20251f;border:1px solid #858e7d;border-radius:0;padding:12px;font:inherit}#course-signup-form select:focus-visible{outline:2px solid #9a481b;outline-offset:2px}

.course-instructor{border-top:1px solid #b9bdb1;border-bottom:1px solid #b9bdb1;margin:32px 0;padding:26px 0 10px}.instructor-head{display:flex;gap:20px;align-items:center;margin-bottom:22px}.instructor-head img{width:88px;height:88px;object-fit:contain;background:white;flex-shrink:0;border:1px solid #c4c7bb}.instructor-head h3{margin:6px 0;font-size:28px}.instructor-head p{margin:0;font-size:14px}.instructor-head .course-number{font-size:10px;letter-spacing:1px}@media(min-width:768px){.instructor-head img{width:112px;height:112px}.instructor-head .course-number{font-size:12px}}

#course-signup-form .course-date-options{margin:0;padding:0;border:0;min-width:0;display:grid;gap:10px}#course-signup-form .course-date-options legend{padding:0;margin-bottom:10px;font-size:16px;color:var(--paper-ink)}#course-signup-form .course-date-options label{display:flex;align-items:center;gap:12px;padding:12px 14px;min-height:48px;border:1px solid #858e7d;background:#fbfaf5;cursor:pointer}#course-signup-form .course-date-options label:has(input:checked){border-color:#a64a18;background:#f8e4d5;box-shadow:inset 0 0 0 1px #a64a18}#course-signup-form .course-date-options input[type=radio]{width:20px;height:20px;min-height:20px;margin:0;padding:0;flex:0 0 20px;accent-color:#a64a18}@media(min-width:768px){#course-signup-form .course-date-options{grid-template-columns:1fr 1fr 1.35fr}}
