.elementor-9038 .elementor-element.elementor-element-4fec457{--box-min-height:0px;width:100%;max-width:100%;--separator-width:0px;--box-padding:0rem;--item-text-color:#160158;--item-text-hover-color:var( --e-global-color-v4-link-hover-light );--item-text-active-color:var( --e-global-color-v4-link-hover-light );}.elementor-9038 .elementor-element.elementor-element-4fec457 > .elementor-widget-container{background-color:#D2ACFF30;padding:0rem 0rem 0rem 0rem;border-style:solid;border-width:0px 0px 0px 1px;border-color:var( --e-global-color-v4-link-hover-light );border-radius:0rem 1rem 1rem 0rem;}.elementor-9038 .elementor-element.elementor-element-4fec457 .elementor-toc__header-title{text-align:start;}.elementor-9038 .elementor-element.elementor-element-4fec457 .elementor-toc__header, .elementor-9038 .elementor-element.elementor-element-4fec457 .elementor-toc__header-title{font-family:"Liebling Pro Medium", Sans-serif;font-size:1.25rem;font-weight:500;line-height:1.25rem;}.elementor-9038 .elementor-element.elementor-element-4fec457 .elementor-toc__list-item{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-9038 .elementor-element.elementor-element-2fc4e1f .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(0.5rem/2);}.elementor-9038 .elementor-element.elementor-element-2fc4e1f .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(0.5rem/2);}.elementor-9038 .elementor-element.elementor-element-2fc4e1f .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(0.5rem/2);}.elementor-9038 .elementor-element.elementor-element-2fc4e1f .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-0.5rem/2);}.elementor-9038 .elementor-element.elementor-element-2fc4e1f .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-0.5rem/2);}.elementor-9038 .elementor-element.elementor-element-2fc4e1f .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-9038 .elementor-element.elementor-element-2fc4e1f .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-9038 .elementor-element.elementor-element-2fc4e1f{--e-icon-list-icon-size:0.4rem;--icon-vertical-offset:0px;}.elementor-9038 .elementor-element.elementor-element-2fc4e1f .elementor-icon-list-text{transition:color 0.3s;}.elementor-9038 .elementor-element.elementor-element-a1244f2 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(0.5rem/2);}.elementor-9038 .elementor-element.elementor-element-a1244f2 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(0.5rem/2);}.elementor-9038 .elementor-element.elementor-element-a1244f2 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(0.5rem/2);}.elementor-9038 .elementor-element.elementor-element-a1244f2 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-0.5rem/2);}.elementor-9038 .elementor-element.elementor-element-a1244f2 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-0.5rem/2);}.elementor-9038 .elementor-element.elementor-element-a1244f2 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-9038 .elementor-element.elementor-element-a1244f2 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-9038 .elementor-element.elementor-element-a1244f2{--e-icon-list-icon-size:0.4rem;--icon-vertical-offset:0px;}.elementor-9038 .elementor-element.elementor-element-a1244f2 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-9038 .elementor-element.elementor-element-a1244f2 .elementor-icon-list-item > a{font-size:1.1rem;}.elementor-9038 .elementor-element.elementor-element-a1244f2 .elementor-icon-list-text{transition:color 0.3s;}.elementor-9038 .elementor-element.elementor-element-f60e835.elementor-element{--align-self:flex-end;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-9038 .elementor-element.elementor-element-4fec457 .elementor-toc__list-item{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(max-width:767px){.elementor-9038 .elementor-element.elementor-element-4fec457 .elementor-toc__list-item{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}/* Start custom CSS for table-of-contents, class: .elementor-element-4fec457 *//* ==========================================================================
   TOC SIDEBAR & POSITIONING FIXES
   ========================================================================== */
.toc-sidebar {
    height: fit-content !important;
    align-self: flex-start !important;
    position: sticky !important;
    top: 2rem !important;
    z-index: 10 !important;
}

/* Fix TOC header spacing */
.toc-sidebar .elementor-toc__header {
    padding: 1rem !important;
}

/* TOC list structure */
.toc-sidebar .elementor-toc__list-wrapper {
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
}

/* TOC list items - reset and layout */
.toc-sidebar .elementor-toc__list-item {
    border: none !important;
    border-left: 2px solid transparent !important;
    background-color: transparent !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
    transition: background-color 0.2s ease, border-color 0.2s ease;
}

/* TOC links - default (explicitly forces non-active items to deep purple) */
.toc-sidebar .elementor-toc__list-item .elementor-toc__list-item-text {
    display: block !important;
    padding: 0.375rem 1rem !important;
    font-family: 'Atkinson Hyperlegible', sans-serif !important;
    font-size: 1rem !important;
    font-weight: 400 !important;
    line-height: 1.25rem !important;
    color: var(--colour-text, #160158) !important;
    text-decoration: none !important;
    background-color: transparent !important;
    border: none !important;
    transition: all 0.2s ease !important;
}

/* TOC links - hover state */
.toc-sidebar .elementor-toc__list-item:hover .elementor-toc__list-item-text {
    text-decoration: underline !important;
    color: var(--colour-link-hover) !important;
}

/* TOC links - active state styling (Strictly scoped to active classes only) */
.toc-sidebar .elementor-toc__list-item.elementor-item-active,
.toc-sidebar .elementor-toc__list-item.elementor-toc__list-item--active {
    border-left: 2px solid var(--p-vibrant-purple, #522DD8) !important;
    background-color: #EAE4FF !important;
}

.toc-sidebar .elementor-toc__list-item.elementor-item-active > .elementor-toc__list-item-text,
.toc-sidebar .elementor-toc__list-item.elementor-toc__list-item--active > .elementor-toc__list-item-text {
    color: var(--p-vibrant-purple, #522DD8) !important;
    font-weight: 400 !important;
    background-color: transparent !important;
}

/* Ensure sticky works by preventing overflow clipping on parent */
.elementor-column-wrap, 
.elementor-widget-wrap {
    overflow: visible !important;
}

.ast-theme-dark .toc-sidebar .elementor-toc__list-item.elementor-item-active,
.ast-theme-dark .toc-sidebar .elementor-toc__list-item.elementor-toc__list-item--active,
body.dark-mode .toc-sidebar .elementor-toc__list-item.elementor-item-active,
body.dark-mode .toc-sidebar .elementor-toc__list-item.elementor-toc__list-item--active{
    border-left: 2px solid #FFFCF8 !important;
    background-color: #4620D0 !important;
}


.ast-theme-dark .toc-sidebar .elementor-widget-container,
body.dark-mode .toc-sidebar .elementor-widget-container{
    background-color: #2D1583 !important;
}

@media (max-width: 992px){
    .toc-sidebar{
    position: relative !important;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f60e835 *//* Base "Back to TOC" Button Override */
button.bdef-back-to-toc-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  min-height: 2.75rem !important;
  padding: 0.75rem 1rem !important;
  font-size: 1.1rem !important;
  font-weight: 400 !important;
  background-color: var(--p-white, #FFFFFF) !important;
  color: var(--p-deep-purple, #160158) !important;
  border-radius: 1.25rem !important;
  cursor: pointer !important;
  text-decoration: none !important;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease !important;
}

/* Hover State */
button.bdef-back-to-toc-link:hover {
 color: var(--colour-link-hover, #2D1583) !important;
  border-color: var(--colour-link-hover, #2D1583) !important;
  text-decoration: underline !important;
}

/* Dark Containers & Dark Mode Context Override */
.bg-deep-purple button.bdef-back-to-toc-link,
.bg-vibrant-purple button.bdef-back-to-toc-link,
body.dark-mode button.bdef-back-to-toc-link {
  background-color: transparent !important;
  color: var(--p-off-white, #FFFCF8) !important;
  border-color: var(--p-off-white, #FFFCF8) !important;
}

.bg-deep-purple button.bdef-back-to-toc-link:hover,
.bg-vibrant-purple button.bdef-back-to-toc-link:hover,
body.dark-mode button.bdef-back-to-toc-link:hover {
  color: var(--p-cream) !important;
  border-color: var(--p-cream) !important;
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Liebling Pro Medium';
	font-display: auto;
	src: url('https://bristoldef.org.uk/wp-content/uploads/2026/06/Liebling-Pro-Medium.ttf') format('truetype');
}
/* End Custom Fonts CSS */