/* District One: new homepage, testimonials, accreditation, enquiry page and imagery styles (kept in a separate file so they always load fresh) */
/* ===== Home testimonials ===== */
.d1-test-section { background: #ffffff; padding: 90px 24px; }
.d1-test-inner { max-width: 1300px; margin: 0 auto; }
.d1-test-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; margin-bottom: 40px; }
.d1-test-head h2 { margin: 0 0 12px !important; text-align: left; }
.d1-test-head p { margin: 0; max-width: 560px; opacity: .75; }
.d1-test-arrows { display: flex; gap: 10px; flex: none; }
.d1-test-arrows button { width: 48px; height: 48px; border-radius: 50%; border: 0; cursor: pointer; display: flex; align-items: center; justify-content: center; background: #f8f2ed; color: #191a1a; transition: background .2s, color .2s; padding: 0; }
.d1-test-arrows button:hover { background: #191a1a; color: #fff; }
.d1-test-arrows svg { width: 20px !important; height: 20px !important; }
#d1-test-track { display: flex; gap: 24px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding-bottom: 4px; }
#d1-test-track::-webkit-scrollbar { display: none; }
.d1-test-card { scroll-snap-align: start; flex: 0 0 calc(33.333% - 16px); min-width: 300px; background: #f8f2ed; border-radius: 24px; padding: 32px; display: flex; flex-direction: column; gap: 20px; box-sizing: border-box; }
.d1-test-stars { display: flex; gap: 3px; }
.d1-test-quote { margin: 0; flex: 1; font-size: 18px; line-height: 1.55; color: #191a1a; }
.d1-test-person { display: flex; align-items: center; gap: 14px; padding-top: 20px; border-top: 1px solid rgba(25,26,26,.12); }
.d1-test-person strong { display: block; font-family: var(--d1-heading-font); font-size: 16px; font-weight: 600; color: #191a1a; }
.d1-test-person span { display: block; font-size: 14px; opacity: .7; margin-top: 2px; }
.d1-test-avatar, .d1-test-initials { width: 48px !important; height: 48px !important; min-width: 48px; border-radius: 50% !important; object-fit: cover; display: flex; flex: none; }
.d1-test-initials { background: #191a1a; color: #fff; align-items: center; justify-content: center; font-family: var(--d1-heading-font); font-size: 16px; }
@media (max-width: 900px) { .d1-test-card { flex-basis: 80%; } .d1-test-head { align-items: flex-start; flex-direction: column; gap: 20px; } }
@media (max-width: 767px) { .d1-test-section { padding: 56px 20px; } .d1-test-card { flex-basis: 86%; padding: 26px; } .d1-test-arrows { display: none; } .d1-test-quote { font-size: 17px; } }
.d1-test-person picture { width: 48px !important; height: 48px !important; min-width: 48px; border-radius: 50%; overflow: hidden; display: block; flex: none; }
.d1-test-person picture img.d1-test-avatar { width: 100% !important; height: 100% !important; border-radius: 50% !important; object-fit: cover; }
.d1-test-stars svg { width: 18px; height: 18px; }

@media (max-width: 767px) {
  body.page-id-7765 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-7811 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-7823 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-7840 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-7858 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-8869 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-8870 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-8871 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-6681 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-7131 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-7411 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-7739 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-7784 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-8232 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-7128 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-7825 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-4161 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-4141 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-4186 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-4209 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-3784 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-4049 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-4057 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-4076 .elementor-column > .elementor-widget-wrap.elementor-element-populated,
  body.page-id-3963 .elementor-column > .elementor-widget-wrap.elementor-element-populated { margin-left: 0 !important; margin-right: 0 !important; }
}

/* tablet: keep the single-column course layout readable (centred, capped width) */
@media (min-width: 768px) and (max-width: 1024px) {
  .d1-stickybar { left: 50%; right: auto; width: min(720px, 100%); transform: translate(-50%, 110%); border-radius: 20px 20px 0 0; }
  .d1-stickybar.is-on { transform: translate(-50%, 0); }
}

/* CPD pages: testimonial / stat cards share one cream card style at every width */
body.page-id-7765 .elementor-column:has(> .elementor-widget-wrap > .elementor-widget-text-editor + .elementor-widget-text-editor) > .elementor-widget-wrap,
body.page-id-7811 .elementor-column:has(> .elementor-widget-wrap > .elementor-widget-text-editor + .elementor-widget-text-editor) > .elementor-widget-wrap,
body.page-id-7823 .elementor-column:has(> .elementor-widget-wrap > .elementor-widget-text-editor + .elementor-widget-text-editor) > .elementor-widget-wrap,
body.page-id-7840 .elementor-column:has(> .elementor-widget-wrap > .elementor-widget-text-editor + .elementor-widget-text-editor) > .elementor-widget-wrap,
body.page-id-7858 .elementor-column:has(> .elementor-widget-wrap > .elementor-widget-text-editor + .elementor-widget-text-editor) > .elementor-widget-wrap,
body.page-id-8869 .elementor-column:has(> .elementor-widget-wrap > .elementor-widget-text-editor + .elementor-widget-text-editor) > .elementor-widget-wrap,
body.page-id-8870 .elementor-column:has(> .elementor-widget-wrap > .elementor-widget-text-editor + .elementor-widget-text-editor) > .elementor-widget-wrap,
body.page-id-8871 .elementor-column:has(> .elementor-widget-wrap > .elementor-widget-text-editor + .elementor-widget-text-editor) > .elementor-widget-wrap,
body.page-id-6681 .elementor-column:has(> .elementor-widget-wrap > .elementor-widget-text-editor + .elementor-widget-text-editor) > .elementor-widget-wrap,
body.page-id-7131 .elementor-column:has(> .elementor-widget-wrap > .elementor-widget-text-editor + .elementor-widget-text-editor) > .elementor-widget-wrap,
body.page-id-7411 .elementor-column:has(> .elementor-widget-wrap > .elementor-widget-text-editor + .elementor-widget-text-editor) > .elementor-widget-wrap,
body.page-id-7739 .elementor-column:has(> .elementor-widget-wrap > .elementor-widget-text-editor + .elementor-widget-text-editor) > .elementor-widget-wrap,
body.page-id-7784 .elementor-column:has(> .elementor-widget-wrap > .elementor-widget-text-editor + .elementor-widget-text-editor) > .elementor-widget-wrap,
body.page-id-8232 .elementor-column:has(> .elementor-widget-wrap > .elementor-widget-text-editor + .elementor-widget-text-editor) > .elementor-widget-wrap,
body.page-id-7128 .elementor-column:has(> .elementor-widget-wrap > .elementor-widget-text-editor + .elementor-widget-text-editor) > .elementor-widget-wrap,
body.page-id-7825 .elementor-column:has(> .elementor-widget-wrap > .elementor-widget-text-editor + .elementor-widget-text-editor) > .elementor-widget-wrap { background-color: #f8f2ed !important; border-radius: 20px; }

/* Home: course-matcher photo fills its frame (WebP <picture> wrapper) */
section[aria-label="Course matcher"] picture { display: block !important; width: 100% !important; height: 100% !important; min-height: 320px; border-radius: 24px; overflow: hidden; }
section[aria-label="Course matcher"] img { width: 100% !important; height: 100% !important; min-height: 320px; object-fit: cover !important; display: block; }

/* ===== Accreditation strip ===== */
.d1-accred { background: #ffffff; padding: 56px 24px; border-top: 1px solid rgba(25,26,26,.08); }
.d1-accred__inner { max-width: 1100px; margin: 0 auto; text-align: center; }
.d1-accred__title { margin: 0 0 28px; font-family: var(--d1-heading-font); font-size: 14px; letter-spacing: .1em; text-transform: uppercase; opacity: .65; }
.d1-accred__list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 20px 40px; }
.d1-accred__list li { margin: 0; padding: 0; }
.d1-accred__list img { display: block; height: 64px; width: auto; max-width: 150px; object-fit: contain; }
@media (max-width: 767px) { .d1-accred { padding: 40px 20px; } .d1-accred__list { gap: 16px 24px; } .d1-accred__list img { height: 48px; max-width: 110px; } }

/* ===== LearnDash registration / reset / login forms on brand ===== */
body.page-id-893 .ld-registration h1, .ld-registration h2, .ld-registration__heading, .ld-login h1, .ld-login h2,
body.page-id-894 .ld-registration h1, .ld-registration h2, .ld-registration__heading, .ld-login h1, .ld-login h2,
body.page-id-895 .ld-registration h1, .ld-registration h2, .ld-registration__heading, .ld-login h1, .ld-login h2,
body.page-id-7374 .ld-registration h1, .ld-registration h2, .ld-registration__heading, .ld-login h1, .ld-login h2 { font-family: var(--d1-heading-font) !important; font-weight: 700 !important; color: #191a1a !important; }
body.page-id-893 .ld-form__field, .ld-form input, .ld-form select, .ld-form textarea, .ld-form label, .ld-button, .ld-registration, .ld-login, .acf-field input, .acf-field select,
body.page-id-894 .ld-form__field, .ld-form input, .ld-form select, .ld-form textarea, .ld-form label, .ld-button, .ld-registration, .ld-login, .acf-field input, .acf-field select,
body.page-id-895 .ld-form__field, .ld-form input, .ld-form select, .ld-form textarea, .ld-form label, .ld-button, .ld-registration, .ld-login, .acf-field input, .acf-field select,
body.page-id-7374 .ld-form__field, .ld-form input, .ld-form select, .ld-form textarea, .ld-form label, .ld-button, .ld-registration, .ld-login, .acf-field input, .acf-field select { font-family: var(--d1-body-font) !important; }
body.page-id-893 .ld-form__field, .ld-form input[type=text], .ld-form input[type=email], .ld-form input[type=password], .ld-form input[type=tel], .acf-field input, .acf-field select,
body.page-id-894 .ld-form__field, .ld-form input[type=text], .ld-form input[type=email], .ld-form input[type=password], .ld-form input[type=tel], .acf-field input, .acf-field select,
body.page-id-895 .ld-form__field, .ld-form input[type=text], .ld-form input[type=email], .ld-form input[type=password], .ld-form input[type=tel], .acf-field input, .acf-field select,
body.page-id-7374 .ld-form__field, .ld-form input[type=text], .ld-form input[type=email], .ld-form input[type=password], .ld-form input[type=tel], .acf-field input, .acf-field select { background: #f8f2ed !important; border: 1px solid #e7e0d8 !important; border-radius: 12px !important; color: #191a1a !important; }
body.page-id-893 .ld-form__field:focus, .acf-field input:focus,
body.page-id-894 .ld-form__field:focus, .acf-field input:focus,
body.page-id-895 .ld-form__field:focus, .acf-field input:focus,
body.page-id-7374 .ld-form__field:focus, .acf-field input:focus { outline: 2px solid #191a1a !important; outline-offset: 1px; }
body.page-id-893 .ld-button--secondary, button.ld-button--secondary,
body.page-id-894 .ld-button--secondary, button.ld-button--secondary,
body.page-id-895 .ld-button--secondary, button.ld-button--secondary,
body.page-id-7374 .ld-button--secondary, button.ld-button--secondary { background: #f8f2ed !important; color: #191a1a !important; border: 1px solid #191a1a !important; border-radius: 999px !important; }
body.page-id-893 input[type=submit], button[type=submit], .ld-button:not(.ld-button--secondary), .ld-form__button,
body.page-id-894 input[type=submit], button[type=submit], .ld-button:not(.ld-button--secondary), .ld-form__button,
body.page-id-895 input[type=submit], button[type=submit], .ld-button:not(.ld-button--secondary), .ld-form__button,
body.page-id-7374 input[type=submit], button[type=submit], .ld-button:not(.ld-button--secondary), .ld-form__button { background: #191a1a !important; color: #ffffff !important; border: 0 !important; border-radius: 999px !important; }
body.page-id-893 a,
body.page-id-894 a,
body.page-id-895 a,
body.page-id-7374 a { color: #191a1a; }
.d1-test-person { align-items: flex-start; }
.d1-test-person span.d1-test-initials { display: flex; opacity: 1; margin: 0; color: #ffffff; font-size: 16px; line-height: 1; }
.d1-test-person { min-height: 76px; box-sizing: content-box; }

/* testimonial grid (course, apprenticeship and CPD pages) — same cards as the home slider */
.d1-test-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.d1-test-grid .d1-test-card { flex: none; min-width: 0; }
.d1-test-section .d1-test-head { margin-bottom: 36px; }
.d1-test-section .d1-test-head h2 { text-align: left; }
@media (max-width: 900px) { .d1-test-grid { grid-template-columns: 1fr; gap: 16px; } }

/* Long-form posts and policy pages: sub-headings step down so the article reads calmly (beats the page-level type scale) */
body.single-post .entry-content h2:not(#a1):not(#a2):not(#a3),
body.single-post article h2:not(#a1):not(#a2):not(#a3):not(.entry-title),
.policycontent h2:not(#a1):not(#a2):not(#a3) { font-size: var(--d1-h2-small) !important; line-height: 1.2 !important; margin-top: 1.6em; }
body.single-post .entry-content h3:not(#a1):not(#a2):not(#a3),
body.single-post article h3:not(#a1):not(#a2):not(#a3),
.policycontent h3:not(#a1):not(#a2):not(#a3) { font-size: var(--d1-h4) !important; line-height: 1.3 !important; margin-top: 1.4em; }
body.single-post .entry-content h4:not(#a1):not(#a2):not(#a3),
.policycontent h4:not(#a1):not(#a2):not(#a3) { font-size: 18px !important; line-height: 1.35 !important; }
body.single-post .elementor-widget-theme-post-content h2:not(#a1):not(#a2):not(#a3) { font-size: var(--d1-h2-small) !important; line-height: 1.2 !important; margin-top: 1.6em; }
body.single-post .elementor-widget-theme-post-content h3:not(#a1):not(#a2):not(#a3) { font-size: var(--d1-h4) !important; line-height: 1.3 !important; margin-top: 1.4em; }
body.single-post .elementor-widget-theme-post-content h4:not(#a1):not(#a2):not(#a3) { font-size: 18px !important; line-height: 1.35 !important; }

/* ===== Homepage additions (d1n-) ===== */
.d1n-section { padding: 88px 24px; }
.d1n-inner { max-width: 1300px; margin: 0 auto; }
.d1n-split { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; }
.d1n-eyebrow { margin: 0 0 14px; font-size: 13px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; opacity: .65; }
.d1n-eyebrow--sm { margin-bottom: 20px; opacity: 1; font-size: 12px; }
.d1n-eyebrow--light { color: #e7e0d8; opacity: .8; }
.d1n-h2 { margin: 0 0 28px; max-width: 18ch; }
.d1n-paths-section .d1n-h2 { max-width: 22ch; }
.d1n-h2--light { color: #ffffff !important; }
.d1n-lead { font-size: 18px; line-height: 1.6; color: #e7e0d8; margin: 0 0 20px; max-width: 520px; }
.d1n-lead--dark { color: #191a1a; opacity: .8; }
.d1n-fine { font-size: 14px; color: #bdb6ad; max-width: 520px; margin: 0; }
.d1n-dark { background: #191a1a; color: #ffffff; }
.d1n-cream { background: #f8f2ed; }
.d1n-two { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; margin-top: 40px; }
.d1n-card { border-radius: 28px; padding: 40px; }
.d1n-card--cream { background: #f8f2ed; }
.d1n-card--grey { background: #e7e6e3; }
.d1n-card h3 { margin: 0 0 24px; max-width: 20ch; }
.d1n-ticks { list-style: none; margin: 0 0 32px; padding: 0; display: grid; gap: 14px; }
.d1n-ticks li { display: flex; gap: 12px; align-items: flex-start; margin: 0; padding: 0; line-height: 1.4; }
.d1n-ticks svg { flex: none; margin-top: 2px; }
.d1n-actions { display: flex; flex-wrap: wrap; gap: 14px 24px; align-items: center; }
.d1n-btn { display: inline-flex; align-items: center; justify-content: center; padding: 16px 28px; border-radius: 999px; background: #191a1a; color: #ffffff !important; text-decoration: none; font-size: 16px; border: 0; cursor: pointer; }
.d1n-btn--light { background: #ffffff; color: #191a1a !important; }
.d1n-btn--block { display: flex; width: 100%; box-sizing: border-box; }
.d1n-link { color: inherit; text-decoration: underline; text-underline-offset: 4px; background: none; border: 0; padding: 0; cursor: pointer; font-size: 16px; }
.d1n-panel { background: #ffffff; color: #191a1a; border-radius: 28px; padding: 36px; box-shadow: 0 20px 60px rgba(0,0,0,.18); }
.d1n-panel--light { box-shadow: none; }
.d1n-panel h3 { margin: 0 0 24px; }
.d1n-grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 20px; margin-bottom: 24px; }
.d1n-grid2 label { display: grid; gap: 8px; font-size: 14px; font-weight: 600; }
.d1n-grid2 input, .d1n-grid2 select { width: 100%; box-sizing: border-box; padding: 14px 16px; border-radius: 14px; border: 1px solid #d9d0c3; background: #ffffff; font: inherit; font-size: 16px; font-weight: 400; color: #191a1a; }
.d1n-result { background: #f8f2ed; border-radius: 18px; padding: 22px 24px; margin-bottom: 20px; }
.d1n-result__label { margin: 0 0 8px; font-size: 14px; opacity: .75; }
.d1n-result__amount { margin: 0 0 8px; font-family: var(--d1-heading-font); font-size: 44px; font-weight: 700; line-height: 1; }
.d1n-result__break { margin: 0; font-size: 14px; line-height: 1.6; opacity: .8; }
.d1n-qhead { display: flex; justify-content: space-between; font-size: 14px; opacity: .75; margin-bottom: 10px; }
.d1n-bar { height: 6px; background: #e7e6e3; border-radius: 99px; overflow: hidden; margin-bottom: 28px; }
.d1n-bar i { display: block; height: 100%; background: #191a1a; border-radius: 99px; transition: width .25s ease; }
.d1n-opts { display: grid; gap: 12px; }
.d1n-opt { text-align: left; padding: 18px 20px; border-radius: 16px; border: 1px solid #d9d0c3; background: #ffffff; font: inherit; font-size: 16px; color: #191a1a; cursor: pointer; transition: background .15s, border-color .15s; }
.d1n-opt:hover, .d1n-opt:focus-visible { background: #f8f2ed; border-color: #191a1a; outline: none; }
.d1n-back { margin-top: 18px; background: none; border: 0; padding: 0; font: inherit; font-size: 14px; text-decoration: underline; cursor: pointer; color: #191a1a; }
.d1n-rcard { display: grid; gap: 6px; padding: 22px 24px; border-radius: 18px; border: 1px solid #d9d0c3; margin-bottom: 12px; text-decoration: none; color: #191a1a; background: #ffffff; }
.d1n-rcard.is-main { background: #f8f2ed; border-color: #191a1a; }
.d1n-rcard small { font-size: 12px; letter-spacing: .1em; text-transform: uppercase; opacity: .65; }
.d1n-rcard strong { font-family: var(--d1-heading-font); font-size: 18px; line-height: 1.25; }
.d1n-rcard span { font-size: 14px; opacity: .75; }
.d1n-ractions { display: flex; flex-wrap: wrap; gap: 14px 24px; align-items: center; margin-top: 18px; }
.d1n-cta { text-align: center; }
.d1n-cta__inner { display: grid; justify-items: center; }
.d1n-cta .d1n-h2 { max-width: none; }
.d1n-cta .d1n-lead { margin-bottom: 32px; }

/* hero (preview): audience buttons over the video */
.d1-home-new .district-one-hero-placeholder__title { max-width: 18ch; margin-left: auto; margin-right: auto; }
.d1n-hero-sub { max-width: 640px; margin: 20px auto 0; font-size: 18px; line-height: 1.55; color: #ffffff; text-align: center; }
.d1n-paths { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; margin-top: 28px; }
.d1n-path { display: grid; gap: 4px; min-width: 250px; padding: 18px 26px; border-radius: 20px; text-decoration: none; text-align: left; }
.d1n-path small { font-size: 12px; letter-spacing: .1em; text-transform: uppercase; opacity: .8; }
.d1n-path strong { font-family: var(--d1-heading-font); font-size: 20px; }
.d1n-path--dark { background: #191a1a; color: #ffffff !important; }
.d1n-path--light { background: #ffffff; color: #191a1a !important; }
.d1n-rating { margin: 22px 0 0; text-align: center; color: #ffffff; font-size: 15px; }
.d1-home-new .district-one-hero-placeholder__actions { display: none; }

@media (max-width: 900px) {
  .d1n-section { padding: 56px 20px; }
  .d1n-split, .d1n-two { grid-template-columns: 1fr; gap: 32px; }
  .d1n-card { padding: 28px 24px; }
  .d1n-panel { padding: 24px 20px; }
  .d1n-grid2 { grid-template-columns: 1fr; }
  .d1n-result__amount { font-size: 36px; }
  .d1n-path { min-width: 0; width: 100%; box-sizing: border-box; }
  .d1n-hero-sub { font-size: 16px; }
}

.d1-home-new .district-one-hero-placeholder__overlay { background: linear-gradient(180deg, rgba(25,26,26,.35), rgba(25,26,26,.55)); }
.d1n-arr { display: inline-block; vertical-align: -3px; margin-left: 6px; }
.d1n-link .d1n-arr { margin-left: 4px; }
@media (min-width: 901px) { .d1n-card h3 { min-height: 3.75em; } }
.d1n-grid2 label:nth-child(2) { grid-column: 1 / -1; order: -1; }
.d1n-grid2 label:nth-child(4) { grid-column: 1 / -1; }
#d1n-quiz button.d1n-opt { display: block; width: 100%; text-align: left; padding: 18px 20px !important; border-radius: 16px !important; border: 1px solid #d9d0c3 !important; background: #ffffff !important; color: #191a1a !important; font-size: 16px !important; font-weight: 400 !important; line-height: 1.35; box-shadow: none; }
#d1n-quiz button.d1n-opt:hover, #d1n-quiz button.d1n-opt:focus-visible { background: #f8f2ed !important; border-color: #191a1a !important; }
#d1n-quiz button.d1n-back, #d1n-quiz button.d1n-restart { background: none !important; border: 0 !important; border-radius: 0 !important; padding: 0 !important; color: #191a1a !important; font-size: 14px !important; text-decoration: underline; box-shadow: none; width: auto; display: inline-block; }
#d1n-quiz button.d1n-restart { font-size: 16px !important; }
#d1n-quiz .d1n-ractions .d1n-btn { color: #ffffff !important; }

/* Home intro: accreditation / regulator logos above the heading */
.d1-intro-logos { margin: 0 auto 56px; text-align: center; }
.d1-intro-logos__title { margin: 0 0 24px; font-family: var(--d1-heading-font); font-size: 13px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; opacity: .65; }
.d1-intro-logos__list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 20px 44px; }
.d1-intro-logos__list li { margin: 0; padding: 0; }
.d1-intro-logos__list img { display: block; height: 64px; width: auto; max-width: 150px; object-fit: contain; }
@media (max-width: 767px) { .d1-intro-logos { margin-bottom: 40px; } .d1-intro-logos__list { gap: 16px 24px; } .d1-intro-logos__list img { height: 46px; max-width: 105px; } }
.d1-intro-logos__list { display: grid; grid-template-columns: repeat(6, 1fr); gap: 20px 28px; max-width: 880px; margin: 0 auto; align-items: center; justify-items: center; }
.d1-intro-logos__list img { height: 56px; max-width: 100%; }
@media (max-width: 767px) { .d1-intro-logos__list { grid-template-columns: repeat(3, 1fr); gap: 20px 16px; max-width: 420px; } .d1-intro-logos__list img { height: 44px; } }

/* ===== Guided flow, flagship and motion ===== */
.d1n-hero-hint { margin: 18px 0 0; text-align: center; color: #ffffff; font-size: 13px; letter-spacing: .12em; text-transform: uppercase; opacity: .85; }
.d1n-hero-flag { margin: 14px 0 0; text-align: center; }
.d1n-hero-flag a { color: #ffffff !important; font-size: 15px; text-decoration: underline; text-underline-offset: 4px; }
.d1n-step { display: inline-block; margin: 0 0 14px; padding: 6px 12px; border-radius: 999px; background: #f8f2ed; color: #191a1a; font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
.d1n-panel--light .d1n-step { background: #ffffff; }
.d1n-next { margin: 14px 0 0; font-size: 14px; opacity: .7; text-align: center; }

/* results strip */
.d1n-stats { background: #ffffff; padding: 8px 24px 64px; }
.d1n-stats__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; text-align: center; }
.d1n-stat b { display: block; font-family: var(--d1-heading-font); font-size: clamp(40px, 5.5vw, 72px); font-weight: 700; line-height: 1; color: #191a1a; }
.d1n-stat span:not([data-count]) { display: block; margin-top: 10px; font-size: 15px; opacity: .7; }

/* flagship */
.d1n-flagship { background: #ffffff; padding-top: 24px; }
.d1n-flag { display: grid; grid-template-columns: 0.9fr 1.1fr; gap: 56px; align-items: center; background: #191a1a; color: #ffffff; border-radius: 36px; padding: 48px; box-shadow: 0 30px 80px rgba(25,26,26,.18); }
.d1n-flag__img img { display: block; width: 100%; height: 100%; min-height: 420px; object-fit: cover; border-radius: 24px; }
.d1n-h2--wide { max-width: none; font-size: clamp(26px, 2.8vw, 36px) !important; line-height: 1.15 !important; }
.d1n-ticks--light { color: #ffffff; margin-bottom: 28px; }
.d1n-btn--ghost { background: transparent; border: 1px solid rgba(255,255,255,.55); color: #ffffff !important; }
.d1n-link--light { color: #ffffff; }
.d1n-fine--tight { margin: 22px 0 8px; }
.d1n-flag .d1n-fine { color: #bdb6ad; max-width: 560px; }

/* how it works */
.d1n-steps { background: #f8f2ed; }
.d1n-steps__list { list-style: none; margin: 36px 0 40px; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; counter-reset: s; }
.d1n-stepcard { position: relative; background: #ffffff; border-radius: 24px; padding: 32px 28px; margin: 0; }
.d1n-stepcard__n { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 50%; background: #191a1a; color: #ffffff; font-family: var(--d1-heading-font); font-weight: 700; margin-bottom: 18px; }
.d1n-stepcard h3 { margin: 0 0 10px; }
.d1n-stepcard p { margin: 0; opacity: .8; }

/* floating enquiry button */
.d1n-float { position: fixed; right: 24px; bottom: 24px; z-index: 9980; transform: translateY(140%); opacity: 0; transition: transform .35s ease, opacity .35s ease; pointer-events: none; }
.d1n-float.is-on { transform: none; opacity: 1; pointer-events: auto; }
.d1n-float a { display: inline-flex; align-items: center; padding: 16px 26px; border-radius: 999px; background: #191a1a; color: #ffffff !important; font-size: 16px; text-decoration: none; box-shadow: 0 14px 40px rgba(25,26,26,.32); }
.d1n-float a:hover { transform: translateY(-2px); }

/* motion */
@keyframes d1nUp { from { opacity: 0; transform: translateY(26px); } to { opacity: 1; transform: none; } }
.d1-home-new .district-one-hero-placeholder__title { animation: d1nUp .8s .05s both ease-out; }
.d1-home-new .d1n-hero-sub { animation: d1nUp .8s .2s both ease-out; }
.d1-home-new .d1n-paths { animation: d1nUp .8s .35s both ease-out; }
.d1-home-new .d1n-hero-hint, .d1-home-new .d1n-hero-flag, .d1-home-new .d1n-rating { animation: d1nUp .8s .5s both ease-out; }
.d1n-pre { opacity: 0; transform: translateY(28px); transition: opacity .7s ease, transform .7s ease; }
.d1n-pre.d1n-in { opacity: 1; transform: none; }
.d1n-path, .d1n-card, .d1n-btn, .d1n-rcard, .d1n-float a { transition: transform .25s ease, box-shadow .25s ease, background .2s, color .2s; }
.d1n-path:hover { transform: translateY(-4px); box-shadow: 0 16px 40px rgba(0,0,0,.25); }
.d1n-btn:hover { transform: translateY(-2px); }
.d1n-card:hover { transform: translateY(-4px); }
.d1n-arr { transition: transform .25s ease; }
a:hover > .d1n-arr, .d1n-path:hover .d1n-arr, .d1n-link:hover .d1n-arr { transform: translateX(5px); }
@keyframes d1nPulse { 0% { box-shadow: 0 0 0 0 rgba(255,255,255,.0); } 30% { box-shadow: 0 0 0 6px rgba(248,242,237,.55); } 100% { box-shadow: 0 0 0 0 rgba(255,255,255,0); } }
.d1n-pulse { animation: d1nPulse 1.2s ease-out 1; }
@media (prefers-reduced-motion: reduce) { .d1-home-new * { animation: none !important; transition: none !important; } .d1n-pre { opacity: 1 !important; transform: none !important; } }

/* prefilled enquiry banner on the contact page */
.d1-enq-banner { background: #191a1a; color: #ffffff; border-radius: 24px; padding: 24px 28px; margin: 0 0 24px; }
.d1-enq-banner span { display: inline-block; padding: 5px 12px; border-radius: 999px; background: #f8f2ed; color: #191a1a; font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; margin-bottom: 12px; }
.d1-enq-banner strong { display: block; font-family: var(--d1-heading-font); font-size: 22px; line-height: 1.25; margin-bottom: 8px; }
.d1-enq-banner p { margin: 0; opacity: .8; font-size: 15px; }

@media (max-width: 900px) {
  .d1n-flag { grid-template-columns: 1fr; gap: 28px; padding: 24px; border-radius: 28px; }
  .d1n-flag__img img { min-height: 240px; }
  .d1n-steps__list { grid-template-columns: 1fr; }
  .d1n-stats { padding: 0 20px 48px; }
  .d1n-stats__grid { gap: 12px; }
  .d1n-stat span:not([data-count]) { font-size: 13px; }
  .d1n-float { left: 16px; right: 16px; bottom: 16px; }
  .d1n-float a { width: 100%; justify-content: center; box-sizing: border-box; }
}

/* Final call to action: an inset brand card on white, clearly separated from the footer */
.d1n-section.d1n-cta { background: #ffffff; color: #191a1a; padding: 24px 24px 96px; }
.d1n-cta .d1n-cta__inner { background: #191a1a; color: #ffffff; border-radius: 36px; padding: 80px 40px; max-width: 1300px; box-shadow: 0 30px 80px rgba(25,26,26,.18); }
.d1n-cta .d1n-lead { color: #e7e0d8; max-width: 560px; margin-left: auto; margin-right: auto; }
.d1n-actions--center { justify-content: center; }
@media (max-width: 767px) { .d1n-section.d1n-cta { padding: 16px 16px 64px; } .d1n-cta .d1n-cta__inner { padding: 48px 24px; border-radius: 28px; } }

/* ===== Imagery pass ===== */
.d1n-ph { overflow: hidden; margin: 0; }
.d1n-ph img, .d1n-ph picture { display: block; width: 100% !important; height: 100% !important; object-fit: cover; }
.d1n-card__ph { height: 220px; border-radius: 20px; margin-bottom: 28px; }
.d1n-side-ph { height: 300px; border-radius: 24px; margin-top: 32px; }

/* results band: photo, shade, cards */
.d1n-statband { position: relative; overflow: hidden; background: #191a1a; color: #ffffff; padding: 112px 24px; }
.d1n-statband__bg { position: absolute; inset: -6% 0; will-change: transform; transform: scale(1.12); }
.d1n-statband__bg img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 35%; }
.d1n-statband__shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(25,26,26,.78), rgba(25,26,26,.62) 45%, rgba(25,26,26,.86)); }
.d1n-statband__inner { position: relative; z-index: 2; text-align: center; }
.d1n-statband__title { margin: 0 auto 48px; max-width: 20ch; }
.d1n-statband .d1n-stats__grid { text-align: left; gap: 24px; }
.d1n-statband .d1n-stat { background: #f8f2ed; color: #191a1a; border-radius: 28px; padding: 32px; box-shadow: 0 24px 60px rgba(0,0,0,.28); }
.d1n-statband .d1n-stat b { font-size: clamp(48px, 5vw, 68px); margin: 22px 0 4px; }
.d1n-statband .d1n-stat__ic { display: inline-flex !important; align-items: center; justify-content: center; width: 56px; height: 56px; margin: 0 !important; border-radius: 50%; background: #191a1a; color: #f8f2ed; opacity: 1 !important; }
.d1n-statband .d1n-stat__lb { display: block; margin-top: 6px; font-size: 16px; opacity: .75; }

/* gallery */
.d1n-gallery { background: #ffffff; }
.d1n-mosaic { display: grid; grid-template-columns: 1.25fr 1fr 1fr; grid-template-rows: 260px 260px; gap: 18px; margin-top: 36px; }
.d1n-mosaic figure { border-radius: 26px; }
.d1n-mosaic img { transition: transform .6s ease; }
.d1n-mosaic figure:hover img { transform: scale(1.06); }
.d1n-mosaic__a { grid-row: 1 / 3; }

/* closing card with photo */
.d1n-cta .d1n-cta__inner { display: grid; grid-template-columns: 0.9fr 1.1fr; gap: 56px; align-items: center; text-align: left; justify-items: stretch; padding: 40px; }
.d1n-cta__ph { height: 100%; min-height: 360px; border-radius: 24px; }
.d1n-cta__txt .d1n-h2 { max-width: 14ch; }
.d1n-cta__txt .d1n-lead { margin-left: 0; margin-right: 0; }
.d1n-cta__txt .d1n-actions--center { justify-content: flex-start; }

@media (max-width: 900px) {
  .d1n-statband { padding: 64px 20px; }
  .d1n-statband .d1n-stats__grid { grid-template-columns: 1fr; gap: 14px; }
  .d1n-statband .d1n-stat { padding: 22px 24px; display: grid; grid-template-columns: auto 1fr; column-gap: 18px; align-items: center; }
  .d1n-statband .d1n-stat b { margin: 0; font-size: 44px; }
  .d1n-statband .d1n-stat__ic { grid-row: 1 / 3; }
  .d1n-card__ph { height: 180px; }
  .d1n-side-ph { height: 220px; }
  .d1n-mosaic { grid-template-columns: 1fr 1fr; grid-template-rows: 200px 160px 160px; gap: 12px; }
  .d1n-mosaic__a { grid-row: 1; grid-column: 1 / 3; }
  .d1n-cta .d1n-cta__inner { grid-template-columns: 1fr; gap: 28px; padding: 20px; text-align: left; }
  .d1n-cta__ph { min-height: 220px; height: 220px; }
}

/* ===== Contact page: enquiry layout and form ===== */
.d1-enq-section > .elementor-container { display: grid !important; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 32px; max-width: 1180px; align-items: stretch; padding: 0 24px; }
.d1-enq-section .elementor-column.elementor-col-17 { display: none !important; }
.d1-enq-section .elementor-column.elementor-col-66 { width: 100% !important; }
.d1-enq-section .elementor-col-66 > .elementor-widget-wrap { background: #f8f2ed; border-radius: 32px; padding: 40px 40px 44px !important; box-shadow: 0 24px 70px rgba(25,26,26,.08); }

.d1-enq-aside { background: #191a1a; color: #ffffff; border-radius: 32px; overflow: hidden; display: flex; flex-direction: column; }
.d1-enq-aside__ph { height: 260px; }
.d1-enq-aside__ph img { display: block; width: 100%; height: 100%; object-fit: cover; }
.d1-enq-aside__body { padding: 32px 34px 38px; }
.d1-enq-eyebrow { margin: 0 0 22px; font-size: 13px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; opacity: .7; }
.d1-enq-steps { list-style: none; margin: 0 0 26px; padding: 0; display: grid; gap: 20px; }
.d1-enq-steps li { display: grid; grid-template-columns: 38px 1fr; gap: 16px; align-items: start; margin: 0; padding: 0; }
.d1-enq-steps b { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 50%; background: #f8f2ed; color: #191a1a; font-family: var(--d1-heading-font); }
.d1-enq-steps span { display: block; line-height: 1.5; font-size: 15px; color: #e7e0d8; }
.d1-enq-steps strong { display: block; margin-bottom: 2px; font-size: 17px; color: #ffffff; }
.d1-enq-note { margin: 0; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.18); font-size: 15px; line-height: 1.5; color: #e7e0d8; }

.d1-enq-banner { margin: 0 0 28px; padding: 22px 26px; border-radius: 20px; }
.d1-enq-banner strong { line-height: 1.3; margin-bottom: 8px; }
.d1-enq-banner p { line-height: 1.55; }

.d1-enq-section .elementor-form-fields-wrapper { display: grid !important; grid-template-columns: 1fr 1fr; gap: 22px 20px; }
.d1-enq-section .elementor-field-group { width: auto !important; max-width: none !important; margin: 0 !important; padding: 0 !important; flex: none !important; }
.d1-enq-section .elementor-field-group-phone, .d1-enq-section .elementor-field-group-message, .d1-enq-section .elementor-field-type-submit { grid-column: 1 / -1; }
.d1-enq-section .elementor-field-label { display: block; margin: 0 0 9px; font-size: 14px; font-weight: 600; line-height: 1.4; letter-spacing: .01em; color: #191a1a; }
.d1-enq-section .elementor-field-textual { display: block; width: 100%; box-sizing: border-box; padding: 16px 18px !important; font-size: 16px !important; line-height: 1.5 !important; color: #191a1a; background: #ffffff !important; border: 1px solid #e0d7cc !important; border-radius: 16px !important; box-shadow: none !important; transition: border-color .2s, box-shadow .2s; }
.d1-enq-section textarea.elementor-field-textual { min-height: 150px; line-height: 1.6 !important; resize: vertical; }
.d1-enq-section .elementor-field-textual::placeholder { color: #8a8379; opacity: 1; }
.d1-enq-section .elementor-field-textual:focus { outline: none; border-color: #191a1a !important; box-shadow: 0 0 0 3px rgba(25,26,26,.12) !important; }
.d1-enq-section .elementor-button[type=submit] { display: flex; width: 100%; align-items: center; justify-content: center; gap: 10px; padding: 19px 28px; border-radius: 999px; background: #191a1a; color: #ffffff; font-size: 17px; line-height: 1.2; transition: transform .2s ease, box-shadow .2s ease; }
.d1-enq-section .elementor-button[type=submit]:hover { transform: translateY(-2px); box-shadow: 0 14px 34px rgba(25,26,26,.28); }
.d1-enq-section .elementor-button[type=submit] .elementor-button-text::after { content: " \2192"; font-family: Arial, sans-serif; }

@media (max-width: 900px) {
  .d1-enq-section > .elementor-container { grid-template-columns: 1fr; padding: 0 16px; gap: 20px; }
  .d1-enq-section .elementor-col-66 > .elementor-widget-wrap { padding: 24px 20px 28px !important; border-radius: 26px; }
  .d1-enq-section .elementor-form-fields-wrapper { grid-template-columns: 1fr; }
  .d1-enq-aside { order: 2; border-radius: 26px; }
  .d1-enq-aside__ph { height: 200px; }
}
.d1-enq-banner p { line-height: 1.5 !important; font-size: 15px !important; margin: 0 !important; }
.d1-enq-banner strong { line-height: 1.3 !important; }
.d1-enq-steps span, .d1-enq-note { line-height: 1.5 !important; }

/* hero video: keep the two people in frame on narrow screens, and tint for readable text */
.district-one-hero-placeholder__video { object-position: 32% 50% !important; }
.d1-home-new .district-one-hero-placeholder__overlay { background: linear-gradient(180deg, rgba(25,26,26,.42), rgba(25,26,26,.62)) !important; }

/* ===== Inner pages wow layer ===== */
.d1-wow .d1w-pre { opacity: 0; transform: translateY(30px); transition: opacity .8s ease, transform .8s ease; }
.d1-wow .d1w-pre.d1w-in { opacity: 1; transform: none; }
.d1-wow .elementor-widget-image img, .d1-wow .elementor-widget-image picture img { border-radius: 24px; }
.d1-wow .elementor-widget-image .elementor-widget-container { overflow: hidden; border-radius: 24px; }
.d1-wow .elementor-widget-image img { transition: transform .8s ease; }
.d1-wow .elementor-widget-image:hover img { transform: scale(1.04); }
.d1-wow .elementor-widget-icon-box > .elementor-widget-container, .d1-wow .elementor-widget-image-box > .elementor-widget-container { transition: transform .35s ease, box-shadow .35s ease; border-radius: 20px; }
.d1-wow .elementor-widget-icon-box:hover > .elementor-widget-container, .d1-wow .elementor-widget-image-box:hover > .elementor-widget-container { transform: translateY(-6px); box-shadow: 0 24px 50px rgba(25,26,26,.12); }
.d1-wow .elementor-button { border-radius: 999px; transition: transform .25s ease, box-shadow .25s ease; }
.d1-wow .elementor-button:hover { transform: translateY(-2px); box-shadow: 0 12px 28px rgba(25,26,26,.22); }
.d1w-cta { margin-top: 0; }
@media (prefers-reduced-motion: reduce) { .d1-wow .d1w-pre { opacity: 1 !important; transform: none !important; } }

/* ===== Inner hero (split dark card) ===== */
.d1w-hero { background: #ffffff; padding: 24px 24px 0; width: 100vw; margin-left: calc(50% - 50vw); box-sizing: border-box; }
.d1w-hero__in { max-width: 1300px; margin: 0 auto; background: #191a1a; color: #fff; border-radius: 36px; padding: 40px; display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; box-shadow: 0 30px 80px rgba(25,26,26,.18); }
.d1w-hero h1 { color: #fff; font-family: var(--d1-heading-font, 'Syne', sans-serif); font-size: clamp(34px, 4.6vw, 62px); line-height: 1.05; margin: 14px 0 18px; font-weight: 700; }
.d1w-hero p { color: #e7e0d8; font-size: 18px; line-height: 1.6; margin: 0 0 28px; max-width: 520px; }
.d1w-hero__btns { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 28px; }
.d1w-chips { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.d1w-chips li { background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18); border-radius: 999px; padding: 8px 16px; font-size: 14px; color: #f8f2ed; }
.d1w-hero__ph { border-radius: 24px; overflow: hidden; aspect-ratio: 4/3; position: relative; }
.d1w-hero__ph img { width: 100%; height: 100%; object-fit: cover; object-position: 32% 50%; display: block; }
@media (max-width: 900px) { .d1w-hero { padding: 16px 16px 0; } .d1w-hero__in { grid-template-columns: 1fr; padding: 20px; gap: 24px; border-radius: 28px; } .d1w-hero__ph { order: -1; aspect-ratio: 16/10; } .d1w-hero p { font-size: 16px; } }

/* ===== Flagship page hero polish ===== */
.page-id-4049 .elementor-element-dd2ac59 { background: #f8f2ed; border-radius: 36px; padding: 40px; max-width: 1300px; margin: 24px auto 0 !important; box-sizing: border-box; }
.page-id-4049 .elementor-element-dd2ac59 .elementor-widget-image img { border-radius: 24px; box-shadow: 0 30px 60px rgba(25,26,26,.18); }
.d1w-fstats { max-width: 1300px; margin: 16px auto 0; padding: 0 24px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; box-sizing: border-box; }
.d1w-fstats div { background: #191a1a; color: #fff; border-radius: 20px; padding: 22px; }
.d1w-fstats b { display: block; font-family: var(--d1-heading-font, 'Syne', sans-serif); font-size: 30px; line-height: 1.1; margin-bottom: 6px; }
.d1w-fstats span { font-size: 14px; color: #e7e0d8; }
@media (max-width: 767px) { .page-id-4049 .elementor-element-dd2ac59 { padding: 20px; border-radius: 28px; margin: 16px 16px 0 !important; } .d1w-fstats { grid-template-columns: 1fr 1fr; padding: 0 16px; } .d1w-fstats b { font-size: 24px; } }
.page-id-4049 .elementor-element-ddb3b02 .elementor-heading-title { text-transform: none !important; font-size: clamp(30px, 4vw, 52px) !important; line-height: 1.08 !important; }
.page-id-4049 .elementor-element-e92f9a4 .elementor-heading-title { display: inline-block; border-radius: 999px; }

/* ===== Course/CPD hero cards ===== */
.elementor-element-a46753a,
.elementor-element-20e28da4,
.elementor-element-53fc8ab3,
.elementor-element-260f8045,
.elementor-element-7b1aab64,
.elementor-element-26077b2,
.elementor-element-8cc8670,
.elementor-element-a7430c6 { background: #f8f2ed; border-radius: 36px; padding: 40px; max-width: 1300px; margin: 24px auto 0 !important; box-sizing: border-box; }
.elementor-element-a46753a .elementor-widget-image img,
.elementor-element-20e28da4 .elementor-widget-image img,
.elementor-element-53fc8ab3 .elementor-widget-image img,
.elementor-element-260f8045 .elementor-widget-image img,
.elementor-element-7b1aab64 .elementor-widget-image img,
.elementor-element-26077b2 .elementor-widget-image img,
.elementor-element-8cc8670 .elementor-widget-image img,
.elementor-element-a7430c6 .elementor-widget-image img { border-radius: 24px; box-shadow: 0 30px 60px rgba(25,26,26,.18); }
.elementor-element-a46753a .elementor-heading-title,
.elementor-element-20e28da4 .elementor-heading-title,
.elementor-element-53fc8ab3 .elementor-heading-title,
.elementor-element-260f8045 .elementor-heading-title,
.elementor-element-7b1aab64 .elementor-heading-title,
.elementor-element-26077b2 .elementor-heading-title,
.elementor-element-8cc8670 .elementor-heading-title,
.elementor-element-a7430c6 .elementor-heading-title { text-transform: none; }
.elementor-element-a46753a .d1-cpd-book,
.elementor-element-20e28da4 .d1-cpd-book,
.elementor-element-53fc8ab3 .d1-cpd-book,
.elementor-element-260f8045 .d1-cpd-book,
.elementor-element-7b1aab64 .d1-cpd-book,
.elementor-element-26077b2 .d1-cpd-book,
.elementor-element-8cc8670 .d1-cpd-book,
.elementor-element-a7430c6 .d1-cpd-book { box-shadow: 0 20px 50px rgba(25,26,26,.12); background: #fff; }
@media (max-width: 767px) { .elementor-element-a46753a,
.elementor-element-20e28da4,
.elementor-element-53fc8ab3,
.elementor-element-260f8045,
.elementor-element-7b1aab64,
.elementor-element-26077b2,
.elementor-element-8cc8670,
.elementor-element-a7430c6 { padding: 20px; border-radius: 28px; margin: 16px 16px 0 !important; } }
.elementor-element-26077b2 .elementor-heading-title, .elementor-element-8cc8670 .elementor-heading-title, .elementor-element-a7430c6 .elementor-heading-title { text-transform: none !important; font-size: clamp(30px, 4vw, 52px) !important; line-height: 1.08 !important; }

/* ===== Course page hero cards ===== */
.elementor-element-61d8fb8,
.elementor-element-725c9dd,
.elementor-element-220f4be,
.elementor-element-6565dd4,
.elementor-element-b9dc5b3,
.elementor-element-a450a6e,
.elementor-element-e5a339c { background: #f8f2ed; border-radius: 36px; padding: 40px; max-width: 1300px; margin: 24px auto 0 !important; box-sizing: border-box; }
.elementor-element-61d8fb8 .elementor-widget-image img,
.elementor-element-725c9dd .elementor-widget-image img,
.elementor-element-220f4be .elementor-widget-image img,
.elementor-element-6565dd4 .elementor-widget-image img,
.elementor-element-b9dc5b3 .elementor-widget-image img,
.elementor-element-a450a6e .elementor-widget-image img,
.elementor-element-e5a339c .elementor-widget-image img { border-radius: 24px; box-shadow: 0 30px 60px rgba(25,26,26,.18); }
.elementor-element-61d8fb8 .elementor-heading-title,
.elementor-element-725c9dd .elementor-heading-title,
.elementor-element-220f4be .elementor-heading-title,
.elementor-element-6565dd4 .elementor-heading-title,
.elementor-element-b9dc5b3 .elementor-heading-title,
.elementor-element-a450a6e .elementor-heading-title,
.elementor-element-e5a339c .elementor-heading-title { text-transform: none !important; font-size: clamp(30px, 4vw, 52px) !important; line-height: 1.08 !important; }
@media (max-width: 767px) { .elementor-element-61d8fb8,
.elementor-element-725c9dd,
.elementor-element-220f4be,
.elementor-element-6565dd4,
.elementor-element-b9dc5b3,
.elementor-element-a450a6e,
.elementor-element-e5a339c { padding: 20px; border-radius: 28px; margin: 16px 16px 0 !important; } }
.page-id-87 .d1w-hero__ph img { object-position: 50% 30%; }

/* ===== Accreditation hero, blog polish ===== */
.page-id-648 .elementor-element-1f5aebd { background: #f8f2ed; border-radius: 36px; padding: 40px; max-width: 1300px; margin: 24px auto 0 !important; box-sizing: border-box; }
.page-id-648 .elementor-element-1f5aebd .elementor-widget-image img { border-radius: 24px; box-shadow: 0 30px 60px rgba(25,26,26,.18); }
.page-id-648 .elementor-element-1f5aebd .elementor-heading-title { text-transform: none !important; font-size: clamp(30px, 4vw, 52px) !important; line-height: 1.08 !important; }
@media (max-width: 767px) { .page-id-648 .elementor-element-1f5aebd { padding: 20px; border-radius: 28px; margin: 16px 16px 0 !important; } }
.elementor-post__read-more { background: #191a1a !important; color: #fff !important; border: 0 !important; border-radius: 999px !important; padding: 12px 24px !important; display: inline-block; text-decoration: none; transition: transform .25s ease; }
.elementor-post__read-more:hover { transform: translateY(-2px); }
.elementor-posts .elementor-post__card, .elementor-posts .elementor-post { border-radius: 24px; overflow: hidden; transition: transform .35s ease, box-shadow .35s ease; }
.elementor-posts .elementor-post__card:hover { transform: translateY(-6px); box-shadow: 0 24px 50px rgba(25,26,26,.12); }

/* ===== Course + CPD pages: phone gutters (one 20px rhythm) ===== */
@media (max-width: 767px) {
  :is(.page-id-7840,.page-id-7858,.page-id-7765,.page-id-7811,.page-id-7823,.page-id-8869,.page-id-8870,.page-id-8871,.page-id-4161,.page-id-4141,.page-id-4128,.page-id-4186,.page-id-4209,.page-id-3784,.page-id-3841) {
    --d1m: 20px;
  }
  :is(.page-id-7840,.page-id-7858,.page-id-7765,.page-id-7811,.page-id-7823,.page-id-8869,.page-id-8870,.page-id-8871,.page-id-4161,.page-id-4141,.page-id-4128,.page-id-4186,.page-id-4209,.page-id-3784,.page-id-3841) .elementor-top-section > .elementor-container { padding-left: 20px !important; padding-right: 20px !important; }
  /* hero card: card padding only, no nested column padding */
  :is(.page-id-7840,.page-id-7858,.page-id-7765,.page-id-7811,.page-id-7823,.page-id-8869,.page-id-8870,.page-id-8871,.page-id-4161,.page-id-4141,.page-id-4128,.page-id-4186,.page-id-4209,.page-id-3784,.page-id-3841) .elementor-top-section:first-of-type ~ .elementor-top-section { }
  .elementor-element-a46753a > .elementor-container, .elementor-element-20e28da4 > .elementor-container, .elementor-element-53fc8ab3 > .elementor-container, .elementor-element-260f8045 > .elementor-container, .elementor-element-7b1aab64 > .elementor-container,
  .elementor-element-61d8fb8 > .elementor-container, .elementor-element-725c9dd > .elementor-container, .elementor-element-220f4be > .elementor-container, .elementor-element-6565dd4 > .elementor-container, .elementor-element-b9dc5b3 > .elementor-container, .elementor-element-a450a6e > .elementor-container, .elementor-element-e5a339c > .elementor-container { padding-left: 0 !important; padding-right: 0 !important; }
  .elementor-element-a46753a .elementor-column > .elementor-widget-wrap, .elementor-element-20e28da4 .elementor-column > .elementor-widget-wrap, .elementor-element-53fc8ab3 .elementor-column > .elementor-widget-wrap, .elementor-element-260f8045 .elementor-column > .elementor-widget-wrap, .elementor-element-7b1aab64 .elementor-column > .elementor-widget-wrap,
  .elementor-element-61d8fb8 .elementor-column > .elementor-widget-wrap, .elementor-element-725c9dd .elementor-column > .elementor-widget-wrap, .elementor-element-220f4be .elementor-column > .elementor-widget-wrap, .elementor-element-6565dd4 .elementor-column > .elementor-widget-wrap, .elementor-element-b9dc5b3 .elementor-column > .elementor-widget-wrap, .elementor-element-a450a6e .elementor-column > .elementor-widget-wrap, .elementor-element-e5a339c .elementor-column > .elementor-widget-wrap { padding: 0 !important; }
  .elementor-element-a46753a .elementor-column, .elementor-element-20e28da4 .elementor-column, .elementor-element-53fc8ab3 .elementor-column, .elementor-element-260f8045 .elementor-column, .elementor-element-7b1aab64 .elementor-column,
  .elementor-element-61d8fb8 .elementor-column, .elementor-element-725c9dd .elementor-column, .elementor-element-220f4be .elementor-column, .elementor-element-6565dd4 .elementor-column, .elementor-element-b9dc5b3 .elementor-column, .elementor-element-a450a6e .elementor-column, .elementor-element-e5a339c .elementor-column { margin: 0 !important; }
  /* testimonials + upcoming sessions */
  section[data-id^="d1tg"] > .elementor-container, section[data-id^="cpdup"] > .elementor-container, [data-id^="d1tg"] .d1-test-wrap, [data-id^="cpdup"] .d1-cpd-upcoming { padding-left: 20px !important; padding-right: 20px !important; }
  [data-id^="d1tg"] .elementor-widget-wrap, [data-id^="cpdup"] .elementor-widget-wrap { padding: 0 !important; }
  [data-id^="d1tg"] .elementor-widget-html, [data-id^="cpdup"] .elementor-widget-html { margin: 0 !important; }
  [data-id^="d1tg"] .elementor-widget-html > .elementor-widget-container, [data-id^="cpdup"] .elementor-widget-html > .elementor-widget-container { padding: 0 !important; }
}
@media (max-width: 767px) {
  .elementor-element-a46753a, .elementor-element-20e28da4, .elementor-element-53fc8ab3, .elementor-element-260f8045, .elementor-element-7b1aab64,
  .elementor-element-61d8fb8, .elementor-element-725c9dd, .elementor-element-220f4be, .elementor-element-6565dd4, .elementor-element-b9dc5b3, .elementor-element-a450a6e, .elementor-element-e5a339c { padding-left: 0 !important; padding-right: 0 !important; }
  .d1-test-section .d1-test-inner, .d1-cpd-upcoming .d1-cpd-upcoming__inner, .d1-test-section > div { padding-left: 0 !important; padding-right: 0 !important; }
}
@media (max-width: 767px) {
  .d1-test-section, .d1-cpd-upcoming { padding-left: 0 !important; padding-right: 0 !important; margin-left: 0 !important; margin-right: 0 !important; width: 100% !important; box-sizing: border-box; }
}
@media (max-width: 767px) {
  body .elementor .district-one-apprenticeships-section.d1-cpd-upcoming { padding-left: 0 !important; padding-right: 0 !important; }
  body .elementor .d1-cpd-upcoming .district-one-apprenticeships-section__inner { padding-left: 0 !important; padding-right: 0 !important; }
}
@media (max-width: 767px) {
  :is(.page-id-4161,.page-id-4141,.page-id-4128,.page-id-4186,.page-id-4209,.page-id-3784,.page-id-3841,.page-id-4049,.page-id-4057,.page-id-4076,.page-id-3963) .elementor-widget-rating, :is(.page-id-4161,.page-id-4141,.page-id-4128,.page-id-4186,.page-id-4209,.page-id-3784,.page-id-3841,.page-id-4049,.page-id-4057,.page-id-4076,.page-id-3963) .elementor-widget-rating .elementor-widget-container { margin-left: 0 !important; padding-left: 0 !important; }
  :is(.page-id-4161,.page-id-4141,.page-id-4128,.page-id-4186,.page-id-4209,.page-id-3784,.page-id-3841,.page-id-4049,.page-id-4057,.page-id-4076,.page-id-3963) .elementor-widget-text-editor + .elementor-widget-button { margin-top: 18px; }
  :is(.page-id-4161,.page-id-4141,.page-id-4128,.page-id-4186,.page-id-4209,.page-id-3784,.page-id-3841,.page-id-4049,.page-id-4057,.page-id-4076,.page-id-3963) .elementor-widget-button { margin-bottom: 10px; }
  [data-id$="faq01"] .d1-faq, section[data-id$="faq01"] > .elementor-container { padding-left: 20px !important; padding-right: 20px !important; }
  [data-id$="faq01"] .elementor-widget-html > .elementor-widget-container > * { padding-left: 0 !important; padding-right: 0 !important; margin-left: 0 !important; margin-right: 0 !important; }
}
@media (max-width: 767px) { body .elementor .elementor-element.elementor-widget-rating.elementor-widget__width-auto { margin-left: 0 !important; margin-right: 0 !important; } }
