/* Public marketing, documents and enquiry layouts. */
.public-site main{overflow-wrap:normal}
.public-site .public-kicker,.public-site .public-small-label{font-family:var(--font-ui);font-size:var(--font-size-12);font-weight:var(--weight-500);letter-spacing:.12em;line-height:1.5;text-transform:none;color:var(--ink-500)}
.public-site .public-kicker{margin:0 0 var(--space-16)}
.public-site h1,.public-site .public-section-heading h2,.public-site .public-about-heading h2,.public-site .public-faq-heading h2,.public-site .public-contact-copy h2{font-family:var(--font-display-family);font-weight:var(--weight-600);letter-spacing:var(--tracking-title);line-height:1.02;text-transform:none}
.public-site .public-hero{padding-top:var(--space-64);padding-bottom:var(--space-48)}
.public-site .public-hero>.public-kicker{color:var(--cobalt-600);margin-bottom:var(--space-24)}
.public-site .public-hero-heading{display:grid;grid-template-columns:1fr;gap:var(--space-24);align-items:start}
.public-site .public-hero h1{font-size:var(--font-display);margin:0;max-width:100%}
.public-site .public-hero h1 span{color:var(--cobalt-600)}
.public-site .public-hero-heading>p{font-size:var(--body-large);line-height:1.6;color:var(--ink-500);max-width:65ch;margin:0}
.public-site .public-course-search{display:flex;align-items:flex-end;gap:var(--space-32);border-bottom:var(--focus-width) solid var(--ink-900);padding:var(--space-24) 0 var(--space-16);margin-top:var(--space-32)}
.public-site .public-course-search>div{flex:1;min-width:0}
.public-site .public-course-search label{display:block;font-size:var(--font-size-12);letter-spacing:.1em;color:var(--ink-500);margin-bottom:var(--space-12)}
.public-site .public-course-search input{display:block;width:100%;min-width:0;padding:0;background:none;border:0;border-radius:0;box-shadow:none;height:var(--space-48);font-size:var(--font-size-24);font-weight:var(--weight-400);color:var(--ink-900)}
.public-site .public-course-search input::placeholder{color:var(--ink-500);opacity:.75}
.public-site .public-course-search>.btn{flex:none;gap:var(--space-24)}
.public-site .public-hero-subjects{display:flex;gap:var(--space-16) var(--space-24);align-items:center;flex-wrap:wrap;font-size:var(--font-size-13);padding-top:var(--space-24);color:var(--ink-500)}
.public-site .public-hero-subjects a{color:var(--ink-900);text-decoration:none;border-bottom:var(--border-width) solid var(--line);padding-bottom:var(--space-4)}
.public-site .public-hero-subjects a:hover{color:var(--cobalt-600);border-color:var(--cobalt-600)}
.public-site .public-section{padding-top:var(--space-48);padding-bottom:var(--space-48);scroll-margin-top:var(--scroll-margin)}
.public-site .public-section-heading{display:flex;justify-content:space-between;align-items:end;gap:var(--space-32);margin-bottom:var(--space-32)}
.public-site .public-section-heading h2{font-size:var(--font-size-32);margin:0 0 var(--space-16)}
.public-site .public-section-heading p:not(.public-kicker){color:var(--ink-500);font-size:var(--font-size-16);margin:0;max-width:55ch}
.public-site .public-section-heading>.text-link{flex:none;margin-bottom:var(--space-4)}
.public-site .public-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:var(--space-32);row-gap:var(--space-24)}
.public-site .public-course-item{position:relative;display:flex;flex-direction:column;min-width:0;padding:var(--space-24) 0;border-top:var(--border-width) solid var(--line);transition:border-color var(--transition-ui)}
.public-site .public-course-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-16);margin-bottom:var(--space-24)}
.public-site .public-course-category{font-size:var(--font-size-12);font-weight:var(--weight-500);letter-spacing:.08em;text-transform:none;color:var(--ink-500)}
.public-site .public-course-arrow{font-size:var(--font-size-24);color:var(--cobalt-600);line-height:1}
.public-site .public-course-item h3{font-family:var(--font-display-family);font-size:var(--font-size-24);font-weight:var(--weight-700);line-height:1.2;margin:0 0 var(--space-16)}
.public-site .public-course-item h3 a{color:var(--ink-900);text-decoration:none}
.public-site .public-course-item h3 a:after{content:"";position:absolute;inset:0}
.public-site .public-course-item:hover{border-color:var(--cobalt-600)}
.public-site .public-course-item:hover h3 a{color:var(--cobalt-600)}
.public-site .public-course-item>p{color:var(--ink-500);font-size:var(--font-size-14);line-height:1.65;margin:0 0 var(--space-24)}
.public-site .public-course-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--space-8);margin-top:auto;padding-top:var(--space-16);font-size:var(--font-size-12);color:var(--ink-500)}
.public-site .public-course-meta strong{font-weight:var(--weight-600);color:var(--ink-900)}
.public-site .public-course-meta>span>span{padding:0 var(--space-4)}
.public-site .public-catalogue-empty{display:flex;justify-content:space-between;align-items:center;gap:var(--space-48);border-block:var(--border-width) solid var(--line);padding:var(--space-32) 0}
.public-site .public-catalogue-empty h3{font-size:var(--font-size-20);font-weight:var(--weight-500);margin:0 0 var(--space-12)}
.public-site .public-catalogue-empty p{max-width:65ch;line-height:1.65;font-size:var(--font-size-14);color:var(--ink-500);margin:0}
.public-site .public-catalogue-empty>.text-link{flex:none}
.public-site .public-about-band{background:var(--ink-900);padding:var(--space-64) 0;scroll-margin-top:var(--scroll-margin);color:var(--surface)}
.public-site .public-about-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:var(--space-64);align-items:center}
.public-site .public-about-heading>.public-kicker{color:var(--cobalt-50)}
.public-site .public-about-heading h2{font-size:var(--font-display-mobile);color:var(--surface);margin:0 0 var(--space-24)}
.public-site .public-about-heading>p:not(.public-kicker){font-size:var(--font-size-16);line-height:1.7;color:var(--surface);opacity:var(--sidebar-muted-opacity);max-width:45ch;margin:0 0 var(--space-24)}
.public-site .public-about-heading>.text-link{color:var(--surface)}
.public-site .public-process{display:grid;gap:var(--space-32)}
.public-site .public-process article{display:grid;grid-template-columns:var(--space-48) minmax(0,1fr);gap:var(--space-24)}
.public-site .public-process article>span{font-family:var(--font-display-family);font-size:var(--font-size-24);font-weight:var(--weight-700);color:var(--surface);opacity:.45;line-height:1.1}
.public-site .public-process h3{font-family:var(--font-display-family);font-weight:var(--weight-700);font-size:var(--font-size-16);color:var(--surface);line-height:1.3;margin:0 0 var(--space-12)}
.public-site .public-process p{font-size:var(--font-size-14);color:var(--surface);opacity:var(--sidebar-muted-opacity);line-height:1.7;max-width:40ch;margin:0}
.public-site .public-plan-list{border-top:var(--border-width) solid var(--line)}
.public-site .public-plan-row{display:grid;grid-template-columns:1fr 1.35fr 1fr;gap:var(--space-48);padding:var(--space-32) 0;border-bottom:var(--border-width) solid var(--line)}
.public-site .public-plan-name>.public-kicker{display:block;margin-bottom:var(--space-12)}
.public-site .public-plan-name h3{font-family:var(--font-display-family);font-size:var(--font-size-24);font-weight:var(--weight-700);text-transform:none;line-height:1.1;margin:0 0 var(--space-12)}
.public-site .public-plan-name p,.public-site .public-plan-detail p{font-size:var(--font-size-14);line-height:1.7;color:var(--ink-500);margin:0}
.public-site .public-plan-detail p{margin-bottom:var(--space-16)}
.public-site .public-plan-availability{font-size:var(--font-size-12);color:var(--ink-700)}
.public-site .public-plan-end{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:var(--space-16);text-align:right}
.public-site .public-plan-end strong{font-weight:var(--weight-500);font-size:var(--font-size-16)}
.public-site .public-footnote{font-size:var(--font-size-12);color:var(--ink-500);line-height:1.6;margin:var(--space-16) 0 0}
.public-site .public-faq-band{border-block:var(--border-width) solid var(--line);padding:var(--space-48) 0;scroll-margin-top:var(--scroll-margin)}
.public-site .public-faq-layout{display:grid;grid-template-columns:1fr 1.65fr;gap:var(--space-64)}
.public-site .public-faq-heading h2,.public-site .public-contact-copy h2{font-size:var(--font-display-mobile);margin:0 0 var(--space-24)}
.public-site .public-faq-heading>p:not(.public-kicker){color:var(--ink-500);max-width:28ch;font-size:var(--font-size-16);line-height:1.7;margin:0 0 var(--space-24)}
.public-site .public-faq-list{border-top:var(--border-width) solid var(--line)}
.public-site .public-faq-item{border-bottom:var(--border-width) solid var(--line)}
.public-site .public-faq-item summary{display:flex;justify-content:space-between;align-items:center;gap:var(--space-24);padding:var(--space-24) 0;list-style:none;cursor:pointer;font-size:var(--font-size-16);font-weight:var(--weight-500);line-height:1.5}
.public-site .public-faq-item summary::-webkit-details-marker{display:none}
.public-site .public-faq-toggle{flex:none;position:relative;width:var(--icon-small);height:var(--icon-small);color:var(--cobalt-600)}
.public-site .public-faq-toggle:before,.public-site .public-faq-toggle:after{content:"";position:absolute;top:50%;left:0;width:100%;height:var(--border-width);background:currentColor}
.public-site .public-faq-toggle:after{transform:rotate(90deg);transition:transform var(--transition-ui)}
.public-site .public-faq-item[open] .public-faq-toggle:after{transform:rotate(0)}
.public-site .public-faq-answer{padding:0 var(--space-48) var(--space-24) 0}
.public-site .public-faq-answer p{font-size:var(--font-size-14);line-height:1.8;color:var(--ink-500);margin:0;white-space:pre-line}
.public-site .public-faq-empty{padding:var(--space-32) 0}
.public-site .public-faq-empty h3{font-size:var(--font-size-20);font-weight:var(--weight-500);margin:0 0 var(--space-12)}
.public-site .public-faq-empty p{font-size:var(--font-size-14);line-height:1.7;color:var(--ink-500);margin:0;max-width:45ch}
.public-site .public-contact-layout{display:grid;grid-template-columns:1fr 1.3fr;gap:var(--space-64)}
.public-site .public-contact-copy>p:not(.public-kicker){max-width:38ch;color:var(--ink-500);font-size:var(--font-size-16);line-height:1.7;margin:0 0 var(--space-24)}
.public-site .public-contact-copy>.public-contact-team{font-size:var(--font-size-13)!important;padding-top:var(--space-24);border-top:var(--border-width) solid var(--line)}
.public-site .public-contact-email{display:inline-flex;align-items:center;gap:var(--space-24);font-size:var(--font-size-16);color:var(--cobalt-600);text-decoration:none;margin-bottom:var(--space-24)}
.public-site .public-contact-form{padding-top:var(--space-4)}
.public-site .public-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-24)}
.public-site .public-form-grid .field{margin:0}
.public-site .public-full{grid-column:1/-1}
.public-site .public-contact-form textarea{min-height:calc(var(--space-48)*3);resize:vertical}
.public-site .public-form-bottom{display:flex;align-items:center;gap:var(--space-24);margin-top:var(--space-32)}
.public-site .public-form-bottom .fine{max-width:32ch;font-size:var(--font-size-12);line-height:1.6}
.public-site .public-page-heading{padding:var(--space-32) 0 var(--space-48);border-bottom:var(--border-width) solid var(--line)}
.public-site .public-page-heading .breadcrumb{display:flex;gap:var(--space-12);flex-wrap:wrap;margin:0 0 var(--space-32);font-family:var(--font-ui);font-size:var(--font-size-12);color:var(--ink-500)}
.public-site .public-page-heading .breadcrumb a{color:var(--ink-500);text-decoration:none}
.public-site .public-page-heading>.public-kicker{margin:0 0 var(--space-16)}
.public-site .public-page-heading h1{font-size:var(--font-display-small);max-width:24ch;margin:0 0 var(--space-24)}
.public-site .public-page-heading>p:last-child{font-size:var(--font-size-16);color:var(--ink-500);max-width:65ch;line-height:1.7;margin:0}
.public-site .public-catalogue-page,.public-site .public-course-page{padding-bottom:var(--space-64)}
.public-site .public-catalogue-layout{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);gap:var(--space-48);padding-top:var(--space-32)}
.public-site .public-filters{border-right:var(--border-width) solid var(--line);padding-right:var(--space-24)}
.public-site .public-filter-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-8);margin:0 0 var(--space-24)}
.public-site .public-filter-heading h2{font-family:var(--font-display-family);font-size:var(--font-size-16);font-weight:var(--weight-700);text-transform:none;margin:0}
.public-site .public-filter-heading .text-link{font-size:var(--font-size-12)}
.public-site .public-filters .field{margin:0 0 var(--space-24)}
.public-site .public-filters .btn{width:100%;justify-content:space-between;margin-top:var(--space-8)}
.public-site .public-results-heading{display:flex;justify-content:space-between;gap:var(--space-16);padding-bottom:var(--space-24)}
.public-site .public-results-heading p{font-size:var(--font-size-14);color:var(--ink-500);margin:0}
.public-site .public-catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-24) var(--space-32)}
.public-site .public-results-empty{padding:var(--space-48) 0;border-top:var(--border-width) solid var(--line)}
.public-site .public-results-empty h2{font-family:var(--font-display-family);font-weight:var(--weight-700);font-size:var(--font-size-32);line-height:1.15;text-transform:none;max-width:24ch;margin:var(--space-16) 0}
.public-site .public-results-empty p{font-size:var(--font-size-16);color:var(--ink-500);line-height:1.7;max-width:50ch;margin:0 0 var(--space-24)}
.public-site .public-course-heading h1{max-width:22ch}
.public-site .public-course-layout{display:grid;grid-template-columns:minmax(0,1fr) var(--meta-column-width);gap:var(--space-64);padding-top:var(--space-32)}
.public-site .public-course-body>section{padding:var(--space-24) 0;border-bottom:var(--border-width) solid var(--line)}
.public-site .public-course-body>section:first-child{padding-top:0}
.public-site .public-course-body>section>.public-small-label{margin:0 0 var(--space-12)}
.public-site .public-course-body h2{font-family:var(--font-display-family);font-size:var(--font-size-24);font-weight:var(--weight-700);line-height:1.15;margin:0 0 var(--space-24)}
.public-site .public-course-body>section>p:not(.public-small-label){font-size:var(--font-size-16);color:var(--ink-700);line-height:1.8;margin:0}
.public-site .public-objectives{list-style:none;margin:0;padding:0}
.public-site .public-objectives li{padding:var(--space-12) 0 var(--space-12) var(--space-24);position:relative;color:var(--ink-700);font-size:var(--font-size-16);line-height:1.7}
.public-site .public-objectives li:before{content:"";position:absolute;top:1.2em;left:0;width:var(--space-8);height:var(--border-width);background:var(--cobalt-600)}
.public-site .public-curriculum{list-style:none;margin:0;padding:0}
.public-site .public-curriculum li{display:flex;gap:var(--space-24);padding:var(--space-16) 0;border-top:var(--border-width) solid var(--line);font-size:var(--font-size-16);color:var(--ink-700)}
.public-site .public-curriculum .public-small-label{padding-top:var(--space-4)}
.public-site .public-course-enquiry{align-self:start;border-top:var(--focus-width) solid var(--cobalt-600);padding-top:var(--space-24);position:sticky;top:calc(var(--header-height) + var(--space-24))}
.public-site .public-course-enquiry>.public-kicker{margin:0 0 var(--space-12)}
.public-site .public-course-enquiry h2{font-family:var(--font-display-family);font-size:var(--font-size-32);font-weight:var(--weight-700);margin:0 0 var(--space-24)}
.public-site .public-course-enquiry dl{margin:0 0 var(--space-24)}
.public-site .public-course-enquiry dl>div{padding:var(--space-12) 0;border-bottom:var(--border-width) solid var(--line);font-size:var(--font-size-13)}
.public-site .public-course-enquiry dt{color:var(--ink-500);margin-bottom:var(--space-4)}
.public-site .public-course-enquiry dd{color:var(--ink-900);margin:0}
.public-site .public-course-enquiry>p{color:var(--ink-500);font-size:var(--font-size-14);line-height:1.7;margin:0 0 var(--space-16)}
.public-site .public-course-enquiry>.btn{display:flex;justify-content:space-between;font-size:var(--font-size-12);margin-bottom:var(--space-16)}
.public-site .public-course-enquiry>.fine{font-size:var(--font-size-12)}
.public-site .public-course-note{padding:var(--space-24) 0;margin-top:var(--space-16);border-bottom:var(--border-width) solid var(--line)}
.public-site .public-course-note h3{font-size:var(--font-size-14);font-weight:var(--weight-600);margin:0 0 var(--space-12)}
.public-site .public-course-note p{font-size:var(--font-size-13);line-height:1.7;color:var(--ink-500);margin:0}
.public-site .public-document-layout{display:grid;grid-template-columns:1fr 3fr;gap:var(--space-48);padding:var(--space-32) 0 var(--space-64)}
.public-site .public-document-rail{color:var(--ink-500);font-size:var(--font-size-13)}
.public-site .public-document-rail .public-small-label{display:block;margin-bottom:var(--space-16)}
.public-site .public-document-body{max-width:70ch}
.public-site .public-document-body>p{font-size:var(--font-size-16);line-height:1.9;color:var(--ink-700);margin:0 0 var(--space-24)}
.public-site .public-document-body .notice{margin-bottom:var(--space-24)}
.public-site .public-contact-page{padding-bottom:var(--space-64)}
.public-site .public-contact-page-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:var(--space-64);padding-top:var(--space-32)}
.public-site .public-contact-page-copy>p{font-size:var(--font-size-16);color:var(--ink-500);line-height:1.8;margin:0 0 var(--space-24)}
@media(max-width:68em){
 .public-site .public-hero-heading{gap:var(--space-24)}
 .public-site .public-hero h1{font-size:var(--font-display-small)}
 .public-site .public-hero-heading>p{font-size:var(--font-size-16)}
 .public-site .public-about-layout,.public-site .public-faq-layout,.public-site .public-contact-layout{gap:var(--space-32)}
 .public-site .public-about-heading h2,.public-site .public-faq-heading h2,.public-site .public-contact-copy h2{font-size:var(--font-size-24)}
 .public-site .public-plan-row{gap:var(--space-24)}
 .public-site .public-catalogue-layout{gap:var(--space-32)}
}
@media(max-width:56em){
 .public-site .public-hero{padding-top:var(--space-48)}
 .public-site .public-hero-heading{grid-template-columns:1fr;gap:var(--space-24)}
 .public-site .public-hero h1{font-size:var(--font-display-small);max-width:100%}
 .public-site .public-hero-heading>p{max-width:52ch;margin:0}
 .public-site .public-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .public-site .public-plan-row{grid-template-columns:1fr 1.4fr}
 .public-site .public-plan-name{grid-row:span 2}
 .public-site .public-plan-end{grid-column:2;align-items:flex-start;text-align:left;gap:var(--space-8)}
 .public-site .public-faq-layout{grid-template-columns:1fr 1.5fr}
 .public-site .public-contact-layout{grid-template-columns:1fr 1.4fr}
 .public-site .public-form-grid{grid-template-columns:1fr;gap:var(--space-24)}
 .public-site .public-form-bottom{flex-direction:column;align-items:flex-start;gap:var(--space-16)}
 .public-site .public-form-bottom .fine{max-width:none}
 .public-site .public-catalogue-layout{grid-template-columns:var(--meta-column-width) minmax(0,1fr);gap:var(--space-24)}
 .public-site .public-catalogue-grid{grid-template-columns:1fr}
 .public-site .public-course-layout{gap:var(--space-32)}
}
@media(max-width:42em){
 .public-site .public-hero{padding-top:var(--space-32);padding-bottom:var(--space-32)}
 .public-site .public-hero>.public-kicker{font-size:var(--font-size-12);letter-spacing:.08em;margin-bottom:var(--space-24)}
 .public-site .public-hero h1{font-size:var(--font-display-mobile);line-height:1.05;max-width:17ch}
 .public-site .public-hero-heading{gap:var(--space-24)}
 .public-site .public-course-search{gap:var(--space-16);align-items:stretch;flex-direction:column;margin-top:var(--space-24);padding:var(--space-16) 0 var(--space-24)}
 .public-site .public-course-search label{font-size:var(--font-size-12);letter-spacing:.08em}
 .public-site .public-course-search input{font-size:var(--font-size-20)}
 .public-site .public-course-search>.btn{align-self:flex-start;min-width:50%;justify-content:space-between}
 .public-site .public-hero-subjects{gap:var(--space-12) var(--space-16);font-size:var(--font-size-12);line-height:1.6}
 .public-site .public-hero-subjects>span{width:100%}
 .public-site .public-section{padding-top:var(--space-32);padding-bottom:var(--space-32)}
 .public-site .public-section-heading{flex-direction:column;align-items:flex-start;gap:var(--space-24);margin-bottom:var(--space-24)}
 .public-site .public-section-heading h2{font-size:var(--font-size-24);line-height:1.1}
 .public-site .public-course-grid{grid-template-columns:1fr;row-gap:var(--space-8)}
 .public-site .public-course-top{margin-bottom:var(--space-16)}
 .public-site .public-course-item h3{font-size:var(--font-size-24)}
 .public-site .public-catalogue-empty{flex-direction:column;align-items:flex-start;gap:var(--space-24);padding:var(--space-24) 0}
 .public-site .public-catalogue-empty h3{font-size:var(--font-size-20)}
 .public-site .public-about-band{padding:var(--space-48) 0}
 .public-site .public-about-layout,.public-site .public-faq-layout,.public-site .public-contact-layout{grid-template-columns:1fr;gap:var(--space-32)}
 .public-site .public-about-heading h2{font-size:var(--font-size-32)}
 .public-site .public-about-heading h2 br{display:none}
 .public-site .public-process{gap:var(--space-24)}
 .public-site .public-process article{grid-template-columns:var(--space-48) 1fr;gap:var(--space-16)}
 .public-site .public-process article>span{font-size:var(--font-size-20);white-space:nowrap}
 .public-site .public-plan-row{grid-template-columns:1fr;gap:var(--space-16);padding:var(--space-24) 0}
 .public-site .public-plan-name{grid-row:auto}
 .public-site .public-plan-name>.public-kicker{margin-bottom:var(--space-8)}
 .public-site .public-plan-name h3{font-size:var(--font-size-24);margin-bottom:var(--space-8)}
 .public-site .public-plan-end{grid-column:auto;flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-16)}
 .public-site .public-plan-end strong,.public-site .public-plan-end .text-link{font-size:var(--font-size-13)}
 .public-site .public-plan-detail p{max-width:50ch;margin-bottom:var(--space-12)}
 .public-site .public-faq-band{padding:var(--space-32) 0}
 .public-site .public-faq-heading h2,.public-site .public-contact-copy h2{font-size:var(--font-size-24)}
 .public-site .public-faq-heading h2 br{display:none}
 .public-site .public-faq-heading>p:not(.public-kicker){max-width:40ch}
 .public-site .public-faq-item summary{padding:var(--space-16) 0;font-size:var(--font-size-14)}
 .public-site .public-contact-copy>.public-contact-team{padding-top:var(--space-16)}
 .public-site .public-form-grid{grid-template-columns:1fr;gap:var(--space-24)}
 .public-site .public-page-heading{padding:var(--space-24) 0 var(--space-32)}
 .public-site .public-page-heading .breadcrumb{margin-bottom:var(--space-24)}
 .public-site .public-page-heading h1{font-size:var(--font-size-32);line-height:1.1}
 .public-site .public-page-heading>p:last-child{font-size:var(--font-size-16)}
 .public-site .public-catalogue-layout{grid-template-columns:1fr;padding-top:var(--space-24);gap:var(--space-32)}
 .public-site .public-filters{padding:0 0 var(--space-24);border-right:0;border-bottom:var(--border-width) solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:var(--space-24) var(--space-16)}
 .public-site .public-filter-heading{grid-column:1/-1;margin:0}
 .public-site .public-filters .field{margin:0;min-width:0}
 .public-site .public-filters .field select{max-width:100%}
 .public-site .public-filter-pair{display:contents}
 .public-site .public-filters .btn{align-self:end;margin:0}
 .public-site .public-results-heading{padding-bottom:var(--space-16)}
 .public-site .public-results-empty{padding:var(--space-32) 0}
 .public-site .public-results-empty h2{font-size:var(--font-size-24)}
 .public-site .public-course-layout{grid-template-columns:1fr;padding-top:var(--space-24);gap:var(--space-32)}
 .public-site .public-course-enquiry{position:static;order:-1}
 .public-site .public-course-enquiry dl{display:grid;grid-template-columns:1fr 1fr;gap:0 var(--space-24)}
 .public-site .public-course-enquiry>.btn{display:inline-flex;gap:var(--space-24)}
 .public-site .public-document-layout,.public-site .public-contact-page-layout{grid-template-columns:1fr;gap:var(--space-24);padding-top:var(--space-24)}
 .public-site .public-document-rail{display:flex;align-items:center;gap:var(--space-16);flex-wrap:wrap}
 .public-site .public-document-rail .public-small-label{margin:0}
}
@media(max-width:26em){
 .public-site .public-hero h1{font-size:var(--font-size-32)}
 .public-site .public-filters{grid-template-columns:1fr}
 .public-site .public-filter-heading{grid-column:auto}
}

/* Professional visual direction: sentence case, photography and deliberate plan cards. */
.public-site .public-kicker,.public-site .public-small-label{font-size:var(--font-size-13);font-weight:var(--weight-500);letter-spacing:normal;text-transform:none;line-height:var(--line-height-body)}
.public-site h1,.public-site h2,.public-site h3{font-weight:var(--weight-600);letter-spacing:var(--tracking-title);line-height:var(--line-height-heading);text-transform:none;word-break:normal;overflow-wrap:normal}
.public-site .public-section-heading h2,.public-site .public-about-heading h2,.public-site .public-faq-heading h2,.public-site .public-contact-copy h2{font-size:var(--font-size-32);max-width:none;line-height:var(--line-height-heading);font-weight:var(--weight-600);margin-bottom:var(--space-16)}
.public-site .public-section-heading p:not(.public-kicker){max-width:70ch}
.public-site .public-hero-band{position:relative;isolation:isolate;background:var(--ink-900);overflow:hidden}
.public-site .public-hero-background{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center 52%}
.public-site .public-hero-shade{position:absolute;inset:0;background:var(--hero-overlay)}
.public-site .public-hero{position:relative;z-index:1;padding-top:var(--space-64);padding-bottom:var(--space-48);color:var(--surface)}
.public-site .public-hero>.public-kicker{color:var(--surface);margin-bottom:var(--space-16);font-size:var(--font-size-14)}
.public-site .public-hero-heading{display:block;max-width:var(--hero-copy-width)}
.public-site .public-hero h1{font-size:var(--font-display);line-height:1.15;font-weight:var(--weight-600);max-width:none;color:var(--surface);text-wrap:balance;margin:0 0 var(--space-24)}
.public-site .public-hero-heading>p{max-width:66ch;color:var(--surface);font-size:var(--body-large);line-height:1.65;margin:0}
.public-site .public-course-search{display:flex;align-items:center;gap:var(--space-24);max-width:var(--hero-search-width);margin-top:var(--space-32);padding:var(--space-16) var(--space-24);background:var(--surface);border:0;border-radius:var(--plan-radius)}
.public-site .public-course-search label{font-size:var(--font-size-12);font-weight:var(--weight-500);letter-spacing:normal;color:var(--ink-500);text-transform:none;margin-bottom:var(--space-4)}
.public-site .public-course-search input{height:var(--button-height);min-height:var(--button-height);font-size:var(--font-size-16);line-height:var(--line-height-body);padding:var(--space-8) 0;color:var(--ink-900);border:0;box-shadow:none}
.public-site .public-course-search input:focus,.public-site .public-course-search input:focus-visible{outline:none;box-shadow:none;border:0;background:var(--focus-fill)}
.public-site .public-course-search:focus-within label{font-weight:var(--weight-600);color:var(--cobalt-600)}
.public-site .public-course-search:has(:focus-visible) label{text-decoration:underline;text-underline-offset:var(--space-4)}
.public-site .public-course-search>.btn{align-self:center;gap:var(--space-12);white-space:nowrap}
.public-site .public-hero-subjects{font-size:var(--font-size-13);color:var(--surface);padding-top:var(--space-16)}
.public-site .public-hero-subjects a{color:var(--surface);border-color:var(--color-on-dark-muted)}
.public-site .public-hero-points{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-12) var(--space-32);list-style:none;padding:0;margin:var(--space-24) 0 0}
.public-site .public-hero-points li{display:flex;align-items:center;gap:var(--space-8);font-size:var(--font-size-13);color:var(--surface)}
.public-site .public-course-item h3{font-size:var(--font-size-20);font-weight:var(--weight-600);line-height:1.4;overflow-wrap:break-word}
.public-site .public-about-band{background:var(--surface);color:var(--ink-900);padding:var(--space-48) 0}
.public-site .public-about-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:var(--space-48);align-items:center}
.public-site .public-about-media{min-width:0;margin:0}
.public-site .public-about-media img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--plan-radius)}
.public-site .public-about-media figcaption{font-size:var(--font-size-12);color:var(--ink-500);margin-top:var(--space-12)}
.public-site .public-about-heading{min-width:0}
.public-site .public-about-heading>.public-kicker{color:var(--cobalt-600)}
.public-site .public-about-heading h2{color:var(--ink-900)}
.public-site .public-about-heading>p:not(.public-kicker){max-width:none;font-size:var(--font-size-16);line-height:1.7;color:var(--ink-500);opacity:1;margin-bottom:var(--space-24)}
.public-site .public-process{display:grid;gap:var(--space-16)}
.public-site .public-process article{display:grid;grid-template-columns:var(--icon-size) minmax(0,1fr);gap:var(--space-12);padding:0;border:0}
.public-site .public-process article>.icon{margin-top:var(--space-4);color:var(--cobalt-600)}
.public-site .public-process h3{font-size:var(--font-size-16);font-weight:var(--weight-600);color:var(--ink-900);margin-bottom:var(--space-4)}
.public-site .public-process p{font-size:var(--font-size-14);line-height:1.6;max-width:none;color:var(--ink-500);opacity:1;margin:0}
.public-site .public-plan-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-24);border:0}
.public-site .public-plan-row{display:flex;flex-direction:column;gap:var(--space-24);min-width:0;padding:var(--space-24);background:var(--surface);border:var(--border-width) solid var(--line);border-radius:var(--plan-radius)}
.public-site .public-plan-name{min-width:0;grid-row:auto}
.public-site .public-plan-name>.public-kicker{font-size:var(--font-size-12);color:var(--cobalt-600);margin-bottom:var(--space-12)}
.public-site .public-plan-name h3{font-size:var(--font-size-24);font-weight:var(--weight-600);margin:0 0 var(--space-12)}
.public-site .public-plan-name p{font-size:var(--font-size-14);line-height:1.6;min-height:var(--space-48);color:var(--ink-500)}
.public-site .public-plan-price{display:grid;gap:var(--space-4);padding-block:var(--space-16);border-block:var(--border-width) solid var(--line)}
.public-site .public-plan-price strong{font-size:var(--font-size-24);font-weight:var(--weight-600);color:var(--ink-900);line-height:var(--line-height-heading)}
.public-site .public-plan-price span{font-size:var(--font-size-12);color:var(--ink-500)}
.public-site .public-plan-features{display:grid;gap:var(--space-12);list-style:none;padding:0;margin:0 0 var(--space-8);flex:1}
.public-site .public-plan-features li{display:flex;align-items:flex-start;gap:var(--space-8);font-size:var(--font-size-13);color:var(--ink-700);line-height:1.6}
.public-site .public-plan-features .icon{color:var(--cobalt-600);width:var(--icon-small);height:var(--icon-small);margin-top:var(--space-4)}
.public-site .public-plan-end{display:grid;grid-template-columns:minmax(0,1fr);grid-column:auto;justify-content:stretch;width:100%;gap:var(--space-12);margin-top:auto;text-align:center;align-items:stretch}
.public-site .public-plan-end .btn{width:100%;min-height:var(--button-height);white-space:nowrap;font-size:var(--font-size-13)}
.public-site .public-plan-availability{display:block;font-size:var(--font-size-12);text-align:center;line-height:var(--line-height-body)}
.public-site .public-plan-availability:before{display:none}
.public-site .public-faq-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.65fr);gap:var(--space-48)}
.public-site .public-contact-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:var(--space-48)}
.public-site .public-contact-copy h2,.public-site .public-faq-heading h2{max-width:none}
.public-site .public-contact-email{overflow-wrap:anywhere}
.public-site .public-page-heading h1{font-size:var(--font-display-small);font-weight:var(--weight-600);line-height:var(--line-height-heading);max-width:none}
.public-site .public-page-heading>p:last-child{max-width:75ch}
.public-site .public-course-body h2,.public-site .public-course-enquiry h2{font-weight:var(--weight-600)}
.public-site .public-course-heading h1{overflow-wrap:break-word}
@media(max-width:68em){.public-site .public-hero h1{font-size:var(--font-display-small)}.public-site .public-about-layout{gap:var(--space-32)}.public-site .public-section-heading h2,.public-site .public-about-heading h2,.public-site .public-faq-heading h2,.public-site .public-contact-copy h2{font-size:var(--font-size-28)}}
@media(max-width:56em){.public-site .public-plan-list{grid-template-columns:minmax(0,1fr)}.public-site .public-plan-name p{min-height:0}.public-site .public-about-layout{grid-template-columns:minmax(0,1fr)}.public-site .public-about-media img{aspect-ratio:16/9}.public-site .public-plan-row{padding:var(--space-24)}.public-site .public-plan-end{max-width:var(--auth-form-width)}.public-site .public-faq-layout,.public-site .public-contact-layout{grid-template-columns:minmax(0,1fr);gap:var(--space-32)}}
@media(max-width:42em){.public-site .public-hero{padding-top:var(--space-48);padding-bottom:var(--space-32)}.public-site .public-hero h1{font-size:var(--font-display-mobile);max-width:none;line-height:1.2}.public-site .public-hero-heading>p{font-size:var(--font-size-16);line-height:1.7}.public-site .public-course-search{padding:var(--space-16);gap:var(--space-12);margin-top:var(--space-24);align-items:stretch}.public-site .public-course-search>.btn{align-self:stretch;justify-content:center}.public-site .public-hero-points{gap:var(--space-12);flex-direction:column;align-items:flex-start}.public-site .public-hero-background{object-position:60% center}.public-site .public-section-heading{gap:var(--space-16)}.public-site .public-about-band{padding:var(--space-32) 0}.public-site .public-plan-end{max-width:none}.public-site .public-page-heading h1{font-size:var(--font-size-32)}.public-site .public-plan-name h3{font-size:var(--font-size-24)}}

.public-site .public-form-grid .field{margin-bottom:0}

/* Administrator-entered names retain natural wrapping, with a break when a word cannot fit. */
.public-site .public-hero-subjects>a{min-width:0;max-width:100%;overflow-wrap:anywhere}
.public-site .public-course-heading{overflow-wrap:anywhere}
.public-site .public-page-heading .breadcrumb>a,.public-site .public-page-heading .breadcrumb>span{min-width:0;max-width:100%;overflow-wrap:anywhere}

/* Homepage imagery and an on-demand platform introduction. */
.public-site .public-hero-video-link{display:inline-flex;align-items:center;gap:var(--space-8);margin-top:var(--space-24);color:var(--surface);font-size:var(--font-size-14);font-weight:var(--weight-500);text-decoration:none;text-underline-offset:var(--space-4)}
.public-site .public-hero-video-link:hover{text-decoration:underline}
.public-site .public-featured-heading{align-items:flex-end}
.public-site .public-featured-heading .public-kicker{color:var(--cobalt-600);margin-bottom:var(--space-12)}
.public-site .public-featured-heading h2{margin-bottom:var(--space-12)}
.public-site .public-more-courses{white-space:nowrap}
.public-site .public-featured-course-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-24);align-items:stretch}
.public-site .public-featured-course{display:flex;flex-direction:column;min-width:0}
.public-site .public-featured-image{aspect-ratio:3/2;overflow:hidden;background:var(--cobalt-50);border-radius:var(--plan-radius);color:var(--cobalt-600)}
.public-site .public-featured-image img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;transition:transform var(--transition-ui)}
.public-site .public-featured-image-empty{display:grid;place-items:center;background:var(--cobalt-50)}
.public-site .public-featured-image-empty>.icon{width:var(--space-48);height:var(--space-48);stroke-width:1}
.public-site .public-featured-course-body{display:flex;flex-direction:column;flex:1;min-width:0;padding-top:var(--space-24)}
.public-site .public-featured-category{margin:0 0 var(--space-8);font-size:var(--font-size-12);font-weight:var(--weight-500);line-height:var(--line-height-body);color:var(--cobalt-600)}
.public-site .public-featured-course h3{font-size:var(--font-size-20);font-weight:var(--weight-600);line-height:1.35;margin:0 0 var(--space-12);letter-spacing:var(--tracking-title)}
.public-site .public-featured-course h3 a{color:var(--ink-900);text-decoration:none}
.public-site .public-featured-course h3 a:hover{color:var(--cobalt-600);text-decoration:underline;text-underline-offset:var(--space-4)}
.public-site .public-featured-summary{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;margin:0 0 var(--space-16);font-size:var(--font-size-14);line-height:1.65;color:var(--ink-500)}
.public-site .public-featured-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-8);margin:auto 0 0;padding-top:var(--space-8);font-size:var(--font-size-12);line-height:var(--line-height-body);color:var(--ink-500)}
.public-site .public-featured-course-link{align-self:flex-start;margin-top:var(--space-16);font-size:var(--font-size-14)}
.public-site .public-intro-band{padding-block:var(--space-48);background:var(--cobalt-50);scroll-margin-top:var(--scroll-margin)}
.public-site .public-intro-figure{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.4fr);align-items:center;gap:var(--space-48);margin:0}
.public-site .public-intro-stage{position:relative;grid-column:2;grid-row:1;min-width:0;overflow:hidden;aspect-ratio:16/9;background:var(--ink-900);border-radius:var(--plan-radius)}
.public-site .public-intro-stage>video,.public-site .public-intro-stage>img{display:block;width:100%;height:100%;max-width:none;object-fit:cover}
.public-site .public-intro-stage>video{color:var(--surface)}
.public-site .public-intro-copy{grid-column:1;grid-row:1;min-width:0}
.public-site .public-intro-copy>.public-kicker{color:var(--cobalt-600);margin-bottom:var(--space-12)}
.public-site .public-intro-copy h2{font-size:var(--font-size-32);font-weight:var(--weight-600);line-height:var(--line-height-heading);margin:0 0 var(--space-16)}
.public-site .public-intro-copy>p:not(.public-kicker){font-size:var(--font-size-16);line-height:1.7;color:var(--ink-700);margin:0 0 var(--space-24)}
.public-site .public-intro-copy>.public-intro-pending{font-size:var(--font-size-13);color:var(--ink-500);margin-bottom:0}
.public-site .public-intro-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:var(--space-64);height:var(--space-64);padding:var(--space-16);border:0;border-radius:var(--radius-pill);color:var(--cobalt-600);background:var(--surface);cursor:pointer;transition:background var(--transition-ui),color var(--transition-ui)}
.public-site .public-intro-play svg{display:block;width:var(--space-32);height:var(--space-32)}
.public-site .public-intro-play:hover{color:var(--surface);background:var(--cobalt-600)}
.public-site .public-intro-play[hidden]{display:none}
.public-site .public-intro-external{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:inline-flex;align-items:center;gap:var(--space-12);padding:var(--space-16) var(--space-24);border-radius:var(--radius-button);background:var(--surface);color:var(--cobalt-600);font-size:var(--font-size-14);font-weight:var(--weight-500);white-space:nowrap;text-decoration:none}
.public-site .public-intro-external:hover{text-decoration:underline;text-underline-offset:var(--space-4)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.public-site .public-featured-course:hover .public-featured-image img{transform:scale(1.025)}}
@media(max-width:64em){.public-site .public-featured-course-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:var(--space-32)}.public-site .public-intro-figure{gap:var(--space-32)}.public-site .public-intro-copy h2{font-size:var(--font-size-28)}}
@media(max-width:48em){.public-site .public-intro-figure{grid-template-columns:minmax(0,1fr);gap:var(--space-24)}.public-site .public-intro-stage,.public-site .public-intro-copy{grid-column:1;grid-row:auto}.public-site .public-intro-copy>p:not(.public-kicker){margin-bottom:var(--space-16)}}
@media(max-width:37.5em){.public-site .public-featured-heading{align-items:flex-start}.public-site .public-featured-course-grid{grid-template-columns:minmax(0,1fr);row-gap:var(--space-32)}.public-site .public-featured-course-body{padding-top:var(--space-16)}.public-site .public-featured-image{aspect-ratio:16/9}.public-site .public-featured-summary{-webkit-line-clamp:3;line-clamp:3}.public-site .public-intro-band{padding-block:var(--space-32)}.public-site .public-intro-copy h2{font-size:var(--font-size-24)}.public-site .public-intro-external{gap:var(--space-8);padding:var(--space-12) var(--space-16);font-size:var(--font-size-13)}}

.public-site .public-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-16) var(--space-24);margin-top:var(--space-24)}
.public-site .public-hero-actions>.text-link{color:var(--surface)}
.public-site .public-hero-release{max-width:var(--hero-search-width);font-size:var(--font-size-12);line-height:1.6;color:var(--color-on-dark-muted);margin:var(--space-12) 0 0}
.public-site .public-intro-empty{display:grid;place-items:center;width:100%;height:100%;padding:var(--space-24);color:var(--color-on-dark-muted);text-align:center;font-size:var(--font-size-14)}
.public-site .public-intro-empty p{margin:0}
.public-site .public-intro-stage>video{object-fit:contain}
.public-site .public-intro-video-error{position:absolute;bottom:var(--space-48);inset-inline:var(--space-16);margin:0;padding:var(--space-12);color:var(--ink-900);background:var(--surface);font-size:var(--font-size-13);text-align:center}
.public-site .public-intro-video-error[hidden]{display:none}
.public-site .public-plan-availability{min-height:var(--plan-availability-height)}
@media(max-width:37.5em){.public-site .public-hero-actions{align-items:flex-start;flex-direction:column}.public-site .public-hero-actions>.btn{width:100%;justify-content:center}}

/* Selected photographic sections use a steady navy scrim, with open content. */
.public-site .public-photographic-band{position:relative;background:var(--ink-900);color:var(--surface);padding-block:var(--space-48);scroll-margin-top:var(--scroll-margin)}
.public-site .public-section-background{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center}
.public-site .public-section-shade{position:absolute;inset:0;background:var(--section-photo-overlay)}
.public-site .public-photographic-content{position:relative}
.public-site .public-legacy-anchor{position:absolute;top:0;scroll-margin-top:var(--scroll-margin)}
.public-site .public-discover-background{object-position:center 44%}
.public-site .public-contact-background{object-position:65% center}
.public-site .public-photographic-band .public-kicker{color:var(--cobalt-50)}
.public-site .public-photographic-band .public-section-heading h2,.public-site .public-contact-band .public-contact-copy h2{color:var(--surface)}
.public-site .public-photographic-band .public-section-heading p:not(.public-kicker),.public-site .public-contact-band .public-contact-copy>p:not(.public-kicker){color:var(--cobalt-50)}
.public-site .public-intro-band.public-photographic-band .public-intro-copy h2{color:var(--surface)}
.public-site .public-intro-band.public-photographic-band .public-intro-copy>p:not(.public-kicker){color:var(--cobalt-50)}
.public-site .public-intro-band.public-photographic-band .public-intro-copy>.text-link{color:var(--surface);text-decoration:underline;text-underline-offset:var(--space-4)}
.public-site .public-contact-band .public-contact-copy{padding-top:var(--space-16)}
.public-site .public-contact-band .public-contact-email{color:var(--surface);text-decoration:underline;text-underline-offset:var(--space-4)}
.public-site .public-contact-band .public-contact-team{border-color:var(--line-on-dark)}
.public-site .public-contact-band .public-contact-form{min-width:0;padding:var(--space-32);background:var(--surface);color:var(--ink-900);border-radius:var(--plan-radius)}
@media(max-width:56em){.public-site .public-contact-band .public-contact-copy{padding-top:0}}
@media(max-width:37.5em){.public-site .public-photographic-band{padding-block:var(--space-32)}.public-site .public-contact-band .public-contact-form{padding:var(--space-24)}.public-site .public-contact-band .public-form-bottom{align-items:flex-start;flex-direction:column;gap:var(--space-16)}}
