@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght=0,400;0,600;0,700;1,400&family=Open+Sans:ital,wght=0,400;0,600;1,400&display=swap');

:root {
  /* Lancashire Neuroscience Corporate Brand Palette */
  --color-primary: #122742;       /* Royal Navy / Deep Academic Blue */
  --color-primary-100: #f4f7fa; 
  --color-primary-200: #dce4ec; 
  --color-primary-300: #b5c5d6; 
  --color-primary-400: #8ba2bd; 
  --color-primary-500: #5f7da1; 
  --color-primary-600: #008fa7;   /* Medical Accent Teal/Blue */
  --color-primary-700: #1b2d42;   /* Deep Slate Heading Variant */
  --color-primary-800: #122742; 
  --color-primary-900: #0a1626; 
  --color-primary-base: #122742; 

  --color-info-100: #e0f4f7; 
  --color-info-200: #b3e3ec; 
  --color-info-300: #80cfde; 
  --color-info-400: #4dba2f; 
  --color-info-500: #00a2bd;     /* Vibrant Accent Teal */
  --color-info-600: #008fa7; 
  --color-info-700: #006f82; 
  --color-info-800: #004f5e; 
  --color-info-900: #00303b; 
  --color-info-base: #008fa7; 

  --color-danger-100: #fcebee; 
  --color-danger-200: #f7ced5; 
  --color-danger-300: #f09ca9; 
  --color-danger-400: #e86b7e; 
  --color-danger-500: #e03a53; 
  --color-danger-600: #c41c33; 
  --color-danger-700: #991224; 
  --color-danger-800: #6e0814; 
  --color-danger-900: #420209; 
  --color-danger-base: #c41c33; 

  --color-success-100: #eafbf2; 
  --color-success-200: #bff3d6; 
  --color-success-300: #94ebba; 
  --color-success-400: #69e39e; 
  --color-success-500: #3edb82; 
  --color-success-600: #19c265; 
  --color-success-700: #10944b; 
  --color-success-800: #096632; 
  --color-success-900: #03381a; 
  --color-success-base: #10944b; 

  --color-warning-100: #fff9e6; 
  --color-warning-200: #ffecb3; 
  --color-warning-300: #ffdf80; 
  --color-warning-400: #ffd14d; 
  --color-warning-500: #ffc41a; 
  --color-warning-600: #e6ad00; 
  --color-warning-700: #b38600; 
  --color-warning-800: #806000; 
  --color-warning-900: #4d3a00; 
  --color-warning-base: #e6ad00; 

  --color-neutral-100: #f8f9fa; 
  --color-neutral-200: #e9ecef; 
  --color-neutral-300: #dee2e6; 
  --color-neutral-400: #ced4da; 
  --color-neutral-500: #adb5bd; 
  --color-neutral-600: #6c757d; 
  --color-neutral-700: #495057; 
  --color-neutral-800: #2b303a; 
  --color-neutral-900: #1a1c23; 
  --color-neutral-base: #2b303a; 

  --heading-text-transform: none;

  /* Button settings aligned with Lancashire layout */
  --theme-button-color: var(--color-primary-base);
  --theme-button-hover-color: var(--color-info-500);

  /* Link & Header mappings */
  --link-color: var(--color-info-600);
  --site-header-color: #ffffff;
  --site-header-font-color: var(--color-primary-base);
  --site-header-font-color-hover: var(--link-color);

  --feature-color: #f7f9fb;
  --label-primary: var(--color-primary-base);
  --text-details: #495057;
  --heading-color: var(--color-primary-700);

  /* Modern clinical sans-serif typography stack matching the site */
  --heading-font-family: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --subheading-font-family: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --body-font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;

  --base-border-radius: 2px; /* Crisp, mostly square clinical UI lines */

  /* Responsive heading sizes */
  --h1-size: clamp(2.1rem, 1.2rem + 2.8vw, 3.5rem);  
  --h2-size: clamp(1.75rem, 1.1rem + 2.2vw, 2.75rem);   
}

/* Link treatments */
a {
  color: var(--link-color);
  text-decoration: none;
  transition: color 0.15s ease-in-out;
}
a:hover {
  color: var(--color-primary-base);
  text-decoration: underline;
}

/* Primary Interactive Button Elements */
.btn-primary, .btn-default {
  background-color: var(--theme-button-color) !important;
  border-color: var(--theme-button-color) !important;
  color: #ffffff !important;
  font-family: var(--heading-font-family);
  font-weight: 600;
  letter-spacing: 0.02em;
  transition: all 0.2s ease-in-out;
}

.btn-primary:hover, .btn-default:hover {
  background-color: var(--theme-button-hover-color) !important;
  border-color: var(--theme-button-hover-color) !important;
  color: #ffffff !important;
}

/* Clear messy native header underscores */
.rich-text h1, .rich-text h2, .rich-text h3, .rich-text h4, .rich-text h5, .rich-text h6, .text-heading { 
  border-bottom: 0; 
  font-family: var(--heading-font-family);
}

/* Strict Typography rules (Frontend view + Content management editors) */
h1, .mce-content-body h1 {
  font-family: var(--heading-font-family);
  font-size: var(--h1-size);
  line-height: 1.2;
  font-weight: 700;
  color: var(--heading-color);
}

h2, .mce-content-body h2 {
  font-family: var(--heading-font-family);
  font-size: var(--h2-size);
  line-height: 1.3;
  font-weight: 600;
  color: var(--heading-color);
}

body {
  font-family: var(--body-font-family);
  color: var(--text-details);
  -webkit-font-smoothing: antialiased;
}

.box-featured .accordion-item {
  --bs-accordion-bg: transparent; 
  --bs-accordion-border-color: transparent; 
  --bs-accordion-btn-bg: transparent;
}