/* Sparse openings: one leading class, a short queue, then the course library. */
.occasional-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:75px;padding-block:70px 80px;align-items:center}
.occasional-intro>.hand{font-size:28px;margin-bottom:23px}.occasional-intro>.mono{font-size:10px;letter-spacing:0}.occasional-intro>.display{font-size:clamp(95px,10vw,145px);margin:28px 0}.occasional-intro>h2{font-size:33px;margin-bottom:25px}.occasional-intro>p:not(.hand,.mono){font-size:15px;line-height:2}.occasional-intro>.text-action{margin-top:25px;font-size:12px}
.next-class-file{position:relative;margin:5px 10px 20px 0;isolation:isolate}.next-class-file:before{content:'';position:absolute;inset:13px -10px -13px 10px;background:var(--teal);border:1px solid var(--ink);transform:rotate(2deg);z-index:-1}.next-class-footnote{display:block;position:absolute;bottom:-50px;right:0;font-size:11px;color:var(--muted)}
.upcoming-class{min-width:0;background:#fff;border:1px solid var(--ink);padding:26px 27px;position:relative}.upcoming-class.is-featured{padding:30px 30px 28px;transform:rotate(-1deg)}.upcoming-class-top{display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--ink);padding-bottom:17px;margin-bottom:25px}.upcoming-class-top>.mono{font-size:10px}.upcoming-class-top .session-status{white-space:nowrap}
.upcoming-class-main{display:flex;gap:22px;align-items:start}.upcoming-date{flex:0 0 87px;padding:16px 8px;text-align:center;background:var(--course-tone);border:1px solid var(--ink);transform:rotate(-3deg)}.upcoming-date>strong{font-size:51px;font-weight:600;line-height:1.1;display:block;letter-spacing:-.06em}.upcoming-date>.mono{display:block;font-size:9px;margin-top:6px;white-space:nowrap}
.upcoming-class-copy{flex:1;min-width:0}.upcoming-class-copy>.mono{font-size:9px;display:block;margin-bottom:13px}.upcoming-class-copy h3{font-size:22px;line-height:1.65;letter-spacing:-.035em;margin:0 0 16px}.upcoming-class-copy h3>a{text-decoration:none}.upcoming-class-copy h3>a:hover{text-decoration:underline;text-underline-offset:4px}.upcoming-class-copy>p{font-size:12px;margin:0;line-height:1.9}.upcoming-class-description{font-size:14px;margin:24px 0 0;padding-top:20px;border-top:1px solid var(--line)}
.upcoming-class-bottom{display:flex;align-items:end;justify-content:space-between;gap:17px;margin-top:27px}.upcoming-class-bottom>div>small{font-size:11px;display:block}.upcoming-class-bottom>div>strong{font-size:30px;display:block;line-height:1.4;letter-spacing:-.04em}.upcoming-class-bottom>div>del{font-size:12px;color:var(--muted)}.upcoming-class-bottom>.action{font-size:13px;padding:8px 13px 8px 8px;gap:12px}.upcoming-class-bottom>.action .action-mark{width:36px;height:36px}.upcoming-class-bottom>.text-action{font-size:12px}
.occasional-content>.course-nav{margin-top:10px;margin-bottom:65px}.later-classes{margin-bottom:85px}.later-classes .course-section-heading{align-items:end}.later-classes .course-section-heading h2{font-size:29px}.later-classes .course-section-heading>.p{font-size:13px}.later-class-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.later-class-list .upcoming-class{padding:24px}.later-class-list .upcoming-date{flex-basis:65px;padding:12px 5px}.later-class-list .upcoming-date>strong{font-size:40px}.later-class-list .upcoming-date>.mono{font-size:8px}.later-class-list .upcoming-class-main{gap:17px}.later-class-list .upcoming-class-copy h3{font-size:19px}.later-class-list .upcoming-class-bottom>div>strong{font-size:25px}.later-class-list .upcoming-class-bottom .text-action{font-size:11px;gap:12px;padding-left:12px}
.one-class-note{padding:27px 30px;border-block:1px solid var(--line);margin-bottom:75px;background:#ffffffb8}.one-class-note>.hand{font-size:29px}.one-class-note>p{font-size:14px;margin-top:13px}.next-class-empty{border:1px solid var(--ink);background:#f8f5e9;padding:40px 35px}.next-class-empty>.mono{font-size:10px}.next-class-empty>.hand{display:block;font-size:29px;margin:30px 0}.next-class-empty h2{font-size:37px;line-height:1.4;margin:0 0 25px}.next-class-empty p{font-size:14px;margin-bottom:25px}.next-class-empty .text-action{font-size:12px}
.course-library{margin-bottom:85px}.course-library>.hand{font-size:29px;margin-bottom:23px}.course-library .course-section-heading{margin-bottom:30px}.course-library .course-section-heading h2{font-size:33px}.course-library .course-section-heading p{font-size:14px;margin-top:20px}.course-library-folder{border:1px solid var(--ink);background:#fff}.course-library-folder>summary{padding:23px 27px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:16px;list-style:none}.course-library-folder>summary:after{content:'+';font-size:27px;line-height:1}.course-library-folder[open]>summary:after{content:'−'}.course-library-folder>summary>.mono{font-size:10px;margin-left:auto}.course-library-folder[open]>summary{border-bottom:1px solid var(--ink)}.course-direction-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.course-direction{min-width:0;padding:30px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);border-top:5px solid var(--course-tone)}.course-direction:nth-child(even){border-right:0}.course-direction:nth-last-child(-n+2){border-bottom:0}.course-direction>.hand{font-size:24px;display:block;margin-bottom:20px}.course-direction>h3{font-size:22px;margin-bottom:25px}.course-direction>ul{list-style:none;padding:0;margin:0}.course-direction li+li{border-top:1px solid var(--line);margin-top:17px;padding-top:17px}.course-direction li>a{display:flex;gap:25px;justify-content:space-between;align-items:start;font-size:14px;line-height:1.9;text-decoration:none}.course-direction li>a:hover{text-decoration:underline;text-underline-offset:5px}.course-direction li>a>span{font-size:22px;flex-shrink:0}
.occasional-registration{padding-top:45px;margin-bottom:110px;border-top:1px solid var(--ink)}.occasional-registration>.hand{font-size:28px}.occasional-registration>h2{margin:22px 0}.occasional-registration>p:not(.hand){font-size:15px;margin-bottom:30px}.occasional-registration>.text-action{margin-top:15px}
.registration-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--ink);background:#fff}.registration-highlights>div{padding:23px 24px;border-right:1px solid var(--ink)}.registration-highlights>div:last-child{border-right:0}.registration-highlights>div>.mono{font-size:10px;display:block;padding-bottom:18px}.registration-highlights h3{font-size:20px;line-height:1.6;margin-bottom:13px}.registration-highlights p{font-size:13px;line-height:1.9;margin:0}.registration-highlights>div:nth-child(2){background:#f7edda}.registration-highlights>div:nth-child(3){background:#eaf2ee}.registration-guide-link{font-size:12px!important;margin-top:16px!important}.registration-guide-link a{text-decoration:underline;text-underline-offset:4px}
.registration-guide-heading{padding-top:65px}.registration-guide-heading>.hand{font-size:29px}.registration-guide-heading h1{font-size:50px;line-height:1.4;letter-spacing:-.06em;margin:30px 0 25px}.registration-guide-heading>p:not(.hand){font-size:17px;margin-bottom:40px}.registration-guide-heading>.course-nav{margin-bottom:45px}.registration-guide-body{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:50px;margin-bottom:110px;align-items:start}.registration-guide-body .registration-highlights{grid-template-columns:1fr}.registration-guide-body .registration-highlights>div{border-right:0;border-bottom:1px solid var(--ink);padding:22px 25px;display:grid;grid-template-columns:24px 1fr;gap:0 15px}.registration-guide-body .registration-highlights>div:last-child{border-bottom:0}.registration-guide-body .registration-highlights .mono{grid-row:1/span 2;padding-top:6px}.registration-guide-body .registration-highlights h3{font-size:20px}.registration-sections>section{margin-top:40px;scroll-margin-top:100px}.registration-sections>section>h3{font-size:24px;line-height:1.5;margin:0 0 20px}.registration-sections details{background:#ffffffd9;border-top:1px solid var(--ink);padding:18px 2px}.registration-sections details:last-child{border-bottom:1px solid var(--ink)}.registration-sections summary{cursor:pointer;font-size:15px;line-height:1.8;list-style:none;display:flex;align-items:baseline;justify-content:space-between;gap:18px}.registration-sections summary:after{content:'+';font-family:var(--mono);font-size:22px;line-height:1}.registration-sections details[open]>summary:after{content:'−'}.registration-sections details p{font-size:14px;line-height:2;margin:20px 20px 2px 0}.registration-help{position:sticky;top:105px;padding:25px;background:#f4efd9;border:1px solid var(--ink)}.registration-help>.hand{font-size:27px}.registration-help h2{font-size:24px;line-height:1.6;margin:24px 0 15px}.registration-help>p{font-size:13px;margin-bottom:23px}.registration-help>.text-action{font-size:11px;padding-left:10px;gap:8px;width:100%;margin-top:12px;overflow-wrap:anywhere}.registration-help>.text-action:after{width:26px;height:26px;flex-basis:26px;font-size:20px}.registration-privacy{display:block;font-size:11px;margin-top:23px;text-underline-offset:4px}
.registration-consent .registration-highlights{grid-template-columns:1fr}.registration-consent .registration-highlights>div{border-right:0;border-bottom:1px solid var(--ink);padding:18px 20px;display:grid;grid-template-columns:20px 1fr;gap:0 12px}.registration-consent .registration-highlights>div:last-child{border-bottom:0}.registration-consent .registration-highlights .mono{grid-row:1/span 2;padding-top:5px}.registration-consent .registration-highlights h3{font-size:16px;margin-bottom:9px}.registration-consent .registration-highlights p{font-size:12px}.registration-consent .registration-guide-link{margin-bottom:25px}.registration-consent .consent-check span{font-size:12px!important}.booking-important{padding:20px 18px;background:#f7edda;margin-top:25px;border-left:3px solid var(--ink)}.booking-important>strong{font-size:13px}.booking-important>p{font-size:12px;line-height:1.9;margin-block:13px}.booking-important>a{font-size:11px;text-decoration:underline;text-underline-offset:4px}.final-course-review{padding:20px 23px;background:#fff;border:1px solid var(--ink);margin:25px 0}.final-course-review>.mono{font-size:10px}.final-course-review>h3{font-size:21px;line-height:1.65;margin:15px 0}.final-course-review>p{font-size:13px;margin:0}.final-policy-reminder{border-left:3px solid var(--ink);padding:12px 0 12px 15px;font-size:12px!important;line-height:1.9!important;margin-block:22px}.final-policy-reminder>a{display:block;text-decoration:underline;text-underline-offset:4px;margin-top:7px}
@media(max-width:1100px){.occasional-hero{gap:45px}.occasional-intro>.display{font-size:110px}.occasional-intro>h2{font-size:29px}.upcoming-class.is-featured{padding:27px 25px}.upcoming-class-main{gap:18px}.upcoming-date{flex-basis:75px}.upcoming-date>strong{font-size:45px}.upcoming-class-copy h3{font-size:21px}.upcoming-class-bottom>.action{font-size:12px}.later-class-list .upcoming-class{padding:22px}.later-class-list .upcoming-class-copy h3{font-size:18px}.later-class-list .upcoming-class-bottom{gap:12px}.registration-guide-body{grid-template-columns:minmax(0,1fr) 220px;gap:35px}.registration-highlights>div{padding:22px 20px}.registration-highlights h3{font-size:18px}.registration-help{padding:23px 20px}.registration-help>.text-action{font-size:10px;gap:6px;padding-left:7px}}
@media(max-width:800px){.occasional-hero{grid-template-columns:1fr;gap:38px;padding-block:45px 60px}.occasional-intro>.display{font-size:105px}.occasional-intro>.hand{font-size:26px}.occasional-intro>h2{font-size:32px}.occasional-intro>p br{display:none}.occasional-intro>.text-action{margin-top:17px}.next-class-file{margin:15px 12px 30px 2px}.next-class-footnote{font-size:10px;bottom:-45px}.upcoming-class-copy h3{font-size:24px}.upcoming-class-description{font-size:15px}.upcoming-class.is-featured{padding:27px}.upcoming-date{flex-basis:83px}.occasional-content>.course-nav{margin-bottom:45px}.later-class-list{grid-template-columns:1fr;gap:23px}.later-class-list .upcoming-class-copy h3{font-size:22px}.later-class-list .upcoming-class{padding:25px}.later-class-list .upcoming-class-bottom{padding-left:82px}.course-direction-grid{grid-template-columns:1fr}.course-direction{border-right:0}.course-direction:nth-last-child(2){border-bottom:1px solid var(--line)}.course-library-folder>summary{padding:20px 22px;gap:12px}.course-library-folder>summary>.mono{font-size:8px}.registration-highlights{grid-template-columns:1fr}.registration-highlights>div{border-right:0;border-bottom:1px solid var(--ink);padding:23px 25px}.registration-highlights>div:last-child{border-bottom:0}.registration-highlights h3{font-size:21px}.registration-guide-heading{padding-top:45px}.registration-guide-heading h1{font-size:39px}.registration-guide-heading>.hand{font-size:26px}.registration-guide-heading>p:not(.hand){font-size:15px}.registration-guide-body{grid-template-columns:1fr;gap:40px}.registration-help{position:static;max-width:500px}.registration-help>.text-action{width:fit-content;font-size:12px;gap:14px;padding-left:13px}.registration-help h2{font-size:28px}.registration-sections>section>h3{font-size:23px}.registration-guide-body .registration-highlights h3{font-size:20px}.registration-consent .registration-highlights h3{font-size:16px}}
@media(max-width:500px){.occasional-hero{padding-top:36px}.occasional-intro>.hand{font-size:24px}.occasional-intro>.mono{font-size:9px}.occasional-intro>.display{font-size:97px;margin:25px 0}.occasional-intro>h2{font-size:29px}.occasional-intro>p:not(.hand,.mono){font-size:14px}.upcoming-class.is-featured{padding:23px 21px}.upcoming-class-main{gap:15px}.upcoming-date{flex-basis:68px;padding:13px 5px}.upcoming-date>strong{font-size:43px}.upcoming-date>.mono{font-size:8px}.upcoming-class-copy h3{font-size:21px;line-height:1.7}.upcoming-class-copy>.mono{font-size:8px}.upcoming-class-copy>p{font-size:11px}.upcoming-class-top{gap:12px;margin-bottom:22px}.upcoming-class-top>.mono{font-size:9px}.upcoming-class-description{font-size:13px}.upcoming-class-bottom{align-items:center;gap:12px}.upcoming-class-bottom>div>strong{font-size:27px}.upcoming-class-bottom>.action{font-size:11px;padding:7px 10px 7px 7px;gap:9px}.upcoming-class-bottom>.action .action-mark{width:29px;height:29px}.upcoming-class-bottom>.action .action-mark:after{font-size:22px}.later-classes .course-section-heading h2{font-size:27px}.later-class-list .upcoming-class{padding:22px 20px}.later-class-list .upcoming-class-copy h3{font-size:20px}.later-class-list .upcoming-class-bottom{padding-left:0}.course-library>.hand{font-size:25px}.course-library .course-section-heading h2{font-size:28px}.course-library-folder>summary{padding:18px;font-size:14px;flex-wrap:wrap;column-gap:10px}.course-library-folder>summary>.mono{font-size:7px;order:2;flex-basis:100%;margin:4px 0 0}.course-library-folder>summary:after{margin-left:auto;font-size:23px}.course-direction{padding:25px 22px}.course-direction>.hand{font-size:23px}.course-direction>h3{font-size:21px}.course-direction li>a{font-size:13px;gap:16px}.occasional-registration>p:not(.hand){font-size:14px}.registration-highlights h3{font-size:20px}.registration-highlights p{font-size:13px}.registration-guide-heading h1{font-size:35px}.registration-guide-heading>.hand{font-size:24px}.registration-guide-body .registration-highlights>div{padding:21px 20px;grid-template-columns:20px 1fr;gap:0 12px}.registration-guide-body .registration-highlights h3{font-size:18px}.registration-guide-body .registration-highlights p{font-size:12px}.registration-sections>section>h3{font-size:22px}.registration-sections summary{font-size:14px}.registration-sections details p{font-size:13px;margin-right:0}.registration-consent .registration-highlights>div{padding:17px;grid-template-columns:18px 1fr;gap:0 10px}.registration-consent .registration-highlights h3{font-size:15px}.final-course-review{padding:20px}.final-course-review>h3{font-size:19px}.next-class-empty{padding:30px 25px}.next-class-empty>.hand{font-size:25px}.next-class-empty h2{font-size:32px}}

.course-detail .public-course-booking{position:static}

@media(max-width:800px){.occasional-intro>.display{font-size:70px;line-height:.85;margin:20px 0}.occasional-intro>.display>br{display:none}.occasional-intro>.hand{display:none}.occasional-intro>.text-action{display:none}.occasional-hero{gap:24px}}
@media(max-width:500px){.occasional-intro>.display{font-size:58px;margin:18px 0}.occasional-intro>h2{font-size:25px;margin-bottom:17px}.occasional-intro>p:not(.hand,.mono){font-size:13px;line-height:1.9}.occasional-intro>.mono{margin-bottom:18px}.occasional-hero{padding-top:27px;gap:18px}}

@media(max-width:500px){.occasional-hero .upcoming-class-description{display:none}}
/* Six registration notes retain clear rows in the overview's three-column view. */
@media(min-width:801px){.occasional-registration .registration-highlights>div{border-bottom:1px solid var(--ink)}.occasional-registration .registration-highlights>div:nth-child(3n){border-right:0}.occasional-registration .registration-highlights>div:nth-last-child(-n+3){border-bottom:0}.occasional-registration .registration-highlights>div:nth-child(3n+2){background:#f7edda}.occasional-registration .registration-highlights>div:nth-child(3n){background:#eaf2ee}}
