/* Approved brochure layouts, with content supplied by the production dashboard. */
/* CSS content requires a Unicode escape, not an HTML entity. Shared by every footer. */
.site-footer .footer-explore>a::after{content:"\2197"!important;color:#f6b11f}
.production-course-page{padding-bottom:55px;background:#f5f6fa}
.production-course-page .course-booking>.button{width:100%;margin:20px 0 0}
.production-course-page .course-alternative-dates{border-top:1px solid #ffffff24;margin-top:22px;padding-top:18px}
.production-course-page .course-alternative-heading{font-size:16px;color:white;line-height:1.4;margin:0 0 14px}
.production-course-page .course-booking .production-dates a{color:#1d2757;background:#fff;line-height:1.5;text-decoration:none;font-size:13px}
.production-course-page .course-booking .production-dates a[aria-current]{border-color:#f6b11f;border-left-width:4px}
.production-course-page .course-booking .course-closed-notice{padding:14px;border:1px solid #ffffff30;border-radius:10px}
.production-course-page .course-fees strong{color:#1d2757}
@media print{.production-course-page .course-booking{display:none!important}.production-course-page .course-detail{display:block!important}}
.hero-centered .production-slides{position:absolute;inset:0;min-height:0;height:100%;border-radius:0;isolation:auto;z-index:0;container-type:normal}
.hero-centered .production-slide{position:absolute;inset:0;height:100%;min-height:0;display:block}
.hero-centered .production-slide[hidden]{display:none!important}
.hero-centered .production-slide:after{display:none}
.hero-centered .production-slide>.activity-image{position:absolute;inset:0;min-height:0;padding:0;overflow:hidden}
.hero-centered .production-slide>.activity-image img{z-index:auto;width:100%;height:100%;position:absolute;inset:0;object-fit:cover}
.hero-centered .production-slide>.activity-body{padding:25px 26px;z-index:3}
.hero-centered .production-slide .activity-body h2{font-family:var(--site-font,inherit);font-size:30px;line-height:1.12;white-space:normal;margin:0 0 14px;letter-spacing:-.4px}
.hero-centered .production-slide .activity-body .activity-category{font-size:11px;line-height:1.5;letter-spacing:1.2px;margin-bottom:12px;color:#f6b11f}
.hero-centered .production-slide .activity-body>p:not(.activity-category){font-size:14px;line-height:1.65;margin:0;color:#eef1fa}
.production-logo-strip{position:relative;background:#fff;border:1px solid #e7e9f0;border-radius:46px 12px;padding:20px 24px;margin-bottom:36px;box-shadow:0 10px 28px #1d27570e}
.production-logo-strip .production-logo-group{gap:30px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));padding:12px 0}
.production-logo-strip .production-logo-group>a,.production-logo-strip .production-logo-group>span{display:flex;align-items:center;justify-content:center;min-height:86px;min-width:0}
.production-logo-strip .production-logo-group img{display:block;max-width:140px;max-height:76px;object-fit:contain;filter:grayscale(1);opacity:.8}
.who-support-us .production-logo-strip{margin:0;border:0;border-radius:18px;padding:0;box-shadow:none}
.production-programme-section{padding-top:10px;padding-bottom:44px}
.production-programmes.degree-grid{gap:20px}
.production-programme.degree-tile{padding:0;border:1px solid #e0e5f0;border-radius:44px 10px 36px 10px}
.production-programme.degree-tile:nth-child(even){border-radius:10px 44px 10px 36px}
.production-programme .degree-crest{min-height:72px;padding:20px 22px}
.production-programme .degree-crest>span:first-child{font-size:21px;letter-spacing:.2px}
.production-programme .degree-body{padding:20px 22px}
.production-programme .degree-body h3{font-size:24px;min-height:0;margin-bottom:12px}
.production-programme .degree-body .executive-course-note{font-size:14px;line-height:1.5;margin:0 0 16px}
.production-programme .programme-module-trigger{background:transparent;color:#1d2757;border-radius:0}
.production-programme .programme-module-trigger:hover{background:transparent;color:#d8272d}
.programme-dialog.production-dialog{padding:0;border:0;width:min(940px,calc(100% - 36px));max-height:calc(100dvh - 40px);border-radius:34px 12px;overflow:hidden}
.programme-dialog.production-dialog section{border:0;padding:0}
.programme-dialog.production-dialog h2{margin:0 0 10px;color:#fff;line-height:1.15;font-size:clamp(25px,3vw,35px)}
.programme-dialog.production-dialog .programme-dialog-header h2{margin-right:0}
.programme-dialog.production-dialog .programme-outline-group{margin-bottom:20px}
.programme-dialog.production-dialog .programme-outline-group h4{font-size:16px;margin:0 0 10px}
.programme-dialog.production-dialog .programme-outline-note{font-size:13px;margin:0 0 12px}
.programme-dialog.production-dialog .programme-module-list li{margin:0}
.production-person.degree-contact-card{border:0;border-radius:32px 8px;padding:24px;box-shadow:none;align-items:flex-start;gap:20px}
.production-person.degree-contact-card img,.production-person.degree-contact-card .production-initial{width:88px;height:110px;border-radius:40px 40px 20px 6px;border-bottom:3px solid #f6b11f}
.production-person.degree-contact-card .person-info{min-width:0;flex:1}
.production-person.degree-contact-card h3{font-size:24px;line-height:1.2;margin:0 0 8px}
.production-person.degree-contact-card .person-role{font-size:13px;line-height:1.5;color:#d8272d;margin:0 0 18px}
.production-person.degree-contact-card .person-contact{font-style:normal;border-top:1px solid #e0e5f0;padding-top:14px}
.production-person.degree-contact-card .person-contact a{display:block;margin:0 0 9px;font-size:14px;text-decoration:underline;text-underline-offset:3px}
.production-person.degree-contact-card .shared-staff-fax{display:block;font-size:12px;color:#555d72}
.production-people.administration-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}
.production-people.administration-grid .production-person{grid-column:span 4;display:flex;flex-direction:row;align-items:flex-start;gap:12px;padding:13px;border-radius:30px 8px 24px 8px;min-width:0}
.production-people.administration-grid .production-person-photo{flex-shrink:0;display:block}
.production-people.administration-grid .production-person-photo img,.production-people.administration-grid .production-initial{display:block;width:78px;height:108px;border-radius:28px 8px 24px 8px;object-fit:cover;object-position:center 20%}
.production-people.administration-grid .production-initial{display:grid;place-items:center}
.production-people.administration-grid .staff-director{grid-column:1/-1;max-width:560px;justify-self:center;align-items:center;gap:18px;padding:16px}
.production-people.administration-grid .staff-director img{width:112px;height:140px}
.production-people.administration-grid .person-info{padding:2px 0;min-width:0;flex:1}
.production-people.administration-grid .person-info h2{font-size:18px!important;line-height:1.2;margin:0 0 6px}
.production-people.administration-grid .staff-director .person-info h2{font-size:24px!important}
.production-people.administration-grid .person-role{font-size:12px;line-height:1.35;margin:0 0 9px}
.production-people.administration-grid .person-contact{font-style:normal;font-size:12px;padding:8px;margin:0;border-radius:12px 4px;background:#f5f6fa}
.production-people.administration-grid .person-contact a{display:block;font-size:12px;line-height:1.4;margin:0 0 5px}
.production-people.administration-grid .shared-staff-fax{font-size:10px;line-height:1.4}
.production-directory .staff-layout{display:block}
.production-directory .staff-intro{max-width:720px}
.production-directory .academic-search input{box-sizing:border-box;width:100%}
@media(max-width:1050px){.production-people.administration-grid .production-person{grid-column:span 6}.production-people.administration-grid .staff-manager{grid-column:span 4;flex-direction:column}.production-people.administration-grid .staff-director{grid-column:1/-1}}
@media(max-width:950px){.production-logo-strip .production-logo-group{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px 40px}}
@media(max-width:900px){.hero-centered .production-slide>.activity-body{padding:22px 24px}.hero-centered .production-slide .activity-body h2{font-size:27px}}
@media(max-width:700px){.production-people.administration-grid .production-person,.production-people.administration-grid .staff-manager{grid-column:1/-1;flex-direction:row}.production-logo-strip{padding:12px;border-radius:30px 9px}.production-logo-strip .production-logo-group img{max-width:120px;max-height:64px}.production-person.degree-contact-card{padding:22px;gap:16px}.production-person.degree-contact-card img{width:65px;height:86px}.production-person.degree-contact-card h3{font-size:22px}.programme-dialog.production-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 24px);border-radius:25px 10px}.production-programmes.degree-grid{grid-template-columns:1fr}}
@media(max-width:440px){.production-logo-strip .production-logo-group{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 32px}}
@media print{body:has(.programme-dialog[open]) main :has(.programme-dialog[open])>:not(:has(.programme-dialog[open])):not(.programme-dialog[open]){display:none!important}.programme-dialog.production-dialog[open]{position:static!important;overflow:visible!important;max-height:none!important;box-shadow:none!important}.programme-dialog[open] .programme-dialog-shell,.programme-dialog[open] .programme-dialog-content{display:block!important;max-height:none!important;overflow:visible!important}.programme-dialog[open] .programme-dialog-header{display:block!important;color:#1d2757!important;background:white!important}.programme-dialog[open] .programme-dialog-header *{color:#1d2757!important}.programme-dialog[open] .programme-dialog-tools,.programme-dialog[open] .programme-dialog-footer{display:none!important}}

/* Form-only registration iframe: retain the application and letterhead. */
.production-registration-embedded{background:#fff;min-height:0}.production-registration-embedded .production-heading{padding:22px 5%;border-radius:0 0 28px 0}.production-registration-embedded .production-heading h1{font-size:30px;margin:8px 0}.production-registration-embedded .production-section{padding:16px 3%}.production-registration-embedded .production-form{margin:0 auto;box-shadow:none}.production-registration-embedded main{padding:0;margin:0}

/* Academic portraits retain the approved curved design. */
.production-academic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;align-items:start}
.production-academic-grid .academic-card{box-sizing:border-box;min-width:0;overflow:hidden;padding:12px 12px 0;background:#fff;border:1px solid #e1e5f0;border-radius:100px 100px 36px 12px;box-shadow:0 8px 24px #1d275709;transition:transform .2s,box-shadow .2s}
.production-academic-grid .academic-card[hidden]{display:none!important}
.production-academic-grid .academic-card:hover,.production-academic-grid .academic-card:focus-within{transform:translateY(-5px);box-shadow:0 18px 32px #1d275719}
.production-academic-grid .academic-portrait{display:block;position:relative;overflow:hidden;border-radius:100px 100px 42px 12px;background:#e8ecf8;padding:8px 8px 0}
.production-academic-grid .academic-portrait img,.production-academic-grid .academic-initial{display:block;width:100%;aspect-ratio:1.13;object-fit:cover;object-position:center top;border-radius:100px 100px 30px 8px}
.production-academic-grid .academic-initial{display:grid;place-items:center;font-size:80px;color:#1d2757;background:#eef0f7}
.production-academic-grid .academic-portrait>span:not(.academic-initial){display:block;position:relative;margin:0 -8px;padding:13px 10px;text-align:center;background:#1d2757;color:#fff;font-size:12px;line-height:1.4;border-bottom:3px solid #f6b11f}
.production-academic-grid .academic-portrait:hover>span:not(.academic-initial){background:#d8272d}
.production-academic-grid .academic-card-body{padding:20px 10px 12px}
.production-academic-grid .academic-role{font-size:12px;line-height:1.5;margin:0 0 8px;color:#d8272d}
.production-academic-grid h2{font:700 23px/1.2 var(--site-font,RopaSoftPro,Arial,sans-serif);letter-spacing:0;margin:0 0 14px}
.production-academic-grid a{overflow-wrap:anywhere}.production-academic-grid h2 a:hover{text-decoration:underline}
.production-academic-grid .academic-contact{font-style:normal;border-radius:20px 6px 24px 6px;background:#f4f6fa;padding:15px 12px 3px;font-size:13px;overflow-wrap:anywhere}
.production-academic-grid .academic-contact>span{display:block;margin-bottom:12px}.production-academic-grid .academic-contact b{display:block;text-transform:uppercase;letter-spacing:1px;font-size:9px;color:#555d72;margin-bottom:3px}.production-academic-grid .academic-contact a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:1100px){.production-academic-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:850px){.production-academic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.production-academic-grid{grid-template-columns:1fr}.production-academic-grid .academic-card{max-width:380px;width:100%;justify-self:center}}@media(prefers-reduced-motion:reduce){.production-academic-grid .academic-card{transition:none;transform:none!important}}

.production-course-page .course-fact-time{display:block;font-size:14px;line-height:1.5;color:#1d2757;margin-top:6px}
