/* Shared presentation roles. Campaign lettering, diagrams and article reading
   typography remain explicit exceptions, rather than inheriting display sizes. */
@font-face{font-family:Inter;src:url('/assets/inter-400.woff2?v=b4d8856b') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url('/assets/inter-500.woff2?v=0e268c2d') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url('/assets/inter-600.woff2?v=3544909d') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url('/assets/inter-700.woff2?v=7b45519c') format('woff2');font-weight:700;font-style:normal;font-display:swap}
body{font-family:var(--amlcc-font);-webkit-font-smoothing:antialiased}
body[data-page] main .wrap{box-sizing:border-box;width:100%;max-width:calc(var(--ds-content) + 2 * var(--ds-gutter));margin-inline:auto;padding-inline:var(--ds-gutter)}
body[data-page] main .wrap .wrap{max-width:100%;padding-inline:0}
body[data-page] main :is(.section-head,.hp-section-head,.cat-section-head,.offer-section-head,.ab-heading,.mbr-section-head,.lp-section-head,.learner-reviews-heading,.programme-voices-heading,.fiar-section-intro,.fiar-curriculum-intro,.ps-introduction,.fd-syllabus-intro,.cass-curriculum__intro,.cw-intro,.ad-intro,.ll-compact-heading,.org-engagement-heading,.voices-intro,.b2b-next-step) h2,
body[data-page] main :is(.fd-section,.mbr-section,.lp-course-overview,.lp-course-syllabus,.lp-course-details,.lp-course-faq,.reviews-method,.home-decision-support,.home-faculty,.hp-final) h2,
body[data-page] main :is(.ap-learning>h2,.compare-intro h2){font-size:var(--ds-font-section);line-height:var(--ds-leading-heading);letter-spacing:var(--ds-tracking-heading);font-weight:600}
body[data-page] main :is(.section-head,.hp-section-head,.cat-section-head,.offer-section-head,.ab-heading,.mbr-section-head,.lp-section-head,.programme-voices-heading,.fiar-section-intro)>p,
body[data-page] main :is(.programme-voices-context,.ap-learning-statements p,.fiar-curriculum-intro>p){font-size:var(--ds-font-body);line-height:var(--ds-leading-body);max-width:var(--ds-reading-width)}
body[data-page] main :is(.programme-teachers h3,.ab-team-card h3,.fiar-audience-grid h3,.mbr-benefit h3){font-size:var(--ds-font-title);line-height:1.25;letter-spacing:-.025em;font-weight:600}
body[data-page] main :is(.section,.hp-section,.cat-section,.fd-section,.mbr-section,.programme-skills,.learner-reviews,.programme-voices,.lp-course-syllabus,.lp-course-faq):not(.hero,.pc-hero,.ll-hero){padding-block:var(--ds-section-space)}
/* About is an editorial story: display mission/origin type stays large. */
body main.about-centre .ap-section{padding-block:var(--ds-section-space)}
body main.about-centre :is(.ap-community-title,.ap-project-story) h2{font-size:var(--ds-font-feature);line-height:var(--ds-leading-heading)}
body main.about-centre .ap-learning-statements h3{font-size:var(--ds-font-title);line-height:1.25}
body[data-page] main :is(.section-head,.cat-section-head,.offer-section-head,.mbr-section-head,.programme-voices-heading){margin-bottom:var(--ds-space-12);gap:var(--ds-space-8)}
body[data-page] main :is(.btn,.mbr-button){min-height:var(--ds-button-min);font-size:var(--ds-font-action);line-height:1.4;border-radius:var(--amlcc-radius-control);white-space:normal;text-align:center}
body[data-page] main .text-link{display:inline-flex;align-items:center;gap:12px;min-height:var(--ds-control-min);font-size:var(--ds-font-action);line-height:1.5;text-underline-offset:4px}
body[data-page] main .text-link svg{flex-shrink:0}
body[data-page] main :is(.ab-team-profile,.mbr-text-link,.cat-course-link){min-height:var(--ds-control-min);font-size:var(--ds-font-action);line-height:1.5}
body[data-page] main :is(.photo-figure figcaption,.ab-hero-caption,.ap-hero-photo figcaption,.dialogue-photo figcaption){font-size:var(--ds-font-support);line-height:1.5}
body[data-page] main :is(.request-form,.pt-enquiry-form) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font:inherit;font-size:16px;line-height:1.5;min-height:48px;border-radius:var(--amlcc-radius-control)}
body[data-page] main :is(.request-form,.pt-enquiry-form) :is(input,select,textarea):focus-visible{outline:2px solid var(--ds-focus);outline-offset:3px}
body[data-page] main :is(.request-form,.pt-enquiry-form) button:disabled{opacity:.6;cursor:wait}
body[data-page] main :is(.cat-method-tabs,.ab-people-tabs,.ps-tabs) button{min-height:var(--ds-control-min);font-size:var(--ds-font-support)}
/* Two programme mobile comparison; no nested gutters or prototype page resets. */
.catalogue-comparison{scroll-margin-top:110px}
.catalogue-comparison .compare{max-width:calc(var(--ds-content) + 2 * var(--ds-gutter));padding:var(--ds-section-space) var(--ds-gutter);color:var(--ds-text)}
.catalogue-comparison .compare-intro{margin-bottom:var(--ds-space-8)}
.catalogue-comparison .compare-table :is(th,td){text-align:left}
.catalogue-comparison .compare-table thead :is(th,td){z-index:5}
.catalogue-comparison .compare-table thead th:last-child{color:var(--fiar-blue);background:var(--fiar-paper)}
.catalogue-comparison .compare-table tfoot td:last-child a{color:var(--fiar-blue)}
.catalogue-comparison .compare-selector:has([src$="badge-fiar.svg"]){color:var(--fiar-blue)}
.catalogue-comparison .compare-selector:has([src$="badge-fiar.svg"]) .compare-picker-trigger{color:var(--fiar-blue)}
.catalogue-comparison .compare-sr{padding:0!important;border:0!important}
body[data-page] main .compact-client-quote .compact-quote-mark{position:static;opacity:1;margin:0}
body[data-page] main .compact-client-quote figcaption a svg{width:14px;height:14px;flex:none}
@media(max-width:950px){.catalogue-comparison .compare{max-width:740px}.catalogue-comparison .compare-table{display:none}}
@media(max-width:700px){
 body[data-page] main :is(.section-head,.cat-section-head,.offer-section-head,.mbr-section-head,.programme-voices-heading){margin-bottom:var(--ds-space-8);gap:var(--ds-space-6)}
 body[data-page] main .text-link{padding-block:8px}
 body[data-page] main :is(.section-head,.cat-section-head,.offer-section-head,.mbr-section-head,.programme-voices-heading)>*{min-width:0}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body[data-page] main *,body[data-page] main *:before,body[data-page] main *:after{transition-duration:0ms!important;animation-duration:0ms!important}}
