/* /styles/assets-tokens.css */
:root {
  --amlcc-forest: #244140;
  --amlcc-lime: #c1f99b;
  --amlcc-teal: #27b996;
  --amlcc-paper: #f6f8f6;
  --amlcc-ink: #203432;
  --amlcc-font: Inter, sans-serif;
  --amlcc-radius-control: 8px;
  --amlcc-radius-panel: 12px;
}

/* FIAR programme direction: core identity and supporting interface colours. */
:root {
  --fiar-blue: #033b6d;
  --fiar-lime: #ccff85;
  --fiar-paper: #f0f4f8;
  --fiar-text-secondary: #4a6276;
  --fiar-blue-hover: #0a528a;
  --fiar-line: #c9d9e6;
  --fiar-on-dark: #dbe8f2;
  --fiar-panel: #124d7b;
  --fiar-ink: #172f44;
  --fiar-navy: #072f52;
  --fiar-footer: #041f38;
  --fiar-on-dark-muted: #a9c1d6;
}

/* Contextual EU campaigns. These do not replace FIAR programme colours. */
:root {
  --amlcc-eu-blue: #082f55;
  --amlcc-eu-gold: #ffcc00;
  --amlcc-eu-paper: #f3f7f3;
  --amlcc-eu-tint: #e9eff3;
}

/* Shared roles. Keep brand identity separate from interface semantics. */
:root {
  --ds-text: var(--amlcc-ink);
  --ds-text-muted: #526d64;
  --ds-surface: #ffffff;
  --ds-surface-soft: var(--amlcc-paper);
  --ds-surface-tint: #edf2e9;
  --ds-line: #cdded4;
  --ds-on-dark: #f4f8f2;
  --ds-on-dark-muted: #c5d9ce;
  --ds-action: #087b65;
  --ds-focus: #087b65;
  --ds-font-display: clamp(40px, 6.1vw, 88px);
  --ds-font-section: clamp(32px, 3.1vw, 44px);
  --ds-font-feature: clamp(32px, 3.35vw, 48px);
  --ds-font-title: 24px;
  --ds-font-subtitle: 20px;
  --ds-font-body: 17px;
  --ds-font-support: 14px;
  --ds-font-label: 13px;
  --ds-font-action: 15px;
  --ds-font-quote: clamp(25px, 2.1vw, 30px);
  /* An inner page's headline: 38px on phones, 40px at 768px, 46px at 1024px, 56px from 1440px (organisation pages
     type scale, 29 Sep 2026). It keeps a steady step above the section size as both grow. */
  --ds-font-page: clamp(38px, calc(21.7px + 2.381vw), 56px);
  --ds-font-headline: 28px;
  --ds-font-lead: 20px;
  --ds-font-card: 15px;
  /* Figures: a price or fact in a card, and a standalone statistic (site type scale, 30 Sep 2026). */
  --ds-font-figure: 36px;
  --ds-font-stat: 56px;
  --ds-leading-heading: 1.15;
  --ds-leading-body: 1.6;
  --ds-leading-label: 1.5;
  --ds-tracking-heading: -.04em;
  --ds-space-1: 4px;
  --ds-space-2: 8px;
  --ds-space-3: 12px;
  --ds-space-4: 16px;
  --ds-space-6: 24px;
  --ds-space-8: 32px;
  --ds-space-12: 48px;
  --ds-space-16: 64px;
  --ds-section-space: var(--ds-space-16);
  --ds-content: 1200px;
  --ds-gutter: clamp(20px, 3.65vw, 48px);
  --ds-reading-width: 65ch;
  --ds-control-min: 44px;
  --ds-button-min: 56px;
  --ds-motion: 180ms;
}
@media (max-width: 700px) {
  :root {
    --ds-font-section: clamp(30px, 8.2vw, 32px);
    --ds-font-feature: var(--ds-font-section);
    --ds-font-title: 22px;
    --ds-font-body: 16px;
    --ds-font-quote: 24px;
    --ds-font-headline: 24px;
    --ds-font-lead: 18px;
    --ds-font-figure: 32px;
    --ds-font-stat: 40px;
    --ds-section-space: var(--ds-space-12);
  }
}
@media (prefers-reduced-motion: reduce) {
  :root { --ds-motion: 0ms; }
}

/* Compatibility names keep existing homepage components on the same source. */
body[data-page="home"], .ds-home-samples {
  --home-content: var(--ds-content);
  --home-ink: var(--ds-text);
  --home-heading-leading: var(--ds-leading-heading);
  --home-quote-size: var(--ds-font-quote);
  --home-caption-space: 0;
  --home-gutter: var(--ds-gutter);
  --home-heading: var(--ds-font-section);
  --home-feature-heading: var(--ds-font-feature);
  --home-body: var(--ds-font-body);
  --home-support: var(--ds-font-support);
  --home-action: var(--ds-font-action);
  --home-section-space: var(--ds-section-space);
  --home-paper: var(--ds-surface-soft);
  --home-sage: var(--ds-surface-tint);
  --home-muted: var(--ds-text-muted);
  --home-line: var(--ds-line);
  --home-light: var(--ds-on-dark);
  --home-light-muted: var(--ds-on-dark-muted);
}
/* /styles/styles.css */
@font-face{font-family:Inter;src:url('/assets/inter-400.woff2?v=b4d8856b') format('woff2');font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000,U+0020-007E,U+00A0-00AC,U+00AE-0148,U+014A-01C3,U+01C5-0254,U+0256-027B,U+027E-0284,U+0286-0290,U+0292-02A4,U+02A6-0304,U+0306-030A,U+030C,U+030F,U+0313,U+0315,U+031B,U+0323,U+0326-0328,U+032C,U+0337-0338,U+0342-0343,U+0346-036F,U+0374-0376,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03D7,U+03DC-03DD,U+03F0-03F6,U+03F9-03FA,U+03FC-0479,U+0480-049D,U+04A0-04FF,U+052F,U+0E3F,U+1D00,U+1D0D,U+1D1B,U+1D43,U+1D47-1D49,U+1D4D,U+1D4F-1D50,U+1D52,U+1D56-1D58,U+1D5B,U+1D62-1D65,U+1D9C,U+1DA0,U+1DBB,U+1DBF-1DF5,U+1DFC-1E9B,U+1E9D-1F15,U+1F18-1F1D,U+1F20-1F45,U+1F48-1F4D,U+1F50-1F57,U+1F59,U+1F5B,U+1F5D,U+1F5F-1F7D,U+1F80-1FB4,U+1FB6-1FC4,U+1FC6-1FD3,U+1FD6-1FDB,U+1FDD-1FEF,U+1FF2-1FF4,U+1FF6-1FFE,U+2000-200B,U+2010-2027,U+202F-2055,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20A0-20AF,U+20B1-20B5,U+20B8-20BA,U+20BC-20BF,U+20DB-20DE,U+20E8,U+20F0,U+2100-2101,U+2103,U+2105-2106,U+2109,U+2113,U+2116-2117,U+211E-2122,U+2126,U+212A-212B,U+212E,U+2132,U+213B,U+214D,U+2150-217F,U+2183-2186,U+2189,U+2190-2199,U+21A9-21AA,U+21B0-21B1,U+21B3-21B5,U+21BA-21BB,U+21D0,U+21D2,U+21D4,U+21DE-21DF,U+21E4-21E5,U+21E7,U+21EA,U+2202,U+2205-2206,U+220F,U+2211-2212,U+221A,U+221E,U+222B,U+2236,U+2248,U+2260,U+2264-2265,U+2295-2298,U+2303-2305,U+2318,U+2325-2327,U+232B,U+2380,U+2387,U+238B,U+23CE-23CF,U+2423,U+2460-2468,U+24B6-24CF,U+24EA,U+25A0-25A2,U+25AA,U+25B2-25B3,U+25B6-25B7,U+25BA-25BD,U+25C0-25C1,U+25C4-25C7,U+25CA-25CB,U+25CF,U+25E6,U+25EF,U+2600,U+2605-2606,U+263C,U+2661,U+2665,U+26A0,U+2713,U+2717,U+2756,U+2764,U+2780-2788,U+27EF,U+27F5-27FA,U+2913,U+2A38,U+2B06,U+2B12-2B13,U+2B1C,U+2B24,U+2C7C,U+2C7F,U+2DFF,U+2E18,U+A69F,U+A7FF,U+A92E,U+E000,U+E002-E05E,U+E06A-E0BD,U+E0C8-E0CC,U+E0DC-E0E6,U+E0F3-E0F5,U+E106,U+E109-E10A,U+E10C-E10F,U+E111-E113,U+E117-E118,U+E121-E122,U+E124,U+E12A-E15E,U+E163,U+E1C3,U+E1D2-E1DF,U+E1E1-E2DC,U+EE01-EE07,U+EE09-EE0A,U+EE0C-EE12,U+EE14,U+EE17,U+EE1D-EE45,U+EE47-EE84,U+EE87-EED6,U+EED8-EEE1,U+F6C3,U+FEFF,U+1F12F-1F149,U+1F16A-1F16B,U+1F850,U+1F852}@font-face{font-family:Inter;src:url('/assets/inter-400-subset.woff2?v=3513f6c8') format('woff2');font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000,U+0020-007E,U+00A0-00AC,U+00AE-0148,U+014A-017F,U+0218-021B,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0300-0304,U+0306-030A,U+030C,U+030F,U+0313,U+0315,U+031B,U+0323,U+0326-0328,U+032C,U+0337-0338,U+0342-0343,U+0346-036F,U+2000-200B,U+2010-2027,U+202F-2055,U+2057,U+205F,U+20AC,U+2122,U+2161,U+2190-2199,U+21A9-21AA,U+21B0-21B1,U+21B3-21B5,U+21BA-21BB,U+21D0,U+21D2,U+21D4,U+21DE-21DF,U+21E4-21E5,U+21E7,U+21EA,U+2212,U+2248,U+25B6,U+FEFF}@font-face{font-family:Inter;src:url('/assets/inter-600.woff2?v=3544909d') format('woff2');font-weight:600;font-style:normal;font-display:swap;unicode-range:U+0000,U+0020-007E,U+00A0-00AC,U+00AE-0148,U+014A-01C3,U+01C5-0254,U+0256-027B,U+027E-0284,U+0286-0290,U+0292-02A4,U+02A6-0304,U+0306-030A,U+030C,U+030F,U+0313,U+0315,U+031B,U+0323,U+0326-0328,U+032C,U+0337-0338,U+0342-0343,U+0346-036F,U+0374-0376,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03D7,U+03DC-03DD,U+03F0-03F6,U+03F9-03FA,U+03FC-0479,U+0480-049D,U+04A0-04FF,U+052F,U+0E3F,U+1D00,U+1D0D,U+1D1B,U+1D43,U+1D47-1D49,U+1D4D,U+1D4F-1D50,U+1D52,U+1D56-1D58,U+1D5B,U+1D62-1D65,U+1D9C,U+1DA0,U+1DBB,U+1DBF-1DF5,U+1DFC-1E9B,U+1E9D-1F15,U+1F18-1F1D,U+1F20-1F45,U+1F48-1F4D,U+1F50-1F57,U+1F59,U+1F5B,U+1F5D,U+1F5F-1F7D,U+1F80-1FB4,U+1FB6-1FC4,U+1FC6-1FD3,U+1FD6-1FDB,U+1FDD-1FEF,U+1FF2-1FF4,U+1FF6-1FFE,U+2000-200B,U+2010-2027,U+202F-2055,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20A0-20AF,U+20B1-20B5,U+20B8-20BA,U+20BC-20BF,U+20DB-20DE,U+20E8,U+20F0,U+2100-2101,U+2103,U+2105-2106,U+2109,U+2113,U+2116-2117,U+211E-2122,U+2126,U+212A-212B,U+212E,U+2132,U+213B,U+214D,U+2150-217F,U+2183-2186,U+2189,U+2190-2199,U+21A9-21AA,U+21B0-21B1,U+21B3-21B5,U+21BA-21BB,U+21D0,U+21D2,U+21D4,U+21DE-21DF,U+21E4-21E5,U+21E7,U+21EA,U+2202,U+2205-2206,U+220F,U+2211-2212,U+221A,U+221E,U+222B,U+2236,U+2248,U+2260,U+2264-2265,U+2295-2298,U+2303-2305,U+2318,U+2325-2327,U+232B,U+2380,U+2387,U+238B,U+23CE-23CF,U+2423,U+2460-2468,U+24B6-24CF,U+24EA,U+25A0-25A2,U+25AA,U+25B2-25B3,U+25B6-25B7,U+25BA-25BD,U+25C0-25C1,U+25C4-25C7,U+25CA-25CB,U+25CF,U+25E6,U+25EF,U+2600,U+2605-2606,U+263C,U+2661,U+2665,U+26A0,U+2713,U+2717,U+2756,U+2764,U+2780-2788,U+27EF,U+27F5-27FA,U+2913,U+2A38,U+2B06,U+2B12-2B13,U+2B1C,U+2B24,U+2C7C,U+2C7F,U+2DFF,U+2E18,U+A69F,U+A7FF,U+A92E,U+E000,U+E002-E05E,U+E06A-E0BD,U+E0C8-E0CC,U+E0DC-E0E6,U+E0F3-E0F5,U+E106,U+E109-E10A,U+E10C-E10F,U+E111-E113,U+E117-E118,U+E121-E122,U+E124,U+E12A-E15E,U+E163,U+E1C3,U+E1D2-E1DF,U+E1E1-E2DC,U+EE01-EE07,U+EE09-EE0A,U+EE0C-EE12,U+EE14,U+EE17,U+EE1D-EE45,U+EE47-EE84,U+EE87-EED6,U+EED8-EEE1,U+F6C3,U+FEFF,U+1F12F-1F149,U+1F16A-1F16B,U+1F850,U+1F852}@font-face{font-family:Inter;src:url('/assets/inter-600-subset.woff2?v=55a6df05') format('woff2');font-weight:600;font-style:normal;font-display:swap;unicode-range:U+0000,U+0020-007E,U+00A0-00AC,U+00AE-0148,U+014A-017F,U+0218-021B,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0300-0304,U+0306-030A,U+030C,U+030F,U+0313,U+0315,U+031B,U+0323,U+0326-0328,U+032C,U+0337-0338,U+0342-0343,U+0346-036F,U+2000-200B,U+2010-2027,U+202F-2055,U+2057,U+205F,U+20AC,U+2122,U+2161,U+2190-2199,U+21A9-21AA,U+21B0-21B1,U+21B3-21B5,U+21BA-21BB,U+21D0,U+21D2,U+21D4,U+21DE-21DF,U+21E4-21E5,U+21E7,U+21EA,U+2212,U+2248,U+25B6,U+FEFF}@font-face{font-family:Inter;src:url('/assets/inter-700.woff2?v=7b45519c') format('woff2');font-weight:700;font-style:normal;font-display:swap;unicode-range:U+0000,U+0020-007E,U+00A0-00AC,U+00AE-0148,U+014A-01C3,U+01C5-0254,U+0256-027B,U+027E-0284,U+0286-0290,U+0292-02A4,U+02A6-0304,U+0306-030A,U+030C,U+030F,U+0313,U+0315,U+031B,U+0323,U+0326-0328,U+032C,U+0337-0338,U+0342-0343,U+0346-036F,U+0374-0376,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03D7,U+03DC-03DD,U+03F0-03F6,U+03F9-03FA,U+03FC-0479,U+0480-049D,U+04A0-04FF,U+052F,U+0E3F,U+1D00,U+1D0D,U+1D1B,U+1D43,U+1D47-1D49,U+1D4D,U+1D4F-1D50,U+1D52,U+1D56-1D58,U+1D5B,U+1D62-1D65,U+1D9C,U+1DA0,U+1DBB,U+1DBF-1DF5,U+1DFC-1E9B,U+1E9D-1F15,U+1F18-1F1D,U+1F20-1F45,U+1F48-1F4D,U+1F50-1F57,U+1F59,U+1F5B,U+1F5D,U+1F5F-1F7D,U+1F80-1FB4,U+1FB6-1FC4,U+1FC6-1FD3,U+1FD6-1FDB,U+1FDD-1FEF,U+1FF2-1FF4,U+1FF6-1FFE,U+2000-200B,U+2010-2027,U+202F-2055,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20A0-20AF,U+20B1-20B5,U+20B8-20BA,U+20BC-20BF,U+20DB-20DE,U+20E8,U+20F0,U+2100-2101,U+2103,U+2105-2106,U+2109,U+2113,U+2116-2117,U+211E-2122,U+2126,U+212A-212B,U+212E,U+2132,U+213B,U+214D,U+2150-217F,U+2183-2186,U+2189,U+2190-2199,U+21A9-21AA,U+21B0-21B1,U+21B3-21B5,U+21BA-21BB,U+21D0,U+21D2,U+21D4,U+21DE-21DF,U+21E4-21E5,U+21E7,U+21EA,U+2202,U+2205-2206,U+220F,U+2211-2212,U+221A,U+221E,U+222B,U+2236,U+2248,U+2260,U+2264-2265,U+2295-2298,U+2303-2305,U+2318,U+2325-2327,U+232B,U+2380,U+2387,U+238B,U+23CE-23CF,U+2423,U+2460-2468,U+24B6-24CF,U+24EA,U+25A0-25A2,U+25AA,U+25B2-25B3,U+25B6-25B7,U+25BA-25BD,U+25C0-25C1,U+25C4-25C7,U+25CA-25CB,U+25CF,U+25E6,U+25EF,U+2600,U+2605-2606,U+263C,U+2661,U+2665,U+26A0,U+2713,U+2717,U+2756,U+2764,U+2780-2788,U+27EF,U+27F5-27FA,U+2913,U+2A38,U+2B06,U+2B12-2B13,U+2B1C,U+2B24,U+2C7C,U+2C7F,U+2DFF,U+2E18,U+A69F,U+A7FF,U+A92E,U+E000,U+E002-E05E,U+E06A-E0BD,U+E0C8-E0CC,U+E0DC-E0E6,U+E0F3-E0F5,U+E106,U+E109-E10A,U+E10C-E10F,U+E111-E113,U+E117-E118,U+E121-E122,U+E124,U+E12A-E15E,U+E163,U+E1C3,U+E1D2-E1DF,U+E1E1-E2DC,U+EE01-EE07,U+EE09-EE0A,U+EE0C-EE12,U+EE14,U+EE17,U+EE1D-EE45,U+EE47-EE84,U+EE87-EED6,U+EED8-EEE1,U+F6C3,U+FEFF,U+1F12F-1F149,U+1F16A-1F16B,U+1F850,U+1F852}@font-face{font-family:Inter;src:url('/assets/inter-700-subset.woff2?v=3fbf52ee') format('woff2');font-weight:700;font-style:normal;font-display:swap;unicode-range:U+0000,U+0020-007E,U+00A0-00AC,U+00AE-0148,U+014A-017F,U+0218-021B,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0300-0304,U+0306-030A,U+030C,U+030F,U+0313,U+0315,U+031B,U+0323,U+0326-0328,U+032C,U+0337-0338,U+0342-0343,U+0346-036F,U+2000-200B,U+2010-2027,U+202F-2055,U+2057,U+205F,U+20AC,U+2122,U+2161,U+2190-2199,U+21A9-21AA,U+21B0-21B1,U+21B3-21B5,U+21BA-21BB,U+21D0,U+21D2,U+21D4,U+21DE-21DF,U+21E4-21E5,U+21E7,U+21EA,U+2212,U+2248,U+25B6,U+FEFF}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f6f8f6;color:#203432;font:15px/1.6 Inter,sans-serif;padding-bottom:66px}body.dark{background:#152e2d;color:#f1f6ef}h1,h2,h3,h4,p{margin:0}h1{font-size:clamp(35px,4.3vw,62px);letter-spacing:-.045em;line-height:1.09;font-weight:600}h2{font-size:clamp(27px,3vw,40px);line-height:1.18;letter-spacing:-.035em;font-weight:600}h3{font-size:21px;line-height:1.3;letter-spacing:-.02em}h4{font-size:16px}p+p{margin-top:15px}a{color:inherit;text-underline-offset:4px}a:hover{color:#087763}button,input,textarea,select{font:inherit}button,a,input,select,textarea,summary,label{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid currentColor;outline-offset:4px}.dark :focus-visible{outline-color:#c1f99b}button{color:inherit}img{max-width:100%;height:auto}svg{flex-shrink:0}.muted{color:#5d706b}.dark .muted{color:#b3c5be}.small{font-size:13px;line-height:1.55}.eyebrow{font-size:14px;letter-spacing:0;font-weight:500;text-transform:none;color:#526b64;margin-bottom:16px}.dark .eyebrow,.forest .eyebrow{color:#c1f99b}.mono{font-family:Inter,sans-serif;font-size:13px;font-variant-numeric:tabular-nums;letter-spacing:0}.lead{font-size:18px;color:#536961;max-width:590px;line-height:1.65}.dark .lead,.forest .lead{color:#c2d1c9}.accent{color:#c1f99b}.wrap{max-width:1280px;margin:auto;padding:0 40px}.section{padding:84px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:34px}.section-head h2{max-width:690px}.stack>*+*{margin-top:20px}.stack-sm>*+*{margin-top:12px}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.split{display:grid;grid-template-columns:1.02fr 1fr;gap:60px;align-items:center}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:12px;border:1px solid #244140;border-radius:9px;padding:13px 20px;background:#244140;color:white;text-decoration:none;font-size:14px;font-weight:600;min-height:47px;transition:background .2s,transform .2s}.btn:hover{background:#345954;color:white;transform:translateY(-1px)}.btn.lime{background:#c1f99b;color:#193b30;border-color:#c1f99b}.btn.lime:hover{background:#d4ffb9;color:#193b30}.btn.secondary{background:transparent;color:#244140;border-color:#b9c8c0}.dark .btn.secondary,.forest .btn.secondary{border-color:#6c837a;color:#edf8eb}.btn.small{padding:8px 14px;min-height:40px}.text-link{font-size:14px;font-weight:600;display:inline-flex;align-items:center;gap:15px}.nav{background:rgba(249,252,249,.87);backdrop-filter:blur(22px) saturate(1.25);border-bottom:1px solid #d7e2db;position:sticky;top:0;z-index:20}.nav-inner{max-width:1360px;margin:auto;padding:19px 40px;display:flex;align-items:center;justify-content:space-between;gap:30px}.logo{width:180px;display:block}.navlinks{display:flex;gap:25px;align-items:center}.navlinks a{font-size:13px;text-decoration:none;font-weight:600}.navlinks a[aria-current=page]{color:#187560}.menu{display:none}.announcement{background:#e7f0e4;border-bottom:1px solid #d4e3d0;text-align:center;padding:9px 24px;color:#254733;font-size:12px}.announcement a{font-weight:600;margin-left:14px}.hero{padding:64px 0 70px}.hero h1{max-width:620px}.hero .lead{margin:24px 0 30px}.forest{background:#244140;color:#f7fbf4}.home-hero{background:radial-gradient(ellipse at 80% 25%,#45645a 0,transparent 52%),#244140;position:relative;overflow:hidden}.home-hero:after{content:"";width:500px;height:800px;border:1px solid #8dae9825;position:absolute;right:-280px;top:-260px;transform:rotate(29deg);pointer-events:none}.hero-note{margin-top:24px;display:flex;gap:18px;font-size:12px;color:#bbcdc0}.preview{border-radius:14px;overflow:hidden;background:#eff3f0;border:1px solid #688878;color:#203432;box-shadow:0 24px 70px #08242266;position:relative;transform:perspective(1200px) rotateY(-3deg);z-index:1}.preview-top{background:rgba(41,68,61,.95);color:white;display:flex;padding:15px 18px;align-items:center;justify-content:space-between;font-size:11px}.preview-top img{width:48px}.preview-content{padding:22px}.preview .document{padding:22px;background:white;border:1px solid #d6e0d8;border-radius:6px;box-shadow:none}.preview .document h3{font-size:17px}.preview table{font-size:11px}.preview td,.preview th{padding:9px 6px}.preview .btn{min-height:38px;font-size:12px;padding:8px 12px}.status{display:inline-flex;padding:4px 9px;border-radius:5px;background:#e9f0e7;color:#315b42;font-size:11px;font-weight:600}.status.amber{background:#fff0d4;color:#795614}.glass{background:linear-gradient(145deg,#ffffff20,#ffffff08);border:1px solid #ffffff38;box-shadow:inset 0 1px #ffffff32,0 8px 24px #071c201a;backdrop-filter:blur(18px)}.lens-label{position:absolute;right:20px;bottom:18px;padding:10px 17px;border-radius:30px;color:white;font-size:12px}.proof-strip{padding:23px 0;border-bottom:1px solid #d5e0d7}.proof-strip .wrap{display:flex;gap:30px;justify-content:space-between;align-items:center;font-size:13px}.proof-strip strong{font-weight:600}.proof-strip span{color:#627568}.card{background:#fff;border:1px solid #dce4dd;border-radius:13px;overflow:hidden}.card .pad,.pad{padding:28px}.card p{color:#5a6e65}.card .eyebrow{margin-bottom:10px}.card .btn{margin-top:22px}.course-art{height:160px;background:#254540;color:#c1f99b;padding:25px;position:relative;overflow:hidden;display:flex;align-items:end}.course-art strong{font-size:43px;letter-spacing:-.05em;font-weight:600;z-index:1}.course-art:after{content:"";position:absolute;right:25px;top:30px;width:135px;height:210px;background:url('/assets/original/pattern-rules-61deg-tile.svg');opacity:.25}.course-art.fiar{background:#152b3a}.course-art.foundation{background:#dfead7;color:#244140}.price{font-size:29px;letter-spacing:-.03em;font-weight:600}.price small{font-size:13px;font-weight:400;letter-spacing:0;color:#617368}.rule-list{list-style:none;padding:0;margin:22px 0}.rule-list li{padding:12px 0;border-bottom:1px solid #dce4dd;display:flex;justify-content:space-between;gap:18px}.forest .rule-list li{border-color:#668073}.quote-proof{padding:30px 0;border-top:1px solid #cee0cf;border-bottom:1px solid #cee0cf;display:grid;grid-template-columns:210px 1fr;gap:40px}.quote-proof h3{font-size:27px;font-weight:500;line-height:1.45}.footer{border-top:1px solid #d4ded4;padding:42px 0;background:#ecf1eb}.footer .wrap{display:flex;justify-content:space-between;gap:30px}.footer img{width:150px}.footer a{font-size:13px}.footer p{font-size:12px;color:#5c7266;max-width:300px}.studybar{position:fixed;z-index:80;bottom:12px;left:50%;transform:translateX(-50%);padding:8px 12px;display:flex;gap:13px;align-items:center;border-radius:30px;background:rgba(247,250,247,.93);color:#244140;border:1px solid #b9cabc;box-shadow:0 6px 30px #07291e25;backdrop-filter:blur(24px);max-width:calc(100vw - 24px);font-size:11px;white-space:nowrap}.studybar select{border:0;background:transparent;color:#244140;max-width:200px;font-size:12px;padding:5px}.studybar a{font-size:12px}.studybar button{border:0;border-left:1px solid #c5d3c8;background:transparent;padding:4px 10px;font-size:11px}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:#c1f99b;padding:12px}.skip:focus{top:10px}.tags{display:flex;gap:8px;flex-wrap:wrap}.tag{padding:5px 11px;font-size:12px;border:1px solid #bdcfc0;border-radius:20px}.tabs{display:flex;gap:4px;padding:5px;border:1px solid #d4dfd5;background:#eef3ed;border-radius:10px;width:fit-content;max-width:100%;flex-wrap:wrap}.tabs button{border:0;background:transparent;border-radius:6px;padding:9px 16px;font-size:13px;min-height:40px}.tabs button.active{background:#244140;color:white}.dark .tabs{background:#23413b;border-color:#5d7b68}.dark .tabs button.active{background:#c1f99b;color:#193c2f}.heading-inline{display:flex;justify-content:space-between;align-items:center;gap:20px}.line{height:1px;background:#d6e0d7;margin:24px 0}table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}th{font-size:11px;letter-spacing:.04em;color:#526c61;font-weight:600;background:#eff4ee}td,th{padding:13px 15px;border-bottom:1px solid #dce5dc}td:last-child{text-align:right;font-variant-numeric:tabular-nums}.table-scroll{overflow:auto}dl{margin:20px 0;display:grid;grid-template-columns:1fr 1.4fr;gap:13px;font-size:13px}dt{color:#5d7266}dd{margin:0}.document{background:#fff;padding:34px;border:1px solid #d6e0d7;border-radius:9px}.doc-origin{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#536c5c;margin-bottom:18px}.document h2{font-size:25px;margin:0 0 8px}.stamp{font-size:12px;border-top:1px solid #c7d6c9;margin-top:25px;padding-top:15px;color:#5a7565}.subnav{border-bottom:1px solid #d5e0d7;padding:13px 0;background:#edf3ed}.subnav .wrap{display:flex;justify-content:space-between;gap:16px;align-items:center;font-size:13px}.subnav img{width:65px}.workhead{background:#244140;color:white;padding:22px 0}.workhead .wrap{max-width:1500px;display:flex;justify-content:space-between;align-items:center;gap:25px}.workhead h1{font-size:23px;letter-spacing:-.03em}.workhead img{width:60px}.workhead .eyebrow{color:#c1f99b;margin:0;font-size:10px}.workarea{max-width:1500px;padding:26px 32px;margin:auto}.workspace{display:grid;grid-template-columns:210px minmax(0,1fr) 300px;gap:20px;align-items:start}.source-list{display:flex;flex-direction:column;gap:7px}.source-list button{border:1px solid #d6e1d7;border-radius:8px;text-align:left;background:#fff;padding:14px;font-size:13px}.source-list button.active{border-color:#238971;background:#e5f2e9;box-shadow:none}.source-list small{display:block;color:#587164;font-size:10px;letter-spacing:.06em;margin-bottom:5px}.source-list span{display:block}.panel-title{padding:15px 22px;border-bottom:1px solid #dbe5dc;font-size:11px;letter-spacing:.08em;font-weight:600;color:#426553;text-transform:uppercase}.field{display:block;font-size:12px;font-weight:600;margin-bottom:8px}.input,textarea,select.input{width:100%;padding:12px 14px;border:1px solid #b8cbbd;border-radius:8px;background:#fff;color:#243c30;min-height:44px}textarea{resize:vertical;line-height:1.65;min-height:130px}.choice{display:flex;gap:11px;border:1px solid #ccd9cb;padding:12px;border-radius:8px;font-size:13px;align-items:start;cursor:pointer;margin:8px 0}.choice:has(input:checked){border-color:#249578;background:#edf8ed}.choice input{accent-color:#218567;margin-top:4px}.note{background:#eaf3e9;border-radius:8px;padding:18px;font-size:13px;border:1px solid #d4e4d2}.note.amber{background:#fff5df;border-color:#e6d4a7}.worknav{display:flex;gap:8px}.worknav button{padding:8px 14px;border:1px solid #729383;background:#ffffff0c;border-radius:8px;color:white}.worknav button.active{background:#c1f99b;color:#224332;border-color:#c1f99b}.quiz-shell{min-height:calc(100vh - 66px);background:radial-gradient(ellipse at 85% 60%,#43604a44,transparent 55%),linear-gradient(120deg,#142f2dd9,#142f2df5),url('/assets/quiz-cdd.jpg') center/cover}.quiz-nav{padding:27px 40px;display:flex;justify-content:space-between;align-items:center;gap:20px}.quiz-nav img{width:200px}.quiz-main{max-width:850px;margin:auto;padding:55px 35px 65px}.quiz-main h1{font-size:clamp(30px,3vw,42px);line-height:1.3;letter-spacing:-.035em}.quiz-progress{height:3px;background:#8bada329}.quiz-progress>span{height:100%;background:#c1f99b;display:block;transition:width .3s}.answers{display:grid;gap:12px;margin:32px 0}.answer{display:flex;align-items:center;gap:20px;min-height:67px;padding:17px 20px;border:1px solid #76968a80;border-radius:9px;background:#ffffff06;color:#f5f9f1;text-align:left}.answer span{border:1px solid #9db4a260;border-radius:5px;min-width:30px;text-align:center;font-size:12px;line-height:29px}.answer[aria-pressed=true]{border-color:#c1f99b;background:#c1f99b18}.answer[aria-pressed=true] span{background:#c1f99b;color:#18392d}.answer:hover{background:#ffffff0e}.quiz-footer{display:flex;justify-content:space-between;align-items:center;gap:20px}.result-hero{padding:55px 0;background:#244140;color:#f7fbf3}.score{font-size:77px;letter-spacing:-.07em;line-height:1.1}.score small{font-size:27px;letter-spacing:-.03em;color:#b3cdb6}.result-grid{display:grid;grid-template-columns:190px 1fr;gap:35px;align-items:center}.progress{height:6px;border-radius:5px;background:#dce8da;overflow:hidden;margin:12px 0}.progress span{display:block;height:100%;background:#448b70}.dashboard{display:grid;grid-template-columns:195px 1fr;gap:42px}.side-menu a{display:block;padding:12px 14px;border-radius:7px;text-decoration:none;font-size:13px}.side-menu a.active{background:#e1edde;color:#215d3f}.dash-primary{padding:32px;background:#244140;color:white;border-radius:12px}.dash-primary .muted{color:#c5d6c7}.report-metric{font-size:31px;letter-spacing:-.035em}.article-layout{display:grid;grid-template-columns:200px minmax(0,720px);gap:70px;justify-content:center}.article-body{font-size:17px;line-height:1.8;color:#3c5248}.article-body h2{font-size:28px;margin:36px 0 18px}.article-body p{margin-bottom:20px}.article-toc{position:sticky;top:105px;align-self:start;font-size:12px}.article-toc a{display:block;margin-bottom:14px}.article-cover{background:#244140;color:#c1f99b;padding:35px;min-height:210px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.article-cover:after{content:"";position:absolute;right:-20px;top:-50px;bottom:-40px;width:50%;background:url('/assets/original/pattern-rules-61deg-tile.svg');opacity:.2;transform:rotate(5deg)}.article-cover strong{font-size:31px;line-height:1.14;font-weight:600;letter-spacing:-.04em;position:relative;z-index:1;max-width:300px}.article-cover.light{background:#dcead4;color:#244140}.article-cover.blue{background:#243c4d;color:#d8edca}.swatch{height:135px;padding:18px;display:flex;flex-direction:column;justify-content:space-between;border-radius:9px;font-size:12px}.asset-box{padding:35px;min-height:170px;display:flex;align-items:center;justify-content:center;position:relative;border-bottom:1px solid #dbe4da;background:#eef4eb}.asset-box img{max-height:82px;max-width:230px}.asset-box.reverse{background:#244140}.asset-box.pattern{background:#e4eddf}.asset-box.pattern img{max-height:100px}.asset-card small{display:block;font-size:11px;color:#627462}.identity-demo{display:flex;gap:35px;align-items:center;flex-wrap:wrap;padding:36px;background:#244140;border-radius:12px;color:white}.identity-demo img{width:240px}.identity-demo .divider{width:1px;height:50px;background:#6b8c79}.identity-demo span{font-size:13px}.sample-cert{padding:45px;background:white;border:1px solid #c7d8c5;position:relative}.sample-cert:before{content:"SAMPLE";position:absolute;right:30px;top:22px;font-size:11px;letter-spacing:.14em;color:#647d65}.sample-cert h2{font-size:33px;margin:32px 0 12px}.sample-cert img{width:180px}.palette{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}details{border-bottom:1px solid #d0dfd0;padding:20px 0}summary{font-weight:600;cursor:pointer}details p{padding-top:16px;color:#5a7060}.sticky-offer{position:sticky;top:110px}.purchase{padding:30px;border:1px solid #bad2b4;border-radius:13px;background:#fff;color:#244140;box-shadow:0 16px 40px #052c2020}.purchase .price{font-size:39px}.purchase .btn{width:100%;margin:15px 0}.step-row{display:grid;grid-template-columns:45px 1fr;gap:20px;border-top:1px solid #d7e2d3;padding:25px 0}.step-num{width:34px;height:34px;background:#e4efdf;border-radius:50%;display:grid;place-items:center;font-size:13px}.filters{margin:25px 0;display:flex;gap:8px;flex-wrap:wrap}.filters button{padding:8px 16px;border-radius:20px;border:1px solid #bdceba;background:transparent;font-size:12px}.filters button.active{background:#244140;color:white}.empty{padding:55px;text-align:center;border:1px dashed #aec4ae;border-radius:12px;background:#f0f6ed}#toast{position:fixed;bottom:80px;left:50%;transform:translateX(-50%);background:#244140;color:white;border-radius:9px;padding:12px 22px;font-size:13px;z-index:110;display:none;max-width:90vw}dialog{max-width:590px;width:calc(100% - 32px);border:1px solid #bbcdb8;border-radius:15px;padding:32px;color:#244140;box-shadow:0 25px 80px #0b271b55}dialog::backdrop{background:#152e2d80;backdrop-filter:blur(5px)}dialog form>*+*{margin-top:16px}.dialog-close{float:right;border:0;background:#e6efdf;border-radius:30px;width:32px;height:32px}.email{max-width:650px;margin:35px auto;background:white;border:1px solid #dce5d7}.email-head{padding:30px;background:#244140}.email-head img{width:180px}.email-body{padding:40px}.email-body h1{font-size:30px}.email-body>*+*{margin-top:22px}.board{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.board article{background:#fff;border:1px solid #d2dfcf;border-top:4px solid #497e66;border-radius:8px;padding:24px}.asset-links{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.asset-links a{padding:15px;border:1px solid #d2e0cb;border-radius:7px;font-size:12px;text-decoration:none}.check-row{display:flex;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid #e0e7dc}.check-row input{accent-color:#244140}.timeline{border-left:1px solid #a8c29e;margin-left:7px;padding-left:25px}.timeline>div{position:relative;padding:0 0 28px}.timeline>div:before{content:"";position:absolute;left:-31px;top:7px;width:10px;height:10px;background:#68a168;border:2px solid #ecf4e7;border-radius:50%}.footnote{font-size:11px;color:#627561;line-height:1.6}.dark .footnote{color:#bdd0bd}@media(min-width:1500px){.hero{padding-top:85px;padding-bottom:85px}}@media(max-width:1050px){.navlinks{gap:14px}.nav-inner{gap:20px}.navlinks a{font-size:12px}.logo{width:145px}.split{gap:30px}.workspace{grid-template-columns:180px minmax(0,1fr)}.workspace>aside:last-child{grid-column:2}.grid4{grid-template-columns:repeat(2,1fr)}.article-layout{gap:35px}.wrap{padding:0 28px}.palette{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.nav-inner{padding:15px 20px}.menu{display:block;border:1px solid #c4d4bc;background:transparent;border-radius:7px;padding:7px 12px}.navlinks{display:none;position:absolute;top:75px;left:0;right:0;background:#f7faf3;padding:25px;flex-direction:column;align-items:stretch;border-bottom:1px solid #c2d3bc}.navlinks.open{display:flex}.navlinks a{font-size:15px}.wrap{padding:0 21px}.split,.grid3,.grid2{grid-template-columns:1fr}.hero{padding:38px 0 48px}.hero .lead{font-size:16px}.preview{transform:none}.section{padding:48px 0}.section-head{align-items:start;flex-direction:column}.hero-note{flex-wrap:wrap}.proof-strip .wrap{flex-direction:column;align-items:start;gap:12px}.quote-proof{grid-template-columns:1fr;gap:20px}.footer .wrap{flex-direction:column}.studybar .study-label,.studybar .study-assets{display:none}.studybar{gap:6px}.studybar select{max-width:170px}.dashboard{grid-template-columns:1fr;gap:25px}.side-menu{display:flex;overflow:auto}.side-menu a{white-space:nowrap}.workspace{grid-template-columns:1fr}.workspace>aside:last-child{grid-column:auto}.source-list{display:grid;grid-template-columns:repeat(2,1fr)}.workhead .wrap{align-items:start;flex-direction:column;padding:0 20px}.workarea{padding:20px}.worknav{flex-wrap:wrap}.workhead h1{font-size:22px}.document{padding:20px}.quiz-nav{padding:20px}.quiz-nav img{width:155px}.quiz-main{padding:40px 23px}.quiz-main h1{font-size:28px}.answer{gap:13px;padding:14px;font-size:14px}.result-grid{grid-template-columns:1fr;gap:20px}.score{font-size:62px}.article-layout{grid-template-columns:1fr;gap:20px}.article-toc{position:static}.article-body{font-size:16px}.palette{grid-template-columns:repeat(2,1fr)}.asset-links{grid-template-columns:1fr 1fr}.sticky-offer{position:static}.identity-demo{padding:25px;gap:20px}.identity-demo .divider{display:none}.board{grid-template-columns:1fr}.email-body{padding:25px}.announcement{font-size:11px}.announcement a{display:inline-block}.sample-cert{padding:28px}.lead{font-size:16px}.pad{padding:22px}.btn{padding:12px 15px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media(prefers-reduced-transparency:reduce){.glass,.studybar,.nav{backdrop-filter:none;background:#edf3e8}.dark .glass,.forest .glass{background:#34584c}}body.solid .glass,body.solid .nav,body.solid .studybar{backdrop-filter:none}body.solid .glass{background:#34584c}@media print{.studybar,.nav,.footer,.btn,.announcement{display:none!important}body{background:white;padding:0}.section{padding:25px 0}.wrap{padding:0}.card{break-inside:avoid;box-shadow:none}.workarea{padding:0}}

/* Context labels use sentence case; reading surfaces keep their own contrast. */
.forest .card,.forest .preview,.forest .purchase{color:#203432}.forest .card .eyebrow,.forest .preview .eyebrow,.forest .purchase .eyebrow,.dark .document .eyebrow{color:#526b64}.forest .card .lead,.forest .preview .lead{color:#536961}

/* Existing artwork now carries the identity; text stays quiet and legible. */
.source-list button{position:relative;padding-right:46px}.source-list button.active{border:1.5px solid #244140;background:#e8f1e7}.source-list button.active:after{content:"";position:absolute;right:14px;top:17px;width:23px;height:22px;background:url('/assets/amlcc-mark-green.svg') center/contain no-repeat}.source-list small{font-size:12px;letter-spacing:0;color:#466157}.note{position:relative;padding-left:58px}.note:before{content:"";position:absolute;left:18px;top:20px;width:23px;height:22px;background:url('/assets/amlcc-mark-green.svg') center/contain no-repeat}.forest .card .btn.secondary,.forest .purchase .btn.secondary{color:#244140;border-color:#aabdb0}.programme-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.programme-badge{width:138px;height:138px;object-fit:contain;flex-shrink:0}.course-art{height:210px;justify-content:space-between;align-items:center;background:#eaf0e9!important;color:#244140!important;padding:22px;gap:12px}.course-art strong{font-size:24px;letter-spacing:-.025em;line-height:1.1}.course-art:after{display:none}.course-art .programme-badge{width:130px;height:150px}.programme-grid .course-art{flex-direction:column;height:220px;justify-content:center;gap:10px}.programme-grid .course-art strong{font-size:21px}.programme-signature{display:flex;gap:22px;align-items:center;margin-bottom:30px;font-size:19px;font-weight:600}.programme-signature .programme-badge{width:105px;height:105px}.programme-signature small{font-size:13px;font-weight:400;color:#d5e1d9}.credential-badge{display:block;margin:24px 0;width:110px!important;height:110px!important}.dashboard-badge{float:right;width:110px;height:110px}.photo-figure{margin:0}.photo-figure img{display:block;width:100%;height:auto;border-radius:12px}.photo-figure figcaption{font-size:13px;line-height:1.5;color:#52665f;margin-top:12px;max-width:850px}.photo-section .split{grid-template-columns:1.3fr 1fr;gap:48px}.photo-section h2{margin-bottom:22px}.photo-section .lead{margin-bottom:24px}.published-stories{display:grid;grid-template-columns:1.3fr 1fr;gap:28px;margin:45px 0 55px}.published-stories article img{width:100%;aspect-ratio:1.5;object-fit:cover;border-radius:12px}.published-stories article h3{margin:17px 0 10px}.published-stories .small{color:#52665f}.asset-library section{scroll-margin-top:115px}.library-nav{display:flex;gap:24px;flex-wrap:wrap;margin-top:30px}.badge-specimen{min-height:245px;display:flex;justify-content:center;align-items:center;background:#fff}.badge-specimen img{width:190px;height:190px}.asset-demo{padding:35px;border:1px solid #d5e0d8;border-radius:13px;position:relative;overflow:hidden;min-height:240px}.asset-demo.dark-demo{background:#244140;color:white}.asset-demo h3,.asset-demo p,.asset-demo a{position:relative;z-index:1}.icon-sizes{display:flex;align-items:center;gap:30px;min-height:100px}.icon-sizes img{object-fit:contain}.geometry-demo{position:absolute!important;right:5%;bottom:15%;width:95px;height:95px;opacity:.7}.pattern-demo{background-image:url('/assets/original/pattern-rules-61deg-tile.svg');background-size:70px;position:absolute;inset:0;opacity:.08}.asset-demo .content{position:relative;z-index:1;max-width:80%}.glass-stage{min-height:360px;border-radius:13px;background:#244140 url('/assets/photos/naivasha-simulation.webp') center/cover;display:flex;align-items:flex-end;padding:28px}.liquid-toolbar{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:14px 18px;border-radius:24px;border:1px solid #ffffffb3;background:rgba(247,251,246,.91);color:#203432;backdrop-filter:blur(22px) saturate(1.3);box-shadow:inset 0 1px 2px #fff,0 8px 28px #163a3033}.liquid-toolbar img{width:29px}.liquid-toolbar button{padding:9px 14px;border:0;border-radius:16px;background:transparent}.liquid-toolbar button[aria-pressed=true]{background:#244140;color:white}.solid .liquid-toolbar{background:#f6f8f6;backdrop-filter:none}.material-comparison{display:grid;grid-template-columns:1fr 1fr;gap:24px}.asset-links a{overflow-wrap:anywhere}.reading-sample{font-size:17px;line-height:1.7;background:#fff;border:1px solid #d5e0d8;border-radius:12px;padding:28px}.asset-caption{font-size:13px;color:#52665f;margin-top:13px}.compact-brand{display:inline-flex;gap:10px;align-items:center;font-size:14px}.compact-brand img{width:25px}.badge-caption{font-size:13px;color:#52665f}.asset-card .pad small{overflow-wrap:anywhere}.forest .card .muted{color:#52665f}.forest .card .accent{color:#315b42}
@media(max-width:1050px){.programme-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.photo-section .split,.published-stories,.material-comparison{grid-template-columns:1fr}.programme-signature{gap:15px}.programme-signature .programme-badge{width:80px;height:90px}.library-nav{gap:16px}.glass-stage{padding:16px}.liquid-toolbar{gap:8px;font-size:13px}.asset-demo{padding:25px}.programme-grid .course-art{padding:14px}.photo-section .split{gap:30px}}@media(max-width:420px){.programme-grid{grid-template-columns:1fr}.programme-grid .course-art{flex-direction:row;height:190px}.programme-grid .course-art strong{max-width:115px}.badge-specimen{min-height:220px}}
@media(prefers-reduced-transparency:reduce){.liquid-toolbar{background:#f6f8f6;backdrop-filter:none}}
.context-signature{display:flex;align-items:center;gap:12px;font-size:14px;line-height:1.4;font-weight:500;letter-spacing:0;text-transform:none;margin-bottom:24px}.context-signature img{width:28px;height:27px;object-fit:contain}.context-signature .signature-badge{width:48px;height:48px}.wedge-signature img{width:17px;height:17px}.partner-card{border:1px solid #244140;border-radius:13px;overflow:hidden;background:#fff}.photo-brand-header{background:#244140;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;font-size:13px}.photo-brand-header img{width:170px;max-height:40px}.partner-photo{display:block;width:100%;height:auto}.partner-copy{padding:26px}.partner-copy p{margin:14px 0 18px;color:#52665f}.partner-single{max-width:650px}.partner-quote{margin:18px 0;padding:0;border:0;font-size:23px;line-height:1.5;font-weight:500}.partner-quote footer{font-size:14px;line-height:1.6;margin-top:22px}.partner-quote footer span{font-size:12px;color:#52665f}.photo-frame{background:#244140;border-radius:12px;overflow:hidden;padding:0 10px 10px}.photo-frame .photo-brand-header{padding:18px 10px}.photo-frame>img{width:100%;display:block}.photo-frame-title{padding:18px 12px 10px;color:#fff;font-size:18px;font-weight:600}.glass-photo{background:#e7efe7;border-radius:12px;overflow:hidden;padding-bottom:16px}.glass-photo>img{display:block;width:100%}.glass-photo .liquid-toolbar{margin:-18px 14px 0;position:relative;font-size:13px;gap:12px;min-height:66px}.mini-badge{width:55px;height:55px}.motion-demo{background:#fff;border:1px solid #b7c9be;border-radius:13px;overflow:hidden}.motion-tabs{display:flex;background:#244140;padding:12px;gap:8px;flex-wrap:wrap}.motion-tabs button{background:transparent;border:1px solid #a8bdb3;color:#fff;border-radius:8px;padding:12px 18px;transition:background 160ms,color 160ms}.motion-tabs button[aria-pressed=true]{background:#c1f99b;color:#244140;border-color:#c1f99b}.motion-content{padding:30px;min-height:210px}.motion-content h3{margin-bottom:16px}.motion-content p{max-width:640px}.motion-foot{border-top:1px solid #d5e1d8;padding:20px 30px;display:flex;gap:20px;justify-content:space-between;flex-wrap:wrap;font-size:12px;color:#52665f}.btn,.tabs button,.source-list button{transition:background-color 160ms,border-color 160ms,color 160ms}.btn:hover{transform:none}.eyebrow{letter-spacing:0!important;text-transform:none!important;font-size:14px}.asset-library .asset-demo .context-signature+h3{margin-top:30px}
@media(max-width:760px){.institution-identity,.photo-brand-header{padding:14px 18px}.photo-brand-header img{width:145px}.partner-copy{padding:22px}.motion-content{padding:24px;min-height:255px}.motion-tabs button{padding:10px 12px;font-size:13px}.motion-foot{padding:20px 24px}.context-signature{font-size:14px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.doc-origin,.panel-title{font-size:13px;text-transform:none;letter-spacing:0}.source-list button{font-variant-numeric:tabular-nums}

.certificate-figure{margin:0;min-width:0}
.certificate-figure>a{display:block;background:#fff;border:1px solid #d3dfd7;box-shadow:0 8px 28px #183d2c0c;border-radius:4px;overflow:hidden}
.certificate-figure img{display:block;width:100%;height:auto;aspect-ratio:1684/1190;object-fit:contain;color:#244140;font-size:14px}
.certificate-figure figcaption{padding-top:14px;color:#52665f;font-size:13px;line-height:1.7}
.credential-layout{display:grid;grid-template-columns:1.55fr 1fr;gap:44px;align-items:center}
.credential-details{margin:0;display:grid;gap:16px}
.credential-details dt{font-size:13px;color:#52665f}
.credential-details dd{margin:3px 0 0;font-weight:600}
.credential-marketing{background:#edf2ec}
.credential-badge-line{display:flex;align-items:center;gap:20px}
.credential-badge-line img{width:80px;height:auto}
@media(max-width:760px){.credential-layout{grid-template-columns:1fr;gap:28px}.credential-badge-line img{width:66px}}
/* /styles/certificate-3d.css */
/* Certificates (owner, 26 Sep 2026): wherever a certificate appears, the CASS certificate's presentation. It leans
   back in perspective (rotateY 5deg, rotateZ -1deg) on a soft shadow and, where it is a link, straightens and lifts
   while hovered or focused. Flat on phones and with reduced motion, as on CASS. The values live here once. */
:root{--cert-tilt:rotateY(5deg) rotateZ(-1deg);--cert-tilt-lift:rotateY(2deg) rotateZ(-.5deg) translateY(-4px);--cert-shadow:10px 18px 32px #173c571a;--cert-shadow-lift:14px 26px 44px #173c5726;--cert-ease:cubic-bezier(.2,.7,.2,1)}

/* Showcase certificates. CASS, About certifications, the courses hub and FIAR share .audit-certificate; Recognition
   and Membership have frames of their own, brought to the same corners, tilt and shadow. */
body .rg-certificate>a{border-radius:14px}
body .rg-certificate>a>img{border-radius:12px}
body .aml-active-presentation .certificate-feature{perspective:1400px}
body .aml-active-presentation a.certificate-image{display:block;padding:0;border-radius:14px;overflow:hidden;transform:var(--cert-tilt);transform-origin:center;box-shadow:var(--cert-shadow)}
body .aml-active-presentation a.certificate-image img{transform:none;border-radius:12px;box-shadow:none;outline:none}
/* The membership page (since 1 October 2026): its example participation certificate in the same frame. */
body .mp-certificate{perspective:1400px}
body .mp-certificate>a{display:block;border-radius:14px;overflow:hidden;transform:var(--cert-tilt);transform-origin:center;box-shadow:var(--cert-shadow)}
body .mp-certificate>a>img{border-radius:12px;box-shadow:none}
@media(min-width:761px) and (hover:hover) and (prefers-reduced-motion:no-preference){
 body :is(.audit-certificate,.rg-certificate,.mp-certificate)>a,body .aml-active-presentation a.certificate-image{transition:transform .35s var(--cert-ease),box-shadow .35s}
 body :is(.audit-certificate,.rg-certificate,.mp-certificate)>a:is(:hover,:focus-visible),body .aml-active-presentation a.certificate-image:is(:hover,:focus-visible){transform:var(--cert-tilt-lift);box-shadow:var(--cert-shadow-lift)}
}

/* Certificate thumbnails in the AML Active cards lean the same way, keeping their dark cards' own shadows, and
   lift with their card. */
body .homepage-page #home-membership .live-benefit>img,
body .catalogue-page #catalogue-membership .live-benefit>img,
body .cp-active-art--live img{transform:perspective(1400px) var(--cert-tilt)}
@media(min-width:761px) and (hover:hover) and (prefers-reduced-motion:no-preference){
 body :is(.homepage-page #home-membership,.catalogue-page #catalogue-membership) .live-benefit>img{transition:transform .35s var(--cert-ease)}
 body :is(.homepage-page #home-membership,.catalogue-page #catalogue-membership) a.live-benefit:is(:hover,:focus-visible)>img{transform:perspective(1400px) var(--cert-tilt-lift)}
}

@media(max-width:760px),(prefers-reduced-motion:reduce){
 body :is(.rg-certificate,.mp-certificate)>a,body .aml-active-presentation a.certificate-image,
 body .homepage-page #home-membership .live-benefit>img,body .catalogue-page #catalogue-membership .live-benefit>img,
 body .cp-active-art--live img{transform:none}
}
/* /styles/membership-prototype.css?v=7 */
/* Design review: the proposed AML Active membership page (src/pages/design-review/membership.astro; owner,
   1 October 2026). Built from the design tokens only (assets-tokens.css): colours, the type scale, spacing, the two
   radii (controls 8, panels 12) and the motion token. Inter in 400 and 600. Hover movement only where a pointer can
   hover; nothing moves under reduced motion. The learner review and the team section bring their own approved styles. */
.mp-page{--mp-ease:cubic-bezier(.23,1,.32,1);background:var(--ds-surface-soft);color:var(--ds-text)}
.mp-page :is(h1,h2,h3,h4,strong,b,summary){font-weight:600}
.mp-page p{margin:0}
.mp-wrap{max-width:calc(var(--ds-content) + 2 * var(--ds-gutter));margin:0 auto;padding:0 var(--ds-gutter)}
.mp-review{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:0 16px;padding:4px var(--ds-gutter);background:var(--ds-surface-tint);font-size:var(--ds-font-label);color:var(--ds-text-muted)}

/* Links and buttons */
.mp-link{display:inline-flex;align-items:center;gap:10px;font-size:var(--ds-font-action);font-weight:600;line-height:1.4;color:var(--ds-text);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.mp-link--on-dark{color:var(--ds-on-dark)}
.mp-link--on-dark:hover{color:var(--amlcc-lime)}
.mp-button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:var(--ds-button-min);padding:0 26px;border-radius:var(--amlcc-radius-control);font-size:var(--ds-font-action);font-weight:600;line-height:1.2;text-decoration:none;transition:background-color var(--ds-motion) ease,transform 120ms var(--mp-ease)}
.mp-button:active{transform:scale(.98)}
.mp-button--lime{background:var(--amlcc-lime);color:var(--amlcc-forest)}
.mp-button--forest{background:var(--amlcc-forest);color:var(--ds-on-dark)}
@media(hover:hover) and (pointer:fine){
 .mp-button--lime:hover{background:color-mix(in srgb,var(--amlcc-lime),var(--ds-surface) 30%);color:var(--amlcc-forest)}
 .mp-button--forest:hover{background:color-mix(in srgb,var(--amlcc-forest),var(--ds-surface) 10%);color:var(--ds-on-dark)}
}
.mp-page :is(.mp-button,.mp-link,.mp-folio-tabs button,.mp-course-list a):focus-visible{outline:2px solid currentColor;outline-offset:4px}
.mp-slant{flex:none;width:9px;height:12px;fill:var(--amlcc-teal)}

/* Hero: the name, the promise in one line, the price beside the one action and its three reassurances; the folio shows
   three things membership includes */
.mp-hero{background:var(--amlcc-forest);color:var(--ds-on-dark);padding:22px 0 64px}
.mp-hero .page-navigation a{color:var(--ds-on-dark-muted)}
.mp-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(32px,5vw,80px);align-items:center;margin-top:30px}
.mp-hero h1{margin:0}
.mp-lockup{display:flex;align-items:center;gap:12px;margin-bottom:26px;font-size:var(--ds-font-title);letter-spacing:-.02em;line-height:1.2;color:var(--ds-on-dark)}
.mp-lockup img{width:44px;height:44px}
.mp-title-line{display:block;max-width:11em;font-size:var(--ds-font-page);line-height:1.06;letter-spacing:var(--ds-tracking-heading);color:var(--ds-on-dark);text-wrap:balance}
.mp-title-line .mp-accent{color:inherit}
.mp-lead{margin-top:22px!important;max-width:29em;font-size:var(--ds-font-lead);line-height:1.55;color:var(--ds-on-dark-muted)}
.mp-offer{display:flex;flex-wrap:wrap;align-items:center;gap:18px 26px;margin-top:34px}
.mp-price{display:flex;align-items:center;gap:12px}
.mp-price strong{font-size:var(--ds-font-figure);line-height:1;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.mp-price span{font-size:var(--ds-font-label);line-height:1.45;color:var(--ds-on-dark-muted)}
.mp-assure{display:grid;gap:8px;max-width:34em;margin:24px 0 0;padding:0;list-style:none;font-size:var(--ds-font-support);line-height:1.5;color:var(--ds-on-dark-muted)}
.mp-assure li{display:flex;align-items:flex-start;gap:10px}
.mp-assure .mp-slant{margin-top:5px;fill:var(--amlcc-lime)}
.mp-assure strong{color:var(--ds-on-dark)}
.mp-hero-copy>.mp-link{margin-top:20px}
.mp-folio-stack{position:relative}
.mp-folio-stack::before{content:"";position:absolute;inset:0;border-radius:var(--amlcc-radius-panel);background:color-mix(in srgb,var(--amlcc-lime) 60%,var(--amlcc-forest));transform:translate(9px,7px) rotate(1.4deg)}
.mp-folio-panel{position:relative;display:flex;flex-direction:column;gap:14px;padding:24px 26px;border-radius:var(--amlcc-radius-panel);background:var(--amlcc-paper);color:var(--ds-text)}
/* The three panels share one cell: the folio keeps the tallest panel's height, so the hero does not move from tab to
   tab, and the page arrives in this state (src/content/membership-folio.mjs). Without script the folio's noscript
   style lists every panel, one after another. */
.mp-folio-stack{display:grid}
.mp-folio-panel{grid-area:1/1}
.mp-folio-panel[hidden]{display:flex!important;visibility:hidden}
.mp-folio-top{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:var(--ds-font-label);color:var(--ds-text-muted)}
.mp-folio-top img{width:30px;height:30px}
.mp-folio-panel h2{max-width:12em;font-size:var(--ds-font-headline);line-height:1.15;letter-spacing:-.03em}
.mp-folio-art{width:150px;height:auto;margin:6px 0}
.mp-folio-list{display:grid;gap:9px;margin:6px 0;padding:0;list-style:none;font-size:var(--ds-font-card);font-weight:600}
.mp-folio-list li{display:flex;align-items:center;gap:10px}
.mp-folio-copy{max-width:32em;font-size:var(--ds-font-card);line-height:1.55;color:var(--ds-text-muted)}
.mp-folio-panel .mp-link{margin-top:auto;font-size:var(--ds-font-support)}
.mp-folio-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px}
.mp-folio-tabs button{padding:12px 0 4px;border:0;border-top:2px solid color-mix(in srgb,var(--ds-on-dark) 25%,transparent);background:none;color:var(--ds-on-dark-muted);font:inherit;font-size:var(--ds-font-label);text-align:left;cursor:pointer;transition:color var(--ds-motion) ease,border-color var(--ds-motion) ease}
.mp-folio-tabs button[aria-selected=true]{border-top-color:var(--amlcc-lime);color:var(--amlcc-lime)}
@media(hover:hover) and (pointer:fine){.mp-folio-tabs button[aria-selected=false]:hover{color:var(--ds-on-dark)}}

/* Sections */
.mp-section{padding:var(--ds-section-space) 0}
.mp-section h2,.mp-final h2{font-size:var(--ds-font-section);line-height:var(--ds-leading-heading);letter-spacing:var(--ds-tracking-heading);text-wrap:balance}
.mp-intro{margin-top:16px!important;max-width:36em;font-size:var(--ds-font-lead);line-height:1.55;color:var(--ds-text-muted)}

/* What's included: one grid, strongest first. Sessions with the certificate as proof, then the short course, then the
   record, the toolkit and member prices */
.mp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:40px}
.mp-card{display:flex;flex-direction:column;gap:12px;padding:28px;border-radius:var(--amlcc-radius-panel);background:var(--ds-surface)}
.mp-card h3,.mp-courses h3{font-size:var(--ds-font-title);line-height:1.2;letter-spacing:-.025em;text-wrap:balance}
.mp-card p,.mp-courses-head p{font-size:var(--ds-font-card);line-height:1.6;color:var(--ds-text-muted)}
.mp-card>.mp-link{margin-top:auto;padding-top:6px}
.mp-card--sessions{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:40px}
.mp-card--sessions>div{display:flex;flex-direction:column;gap:12px;align-self:center}
.mp-card--sessions>div>.mp-link{padding-top:6px}
.mp-card--sessions h3{max-width:16em}
.mp-certificate{display:flex;flex-direction:column;justify-self:end;width:100%;max-width:440px;margin:0}
.mp-facts{display:grid;gap:9px;margin:4px 0 8px;padding:0;list-style:none;font-size:var(--ds-font-card)}
.mp-facts li{display:flex;align-items:flex-start;gap:10px}
.mp-facts .mp-slant{margin-top:6px}
.mp-certificate img{display:block;width:100%;height:auto;border-radius:var(--amlcc-radius-control);box-shadow:0 18px 32px -22px color-mix(in srgb,var(--amlcc-forest) 55%,transparent)}
.mp-certificate figcaption{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:auto;padding-top:16px;font-size:var(--ds-font-label);line-height:1.5;color:var(--ds-text-muted)}
.mp-certificate figcaption .mp-link{font-size:var(--ds-font-support)}
.mp-map{width:100%;height:auto;margin-top:6px}
.mp-card--pricing{background:var(--ds-surface-tint)}
/* main.mp-page: a site-wide phone rule sets dt to 12px through an :is() list whose strongest entry weighs two classes */
.mp-rates{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:12px 16px;align-items:baseline;margin:6px 0 0}
main.mp-page .mp-rates dt{font-size:var(--ds-font-figure);font-weight:600;line-height:1;letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--ds-text)}
main.mp-page .mp-rates dd{margin:0;font-size:var(--ds-font-card);line-height:1.45;color:var(--ds-text-muted)}
.mp-courses{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,2fr);gap:32px;align-items:start;padding:28px;border-radius:var(--amlcc-radius-panel);background:var(--ds-surface);scroll-margin-top:110px}
.mp-courses-head{display:flex;flex-direction:column;gap:12px}
.mp-course-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
.mp-course-list a{display:flex;flex-direction:column;gap:6px;height:100%;padding:18px 20px;border-radius:var(--amlcc-radius-control);background:var(--ds-surface-soft);color:var(--ds-text);text-decoration:none;transition:background-color var(--ds-motion) ease}
@media(hover:hover) and (pointer:fine){.mp-course-list a:hover{background:var(--ds-surface-tint)}}
.mp-course-topic{font-size:var(--ds-font-label);color:var(--ds-text-muted)}
.mp-course-list h4{display:flex;align-items:center;gap:10px;margin:0;font-size:var(--ds-font-body);line-height:1.3;letter-spacing:-.01em;color:var(--ds-text)}
.mp-course-meta{font-size:var(--ds-font-label);color:var(--ds-text-muted)}

/* The five-step cycle, as on the current page */
.mp-cycle{background:var(--ds-surface)}
.mp-cycle-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:48px;align-items:end;margin-bottom:40px}
.mp-cycle-head p{max-width:30em;font-size:var(--ds-font-body);line-height:1.6;color:var(--ds-text-muted)}
.mp-cycle-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:28px;margin:0;padding:0;list-style:none}
.mp-cycle-mark{display:flex;align-items:center;gap:9px;margin-bottom:16px!important;font-size:var(--ds-font-label);font-weight:600;color:var(--ds-action)}
.mp-cycle-list h3{margin:0 0 10px;font-size:var(--ds-font-subtitle);line-height:1.25;letter-spacing:-.02em}
.mp-cycle-list p:not(.mp-cycle-mark){font-size:var(--ds-font-support);line-height:1.6;color:var(--ds-text-muted)}

/* The price again, to close */
.mp-final{padding:56px 0;background:var(--amlcc-lime)}
.mp-final-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:center}
.mp-final-grid>div:first-child>p{max-width:30em;margin-top:14px;font-size:var(--ds-font-lead);line-height:1.55;color:var(--ds-text)}
.mp-final-offer{display:grid;justify-items:start;gap:14px}
.mp-final .mp-price span{color:var(--ds-text)}
.mp-price--large strong{font-size:var(--ds-font-stat)}
.mp-terms{max-width:28em;font-size:var(--ds-font-label);line-height:1.5;color:var(--ds-text)}

@media(max-width:1100px){
 /* Two columns: the record and member prices side by side, then the toolkit across with its map beside the text */
 .mp-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:dense}
 .mp-card--toolkit{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto 1fr auto;gap:12px 32px;align-items:start}
 .mp-card--toolkit>*{grid-column:1}
 .mp-card--toolkit .mp-map{grid-column:2;grid-row:1/-1;align-self:center;margin:0}
 .mp-cycle-list{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:32px}
}
@media(max-width:900px){
 .mp-hero-grid,.mp-final-grid,.mp-grid,.mp-card--sessions,.mp-courses,.mp-cycle-head{grid-template-columns:minmax(0,1fr)}
 .mp-certificate{justify-self:start}
 .mp-card--toolkit{display:flex}
 .mp-cycle-head{gap:16px}
 .mp-hero{padding-bottom:48px}
}
@media(max-width:560px){
 .mp-course-list,.mp-cycle-list{grid-template-columns:minmax(0,1fr)}
 .mp-cycle-list{row-gap:24px}
 .mp-card,.mp-courses{padding:24px 22px}
 .mp-offer{gap:16px 20px}
 .mp-final-grid{gap:32px}
}
@media(prefers-reduced-motion:reduce){.mp-page *{transition:none!important}.mp-button:active{transform:none}}
/* /styles/site.css */
/* Production shell: the approved brand, without prototype toolbar spacing. */
body{padding-bottom:0!important}
html{scroll-padding-top:110px}
[hidden]{display:none!important}
.skip-link{position:fixed;top:-200px;left:12px;z-index:10000;padding:12px 20px;background:#244140;color:white;border-radius:8px}
.skip-link:focus{top:12px}
:focus-visible{outline:3px solid currentColor;outline-offset:4px}
.nav{z-index:1000}
img{max-width:100%}
/* Programme badges drawn from WebP copies keep their SVG's fit inside square boxes (src/content/web-images.mjs). */
img[data-web-badge]{object-fit:contain}
.migration-notice{max-width:800px;margin:100px auto;padding:32px}
.migration-notice h1{font-size:clamp(32px,5vw,52px);line-height:1.1;margin:20px 0}
.migration-notice p{margin:20px 0}
@media(max-width:900px){.navlinks.is-open{display:flex!important;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;background:#f6f8f6;padding:24px;box-shadow:0 16px 24px #20343220}.navlinks.is-open a{padding:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}
/* The skip link keeps its white text when pointed at, as the FIAR palette's does. */
.skip-link:is(:hover,:focus){color:#fff}
/* /styles/institution-proof.css */
/* Reserve an actual grid cell for the EU stars on every CEPOL proof block.
   Page-specific padding can no longer place copy underneath the emblem. */
.institution-proof:has(> .institution-stars) {
  grid-template-columns: 72px minmax(0, 1.15fr) minmax(0, 1fr);
  grid-template-areas: "stars heading detail";
  padding: 36px;
  gap: 32px;
}
.institution-proof > .institution-stars {
  grid-area: stars;
  position: static;
  display: block;
  inset: auto;
  width: 72px;
  height: 72px;
  max-width: 100%;
  transform: none;
  opacity: 1;
  align-self: center;
}
.institution-proof > .institution-heading { grid-area: heading; }
.institution-proof > .institution-detail { grid-area: detail; }
@media (max-width: 900px) {
  .institution-proof:has(> .institution-stars) {
    grid-template-columns: 64px minmax(0, 1fr);
    grid-template-areas: "stars heading" ". detail";
    padding: 30px;
    gap: 22px 26px;
  }
  .institution-proof > .institution-stars { width: 64px; height: 64px; }
}
@media (max-width: 600px) {
  .institution-proof:has(> .institution-stars) {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "stars" "heading" "detail";
    padding: 26px 24px;
    gap: 20px;
  }
  .institution-proof > .institution-stars { width: 48px; height: 48px; }
}
/* /styles/site-polish.css */
/* Shared finishing layer. Keep approved typography and brand colours. */
html{scroll-padding-top:28px}
main:focus{outline:none}
img{max-width:100%}
button,a,input,select,textarea{touch-action:manipulation}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid currentColor;outline-offset:4px}
h1,h2{text-wrap:balance}
p,li{text-wrap:pretty}
main [hidden]{display:none!important}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.lp-body{overflow-wrap:anywhere}
.lp-body iframe{max-width:100%;aspect-ratio:16/9;height:auto}
.lp-body table{max-width:100%}
.lp-table{overflow-x:auto;overscroll-behavior-inline:contain}
.lp-table:focus-visible{outline:2px solid #238c79;outline-offset:3px}
/* A two-column table on a policy page (a term and its explanation) fits a phone instead of scrolling sideways; on a
   phone its row labels take only the width of their longest word, so an email address beside them stays whole. A label
   in an ordinary first cell keeps its words whole too: at 360px "advertising" and "d’information" broke mid-word
   (measured on the six policy pages with tables, 20 October 2026). */
.lp-policy .lp-table table:not(:has(tr>:nth-child(3))){min-width:0}
@media(max-width:480px){.lp-policy .lp-table th[scope=row]{width:1%;overflow-wrap:normal}.lp-policy .lp-table td:first-child{overflow-wrap:normal}}
.lp-body img{height:auto}
.lp-mobile-toc summary,.cc-mobile-contents summary{cursor:pointer}
.page-filter-empty{padding:36px;background:#eef4ef;border-radius:12px}
.public-feedback{margin-top:12px;color:#426159;line-height:1.6}
.public-copy-status{display:inline-block;margin-inline-start:12px;font-size:13px}
.native-enquiry-link{display:inline-flex;align-items:center;gap:10px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
body[data-page="quiz"] .site-announcement,body[data-page="quiz"]>header.nav,body[data-page="quiz"]>footer{display:none}
body[data-page="quiz"]{background:#173833;color:#f4f8f4}
.check-options{border:0;padding:0;display:grid;gap:12px;margin:32px 0}
.check-option{display:flex;gap:14px;align-items:flex-start;background:#294b44;padding:18px 20px;border-radius:9px;cursor:pointer;border:2px solid transparent}
.check-option:has(input:checked){border-color:#c1f99b;background:#355d4e}
.check-option input{margin-top:5px;accent-color:#c1f99b;flex:none}
.check-actions{display:flex;flex-wrap:wrap;gap:14px;margin:28px 0}
.check-review summary{font-size:16px;line-height:1.6;padding:18px 40px 18px 0;cursor:pointer}
.check-review details{border-bottom:1px solid #426357}
.quiz-score{font-size:76px;line-height:1;letter-spacing:-4px;color:#c1f99b;font-weight:700;margin:30px 0}.quiz-score span{font-size:30px;letter-spacing:0}
.check-skill-list{margin:32px 0}.check-skill-list>div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #45645b;padding:12px 0}
.check-review p,.check-review a{color:#dce9de}
body[data-page="quiz"] .btn.secondary{color:#dce9de;border-color:#688a7a;background:transparent}
body[data-page="quiz"] h1{font-size:clamp(28px,4.4vw,48px);line-height:1.2}
.case-decision-panel{padding:60px 0;background:#eaf1e8}.case-decision-panel form{display:grid;gap:24px;max-width:760px;margin:30px 0}.case-decision-panel label{display:grid;gap:10px}.case-decision-panel textarea{width:100%}.case-decision-panel h2{margin:28px 0 20px}.case-decision-panel button[data-doc]{border:0;background:none;color:inherit;text-decoration:underline;cursor:pointer;text-align:left;padding:6px 0}
[data-case-feedback]{background:#fff;padding:28px;border-radius:12px;line-height:1.7}
body[data-page="case"] main{padding-top:28px}.case-decision-panel .btn{justify-self:start}
.design-updates{border:0;border-radius:20px;max-width:560px;width:calc(100% - 40px);padding:32px;color:#244140;background:#f3f7f3}.design-updates::backdrop{background:#132d2bb3}.design-updates form{display:flex;justify-content:flex-end;margin-bottom:24px}.design-updates h2{margin:18px 0}.design-updates p{line-height:1.65;margin:18px 0}
/* Shared navigation and small editorial details. */
.navlinks a[aria-current="page"]{text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:2px}
.mini-course-page .lp-crumb{display:flex;align-items:center;flex-wrap:wrap;gap:9px;font-size:13px;line-height:1.6;margin-bottom:28px}
.mini-course-page .lp-crumb a{text-underline-offset:4px}
.not-found{padding:100px 0 120px;background:#f3f7f3}.not-found h1{font-size:clamp(44px,6vw,76px);line-height:1.06;margin:28px 0}.not-found p{max-width:580px;line-height:1.7}.not-found-links{display:flex;flex-wrap:wrap;align-items:center;gap:28px;margin-top:36px}.not-found .not-found-legacy{margin:44px 0 0;font-size:15px;line-height:1.6;color:#506b61}
/* Keep the reading surface quiet once the knowledge check begins. */
.quiz-shell.is-answering{background:#193b36}
.quiz-shell.is-answering .quiz-main{max-width:850px}
.quiz-shell.is-answering .quiz-nav{border-bottom:1px solid #ffffff14}
/* Allow evidence labels and tables to shrink inside the phone workspace. */
body[data-page="case"] .workspace>*{min-width:0}
body[data-page="case"] .source-list button{min-width:0;overflow-wrap:anywhere}
body[data-page="case"] .document{min-width:0;overflow-wrap:anywhere}
body[data-page="case"] .document table{min-width:340px}
@media(max-width:760px){body[data-page="case"] .workspace{grid-template-columns:minmax(0,1fr)}body[data-page="case"] .source-list{grid-template-columns:repeat(2,minmax(0,1fr))}body[data-page="case"] .heading-inline{flex-wrap:wrap;gap:12px}}
body[data-page="case"] .document pre{max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.7}
@media(max-width:480px){body[data-page="case"] .document table{min-width:0;width:100%;font-size:11px;line-height:1.5}body[data-page="case"] .document th,body[data-page="case"] .document td{padding:10px 5px;white-space:normal}}
body[data-page="case"] .document{scroll-margin-top:90px}

/* CMS content keeps the established reading measure and responsive media. */
.cms-feature-image {margin: 2rem 0 0; max-width: 100%;}
.cms-feature-image img, .lp-body figure img {display:block;max-width:100%;height:auto;border-radius:16px;}
.cms-feature-image figcaption {margin-top:.7rem;color:var(--muted,#536d65);font-size:.9rem;}
.cms-table-wrap {overflow-x:auto;max-width:100%;}
.cms-table-wrap table {width:100%;border-collapse:collapse;}
.cms-table-wrap th,.cms-table-wrap td {padding:1rem;text-align:left;border-bottom:1px solid #c9d9d2;vertical-align:top;}

/* Account access and navigation hierarchy. */
.nav-mobile-support,.nav-mobile-account{display:none}
.nav-account .nav-login{display:inline-flex;align-items:center;min-height:44px;border:0;border-radius:0;background:transparent;padding-inline:4px;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.nav-account .nav-signup{padding-inline:18px}
.nav .menu{text-decoration:none;border-radius:999px;padding-inline:13px}
.nav .menu .ui-icon{display:block}
.nav .menu span{display:inline}

/* Footer links remain discrete on every page, including narrow screens. */
.footer .footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0}
.footer .footer-links a{display:inline-block;line-height:1.45;text-underline-offset:4px}

@media(max-width:900px){
  .navlinks.is-open{display:flex!important;z-index:20}
}

@media(max-width:760px){
  body.menu-open{overflow:hidden}
  .nav{position:sticky;top:0;background:#f7faf3;backdrop-filter:none;-webkit-backdrop-filter:none}
  .nav-inner{min-height:72px;padding:11px 16px;gap:11px}
  .nav .logo{width:clamp(116px,31vw,146px)}
  .nav-account{margin-left:auto;gap:0}
  .nav-account .nav-login{display:inline-flex;font-size:13px;padding-inline:3px;min-width:auto}
  .nav-account .nav-signup{display:none}
  .nav .menu{display:inline-flex;min-height:42px;min-width:auto;padding-inline:11px;gap:7px;border:1px solid #afc1b8;font-size:13px;font-weight:600}
  .nav .menu .ui-icon{width:18px;height:18px}
  .nav .menu span{display:inline}
  .navlinks.is-open{position:fixed;top:var(--nav-drawer-top,72px);bottom:0;left:0;right:0;display:flex!important;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:13px 22px calc(26px + env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;background:#f3f7f3;border-top:1px solid #d1dfd7;border-bottom:0;box-shadow:none}
  .navlinks.is-open>a{display:flex;align-items:center;min-height:55px;padding:8px 0;border-bottom:1px solid #d1dfd7;font-size:20px;font-weight:600;text-decoration:none}
  .navlinks.is-open>a[aria-current="page"]{text-decoration:underline;text-underline-offset:6px}
  .navlinks.is-open .nav-mobile-support{display:grid;grid-template-columns:1fr 1fr;gap:2px 18px;margin-top:15px}
  .nav-mobile-support a{display:flex;align-items:center;min-height:43px;padding:6px 0;border-bottom:1px solid #dbe6df;color:#47645b;font-size:12px;line-height:1.35;text-decoration:none}
  .navlinks.is-open .nav-mobile-account{display:grid;gap:4px;margin-top:20px;padding:20px;border-radius:12px;background:#244140;color:#f3f7f3}
  .nav-mobile-account>span{font-size:11px;color:#cbdcd3}
  .nav-mobile-account>strong{font-size:17px;line-height:1.35}
  .nav-mobile-account .nav-mobile-signup{display:flex;align-items:center;justify-content:space-between;min-height:48px;margin-top:12px;padding:12px 16px;border:0;border-radius:8px;background:#c1f99b;color:#173832;font-size:14px;font-weight:700;text-decoration:none}
}

@media(max-width:370px){
  .nav-inner{padding-inline:12px;gap:8px}
  .nav .logo{width:108px}
  .nav .menu{padding-inline:9px}
  .nav-account .nav-login{font-size:12px}
  .navlinks.is-open{padding-inline:18px}
}

/* Release-audit round (September 2026). Type floor, target size, playback
   controls, lazy-image grounds and the phone walkthrough height. */
.hp-perspective-labels{font-size:12px}
.hp-home-revised .hp-hero-context{font-size:13px}
.pc-offer-note,.pc-offer-heading span{font-size:12px}
.cat-hero-proof{font-size:12px}
.lp-crumb,.lp-crumb a{font-size:12px}
.hp-programme-name > span,.hp-route-label span{font-size:12px}
@media(max-width:760px){
  .text-link,.lp-crumb a,.pc-back,.hp-hero-context a,.faculty-entry .text-link,.ab-team-profile,.cat-course-link,.cat-context-link{min-height:44px;display:inline-flex;align-items:center}
  .lp-crumb{align-items:center;gap:6px 10px;font-size:13px}
  .lp-crumb a{font-size:13px}
  .hp-flow-panel{min-height:0;height:auto}
  .hp-programme-description p,.hp-programme-entry small,.hp-route-label span{font-size:12.5px}
}
.hp-flow-controls button,.cat-method-controls button,[data-of-play],[data-content-play]{border:1px solid #b9c8c0;border-radius:999px;background:#fff;padding:6px 14px;min-height:34px;color:#244140;font-size:12.5px;font-weight:600;gap:8px}
.hp-flow-controls button:hover,.cat-method-controls button:hover{background:#eef4ef}
.hp-flow-controls button .ui-icon,.cat-method-controls button .ui-icon{width:14px;height:14px}
.forest .hp-flow-controls button,.forest .cat-method-controls button{background:transparent;color:#eef8ea;border-color:#6c837a}
.ab-team-photo,.partner-photo,.certificate-figure,.ab-hero-photo>img{background:#e4ece6}
.ab-team-photo-inset{background:#1f2f2d;display:grid;place-items:center}
.ab-team-photo-inset img{object-fit:contain;padding:10px;background:transparent}

/* Phone type floor (12px) for labels, captions and controls, and 24px targets
   for every in-content link and button, without changing markup. */
@media(max-width:760px){
  main :is(small,dt,th,time,.hp-label,.cat-label,.lp-kicker,.pc-label,.ps-detail-label,.ps-scope,.hp-priority-note,.lifecycle-caption,.cat-context-link,.ab-team-profile,.ab-people-tabs button,.hp-scope button,.hp-editorial-footer,.hp-editorial-footer a,.hp-editorial-footer span,.cw-risk-reference,.cw-risk-source,.of-people span,.hp-programme-entry small,.cat-check-action>span,.cat-price small,.cat-fiar-facts span,.cat-method-tabs button,.cat-method-controls,.hp-flow-controls,.hp-tab-label,.hp-investigation-entry span,.hp-org-action span,.hp-skill-row span,.lp-byline,.lp-byline a,.lp-byline span,.faculty-entry .hp-label,.hp-route-label span,.ab-hero-caption,.ab-hero-caption span){font-size:12px}
  main a:not(.btn):not(.nav-mobile-signup){padding-block:6px}
  main .btn,main .text-link,main .cat-course-link{padding-block:13px}
  main button:not(.btn){min-height:32px}
  footer a{display:inline-block;padding-block:6px}
  .nav-brand{display:inline-flex;align-items:center;min-height:44px}
}
@media(max-width:760px){
  main :is(.hp-scene-heading span,.hp-reference span,.hp-reference dt,.hp-evidence span,.cat-case-sheet>span,.cat-case-sheet dt,.cw-risk-reference,.cw-risk-source,.cw-jurisdiction span,.of-region span,.of-summary span,.ocl-frame span,.lp-source,.lp-source a,.lp-related-kicker,.ab-hero-caption){font-size:12px}
}
/* A link to a page that is only in English says so, quietly (translation audit A25): in the link's own colour, not bold,
   a little smaller, and inline-block so the link's underline does not run under it. The space before it is its own
   inline-block for the same reason; a margin instead would go with a cue that wraps and set it in from the words. The
   last word holds on to that space, so the line breaks after it, not before (src/i18n/page-text.mjs). These spans only
   hold the cue in place: a component's rule for the spans in its links (".x a span") must not restyle them. */
.lang-cue{display:inline-block;font-weight:400;font-size:.875em;letter-spacing:0;text-transform:none;white-space:nowrap}
:is(.lang-cue-run,.lang-cue-glue){display:inline!important;margin:0!important;padding:0!important;border:0!important;background:none!important;font:inherit!important;color:inherit!important;letter-spacing:inherit!important;text-transform:inherit!important}
.lang-cue-glue{white-space:nowrap!important}
.lang-cue-gap{display:inline-block!important;margin:0!important;padding:0!important;font:inherit!important;white-space:pre!important}
.lang-cue-note{margin:0 0 .75em}
/* The menu bar's own labels are the menu's headings; the links in each menu say which pages are in English. The bar has
   no width to spare (public/styles/languages.css sizes it for each edition): a visible cue there pushed the language
   switcher out of it on narrower laptop screens. There it is for screen readers only. */
.site-navigation .sn-top-link :is(.lang-cue-gap,.lang-cue){position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
/* /styles/request-forms.css?v=enquiry-redesign-7 */
/* Request forms share the Centre's editorial layout and linked brand mark. */
.request-section,.pt-enquiry{background:#edf3ee;padding-block:88px}
.request-layout,.pt-enquiry-grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:0;align-items:stretch}
.request-intro,.pt-enquiry-grid>div:first-child{background:#244140;color:#f3f7f3;padding:48px 40px;display:flex;flex-direction:column;align-items:flex-start;border-radius:16px 0 0 16px}
.request-mark{width:66px;height:46px;color:#bffa97;margin:0 0 42px}
.request-intro .offer-kicker,.pt-enquiry .pt-context{color:#bed2c9;font-size:14px;font-weight:600;margin:0 0 18px}
.request-layout .request-intro h2,.pt-enquiry-grid>div:first-child h2{font-size:clamp(32px,3.1vw,44px);line-height:1.12;letter-spacing:-1.3px;white-space:pre-line;color:#f3f7f3;margin:0;max-width:13ch;text-wrap:balance}
.request-layout .request-intro>p:not(.offer-kicker),.pt-enquiry-grid>div:first-child>p:not(.pt-context){font-size:17px;line-height:1.65;color:#c4d7ce;margin:26px 0 0;max-width:32ch}
.request-next{border-top:1px solid #52716b;margin-top:auto;padding-top:26px;min-width:0;width:100%}
.request-intro>p+.request-next{margin-top:62px}
.request-next>span{font-size:14px;font-weight:600;color:#bffa97}
.request-next p{font-size:15px;line-height:1.65;margin:12px 0 28px;color:#c4d7ce}
.request-intro .text-link,.pt-enquiry .pt-email{color:#f3f7f3;font-size:14px;max-width:100%;overflow-wrap:anywhere;gap:10px}
.request-paper,.pt-form-region{background:#fff;padding:42px 44px;border-radius:0 16px 16px 0;min-width:0}
.request-form{gap:28px}
.request-form .b2b-form-context{padding-bottom:22px;border-bottom:1px solid #cfddd4;font-size:13px;line-height:1.5;margin:0}
.request-form .b2b-form-context strong{font-size:16px;font-weight:600;line-height:1.45;margin-top:3px}
.request-form .request-needs{display:block;margin:0;padding:0;border:0}
.request-form .request-needs legend,.request-group h3,.pt-enquiry-form>fieldset>legend{font-size:17px;font-weight:600;line-height:1.5;margin:0 0 18px;padding:0;color:#244140;display:block;letter-spacing:-.25px}
.request-number{display:inline-block;color:#526e65;font-size:12px;font-weight:600;letter-spacing:0;margin-right:12px;font-variant-numeric:tabular-nums}
.request-needs legend small{font-size:12px;font-weight:400;color:#526e65;margin-left:8px}
.request-choice-grid,.pt-enquiry .pt-route-choice{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.request-choice-grid label,.pt-route-choice label{min-width:0;position:relative}
.request-form .request-choice-grid span,.pt-enquiry .pt-route-choice span{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;height:100%;padding:14px 16px;border:1px solid #cdded4;border-radius:10px;background:#fff;color:#244140;font-size:14px;font-weight:600;line-height:1.4;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color .18s,box-shadow .18s}
.request-form .request-choice-grid input:checked+span,.pt-enquiry .pt-route-choice input:checked+span{background:#fff;color:#244140;border-color:#244140;box-shadow:inset 0 0 0 1px #244140}
.request-choice-grid input:focus-visible+span,.pt-route-choice input:focus-visible+span{outline:2px solid #087b65;outline-offset:3px}
.request-choice-grid i{display:grid;place-items:center;width:20px;height:20px;flex:0 0 20px;border:1.5px solid #9cb5a8;border-radius:50%;background:#fff;position:relative}
.request-choice-grid input:checked+span i{border-color:#244140;background:#244140;box-shadow:none}
.request-choice-grid input:checked+span i::after{content:"";width:8px;height:8px;border-radius:50%;background:#c1f99b}
.request-choice-grid label:hover span,.pt-route-choice label:hover span{border-color:#9cb5a8}
.request-choice-grid label:hover input:checked+span,.pt-route-choice label:hover input:checked+span{border-color:#244140}
.request-form .b2b-form-grid,.pt-enquiry .pt-fields{gap:24px 26px}
.request-form .b2b-field label,.pt-enquiry-form .pt-fields label,.pt-enquiry-form>label{font-size:13px;color:#244140;font-weight:600;margin-bottom:7px;line-height:1.5}
.request-form .b2b-field input,.pt-enquiry-form .pt-fields input{border:0;border-bottom:1px solid #9cb5a8;border-radius:0;background:#f7f9f5;padding:12px;min-height:48px;font-size:16px;line-height:1.5;width:100%;color:#244140}
.request-form .b2b-field textarea,.pt-enquiry-form>textarea{border:1px solid #bdcfc4;background:#f7f9f5;border-radius:4px;padding:14px;min-height:112px;font-size:16px;line-height:1.6;width:100%;color:#244140;resize:vertical}
.request-form textarea::placeholder,.pt-enquiry-form textarea::placeholder{color:#657d72;opacity:1}
.request-form input:focus-visible,.request-form textarea:focus-visible,.pt-enquiry-form input:focus-visible,.pt-enquiry-form textarea:focus-visible{outline:2px solid #218b76;outline-offset:3px}
.request-form .b2b-form-planning{margin:20px 0 0;padding:14px 0;border-block:1px solid #d7e1da}
.request-form .b2b-form-planning summary{font-size:13px;line-height:1.6;cursor:pointer;list-style:none;padding-right:10px}
.request-form .b2b-form-planning summary span{white-space:nowrap}
.request-group h3{margin-bottom:18px}
.request-submit{border-top:1px solid #cfddd4;padding-top:22px;display:flex;flex-direction:column;gap:18px;align-items:flex-start}
.request-submit .b2b-form-privacy{font-size:12px;line-height:1.6;margin:0;max-width:48ch}
.request-submit .btn,.pt-enquiry .pt-form-action .btn{display:flex;align-items:center;justify-content:space-between;gap:36px;width:100%;padding:17px 22px;min-height:56px;border-radius:6px;background:#244140;color:#fff;font-size:16px}
.request-submit .btn:hover,.pt-enquiry .pt-form-action .btn:hover{background:#173c35}
.request-submit .btn:disabled,.pt-form-action .btn:disabled{opacity:.65;cursor:wait}
.request-form [aria-invalid=true],.pt-enquiry-form [aria-invalid=true]{border-color:#a13f35!important;background:#fff7f4!important}
.b2b-form-error,.pt-form-errors{font-size:14px;line-height:1.6}
/* The confirmation takes the form's place in its white panel: a forest mark with a lime tick, where and when the reply
   comes, what was asked for, and the call (form redesign, owner, 23 October 2026). */
body[data-page] .request-confirmation{outline:none;color:#203432}
body[data-page] .request-confirmation-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#244140;color:#c1f99b}
body[data-page] .request-confirmation h3{margin:20px 0 10px;font-size:28px;line-height:1.2;letter-spacing:-.02em;font-weight:600;color:#203432}
body[data-page] .request-confirmation p{margin:0;max-width:46ch;font-size:16px;line-height:1.6;color:#526d64}
body[data-page] .request-confirmation p strong{font-weight:600;color:#203432;overflow-wrap:anywhere}
body[data-page] .request-confirmation-summary{margin-top:28px}
body[data-page] .request-confirmation-summary>p{margin:0 0 6px;font-size:13px;font-weight:600;line-height:1.5;color:#526d64}
body[data-page] .request-confirmation-summary dl{display:block;margin:0;font-size:inherit;border-top:1px solid #cdded4}
body[data-page] .request-confirmation-summary dl div{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid #cdded4}
body[data-page] .request-confirmation-summary dt{font-size:15px;font-weight:600;color:#244140}
body[data-page] .request-confirmation-summary dd{margin:0;font-size:15px;color:#203432;font-variant-numeric:tabular-nums;white-space:nowrap}
body[data-page] .request-confirmation-talk{display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:14px;align-items:center;margin-top:28px;padding:16px 18px;border-radius:12px;background:#f6f8f6}
body[data-page] .request-confirmation-talk img{grid-row:1/4;width:44px;height:44px;border-radius:50%;object-fit:cover;object-position:center 18%}
body[data-page] .request-confirmation-talk p{margin:0;font-size:14px;line-height:1.4;color:#526d64}
body[data-page] .request-confirmation-talk a{justify-self:start;display:inline-flex;align-items:center;gap:8px;min-height:32px;font-size:16px;font-weight:600;color:#244140}
body[data-page] .request-confirmation-talk small{font-size:13px;line-height:1.4;color:#526d64}
body[data-page] .request-confirmation .request-confirmation-again{display:inline-flex;align-items:center;min-height:44px;margin-top:16px;padding:0;border:0;background:none;font:inherit;font-size:15px;font-weight:600;color:#244140;text-decoration:underline;text-underline-offset:5px;cursor:pointer}
/* The call is in the confirmation now, so its other copies step aside. */
.request-confirmation~.request-after,.request-section:has(.request-confirmation) .request-intro .request-talk{display:none!important}
.pt-enquiry-form{display:flex;flex-direction:column;gap:24px}
.pt-enquiry-form>fieldset{margin:0;padding:0;border:0}
.pt-enquiry-form>[data-partner-submodel] .pt-route-choice{grid-template-columns:1fr}
.pt-enquiry-form [hidden]{display:none!important}
.pt-enquiry .pt-form-guidance{font-size:12px;margin:0;color:#657d72;border-top:1px solid #cfddd4;padding-top:20px}
.pt-enquiry .pt-form-privacy{font-size:12px;margin:0;line-height:1.6}
.pt-enquiry .pt-email{margin-top:30px}
.pt-enquiry .pt-enquiry-hint{border-top:1px solid #52716b;padding-top:28px}
@media(min-width:1000px){.request-intro{position:relative}.pt-enquiry-grid>div:first-child{position:static}}
@media(max-width:1000px){.request-layout,.pt-enquiry-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.request-intro,.pt-enquiry-grid>div:first-child{padding:32px 26px}.request-paper,.pt-form-region{padding:32px 26px}.request-choice-grid,.pt-enquiry .pt-route-choice{grid-template-columns:1fr}}
@media(max-width:720px){.request-section,.pt-enquiry{padding-block:48px}.request-layout,.pt-enquiry-grid{grid-template-columns:1fr;gap:0}.request-intro,.pt-enquiry-grid>div:first-child{border-radius:12px 12px 0 0;padding:28px}.request-mark{width:48px;height:34px;margin-bottom:24px}.request-layout .request-intro h2,.pt-enquiry-grid>div:first-child h2{font-size:var(--ds-font-section,32px);max-width:16ch}.request-layout .request-intro>p:not(.offer-kicker),.pt-enquiry-grid>div:first-child>p:not(.pt-context){font-size:16px;margin-top:18px;max-width:40ch}.request-intro>p+.request-next{margin-top:28px}.request-next{padding-top:20px}.request-next p{margin:8px 0 18px}.request-paper,.pt-form-region{border-radius:0 0 12px 12px;padding:28px 24px}.request-form .b2b-form-grid,.pt-enquiry .pt-fields{grid-template-columns:1fr;gap:20px}.request-choice-grid,.pt-enquiry .pt-route-choice{grid-template-columns:1fr 1fr}.request-form .request-choice-grid span,.pt-enquiry .pt-route-choice span{font-size:13px;padding:11px;gap:8px}.request-form{gap:26px}.request-number{margin-right:8px}.request-form .request-needs legend,.request-group h3{font-size:16px}.request-needs legend small{display:none}}
@media(max-width:370px){.request-paper,.pt-form-region,.request-intro,.pt-enquiry-grid>div:first-child{padding:24px 18px}.request-choice-grid,.pt-enquiry .pt-route-choice{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.request-section *,.pt-enquiry *{transition:none!important}}
/* Override earlier sector-specific form rules; this component is the shared owner. */
.org-sector-page .request-layout{gap:0;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr)}
.org-sector-page .request-layout .request-intro h2{margin:0;color:#f3f7f3;font-size:clamp(32px,3.1vw,44px)}
.org-sector-page .request-form .request-group h3{font-size:17px;letter-spacing:-.25px;line-height:1.5;margin:0 0 18px}
.org-sector-page .request-form .b2b-form-context{font-size:13px}
.org-sector-page .request-form .b2b-form-privacy{font-size:12px}
.org-sector-page .request-intro .text-link{font-size:14px}
.b2b-enquiry-form fieldset legend .request-number{display:inline-block;background:none;border:0;border-radius:0;padding:0;color:#526e65;font-size:12px;cursor:inherit;width:auto;margin-right:12px}
@media(max-width:1000px) and (min-width:721px){.org-sector-page .request-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}}
@media(max-width:720px){.org-sector-page .request-layout{grid-template-columns:1fr;gap:0}.org-sector-page .request-layout .request-intro h2{font-size:var(--ds-font-section,32px)}.org-sector-page .request-form .request-group h3{font-size:16px}}
@media(max-width:720px){.request-intro,.pt-enquiry-grid>div:first-child{position:relative}.request-mark{position:absolute;left:28px;top:27px;width:30px;height:22px;margin:0}.request-intro .offer-kicker,.pt-enquiry .pt-context{padding-left:42px;min-height:24px;display:flex;align-items:center;margin-bottom:20px}.request-intro .request-next{display:none}.request-intro .text-link{margin-top:20px}.pt-enquiry .pt-enquiry-hint{display:none}.pt-enquiry .pt-email{margin-top:20px}}

/* Keep the shared identity and disclosure clear of legacy page-specific rules. */
.request-section .request-intro .audit-full-logo,.pt-enquiry .audit-full-logo{height:auto!important;aspect-ratio:416/66;margin-bottom:28px;filter:none}
.request-section .request-intro .offer-kicker,.pt-enquiry .pt-context{display:block;padding:0;min-height:0;margin:0 0 12px;font-size:12px;line-height:1.5;font-weight:600;color:#bffa97;text-align:left;letter-spacing:0}
body[data-page] form details>summary.request-disclosure{display:grid;grid-template-columns:minmax(0,1fr) 24px;align-items:center;gap:16px;padding:16px 0;padding-inline-end:0!important;min-height:56px;list-style:none;text-align:left}
body[data-page] form details>summary.request-disclosure::before,body[data-page] form details>summary.request-disclosure::after{content:none!important;display:none!important}
body[data-page] form details>summary.request-disclosure::marker{content:""}
body[data-page] form details>summary.request-disclosure::-webkit-details-marker{display:none}
.request-form .b2b-form-planning summary .request-disclosure-label{white-space:normal;color:#244140;font-weight:600}
.request-form .request-disclosure-label>span{font-weight:400;color:#526e65}
.request-disclosure-icon{display:block;width:24px;height:24px;flex:none;color:#244140}
form details[open]>summary .request-disclosure-vertical{display:none}
@media(max-width:720px){
 .request-section .request-intro .audit-full-logo,.pt-enquiry .audit-full-logo{margin-bottom:24px}
 .request-section .request-layout .request-intro h2,.pt-enquiry .pt-enquiry-grid>div:first-child h2{font-size:var(--ds-font-section,32px);line-height:1.15;letter-spacing:-.8px;text-align:left;text-wrap:initial;max-width:18ch}
 .request-section .request-layout .request-intro>p:not(.offer-kicker),.pt-enquiry .pt-enquiry-grid>div:first-child>p:not(.pt-context){font-size:15px;line-height:1.6;margin-top:16px}
 .request-form .b2b-form-planning{padding-block:8px}
}

/* One selection treatment across enquiry, delivery and partnership choices. */
body[data-page] :is(.request-form,.pt-enquiry-form) fieldset input:checked+span{box-shadow:none;border-color:#168575;background:#edf7e6;color:#244140}
body[data-page] :is(.request-form,.pt-enquiry-form) fieldset input:focus-visible+span{outline:2px solid #168575;outline-offset:3px}
body[data-page] form [hidden]{display:none!important}
body[data-page] form details>summary.request-disclosure .request-disclosure-label{white-space:normal}
body[data-page] form details>summary.request-disclosure .request-disclosure-icon{position:static;width:22px;height:22px;justify-self:end;transform:none}
/* Certificate choices stay single-column so programme names can be scanned. */
body[data-page] .request-form .request-certificates{border:0;border-top:1px solid #cfddd4;padding:22px 0 0;margin:0;min-width:0}
body[data-page] .request-certificates>legend{float:left;width:100%;padding:0;margin:0 0 6px;font-size:16px;line-height:1.4;font-weight:600;color:#244140}
body[data-page] .request-certificate-hint{clear:both;font-size:13px;line-height:1.5;color:#526e65;margin:0 0 16px}
body[data-page] .request-certificate-list{display:grid;gap:8px;width:100%}
body[data-page] .request-certificate-row{border:1px solid #cdded4;border-radius:12px;background:#fff;overflow:visible;transition:border-color .18s,box-shadow .18s}
body[data-page] .request-certificate-row:hover{border-color:#9cb5a8}
body[data-page] .request-certificate-row:has(input[type="checkbox"]:checked){border-color:#244140;box-shadow:inset 0 0 0 1px #244140;background:#fff}
body[data-page] .request-certificate-choice{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px 14px 18px;min-height:66px;position:relative;cursor:pointer;margin:0;-webkit-tap-highlight-color:transparent}
body[data-page] .request-certificate-choice input[type="checkbox"]{position:absolute;width:1px;height:1px;opacity:0;clip-path:inset(50%);margin:0}
body[data-page] .request-form .request-certificate-label{display:block;background:none!important;border:0!important;padding:0;border-radius:0;box-shadow:none!important;cursor:pointer;min-width:0;outline:none!important}
body[data-page] .request-certificate-label strong{display:block;font-size:15px;font-weight:600;line-height:1.4;color:#244140}
body[data-page] .request-certificate-label small{display:block;font-size:13px;font-weight:400;line-height:1.45;color:#526d64;margin-top:2px}
body[data-page] .request-certificate-check{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;padding:0;border:1.5px solid #9cb5a8;border-radius:7px;background:#fff;transition:background .18s,border-color .18s}
body[data-page] .request-certificate-choice input:checked~.request-certificate-check{background:#244140;border-color:#244140}
body[data-page] .request-certificate-choice input:checked~.request-certificate-check:after{content:"";width:10px;height:5px;border-left:2px solid #c1f99b;border-bottom:2px solid #c1f99b;transform:translateY(-1px) rotate(-45deg)}
body[data-page] .request-certificate-row:has(input[type="checkbox"]:focus-visible){outline:2px solid #087b65;outline-offset:3px}
/* Seats: a stepper from 1 up under a soft line inside the chosen card; typing a number still works. */
body[data-page] .request-certificate-seats{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;margin:0 16px 0 18px;padding:12px 0 14px;border-top:1px solid #e2ebe5}
body[data-page] .request-certificate-seats[hidden]{display:none}
body[data-page] .request-certificate-seats label{font-size:14px;font-weight:600;margin:0;color:#244140}
body[data-page] .request-certificate-stepper{flex:none;display:inline-grid;grid-template-columns:44px 56px 44px;height:44px;border:1px solid #b9ccc1;border-radius:10px;overflow:hidden;background:#fff;transition:border-color .18s,box-shadow .18s}
body[data-page] .request-certificate-stepper:focus-within{border-color:#244140;box-shadow:0 0 0 3px rgba(8,123,101,.16)}
body[data-page] .request-certificate-stepper:has(input[aria-invalid="true"]){border-color:#9a3e39}
body[data-page] .request-certificate-stepper button{display:grid;place-items:center;min-height:0;padding:0;border:0;border-radius:0;background:none;color:#244140;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .15s}
body[data-page] .request-certificate-stepper button:hover{background:#edf2e9}
body[data-page] .request-certificate-stepper button:active{background:#e1eadf}
body[data-page] .request-certificate-stepper button:disabled{color:#a9bdb2;background:none;cursor:default}
body[data-page] .request-certificate-seats input{position:static;opacity:1;clip:auto;clip-path:none;min-width:0;width:100%;height:100%;min-height:0;margin:0;padding:0;border:0;border-left:1px solid #e2ebe5;border-right:1px solid #e2ebe5;border-radius:0;background:#fff;color:#203432;font-size:16px;font-weight:600;line-height:1;font-variant-numeric:tabular-nums;text-align:center;appearance:textfield;-moz-appearance:textfield;outline:none}
body[data-page] .request-certificate-seats input::-webkit-outer-spin-button,body[data-page] .request-certificate-seats input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
body[data-page] .request-certificate-seats .b2b-field-error{flex-basis:100%;margin:0}

/* Organisations page: the dark introduction keeps its own height and stays in view beside the form, instead of
   stretching into an empty band as tall as the form (owner, 2 October 2026). Its form has no card of its own; the
   industry pages join the two into one split card, so they keep the stretch. Phones stack the two. */
@media(min-width:721px){main[data-org-plan] .request-layout .request-intro{align-self:start;position:sticky;top:112px;border-radius:16px}}
/* "Prefer to talk it over?" in the team quote panel (owner, 4 October 2026; src/content/enquiry-call.mjs): Vlad's
   photo beside three lines, the link in the panel's own link style with the third-party arrow. */
.request-intro .request-talk{display:grid;grid-template-columns:52px minmax(0,1fr);column-gap:16px;align-items:center;margin:34px 0 10px}
.request-intro .request-talk img{grid-row:1/4;width:52px;height:52px;border-radius:50%;object-fit:cover;object-position:center 18%}
.request-intro .request-talk p{margin:0;font-size:15px;line-height:1.4;color:var(--ds-on-dark-muted)}
.request-intro .request-talk a{justify-self:start;min-height:32px}
.request-intro .request-talk small{font-size:13px;line-height:1.4;color:var(--ds-on-dark-muted)}

/* Tablets (design review, 19 October 2026): from 721 to 900px the introduction beside the form was too narrow, and the
   email address and the call link broke across lines. The two parts stack there as on phones, each at the full width,
   keeping the tablet's type and spacing; the organisations page's introduction stops following the form. */
@media(min-width:721px) and (max-width:900px){
 .request-layout,.org-sector-page .request-layout{grid-template-columns:minmax(0,1fr)}
 .request-intro{border-radius:16px 16px 0 0}
 .request-paper{border-radius:0 0 16px 16px}
 main[data-org-plan] .request-layout{row-gap:28px}
 main[data-org-plan] .request-layout .request-intro{position:static;border-radius:16px}
}
@media(max-width:720px){body[data-page] .request-confirmation h3{font-size:24px}body[data-page] .request-certificate-choice{padding:14px 14px 14px 16px}body[data-page] .request-certificate-seats{margin:0 14px 0 16px}}
/* /styles/audit-refinements.css?v=programme-certificates-4 */
/* September 16 owner review: shared editorial components. */
[data-audit-playback]{display:none!important}
.audit-full-logo{display:block;width:218px!important;max-width:100%;height:auto!important;object-fit:contain;margin:0 0 32px}
.audit-info-icon{width:32px;height:32px;flex:none;color:#42685e}
.audit-note{display:flex;gap:24px;align-items:flex-start}
.audit-note p{margin:0;line-height:1.65}
.audit-exam-note{display:grid!important;grid-template-columns:minmax(0,1.5fr) minmax(220px,1fr);gap:24px 64px;border-top:1px solid #cad8d1;padding-top:28px;margin-top:44px;align-items:start}
.audit-exam-note h3{font-size:18px;margin:0 0 10px}
.audit-exam-note p{font-size:15px;max-width:68ch}
.exam-integrity-reference{display:flex;flex-direction:column;align-items:flex-start;gap:12px!important;min-width:0}
.exam-integrity-reference a{line-height:1.6;display:inline-flex;gap:8px;white-space:normal}
.audit-kicker{font-size:14px;font-weight:600;line-height:1.5;margin:0 0 18px;color:inherit}
.audit-check{padding:56px 0!important;background:transparent!important;border:0!important}
.audit-check-panel{display:grid!important;grid-template-columns:120px minmax(0,1fr) minmax(230px,.6fr);align-items:center;gap:40px;padding:44px!important;background:#e8f2d9!important;border:0!important;border-radius:18px!important;color:#244140;box-shadow:inset 0 4px #244140}
.audit-check-identity{display:flex;align-items:center;flex-direction:column;gap:12px;text-align:center;font-size:17px;font-weight:700;line-height:1.2}
.audit-check-glyph{position:relative;display:grid;place-items:center;width:74px;height:74px;border:2px solid #244140;border-radius:50%;font-size:52px;font-weight:500;line-height:1}
.audit-check-glyph i{position:absolute;right:-7px;bottom:0;width:24px;height:24px;background:#25b697;border:5px solid #e8f2d9;border-radius:50%}
.audit-check .audit-check-copy h2{font-size:clamp(27px,2.7vw,38px);line-height:1.13;margin:0 0 18px;color:#244140;letter-spacing:-1px}
.audit-check-copy>p{font-size:16px;line-height:1.65;margin:0;max-width:51ch}
.audit-check .audit-kicker{font-size:13px;margin-bottom:12px}
.audit-check-copy .course-discovery__scope{font-size:13px;margin-top:16px;color:#4c665a}
.audit-check-action{display:flex!important;flex-direction:column;align-items:flex-start;gap:16px}
.audit-check-action .btn{background:#244140!important;color:#fff!important;border-radius:7px;padding:17px 22px!important;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:56px;white-space:normal;font-size:16px;text-decoration:none!important}
.audit-check-action p{font-size:13px;line-height:1.5;margin:0!important}
.audit-check .course-discovery__optional{color:#526d61}
.audit-section-intro{display:grid!important;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,80px);align-items:start!important;margin-bottom:44px!important}
.audit-section-intro>p{padding:24px 28px!important;margin:0!important;max-width:none!important;background:#e1eaf2;border-left:3px solid #164873;border-radius:0 10px 10px 0;line-height:1.65;font-size:17px}
.audit-section-intro h2{margin:0!important}
.fiar-programme-page .audit-section-intro>p{color:#25435e}
.audit-cooperation dl{margin:22px 0}
.fiar-framework-list{min-width:0}
.audit-cooperation dl{display:block!important}
.audit-cooperation dd{min-width:0;overflow-wrap:break-word}
.fiar-framework-list a.text-link{white-space:normal}
.audit-cooperation dl>div{display:grid;grid-template-columns:110px 1fr;gap:16px;padding:16px 0;border-top:1px solid #cfdae4}
.audit-cooperation dt{font-weight:650}.audit-cooperation dd{margin:0;line-height:1.6}
.audit-cooperation a{white-space:normal}
.fiar-framework-list article>a{display:inline-flex;margin-top:14px;gap:12px}
.audit-certificate{perspective:1400px;padding:18px 20px 10px!important;align-self:center;width:100%;max-width:560px;margin-inline:auto!important;background:transparent!important;border:0;border-radius:0;box-shadow:none}
.audit-certificate>a{display:block;transform:rotateY(5deg) rotateZ(-1deg);transform-origin:center;border-radius:14px;overflow:hidden;box-shadow:10px 18px 32px #173c571a}
.audit-certificate>a>img{display:block;width:100%;height:auto;border-radius:12px}
.audit-certificate figcaption{margin-top:28px;padding:0;transform:none;font-size:13px;line-height:1.5}
.audit-certificate .cpd-reference>img{width:64px;height:64px;aspect-ratio:auto;object-fit:contain;flex-shrink:0;border-radius:0;box-shadow:none}
.rec-feature-art:has(>.audit-certificate){padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}
.audit-demo{background:#e4edf4;border-radius:16px;padding:36px;color:#143853;display:flex;flex-direction:column;align-items:flex-start;gap:24px}
.audit-demo h3{font-size:34px;line-height:1.13;letter-spacing:-1px;margin:0}
.audit-demo p{line-height:1.65;margin:0!important}
.audit-demo .btn{background:#0a416d;color:#fff}
.audit-demo .text-link{font-size:16px;white-space:normal}
.audit-crypto-practice{background:#edf2f6}
.audit-crypto-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:center}
.audit-crypto-layout h2{font-size:clamp(32px,3.6vw,48px);line-height:1.12;letter-spacing:-1.5px;margin:0 0 28px;color:#173d5b}
.audit-crypto-layout p{line-height:1.7;font-size:17px;max-width:60ch}
.audit-chain-art{padding:34px;background:#153c5a;border-radius:18px;color:#fff}
.audit-chain-art>div{display:grid;grid-template-columns:40px 1fr;gap:6px 18px;padding:20px 22px;border:1px solid #56758b;border-radius:7px}
.audit-chain-art span{grid-row:span 2;color:#c1f58d;font-variant-numeric:tabular-nums}
.audit-chain-art strong{font-size:20px}.audit-chain-art small{color:#bed0dc;font-size:14px}
.audit-chain-art>i{display:block;height:24px;border-left:1px solid #8baaac;margin-left:42px}
.audit-cepol{display:grid!important;grid-template-columns:1.08fr 1fr;gap:54px;align-items:center;padding:38px 42px!important;background:#083f6c!important;color:#fff!important;border-radius:14px;overflow:hidden}
.audit-cepol-heading{display:flex;gap:24px;align-items:flex-start}
.audit-cepol-heading img{width:48px;height:48px;flex:none;margin-top:4px}
.audit-cepol p{margin:0 0 16px!important;font-size:16px;line-height:1.65;color:#d8e7f0!important}
.audit-cepol-heading p{font-size:13px;line-height:1.5}
.audit-cepol h3{font-size:clamp(25px,2.5vw,34px);line-height:1.15;margin:0!important;letter-spacing:-.8px;color:#fff!important}
.audit-cepol a{color:#fff!important;white-space:normal;font-size:16px}
.audit-cepol.institution-proof{grid-template-columns:1.08fr 1fr!important;gap:54px!important}
.hp-path .audit-path-step{display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding-right:20px}
.hp-path .audit-path-step>strong{font-size:15px}.hp-path .audit-path-step>span{font-size:13px;line-height:1.55}.hp-path .audit-path-step>span[aria-hidden]{display:none}
.audit-edition-note{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 14px;font-size:14px!important;line-height:1.55!important;padding-top:16px;margin-top:20px!important;border-top:1px solid #cbd9d0;color:#3d6053!important;max-width:62ch}
.audit-edition-note strong{font-size:12px;color:#244140}
.audit-programme-facts{text-align:left;display:flex;flex-direction:column;align-items:flex-start;gap:6px;line-height:1.55}
[data-audit-team-flow] .hp-flow-panel{height:auto;min-height:430px;padding:30px!important}
[data-audit-team-flow] .hp-flow-panel[hidden]{display:none!important}
.audit-team-map{display:grid;gap:0;margin-top:22px}
.audit-team-map>a{display:grid;grid-template-columns:44px 1fr 20px;gap:16px;align-items:center;padding:16px 0;border-top:1px solid #d0dcd4;text-decoration:none;color:#244140}
.audit-team-map img{width:44px;height:44px;object-fit:contain}
.audit-team-map a>div{display:flex;flex-direction:column;gap:5px}
.audit-team-map span,.audit-team-map small{font-size:12px;line-height:1.45;color:#526e62}
.audit-team-map strong{font-size:19px;line-height:1.3}
.audit-team-map-note{font-size:13px!important;line-height:1.6;margin:18px 0 0!important;color:#536e63}
.audit-team-development{display:grid;gap:18px;margin-top:26px}
.audit-team-development>a{display:block;background:#f0f5eb;border-radius:8px;padding:20px;text-decoration:none;color:#244140}
.audit-team-development span{font-size:12px;color:#577266}
.audit-team-development h4{font-size:21px;line-height:1.25;margin:12px 0}
.audit-team-development p{font-size:15px!important;line-height:1.6!important;margin:0 0 14px!important}
.audit-team-development strong{font-size:14px;text-decoration:underline;text-underline-offset:4px}
.audit-membership-visual{max-width:640px;width:100%;display:grid;gap:14px;color:#244140}
.audit-member-session{display:grid;grid-template-columns:150px 1fr;background:#f0f5ec;color:#244140!important;border-radius:12px;overflow:hidden;text-decoration:none!important}
.audit-session-portraits{position:relative;overflow:hidden;background:#9cbbb0;min-height:210px}
.audit-session-portraits img{width:100%;height:100%;object-fit:cover;object-position:50% 15%;position:absolute;inset:0}
.audit-session-play{position:absolute;bottom:14px;left:14px;display:grid;place-items:center;background:#244140;color:#c1fa94;border:1px solid #87a997;width:40px;height:40px;border-radius:50%;font-size:25px}
.audit-member-session>div:last-child{padding:25px}
.audit-member-session p{font-size:11px!important;line-height:1.5!important;margin:0 0 14px!important;color:#526e62!important}
.audit-member-session h3{font-size:27px!important;line-height:1.14;letter-spacing:-.6px;margin:0 0 16px!important;color:#244140!important}
.audit-member-session div>span{display:block;font-size:12px;color:#526e62}
.audit-member-session strong{display:block;font-size:13px;margin-top:16px}
.audit-session-portraits .audit-session-play{display:none}
.audit-member-resources{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.audit-member-resources>a{background:#365852;border:1px solid #59756b;border-radius:9px;padding:20px;color:#fff!important;text-decoration:none!important;display:flex;align-items:flex-start;gap:16px}
.audit-member-resources strong{display:block;font-size:16px;line-height:1.4}
.audit-member-resources div>span{display:block;font-size:12px;line-height:1.5;color:#c1d5cb;margin-top:8px}
.audit-credit-number{font-size:32px;letter-spacing:-2px;line-height:1;color:#c0fa93}
.audit-resource-pages{position:relative;flex:none;width:32px;height:38px;display:block}
.audit-resource-pages i{position:absolute;inset:0;background:#81b6a1;border:1px solid #b1d7c7;transform:rotate(-10deg);border-radius:2px}
.audit-resource-pages i:nth-child(2){transform:rotate(5deg);background:#4b8a75}.audit-resource-pages i:nth-child(3){transform:rotate(17deg);background:#bfedb4}
.audit-member-record{display:flex;align-items:center;gap:20px;padding:20px;background:#e7efd9;border-radius:9px}
.audit-member-record strong{display:block;font-size:18px}.audit-member-record div>span{display:block;font-size:13px;line-height:1.55;margin-top:5px}
.audit-record-lines{width:40px;flex:none;display:grid;gap:7px}.audit-record-lines span{height:5px;border-bottom:1px solid #42735c;border-left:5px solid #42735c}
.audit-member-discount{display:flex;align-items:center;gap:20px;padding:12px 6px;color:#e7f2df!important;text-decoration:none!important}
.audit-member-discount strong{font-size:31px;letter-spacing:-1px;color:#c0fa93}.audit-member-discount span{font-size:14px;line-height:1.5}.audit-member-discount span:last-child{margin-left:auto}
.audit-membership-discount{display:grid;grid-template-columns:1fr 1.2fr auto;align-items:center;gap:28px;border-top:1px solid #cbd8cc;padding-top:32px;margin-top:40px}
.audit-membership-discount strong{font-size:26px}.audit-membership-discount p{margin:0;line-height:1.65}
.audit-contact-card .audit-full-logo{margin-bottom:28px;max-width:210px}
.audit-contact-card h3{margin:0 0 18px!important}.audit-contact-card p{margin:0 0 26px!important;line-height:1.65}
.lp-contact-bottom{align-items:start!important;gap:clamp(32px,6vw,80px)!important}
.audit-record-steps{padding:0;list-style:none;margin:28px 0 0}
.audit-record-steps li{display:grid;grid-template-columns:100px 1fr;gap:20px;border-top:1px solid #ccd9d0;padding:18px 0;line-height:1.6}
.audit-record-steps strong{font-size:15px}.audit-record-steps span{font-size:15px;color:#526f61}
.ll-platform-grid{gap:clamp(32px,6vw,80px)!important}.ll-record-basis{display:grid!important;grid-template-columns:36px 1fr;gap:18px 24px;margin-top:34px;padding-top:28px;border-top:1px solid #ccd9d0}
.ll-record-basis .text-link{grid-column:2;justify-self:start}.ll-record-basis p{margin:0;font-size:14px;line-height:1.65}
.audit-framework-explainer{padding:0!important;margin-top:0!important;margin-bottom:0!important}
.amlr-framework-section{padding-bottom:48px!important}
.amlr-framework-section details{margin-top:24px!important}
.amlr-framework-section details summary{padding-block:22px!important;line-height:1.55!important;gap:18px}
.amlr-framework-section .audit-framework-explainer details{margin-top:0!important;border-top:1px solid #cbd8d0}
.amlr-faculty-proof{align-items:start!important;gap:48px!important}.amlr-proof-links{display:flex;flex-wrap:wrap;gap:18px 28px!important}
.request-section .request-intro ol{padding-left:20px;line-height:1.8;color:#c4d7ce;margin-top:28px}
.request-intro .audit-full-logo{margin-bottom:36px}
.request-form>.btn{width:100%;justify-content:space-between;min-height:56px}
.request-form>.b2b-form-privacy{font-size:13px;line-height:1.65;padding-top:20px;border-top:1px solid #d2ddd5}
.request-form{display:flex;flex-direction:column}
@media(max-width:1050px){.audit-check-panel{grid-template-columns:85px 1fr;gap:30px;padding:32px!important}.audit-check-action{grid-column:2}.audit-member-session{grid-template-columns:125px 1fr}.audit-member-resources{grid-template-columns:1fr}.audit-cepol{gap:32px;padding:32px!important}.audit-crypto-layout{gap:40px}}
@media(max-width:760px){.audit-exam-note,.audit-section-intro,.audit-crypto-layout,.audit-cepol,.audit-membership-discount{grid-template-columns:1fr!important;gap:26px}.audit-check{padding-block:36px!important}.audit-check-panel{grid-template-columns:1fr;padding:28px!important;gap:24px}.audit-check-identity{flex-direction:row;text-align:left;font-size:18px;gap:16px}.audit-check-glyph{width:48px;height:48px;font-size:34px}.audit-check-glyph i{width:19px;height:19px}.audit-check-action{grid-column:auto;align-items:stretch}.audit-check-copy h2 br{display:none}.audit-check-copy h2{max-width:18ch}.audit-check-action .btn{width:100%}.audit-section-intro>p{padding:20px 24px!important}.audit-section-intro{margin-bottom:28px!important}.audit-certificate{max-width:520px;padding:8px!important}.audit-certificate>a{transform:none}.audit-demo{padding:28px}.audit-demo h3{font-size:30px}.audit-cooperation dl>div{grid-template-columns:80px 1fr}.audit-cepol-heading{gap:18px}.audit-cepol-heading img{width:36px;height:36px}.audit-cepol{padding:28px!important}.audit-cepol h3{font-size:27px}.audit-member-session{grid-template-columns:115px 1fr}.audit-member-session>div:last-child{padding:22px 18px}.audit-member-session h3{font-size:24px!important}.audit-member-resources{grid-template-columns:1fr 1fr}.audit-member-resources>a{padding:18px;flex-direction:column}.audit-member-resources strong{font-size:15px}.audit-member-record{gap:16px}.audit-member-discount{gap:15px}[data-audit-team-flow] .hp-flow-panel{padding:24px!important;min-height:0}.audit-team-map>a{grid-template-columns:36px 1fr 16px;gap:12px}.audit-team-map img{width:36px;height:36px}.audit-record-steps li{grid-template-columns:85px 1fr;gap:16px}.audit-framework-explainer{width:100%!important}.audit-full-logo{width:198px!important}.audit-note{gap:16px}.audit-exam-note p{font-size:14px}}
@media(prefers-reduced-motion:reduce){.audit-certificate>a{transform:none}}
@media(max-width:760px){.audit-cepol.institution-proof{grid-template-columns:1fr!important;gap:26px!important}}

#recognition-cpd .audit-section-intro>p{background:#edf3e8;border-left-color:#517968;color:#365d4c}
.audit-assessment-link{margin-top:24px;font-size:14px!important;white-space:normal}
.amlr-framework-reference summary{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px 20px!important;padding-right:48px!important}
.amlr-framework-reference summary small{font-size:13px;line-height:1.5;color:#567167}
/* /styles/navigation-refinements.css?v=link-directions-2 */
/* Shared presentation: navigation hierarchy and unobtrusive illustrations. */
button[data-audit-playback],
button[data-cass-playback-toggle],
button[data-content-play],
button[data-hp-play],
button[data-cat-play],
button[data-lifecycle-play],
button[data-of-play],
button[data-framework-play],
button[data-ll-play],
button[data-ll-replay],
button[data-brand-playback],
button[data-asset-pause],
button[data-asset-replay],
button[data-analyst-motion],
.cass-motion-footer button,
.motion-toggle,
button[aria-label^="Pause case"] { display: none !important; }

.hp-path .wrap {
  display: grid;
  grid-template-columns: 1.1fr repeat(3, minmax(0, 1fr));
  align-items: start;
  gap: 32px;
  padding-block: 30px;
}
.hp-path .hp-path-lead,
.hp-path .audit-path-step { margin: 0; padding: 0; display: grid; gap: 9px; align-content: start; }
.hp-path .hp-path-lead strong,
.hp-path .audit-path-step > strong {
  display: block; font-size: 16px; line-height: 1.4; font-weight: 650; letter-spacing: -.02em;
}
.hp-path .hp-path-lead span,
.hp-path .audit-path-step > span:not([aria-hidden]) {
  font-size: 14px; line-height: 1.55; color: #526d64; max-width: 27ch;
}
.hp-path .audit-path-step { text-decoration: none; }
.hp-path .audit-path-step strong::before { content: none; }
.hp-path .audit-path-step strong::after { content: none; }
.hp-path .audit-path-step:hover strong { text-decoration: underline; text-underline-offset: 5px; }
.hp-path .audit-path-step:focus-visible { outline: 2px solid #244140; outline-offset: 7px; }
.hp-path .audit-path-step > span[aria-hidden] { display: none; }

[data-page="business"] .sector-discovery-intro { align-items: start; }
[data-page="business"] .sector-discovery-intro h2 { max-width: 20ch; }
[data-page="business"] .sector-discovery-link {
  grid-template-columns: minmax(0,1fr) 24px;
  grid-template-rows: minmax(69px,auto) 1fr;
  align-content: start;
  gap: 16px 16px;
  padding: 28px;
  min-height: 205px;
  background: #eaf0e6;
}
[data-page="business"] .sector-discovery-link h3.sector-industry-name {
  grid-column: 1 / -1;
  margin: 0; color: #244140; font-size: clamp(23px,2.1vw,30px);
  line-height: 1.15; letter-spacing: -.035em; font-weight: 650;
  max-width: 21ch;
}
[data-page="business"] .sector-discovery-link p.sector-industry-benefit {
  grid-column: 1; margin: 0; font-size: 16px; line-height: 1.55;
  font-weight: 400; color: #526d64; align-self: start; max-width: 29ch;
}
[data-page="business"] .sector-discovery-link svg { grid-column: 2; grid-row: 2; align-self: end; margin-bottom: 3px; }
[data-page="business"] .sector-discovery-link:hover { background: #dfebde; }
[data-page="business"] .sector-discovery-link:focus-visible { outline: 2px solid #244140; outline-offset: 4px; }
@media(max-width:1100px) {
  .hp-path .wrap { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
  .hp-path .hp-path-lead { grid-column: 1 / -1; }
  [data-page="business"] .sector-discovery-options { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media(max-width:600px) {
  .homepage-page .hp-path { padding-block: 0; }
  .homepage-page .hp-path .wrap { grid-template-columns: 1fr; gap: 0; padding-block: 28px; }
  .homepage-page .hp-path .hp-path-lead { margin-bottom: 10px; gap: 5px; }
  .homepage-page .hp-path .audit-path-step { padding: 14px 28px 14px 0; border-bottom: 1px solid #d5e1d8; gap: 4px; position: relative; }
  .homepage-page .hp-path .audit-path-step strong::after { position: absolute; right: 0; top: 15px; margin: 0; }
  .homepage-page .hp-path .audit-path-step:last-child { border: 0; padding-bottom: 0; }
  .hp-path .audit-path-step > span:not([aria-hidden]) { max-width: none; }
  [data-page="business"] .sector-discovery-options { grid-template-columns: 1fr; }
  [data-page="business"] .sector-discovery-link { min-height: 165px; padding: 24px; }
  [data-page="business"] .sector-discovery-link h3.sector-industry-name { font-size: 26px; }
}
/* /styles/site-navigation.css?v=one-frame-2 */
/* One navigation system, shared by every page. */
.site-navigation{position:sticky!important;top:0;z-index:120!important;background:var(--sn-surface,#f8faf7)!important;color:var(--sn-ink,#244140)!important;border-bottom:1px solid var(--sn-border,#dce6df);overflow:visible!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;--sn-gutter:32px}
.site-navigation .nav-inner{position:relative;display:flex!important;align-items:center;gap:24px;max-width:1440px;width:100%;min-height:88px;margin:auto;padding:0 32px;box-sizing:border-box}
.site-navigation .nav-brand{position:relative;flex:0 0 auto;display:flex;align-items:center}
.site-navigation .logo{width:210px!important;height:auto!important;filter:none!important}
.site-navigation .sn-groups{display:flex;align-items:center;gap:6px;margin-left:auto}
.site-navigation .sn-group{position:static;border:0;margin:0;padding:0;background:none}
/* Each overview remains a real link; the adjacent button owns the disclosure. */
.site-navigation .sn-trigger{display:flex;align-items:center;color:var(--sn-ink,#244140)}
.site-navigation .sn-top-link{display:flex;align-items:center;min-height:88px;padding:20px 5px;color:var(--sn-ink,#244140)!important;font:500 15px/24px Inter,Arial,sans-serif;white-space:nowrap;box-sizing:border-box}
.site-navigation .sn-expand{display:grid;place-items:center;flex:0 0 32px;width:32px;min-height:44px;padding:0;margin:0;border:0;border-radius:6px;background:transparent;color:var(--sn-ink,#244140);cursor:pointer;appearance:none}
.site-navigation .sn-expand:hover{background:var(--sn-button-hover,#eaf2eb)}
.site-navigation .sn-expand:active{transform:scale(.97)}
.site-navigation .sn-chevron{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.6;transition:transform .2s cubic-bezier(.23,1,.32,1)}
.site-navigation .sn-current .sn-top-link,.site-navigation .sn-top-link:hover,.site-navigation .sn-group[data-open]:not([data-closing]) .sn-trigger :is(a,button){color:var(--sn-active,#147c69)!important}
.site-navigation .sn-group[data-open]:not([data-closing]) .sn-chevron{transform:rotate(180deg)}
.site-navigation a{color:#244140!important;text-decoration:none}
.site-navigation :is(a,button):focus-visible{outline:2px solid currentColor;outline-offset:3px}
.site-navigation[data-pointer-input] :is(a,button):focus{outline:none}
.site-navigation .sn-mobile-only,.site-navigation .sn-sheet-head,.site-navigation .sn-mobile-accounts,.site-navigation .sn-toggle{display:none}

/* Desktop: every menu opens in one frame under the bar, from the wordmark to "Create account" (owner, 16 October 2026).
   Moving across the menu changes what the frame holds; it never jumps to another place or width. */
.site-navigation .sn-panel[hidden]{display:none!important}
.site-navigation .sn-panel{position:absolute;top:100%;left:var(--sn-gutter);right:var(--sn-gutter);background:#fff;color:#244140;border:1px solid #dce6df;border-top:0;border-radius:0 0 18px 18px;box-shadow:0 24px 48px -16px #10242373;box-sizing:border-box;max-height:calc(100dvh - var(--sn-bottom,100px) - 16px);overflow:auto;overscroll-behavior:contain}
.site-navigation .sn-group[data-closing]>.sn-panel{pointer-events:none}
.site-navigation .sn-panel-head{display:none}
.site-navigation .sn-columns{display:grid;grid-template-columns:minmax(0,1fr);column-gap:48px;padding:32px 40px}
.site-navigation .sn-columns--split{grid-template-columns:minmax(0,7fr) minmax(0,3fr)}
.site-navigation .sn-panel--organisations .sn-columns--split{grid-template-columns:minmax(0,6fr) minmax(0,4fr)}
.site-navigation .sn-columns:has(>.sn-feature[hidden]){grid-template-columns:minmax(0,1fr)}
.site-navigation .sn-column h2{margin:0 0 12px 12px;font-size:12px;line-height:18px;font-weight:500;color:#577269;letter-spacing:0}
.site-navigation .sn-column ul{display:grid;list-style:none;padding:0;margin:0}
/* Each link fills its list item, so cards in a row match and plain links sit in the middle of their rows. */
.site-navigation .sn-column li{display:flex;padding:0;margin:0}
.site-navigation .sn-column li>a{flex:1;min-width:0}
.site-navigation .sn-column .sn-mobile-only{display:none}
.site-navigation .sn-column a{display:flex;flex-direction:column;gap:4px;box-sizing:border-box;border-radius:12px;transition:background-color .15s ease,color .15s ease}
.site-navigation .sn-link-title{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:16px;line-height:22px;font-weight:600}
.site-navigation .sn-link-title>span,.site-navigation .sn-link-copy{min-width:0}
.site-navigation .sn-description{display:block;color:#577269;font-size:13px;line-height:20px;font-weight:400}
/* Menu labels carry no arrow on desktop (docs/link-design-standard.md); the phone keeps the programme and course rows'. */
.site-navigation .sn-column a .brand-link__icon{display:none!important}
/* The main choice: cards in two columns (three in Resources) whose titles share a line. */
.site-navigation .sn-column--primary ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.site-navigation .sn-panel--resources .sn-column--primary ul{grid-template-columns:repeat(3,minmax(0,1fr))}
.site-navigation .sn-column--primary a{min-height:72px;padding:12px}
.site-navigation .sn-column--primary a:hover,.site-navigation .sn-column--primary a[aria-current="page"]{background:#f0f6f1}
.site-navigation .sn-column--primary .sn-programme-link{display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:16px;min-height:80px}
.site-navigation .sn-programme-badge{display:block;width:56px;height:56px;object-fit:contain}
.site-navigation .sn-link-copy{display:flex;flex-direction:column;gap:4px}
.site-navigation .sn-panel--about .sn-column--primary a{min-height:52px;justify-content:center;padding:0 12px}
/* The supporting column: plain links, smaller and lighter than the main choice. */
.site-navigation :is(.sn-column--secondary,.sn-feature){border-left:1px solid #e3ebe6;padding-left:40px}
.site-navigation .sn-column--secondary h2{margin-left:0}
.site-navigation .sn-column--secondary ul{grid-auto-rows:minmax(44px,auto)}
.site-navigation .sn-column--secondary a{flex-direction:row;align-items:center;padding:0;border-radius:0}
.site-navigation .sn-column--secondary .sn-link-title{flex:1;justify-content:flex-start;gap:8px;font-size:15px;font-weight:500}
.site-navigation .sn-column--secondary a:is(:hover,[aria-current="page"]){color:#147c69!important}
.site-navigation .sn-panel--organisations .sn-column--secondary ul{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(38px,auto);column-gap:24px}
.site-navigation .sn-panel--organisations .sn-column--secondary .sn-link-title{font-size:14px;line-height:20px}
.site-navigation .sn-panel--about .sn-column--secondary ul{grid-auto-rows:minmax(52px,auto);row-gap:8px}
/* A featured card where a menu has one column of links: the membership price, or the next event. */
.site-navigation .sn-feature{display:flex}
.site-navigation .sn-feature[hidden]{display:none}
.site-navigation .sn-price-card{flex:1;display:flex;flex-direction:column;gap:6px;padding:20px;border-radius:14px;background:#244140;color:#f5faf5}
.site-navigation .sn-price-card p{margin:0}
.site-navigation .sn-price-title{font-size:13px;line-height:20px;font-weight:600;color:#c1f99b}
.site-navigation .sn-price-card .sn-price{margin-top:6px;font-size:28px;line-height:34px;font-weight:600;letter-spacing:-.6px}
.site-navigation .sn-price-note{font-size:13px;line-height:20px;color:#c5d3cc}
.site-navigation .sn-price-join{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;margin-top:auto;padding:0 16px;border-radius:8px;background:#c1f99b;color:#1d3534!important;font-size:14px;line-height:20px;font-weight:600;transition:background-color .15s ease,transform .16s ease-out}
.site-navigation .sn-price-join:hover{background:#d4fbb9}
.site-navigation .sn-price-join:active{transform:scale(.97)}
.site-navigation .sn-event{flex:1;display:flex;flex-direction:column;gap:6px;min-height:102px;box-sizing:border-box;padding:16px 20px;border-radius:14px;background:#eef4ef;transition:background-color .15s ease}
.site-navigation .sn-event:hover{background:#e3eee6}
.site-navigation .sn-event-when{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;line-height:18px;font-weight:600;color:#087763}
.site-navigation .sn-event-title{font-size:15px;line-height:21px;font-weight:600;text-wrap:balance}
/* The strip along the foot of every menu: its line on the left, its overview link in the same place on the right. */
.site-navigation .sn-panel-foot{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:64px;padding:12px 40px 12px 52px;background:#f4f8f5;border-top:1px solid #e3ebe6;box-sizing:border-box}
.site-navigation .sn-panel-foot p{margin:0;font-size:14px;line-height:20px;font-weight:500;color:#577269}
.site-navigation .sn-panel--courses .sn-panel-foot p{font-weight:400}
.site-navigation .sn-panel-foot p a{font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.site-navigation .sn-panel-foot p a:hover{color:#147c69!important}
.site-navigation .sn-overview{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;font-size:14px;line-height:20px;font-weight:600;white-space:nowrap}
/* One underline slides between the open menus (public/site-navigation.js); the page behind an open menu dims. */
.site-navigation .sn-indicator{position:absolute;left:0;bottom:0;width:0;height:3px;background:#23b99a;opacity:0;pointer-events:none}
.site-navigation .sn-scrim{position:fixed;inset:var(--sn-bottom,88px) 0 0;z-index:-1;background:var(--sn-scrim,#0f212066);opacity:0;visibility:hidden;transition:opacity .15s cubic-bezier(.23,1,.32,1),visibility 0s linear .15s}
.site-navigation[data-panel-open] .sn-scrim{opacity:1;visibility:visible;transition:opacity .2s cubic-bezier(.23,1,.32,1),visibility 0s}

.site-navigation .nav-account{display:flex!important;align-items:center;gap:17px;flex:0 0 auto;margin:0}
.site-navigation .nav-login{color:var(--sn-ink,#244140)!important;font-size:14px;font-weight:500;white-space:nowrap;border:0;text-decoration:none!important}
.site-navigation .nav-signup{background:transparent!important;color:var(--sn-ink,#244140)!important;border:1px solid var(--sn-button-border,#afc4b9)!important;border-radius:8px;box-shadow:none;padding:11px 15px;min-height:0;font-size:14px;line-height:20px;font-weight:600;white-space:nowrap}
.site-navigation .nav-signup:hover{background:var(--sn-button-hover,#eaf2eb)!important}
@media(max-width:1280px) and (min-width:1181px){.site-navigation{--sn-gutter:24px}.site-navigation .nav-inner{gap:15px;padding-inline:24px}.site-navigation .logo{width:175px!important}.site-navigation .sn-top-link{font-size:14px;padding-inline:3px}.site-navigation .sn-groups{gap:2px}.site-navigation .nav-account{gap:12px}.site-navigation .sn-columns{column-gap:40px;padding-inline:32px}.site-navigation :is(.sn-column--secondary,.sn-feature){padding-left:32px}.site-navigation .sn-panel-foot{padding-inline:44px 32px}}

/* Forest programme heroes share the homepage header palette. FIAR keeps its
   separate treatment; the open phone menu always uses the light palette. */
body[data-page] .site-navigation .nav-brand .logo{opacity:1!important}
body[data-page] .site-navigation .nav-brand::after{content:none!important}
body:is([data-page="home"]:not(.home-nav-light),:has(.programme-hero[data-header-theme="dark"]):not(.course-nav-light)) .site-navigation:not([data-mobile-open]){
 --sn-surface:var(--opening-forest,var(--amlcc-forest,#244140));--sn-ink:#f5faf5;--sn-border:transparent;
 --sn-active:#c1f99b;--sn-button-border:#78958a;--sn-button-hover:#ffffff0d;--sn-scrim:#0f21209e;
 /* Opaque paint bleed closes fractional sticky-layer seams in Safari.
    Shadows do not enlarge the scrollable page or shift the navigation. */
 border:0;box-shadow:0 1px 0 1px var(--sn-surface);
}
body:is([data-page="home"]:not(.home-nav-light),:has(.programme-hero[data-header-theme="dark"]):not(.course-nav-light)) .site-navigation:not([data-mobile-open]) .nav-brand .logo{opacity:0!important}
/* Over a dark hero the reversed wordmark shows, so the link's own colour (its focus ring) turns light with it. */
body:is([data-page="home"]:not(.home-nav-light),:has(.programme-hero[data-header-theme="dark"]):not(.course-nav-light)) .site-navigation:not([data-mobile-open]) .nav-brand{color:#f8faf7!important}
body:is([data-page="home"]:not(.home-nav-light),:has(.programme-hero[data-header-theme="dark"]):not(.course-nav-light)) .site-navigation:not([data-mobile-open]) .nav-brand::after{
 content:""!important;position:absolute;inset:0;pointer-events:none;
 background:url('/assets/wordmark-endorsed-reverse.svg') left center/contain no-repeat;
}
.site-navigation .sn-toggle svg path{transform-origin:12px 12px;transition:transform .2s cubic-bezier(.23,1,.32,1),opacity .15s}
.site-navigation .sn-toggle[aria-expanded="true"] path:nth-child(1){transform:translateY(5px) rotate(45deg);transform-origin:12px 7px}
.site-navigation .sn-toggle[aria-expanded="true"] path:nth-child(2){opacity:0}
.site-navigation .sn-toggle[aria-expanded="true"] path:nth-child(3){transform:translateY(-5px) rotate(-45deg);transform-origin:12px 17px}

/* Until site-navigation.js marks the menu ready, the submenu chevrons keep their space but stay out of sight, so the
   desktop menu does not shift when they appear. The menu without JavaScript is in SiteLayout.astro's <noscript>. */
.site-navigation:not([data-nav-ready]) .sn-expand{visibility:hidden}
/* Without the script the phone and tablet menu is a plain list of links (SiteLayout.astro's <noscript>), so the sheet's
   head and shadow stay away. */
.site-navigation:not([data-nav-ready]) .sn-sheet-head{display:none}
.site-navigation:not([data-nav-ready]) .sn-groups{box-shadow:none}

/* Phones and tablets: one scrolling list of sections, each opening in place on its own; the language and the account
   box sit at its foot. */
.site-navigation .sn-mobile-label{display:none}
@media(max-width:1180px){
 .site-navigation .nav-inner{min-height:76px;padding:0 24px;gap:20px}
 .site-navigation .logo{width:192px!important}
 .site-navigation .nav-inner>.nav-account{margin-left:auto}
 .site-navigation .nav-inner>.nav-account .nav-signup{display:none}
 .site-navigation .nav-inner>.nav-account .nav-login{display:flex;align-items:center;min-height:44px}
 .site-navigation .sn-toggle{display:flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;min-height:48px;background:none;border:0;padding:8px;color:var(--sn-ink,#244140);cursor:pointer}
 .site-navigation .sn-toggle svg{width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:1.7}
 .site-navigation .sn-indicator,.site-navigation .sn-panel-foot{display:none}
 .site-navigation .sn-column .sn-mobile-only{display:flex}
 .site-navigation .sn-groups{--sn-ink:#244140;--sn-active:#147c69;display:none;position:fixed;top:var(--sn-bottom,76px);left:0;right:0;bottom:0;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:4px 24px max(24px,env(safe-area-inset-bottom));background:#f8faf7;color:#244140;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;box-sizing:border-box}
 .site-navigation[data-mobile-open] .sn-groups{display:flex}
 .site-navigation[data-mobile-closing] .sn-groups{pointer-events:none}
 .site-navigation .sn-group{flex-shrink:0;border-bottom:1px solid #dce6df}
 .site-navigation .sn-trigger{justify-content:space-between;gap:16px}
 .site-navigation .sn-top-link{flex:1;min-height:56px;padding:16px 0;font-size:18px;font-weight:600;white-space:normal}
 .site-navigation[data-nav-ready] .sn-top-link{display:none}
 .site-navigation[data-nav-ready] .sn-expand{display:flex;justify-content:space-between;align-items:center;flex:1;width:100%;min-height:56px;padding:0;border-radius:0;text-align:left;gap:20px;font:600 18px/1.3 Inter,Arial,sans-serif}
 .site-navigation .sn-mobile-label{display:block}
 .site-navigation .sn-expand:hover{background:transparent}
 .site-navigation .sn-expand:active{transform:none}
 .site-navigation .sn-chevron{flex:none;width:14px;height:14px;padding:7px;box-sizing:content-box;border-radius:6px;background:#e9efea;color:#244140;stroke-width:1.8;transform:none!important;transition:transform .2s cubic-bezier(.23,1,.32,1),background-color .15s ease,color .15s ease}
 .site-navigation .sn-expand[aria-expanded="true"] .sn-chevron{transform:rotate(180deg)!important;background:#244140;color:#f8faf7}
 .site-navigation .sn-panel{position:static;max-height:none;padding:0 0 16px;border:0;border-radius:0;box-shadow:none;background:none;overflow:visible}
 .site-navigation .sn-panel-head{display:block}
 .site-navigation .sn-overview{display:flex;justify-content:space-between;min-height:48px;padding:0 14px;border-radius:10px;background:#e9f0ea;font-size:15px;line-height:20px;white-space:normal}
 .site-navigation :is(.sn-columns,.sn-columns--split){display:block;padding:0}
 .site-navigation .sn-column h2{margin:18px 0 4px;color:#577269}
 .site-navigation .sn-column+.sn-column h2{margin-top:14px}
 .site-navigation :is(.sn-column--secondary,.sn-feature){border:0;padding:0}
 .site-navigation .sn-column ul,.site-navigation .sn-column--primary ul,.site-navigation .sn-panel--resources .sn-column--primary ul{display:block}
 .site-navigation .sn-column a,.site-navigation .sn-column--primary a,.site-navigation .sn-panel--about .sn-column--primary a{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:2px;min-height:48px;padding:0;border-radius:0;background:none}
 .site-navigation .sn-link-title{font-size:15px;line-height:21px;font-weight:500}
 .site-navigation .sn-description{font-size:13px;line-height:19px}
 .site-navigation .sn-column .sn-described{min-height:64px}
 .site-navigation :is(.sn-described,.sn-programme-link) .sn-link-title{font-weight:600}
 .site-navigation .sn-panel--organisations .sn-column--secondary ul{display:grid;grid-template-columns:minmax(0,1fr);grid-auto-rows:minmax(44px,auto)}
 .site-navigation .sn-panel--organisations .sn-column--secondary .sn-link-title{font-size:15px}
 .site-navigation .sn-column a:is(:hover,[aria-current="page"]){color:#147c69!important}
 /* Touch screens keep a tapped row's hover state, so the desktop card tint stays off here. */
 .site-navigation .sn-column--primary a:is(:hover,[aria-current="page"]){background:none}
 /* Arrows mark the programme rows and the course options, as in the design; the other rows are plain. */
 .site-navigation .sn-column a .brand-link__icon{display:inline-block!important}
 .site-navigation .sn-panel--courses .sn-column--secondary .sn-link-title{justify-content:space-between}
 .site-navigation .sn-column .sn-programme-link{display:grid;grid-template-columns:40px minmax(0,1fr) 20px;align-items:center;gap:12px;min-height:72px}
 .site-navigation .sn-programme-badge{width:40px;height:40px}
 .site-navigation .sn-link-copy{gap:2px}
 /* The membership price as one row, the next event as a card. */
 .site-navigation .sn-feature{display:block;margin-top:12px}
 .site-navigation .sn-price-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:12px;padding:16px}
 .site-navigation :is(.sn-price-title,.sn-price-cancel){display:none}
 .site-navigation .sn-price-join .brand-link__icon{display:none!important}
 .site-navigation .sn-price-card .sn-price{grid-column:1;margin:0;font-size:18px;line-height:24px;letter-spacing:0}
 .site-navigation .sn-price-note{grid-column:1}
 .site-navigation .sn-price-join{grid-column:2;grid-row:1/span 2;margin:0}
 .site-navigation .sn-event{min-height:0;gap:2px;padding:14px;border-radius:12px}
 .site-navigation .sn-mobile-accounts{display:block;margin-top:auto;padding-top:24px}
 .site-navigation .sn-languages+.sn-mobile-accounts{margin-top:0;padding-top:0}
 .site-navigation .sn-mobile-accounts .nav-account{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px;border:0;padding:0}
 .site-navigation .sn-mobile-accounts .nav-signup{display:inline-flex!important}
 /* The account box stacks its text over two buttons: the phone menu and the tablet sheet are both narrow. */
 .site-navigation .sn-account-panel{display:block;padding:20px;background:#eaf0e9;border-radius:12px;color:#244140}
 .site-navigation .sn-account-copy{min-width:0}
 .site-navigation .sn-account-copy h2{margin:0 0 6px;font-size:18px;font-weight:600;line-height:1.3;letter-spacing:-.02em;color:#244140}
 .site-navigation .sn-account-copy p{margin:0;max-width:44ch;font-size:14px;line-height:1.5;color:#526d64}
 .site-navigation .sn-account-panel .nav-account a{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;min-height:48px;box-sizing:border-box;padding:12px 10px;border:1px solid #78958a!important;border-radius:8px;font-size:14px;font-weight:600;line-height:22px;color:#244140!important;background:transparent!important;transition:background .15s ease,border-color .15s ease}
 .site-navigation .sn-account-panel .nav-account .nav-signup{background:#244140!important;color:#fff!important;border-color:#244140!important}
 .site-navigation .sn-account-panel .nav-account .nav-login:hover{background:#dce7dc!important;border-color:#244140!important}
 .site-navigation .sn-account-panel .nav-account .nav-signup:hover{background:#163830!important;border-color:#163830!important}
 .site-navigation .sn-account-panel .nav-signup svg{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7}
 body.sn-scroll-locked{overflow:hidden}
}
/* Phones: the menu fills the screen under the bar, which turns light and holds the close button. */
@media(max-width:680px){
 .site-navigation[data-mobile-open]{height:76px}
 .site-navigation[data-mobile-open] .nav-inner{position:fixed;inset:0 0 auto;z-index:2;background:#f8faf7;border-bottom:1px solid #dce6df}
 .site-navigation[data-mobile-open] .nav-inner>.nav-account{display:none!important}
 .site-navigation[data-mobile-open] .sn-toggle{margin-left:auto;min-height:44px}
}
/* Tablets: a sheet slides in from the right over the dimmed page, with its own wordmark and close button. */
@media(min-width:681px) and (max-width:1180px){
 .site-navigation .sn-groups{top:0;left:auto;right:0;z-index:2;width:min(420px,100%);padding-top:0;box-shadow:-24px 0 48px -16px #10242373}
 .site-navigation .sn-sheet-head{position:sticky;top:0;z-index:1;display:flex;flex:none;align-items:center;justify-content:space-between;height:76px;margin:0 -24px 4px;padding:0 16px 0 24px;background:#f8faf7;border-bottom:1px solid #dce6df;box-sizing:border-box}
 .site-navigation .sn-sheet-logo{display:block;width:168px;height:auto}
 .site-navigation .sn-close{display:flex;align-items:center;justify-content:center;width:48px;height:48px;padding:0;border:0;border-radius:10px;background:transparent;color:#244140;cursor:pointer}
 .site-navigation .sn-close:hover{background:#eaf0e9}
 .site-navigation .sn-close svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
 .site-navigation .sn-scrim{inset:0;z-index:1;transition:opacity .2s cubic-bezier(.23,1,.32,1),visibility 0s linear .2s}
 .site-navigation[data-mobile-open]:not([data-mobile-closing]) .sn-scrim{opacity:1;visibility:visible;transition:opacity .28s cubic-bezier(.32,.72,0,1),visibility 0s}
 /* The bar stays as it was behind the sheet, so a dark hero keeps its dark bar. */
 body:is([data-page="home"]:not(.home-nav-light),:has(.programme-hero[data-header-theme="dark"]):not(.course-nav-light)) .site-navigation[data-mobile-open]{
  --sn-surface:var(--opening-forest,var(--amlcc-forest,#244140));--sn-ink:#f5faf5;--sn-border:transparent;
  --sn-active:#c1f99b;--sn-button-border:#78958a;--sn-button-hover:#ffffff0d;--sn-scrim:#0f21209e;
  border:0;box-shadow:0 1px 0 1px var(--sn-surface);
 }
 body:is([data-page="home"]:not(.home-nav-light),:has(.programme-hero[data-header-theme="dark"]):not(.course-nav-light)) .site-navigation[data-mobile-open] .nav-brand .logo{opacity:0!important}
 body:is([data-page="home"]:not(.home-nav-light),:has(.programme-hero[data-header-theme="dark"]):not(.course-nav-light)) .site-navigation[data-mobile-open] .nav-brand::after{
  content:""!important;position:absolute;inset:0;pointer-events:none;
  background:url('/assets/wordmark-endorsed-reverse.svg') left center/contain no-repeat;
 }
}
@media(max-width:420px){.site-navigation .nav-inner{gap:15px;padding-inline:20px}.site-navigation .logo{width:160px!important}.site-navigation .sn-toggle{margin-left:0}.site-navigation .sn-groups{padding-inline:20px}}
@media(max-width:360px){
 .site-navigation .sn-account-panel{padding:16px}
 .site-navigation .sn-account-panel .nav-signup svg{display:none}
}
@media(prefers-reduced-motion:reduce){.site-navigation,.site-navigation *{transition:none!important;animation:none!important}}
