/**
 * @file theme.css
 * shadcn/ui-compatible theme variables for Mercury.
 *
 * You can customize these values without rebuilding the compiled CSS.
 * Tools like https://tweakcn.com can help generate these values. Copy this
 * file to your web root, so it sits next to index.php, and clear Drupal's
 * cache. Then, any changes you make in this file should be reflected right away.
 */

:root {
  --background: oklch(1 0 0);
  --foreground: oklch(0.13 0.043 265.132);
  --card: oklch(0.967 0.003 264.542);
  --card-foreground: oklch(0.21 0.032 264.665);
 /* --primary: oklch(0.547 0.246 262.866); */
  --primary: #459d84;
  --primary-foreground: oklch(1 0 0);
  --secondary: oklch(0.9219 0 0);
  --secondary-foreground: oklch(0.28 0.041 260.329);
  --muted: oklch(0.967 0.003 264.542);
  --muted-foreground: oklch(0.13 0.043 265.132);
  --accent: oklch(0.932 0.032 255.585);
  --accent-foreground: var(--foreground);
  --destructive: oklch(0.6368 0.2078 25.3313);
  --destructive-foreground: oklch(1 0 0);
  --border: oklch(0.872 0.009 258.338);
  --input: oklch(0.872 0.009 258.338);
  --font-sans: "helvetica-neue-lt-pro", Arial, Helvetica, "Outfit", sans-serif;
  --font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
  --font-mono: "Fira Mono", "Menlo", "Consolas", "Liberation Mono", monospace;
  --font-body: "helvetica-neue-lt-pro", Arial, Helvetica, "Inter", sans-serif;
  --radius: 0.5rem;
  --shadow-x: 0;
  --shadow-y: 1px;
  --shadow-blur: 3px;
  --shadow-spread: 0px;
  --shadow-opacity: 0.1;
  --shadow-color: oklch(0 0 0);
  --shadow-2xs: 0 1px 3px 1px hsl(0 0% 0% / 0.05);
  --shadow-xs: 0 1px 3px 1px hsl(0 0% 0% / 0.05), 0 1px 2px -1px hsl(0 0% 0% / 0.1);
  --shadow-sm: 0 1px 3px 1px hsl(0 0% 0% / 0.1), 0 2px 4px -1px hsl(0 0% 0% / 0.1);
  --shadow: 0 1px 3px 1px hsl(0 0% 0% / 0.1), 0 2px 4px -1px hsl(0 0% 0% / 0.1);
  --shadow-md: 0 1px 3px 1px hsl(0 0% 0% / 0.1), 0 4px 6px -2px hsl(0 0% 0% / 0.1);
  --shadow-lg: 0 1px 3px 1px hsl(0 0% 0% / 0.1), 0 8px 10px -2px hsl(0 0% 0% / 0.1);
  --shadow-xl: 0 1px 3px 1px hsl(0 0% 0% / 0.1), 0 12px 14px -3px hsl(0 0% 0% / 0.1);
  --shadow-2xl: 0 1px 3px 1px hsl(0 0% 0% / 0.1), 0 16px 18px -3px hsl(0 0% 0% / 0.1);
  --tracking-normal: 0em;
  --spacing: 0.25rem;

  /* Set navbar height for hero billboard overlay */
  --navbar-height: calc(var(--spacing) * 15);

  @media (min-width: 768px) {
    --navbar-height: calc(var(--spacing) * 18);
  }
}

.dark {
  --background: oklch(0.13 0.043 265.132);
  --foreground: oklch(1 0 89.876);
  --card: oklch(0.208 0.042 266.359);
  --card-foreground: var(--foreground);
  --primary: oklch(0.547 0.246 262.866);
  --primary-foreground: var(--foreground);
  --secondary: oklch(0.704 0.04 256.993);
  --secondary-foreground: oklch(0.13 0.043 265.132);
  --muted: oklch(0.28 0.041 260.329);
  --muted-foreground: oklch(0.967 0.003 264.542);
  --accent: oklch(0.932 0.032 255.585);
  --accent-foreground: oklch(0.13 0.043 265.132);
  --destructive: oklch(0.6368 0.2078 25.3313);
  --destructive-foreground: oklch(1 0 0);
  --border: oklch(0.373 0.031 259.733);
  --input: oklch(0.373 0.031 259.733);
  --font-sans: "Outfit", "Helvetica Neue", Arial, Helvetica, sans-serif;
  --font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
  --font-mono: "Fira Mono", "Menlo", "Consolas", "Liberation Mono", monospace;
  --radius: 0.5rem;
  --shadow-x: 0;
  --shadow-y: 1px;
  --shadow-blur: 3px;
  --shadow-spread: 0px;
  --shadow-opacity: 0.1;
  --shadow-color: oklch(0 0 0);
  --shadow-2xs: 0 1px 3px 0px hsl(0 0% 0% / 0.05);
  --shadow-xs: 0 1px 3px 0px hsl(0 0% 0% / 0.05);
  --shadow-sm: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 1px 2px -1px hsl(0 0% 0% / 0.1);
  --shadow: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 1px 2px -1px hsl(0 0% 0% / 0.1);
  --shadow-md: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 2px 4px -1px hsl(0 0% 0% / 0.1);
  --shadow-lg: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 4px 6px -1px hsl(0 0% 0% / 0.1);
  --shadow-xl: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 8px 10px -1px hsl(0 0% 0% / 0.1);
  --shadow-2xl: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 12px 14px -1px hsl(0 0% 0% / 0.1);
}

.rich-text-block__title {
	color:#459d84;
	font-weight:bold;
}

h1, h2, h3, h4, h5 {
  font-family: var(--font-primary);
  font-weight: 700;
}

h1 {
  font-size: clamp(2rem, 4vw, 2.5rem);
  line-height: 1.2;
}


h2.rich-text-block__title {
	font-size: clamp(1.625rem, 3vw, 1.875rem);
  line-height: 1.25;
}
h3.rich-text-block__title {
	 font-size: 1.375rem;
  line-height: 1.3;
}

.rich-text-block__content p {
	color:#302c2b;
	font-size:1.25rem;
}

.rich-text-block__footer, .site-footer {
  border: none;
}

.site-footer .border-t {
  border-top: none;
}

/* Brain Economy language switcher */

#block-23b69ed0-0092-4d4a-bd5c-b32cb14c82e0 {
  display: flex;
  justify-content: flex-end;
  padding: 8px 16px;
}

/* Remove list formatting */
#block-23b69ed0-0092-4d4a-bd5c-b32cb14c82e0 ul.links {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
}

/* Hide the current language */
html[lang="en"] #block-23b69ed0-0092-4d4a-bd5c-b32cb14c82e0 li[data-drupal-language="en"],
html[lang="fr"] #block-23b69ed0-0092-4d4a-bd5c-b32cb14c82e0 li[data-drupal-language="fr"] {
  display: none;
}

/* Hide full language names visually */
#block-23b69ed0-0092-4d4a-bd5c-b32cb14c82e0 a.language-link {
  font-size: 0;
  text-decoration: none;
}

/* Display abbreviated language names */
#block-23b69ed0-0092-4d4a-bd5c-b32cb14c82e0 a[hreflang="en"]::after {
  content: "EN";
  font-size: 14px;
}

#block-23b69ed0-0092-4d4a-bd5c-b32cb14c82e0 a[hreflang="fr"]::after {
  content: "FR";
  font-size: 14px;
}

/* Hide Mercury's empty footer region. */
body.canvas-page > .dialog-off-canvas-main-canvas
  footer[role="contentinfo"] {
    display: none;
}

/* Remove bottom spacing beneath Canvas page content */
body.canvas-page .region.region-content {
  padding-bottom: 0;
}

/* Brain Economy header branding */
.navbar .navbar--logo {
  flex-shrink: 0;
}

.navbar .navbar--logo .branding {
  display: block;
  width: 240px;
  height: auto;
  max-width: none;
}

.navbar .navbar--logo .branding img {
  display: block;
  width: 240px;
  height: auto;
  max-width: none;
  max-height: none;
}

/* Allow the navbar to accommodate the full logo */
.navbar {
  height: auto;
  min-height: 120px;
  overflow: visible;
  align-items: center;
}

/* Keep the branding container unconstrained vertically */
.navbar .navbar--logo,
.navbar .navbar--logo .branding {
  height: auto;
  max-height: none;
  overflow: visible;
}

/* Preserve SVG proportions */
.navbar .navbar--logo .branding img {
  width: 240px;
  height: auto;
  max-height: none;
  object-fit: contain;
}

/* Keep the main header above the Canvas sticky menu */
header[role="banner"] {
  position: relative;
  z-index: 1000;
}

/* Keep the Canvas anchor menu below the header */
.anchor-menu {
  z-index: 100;
}

/* Brain Economy language switcher hover */

#block-23b69ed0-0092-4d4a-bd5c-b32cb14c82e0 a.language-link {
  display: inline-flex;
  align-items: center;
  padding: 8px 12px;
  border-radius: 4px;
  transform: translateY(-4px);
  transition: background-color 0.2s ease;
}

/* Green background on hover and keyboard focus */
#block-23b69ed0-0092-4d4a-bd5c-b32cb14c82e0 a.language-link:hover,
#block-23b69ed0-0092-4d4a-bd5c-b32cb14c82e0 a.language-link:focus-visible {
  background-color: #459D84;
}

/* White EN/FR abbreviation */
#block-23b69ed0-0092-4d4a-bd5c-b32cb14c82e0 a.language-link:hover::after,
#block-23b69ed0-0092-4d4a-bd5c-b32cb14c82e0 a.language-link:focus-visible::after {
  color: #fff;
}

/* Offset anchor scrolling for the fixed/sticky header */
section[id] {
  scroll-margin-top: 120px;
}

h4.publication a {
	text-decoration: none;
}

.rich-text-block__content a {
	color:#302c2b;
}

.rich-text-block__content a:hover {
	color:#e56c4f;
}
