/* Theme base styles */

/* Tools
Any animations, or functions used throughout the project.
Note: _macros.css needs to be imported into each stylesheet where macros are used and not included here
*/

/* Generic
This is where reset, normalize & box-sizing styles go.
*/

:root {
  --bg: #f9fafc;
  --black: #2b2b2c;
  --gray: #6D6C6D;
  --blue: #497CAD;
  --dark-blue: #2D4A7A;
  --green: #5C987B;
  --gold: #EBDC76;
  --border: 1px solid #f0f0f0;
}
.box-shadow {
  box-shadow: none;
  transition: all 350ms ease;
}
.box-border {
  border: var(--border);
}
.hover-down {
  transition: all 200ms ease;
  transform: translateY(-2px);
}
.hover-down:hover {
  transition: all 200ms ease;
  box-shadow: none;
  transform: translateY(0);
}


*, *:before, *:after {
  box-sizing: border-box;
}
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * Add the correct box sizing in Firefox.
 */

hr {
  box-sizing: content-box;
  height: 0;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Remove the inheritance of text transform in Edge and Firefox.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * Remove the padding so developers are not caught out when they zero out `fieldset` elements in all browsers.
 */

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Objects
Non-cosmetic design patterns including grid and layout classes)
*/

.section {
  padding: 48px 24px;
}
.section.section--no-top {
  padding-top: 0;
}

.container {
  max-width: 80rem;
  margin: 0 auto;
  width: 100%;
}
.container__small {
  max-width: 55rem;
  margin: 0 auto;
}
.intro-center {
  margin: 0 auto;
  max-width: 790px;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 0;
  width: 100%;
}
.container > *,
.kp-head > * {
  min-width: 0;
}



/* CSS variables */

:root {
  --column-gap: 2.13%;
  --column-width-multiplier: 8.333;
}

/* Mobile layout */

.row-fluid {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}


  .row-fluid .span1,
  .row-fluid .span2,
  .row-fluid .span3,
  .row-fluid .span4,
  .row-fluid .span5,
  .row-fluid .span6,
  .row-fluid .span7,
  .row-fluid .span8,
  .row-fluid .span9,
  .row-fluid .span10,
  .row-fluid .span11,
  .row-fluid .span12{
  min-height: 1px;
  width: 100%;
}

/* Desktop layout */

@media (min-width: 768px) {
  .section {
    padding: 64px 24px;
  }
  .row-fluid {
    flex-wrap: nowrap;
    justify-content: space-between;
  }

  
    .row-fluid .span1 {
      width: calc(var(--column-width-multiplier) * 1% * 1 - var(--column-gap) * (11 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span2 {
      width: calc(var(--column-width-multiplier) * 1% * 2 - var(--column-gap) * (10 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span3 {
      width: calc(var(--column-width-multiplier) * 1% * 3 - var(--column-gap) * (9 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span4 {
      width: calc(var(--column-width-multiplier) * 1% * 4 - var(--column-gap) * (8 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span5 {
      width: calc(var(--column-width-multiplier) * 1% * 5 - var(--column-gap) * (7 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span6 {
      width: calc(var(--column-width-multiplier) * 1% * 6 - var(--column-gap) * (6 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span7 {
      width: calc(var(--column-width-multiplier) * 1% * 7 - var(--column-gap) * (5 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span8 {
      width: calc(var(--column-width-multiplier) * 1% * 8 - var(--column-gap) * (4 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span9 {
      width: calc(var(--column-width-multiplier) * 1% * 9 - var(--column-gap) * (3 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span10 {
      width: calc(var(--column-width-multiplier) * 1% * 10 - var(--column-gap) * (2 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span11 {
      width: calc(var(--column-width-multiplier) * 1% * 11 - var(--column-gap) * (1 * var(--column-width-multiplier) / 100));
    }
  
}

@media (min-width: 1500px) {
  .container {
    max-width: 90rem;
    margin: 0 auto;
    width: 100%;
  }
}
.dnd-section {
  padding-left: 24px;
  padding-right: 24px;
}

.dnd-section[class*="full-width-section"] {
  padding-left: 0;
  padding-right: 0;
}


.content-wrapper {
  margin: 0 auto;
  padding: 0 1rem;
}

@media screen and (min-width: 1380px) {
  .content-wrapper {
    padding: 0;
  }
}

.dnd-section > .row-fluid {
  margin: 0 auto;
}

.dnd-section .dnd-column {
/*   padding: 0 1rem; */
}

@media (max-width: 767px) {
  .dnd-section .dnd-column {
    padding: 0;
  }
}

/* Elements
Base HTML elements are styled in this section (<body>, <h1>, <a>, <p>, <button> etc.)
*/

*,
html {

}

html,
body,
p,
div,
li,
label{
  font-size: 16px;
  font-family: 'Open Sans';
}

/* The overflow-wrap is meant to prevent long/large words from breaking the mobile responsiveness of a page (e.g. horizontal scrolling). It is preferred to reduce font sizes on mobile to address this, with this CSS specifically helping with extreme scenarios where a reduction in font size is not possible. */


body {
  line-height: 1.4;
  overflow-wrap: break-word;
  hyphens: none;
}
@media (max-width: 767px) {
  body {
    hyphens: auto;
  }
}
/* Handles word breaking for a few specific languages which handle breaks in words differently. If your content is not translated into these languages, you can safely remove this.  */

html[lang^="ja"] body,
html[lang^="zh"] body,
html[lang^="ko"] body {
  line-break: strict;
  overflow-wrap: normal;
  word-break: break-all;
}

/* Paragraphs */

p {
  margin: 0 0 1rem;
  color: var(--gray);
  font-size: 1rem;
  line-height: 1.6;
  letter-spacing: -0.02em;
}
p.eyebrow {
/*   margin: 0;
  font-size: 1.125rem; */
  
    font-size: 0.85rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--blue);
  font-weight: 600;
  margin-bottom: 0;
  line-height: 1.5rem;
  margin-bottom: 8px;
  
}


p.bold {
  font-weight: bold;
}
p.no-margin {
  margin: 0;
}
/* Anchors */
p.eyebrow + h2 {
  margin-bottom: 16px;
}
/* p.eyebrow + h2 + p {
  max-width: 800px;
  margin: 0 auto;
} */
a {
  cursor: pointer;
  text-decoration: none;
  color: #2b2b2c;
}
.tiny-text {
  font-size: 14px; 
}
/* Headings */

h1,
h2,
h3,
h4,
h5 {
  margin: 0 0 1rem;
  font-family: 'GT Super Display';
  letter-spacing: -0.015em;
}

h6{
  font-family: 'Open Sans';
  margin: 0 0 1.5rem;
  
}

/* Lists */

ul,
ol {
  margin: 0 0 1.4rem;
  color: var(--gray);
}

ul ul,
ol ul,
ul ol,
ol ol {
  margin: 0;
}

ul.no-list {
  list-style: none;
  margin: 0;
  padding-left: 0;
}

strong {
  font-weight: 600;
}
/* Code blocks */

pre {
  overflow: auto;
}

code {
  vertical-align: bottom;
}

/* Blockquotes */

blockquote {
  border-left: 2px solid;
  margin: 0 0 1.4rem;
  padding-left: 0.7rem;
}

/* Horizontal rules */

hr {
  border: none;
  border-bottom: 1px solid #CCC;
}

/* Image alt text */

img {
  font-size: 0.583rem;
  word-break: normal;
}

/* Font sizes */
h1.display {
  font-size: 24px;
  line-height: 32px;
  font-weight: 900;
}

h1, 
.h1 {
  font-size: 34px;
  line-height: 43px;
  font-weight: 900;
}

h2, 
.h2 {
  font-size: 24px;
  line-height: 32px;
  font-weight: 900;
}

h3, 
.h3 {
  font-size: 24px;
  line-height: 30px;
  font-weight: 400;
}

h4, 
.h4 {
  font-size: 24px;
  line-height: 30px;
  font-weight: 400;
}

h5, 
.h5 {
  font-size: 20px;
  line-height: 28px;
  font-weight: 400;
}

h6, 
.h6 {
  font-size: 20px;
  line-height: 32px;
      font-weight: 600;
    letter-spacing: -0.02em;
}
/* HEADINGS MOBILE ENDS */
@media (min-width: 520px) {
  /* Font sizes */
  h1.display {
    font-size: 30px;
    line-height: 38px;
    font-weight: 900;
  }

  h1, 
  .h1 {
    font-size: 30px;
    line-height: 38px;
    font-weight: 900;
  }

  h2, 
  .h2 {
    font-size: 30px;
    line-height: 38px;
    font-weight: 900;
  }

  h3, 
  .h3 {
    font-size: 30px;
    line-height: 38px;
    font-weight: 900;
  }

  h4, 
  .h4 {
    font-size: 28px;
    line-height: 40px;
    font-weight: 400;
  }

  h5, 
  .h5 {
    font-size: 24px;
    line-height: 36px;
    font-weight: 400;
  }

  h6, 
  .h6 {
    font-size: 20px;
    line-height: 32px;
    font-weight: 600;
    letter-spacing: -0.02em;
  }
}

/* BODY COPY MOBILE ENDS */

@media (min-width: 767px) {
  /* HEADINGS DESKTOP */
  h1.display {
    font-size: 40px;
    line-height: 48px;
    font-weight: bold;
  }

  h1, 
  .h1 {
    font-size: 40px;
    line-height: 48px;
    font-weight: bold;
  }

  h2, 
  .h2 {
    font-size: 40px;
    line-height: 48px;
    font-weight: bold;
  }

  h3, 
  .h3 {
    font-size: 36px;
    line-height: 42px;
    font-weight: bold;
  }

  h4, 
  .h4 {
    font-size: 30px;
    line-height: 40px;
    font-weight: bold;
  }

  h5, 
  .h5 {
    font-size: 24px;
    line-height: 36px;
    font-weight: bold;
  }

  h6, 
  .h6 {
    font-size: 20px;
    line-height: 30px;
    font-weight: 600;
    letter-spacing: -0.02em;
  }
}

ul.checklist {
  list-style: none;
  margin: 0;
  padding: 0;
}

ul.checklist li {
  position: relative;
  padding-left: 1.75rem;
  margin: 0 0 0.75rem 0;
}

ul.checklist li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.15em;
  width: 1.1rem;
  height: 1.1rem;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300A36C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
}
.nav--actions a.btn {
  padding: 6px 16px;
}
.btn.no-shadow {
  box-shadow: none;
}

a.btn.btn-tertiary {
  padding-left: 0;
  padding-right: 0;
  transform: translateY(0);
  box-shadow: none;
}
a.btn.btn-tertiary:hover {
  color: var(--blue);
  transform: translateY(0);
}
a.btn.btn-tertiary {
  font-weight: 600;
}
a.btn.btn-tertiary svg,
a.btn svg{
  transition: all 250ms ease;
  position: relative;
  top: 1px;
  left: 2px;
}
a.btn.btn-tertiary:hover svg,
a.btn:hover svg{
  transform: translateX(2px);
  transition: all 250ms ease;
}

a.btn:hover path{
  stroke: #fff;
}
a.btn.btn-tertiary:hover path{
  stroke: var(--blue);
}
/* a.btn-primary:hover {
background-color: var(--color-blue);
border-color: var(--color-dark-blue);
color: #fff;
} */
.bio {
  margin-top: 16px;
}
.team__block p,
.team__block span,
.team__block li {
  background-color: transparent !important;
}
.btn-simple {
  border-bottom: 2px solid rgba(73,124,173,.3);
  color: #2b2b2c;
  display: inline-block;
  font-size: 14px;
  font-weight: 600;
  line-height: 16px;
  padding-bottom: 3px;
  transition: border-color .16s ease;
  cursor: pointer;
}
.btn-simple:hover {
  border-color: var(--blue);
}
.btn-mobile {
  display: none;
}
.btn-desktop {
  display: inline-block;
}
@media(max-width: 767px){
  .btn-mobile {
    display: inline-block;    
  }
  .btn-desktop {
    display: none;
  }
}

button,
.button,
.hs-button {
  cursor: pointer;
  display: inline-block;
  text-align: center;
  transition: all 0.15s linear;
  white-space: normal;
}

button:disabled,
.button:disabled,
.hs-button:disabled {
  background-color: #D0D0D0;
  border-color: #D0D0D0;
  color: #E6E6E6;
}


/* Base button */
.btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 48px;
  padding: 0 24px;
  border-radius: 8px;
  border: 0;
  background: transparent;
  color: #2b2b2c;
  font-size: 15px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.1px;
  text-decoration: none;
  cursor: pointer;
  white-space: nowrap;
  transition:
    transform 200ms cubic-bezier(0.2, 0.8, 0.2, 1),
    background 200ms ease,
    border-color 200ms ease,
    box-shadow 200ms ease,
    color 200ms ease;
}

.btn:focus-visible {
  outline: 2px solid #497CAD;
  outline-offset: 2px;
}

.btn:active {
  transform: translateY(0);
  transition-duration: 80ms;
}

/* Animated trailing icon */
.btn .btn-icon {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  transition: transform 240ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

.btn:hover .btn-icon {
  transform: translateX(4px);
}

/* Primary: confident navy */
.btn.btn-primary {
  background: #ebdc76;
  color: #2D4A7A;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.16),
    0 1px 2px rgba(43, 43, 44, 0.16),
    0 2px 4px rgba(43, 43, 44, 0.08);
}

.btn.btn-primary:hover {
  background: #355A92;
  color:#fff;
  transform: translateY(-1px);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.2),
    0 4px 8px rgba(45, 74, 122, 0.24),
    0 2px 4px rgba(43, 43,   44, 0.08);
}

.btn.btn-primary:active {
  background: #2D4A7A;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    0 1px 2px rgba(43, 43, 44, 0.16);
}

/* Secondary: clean, bordered */
.btn.btn-secondary {
  background: var(--dark-blue);
  color: #fff;
  border: 1px solid #f0f0f0;
  box-shadow: 0 1px 2px rgba(43, 43, 44, 0.04);
}

.btn.btn-secondary:hover {
  background: #355A92;
  border-color: #355A92;  
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(43, 43, 44, 0.06);
}

.btn.btn-secondary:active {
  background: #f9fafc;
  box-shadow: 0 1px 2px rgba(43, 43, 44, 0.04);
}

/* No button */

.no-button,
.no-button:hover,
.no-button:focus,
.no-button:active {
  background: none;
  border: none;
  border-radius: 0;
  color: initial;
  font-family: inherit;
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  margin-bottom: 0;
  padding: 0;
  text-align: left;
  text-decoration: none;
  transition: none;
}

/*Back to top button */
#backToTop {
  position: fixed;
  right: clamp(12px, 2vw, 20px);
  bottom: clamp(12px, 2vw, 20px);
  z-index: 9999;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 8px;
  border: none;
  background-color: #fff;
  color: #fff;
  cursor: pointer;
  opacity: 0;
  transform: translateY(8px);
  visibility: hidden;
  transition: all 300ms ease;
  border: 1px solid #f0f0f0;
}
#backToTop:hover,
#backToTop.is-visible:hover { 
  filter: brightness(1.2);
  transform: translateY(9px);
  box-shadow: none;
  transition: all 300ms ease;
  background-color: #2b2b2c;
}
#backToTop:hover path {
  fill: #fff;
}
#backToTop:focus-visible {
  outline: 3px solid #66a3ff;
  outline-offset: 2px;
}
#backToTop svg { display: block; }

/* Visible state toggled by JS */
#backToTop.is-visible {
  opacity: 1;
  transform: translateY(0);
  visibility: visible;
}
/* Fields */

.hs-form-field {
  margin-bottom: 1.4rem;
}

/* Labels */

form label {
  display: block;
  font-size: 0.875rem;
  margin-bottom: 0.35rem;
}

/* Form Title */
.form-title {
  margin-bottom: 0;
}

/* Help text */

form legend {
  font-size: 0.875rem;
}

/* Inputs */

form input[type=text],
form input[type=search],
form input[type=email],
form input[type=password],
form input[type=tel],
form input[type=number],
form input[type=file],
form select,
form textarea {
  display: inline-block;
  font-size: 0.875rem;
  padding: 0.7rem;
  width: 100%;
  border: var(--border);
  background-color: #f9fafc;
  border-radius: 8px;
}

.dark-form form input[type=text],
.dark-form form input[type=search],
.dark-form form input[type=email],
.dark-form form input[type=password],
.dark-form form input[type=tel],
.dark-form form input[type=number],
.dark-form form input[type=file],
.dark-form form select,
.dark-form form  textarea {

  background-color: #fff;
}


form textarea {
  resize: vertical;
}

form fieldset {
  max-width: 100% !important;
}
.legal-consent-container {
  color: #6d6d6d;
  line-height: 1.5;
}
/* Inputs - checkbox/radio */

form .inputs-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

form .inputs-list > li {
  display: block;
  margin: 0.7rem 0;
}

form .inputs-list input,
form .inputs-list span {
  vertical-align: middle;
}

form input[type=checkbox],
form input[type=radio] {
  cursor: pointer;
  margin-right: 0.35rem;
}

/* Inputs - date picker */

.hs-dateinput {
  position: relative;
}

.hs-dateinput:before {
  content:'\01F4C5';
  position: absolute;
  right: 10%;
  top: 50%;
  transform: translateY(-50%);
}

.fn-date-picker .pika-table thead th {
  color: #FFF;
}

.fn-date-picker td.is-selected .pika-button {
  border-radius: 0;
  box-shadow: none;
}

.fn-date-picker td .pika-button:hover,
.fn-date-picker td .pika-button:focus {
  border-radius: 0 !important;
  color: #FFF;
}

/* Inputs - file picker */

form input[type=file] {
  background-color: transparent;
  border: initial;
  padding: initial;
}

/* Headings and text */

form .hs-richtext,
form .hs-richtext p {
  font-size: 0.875rem;
  margin: 0 0 1.4rem;
}

form .hs-richtext img {
  max-width: 100% !important;
}

/* GDPR */

.legal-consent-container .hs-form-booleancheckbox-display > span,
.legal-consent-container .hs-form-booleancheckbox-display > span p {
  margin-left: 1rem !important;
}

/* Validation */

.hs-form-required {
  color: #EF6B51;
}

.hs-input.invalid.error {
  border-color: #EF6B51;
}

.hs-error-msg {
  color: #EF6B51;
  margin-top: 0.35rem;
}

/* Submit button */

form input[type=submit],
form .hs-button {
  cursor: pointer;
  border: 2px solid #2b2b2c;
  background-color: #2b2b2c;
  color: #fff;
  white-space: normal;
  font-weight: 600;
  box-shadow: none;
  text-decoration: none;
  padding: 8px 16px;
  border-radius: 8px;
  position: relative;
  display: inline-block;
  transform: translateY(-2px);
  transition: all 300ms ease;
  letter-spacing: 0.3px;
}

form input[type=submit]:hover,
form .hs-button:hover {
  text-decoration: none;
  font-weight: 600;
  transform: translateY(0);
  box-shadow: none;
  transition: all 300ms ease;
  cursor: pointer;
}



/* Captcha */

.grecaptcha-badge {
  margin: 0 auto;
}


body .legal-consent-container .hs-form-booleancheckbox-display p {
  margin: 0 !important;
}
@media (max-width: 767px){
  .legal-consent-container .hs-form-booleancheckbox-display > span,
  .legal-consent-container .hs-form-booleancheckbox-display > span p {
    margin-left: 0 !important;
    font-size: 0.875rem;
  }
}

form label span {
  color: var(--black);
  font-weight: 600;
}
/* Table */

table {
  border-collapse: collapse;
  margin-bottom: 1.4rem;
  overflow-wrap: break-word;
}

/* Table cells */

td,
th {
  vertical-align: top;
}

/* Table header */

thead th {
  vertical-align: bottom;
}

/* Components
Specific pieces of UI that are stylized. Typically used for global partial styling
*/

/* Menu */
header {
  z-index: 9999;
}
.nav--actions {
  display: flex;
  gap: 16px;
}
.menu--desktop {
  display: block;
}

.menu--mobile {
  display: none;
}
.nav--menu-wrap {
  display: flex;
  align-items: center;
  gap: 16px;
}



/* Menu items */

.menu__item {
  position: relative;
}

.menu__link {
  font-size: 16px;
  line-height: 16px;
  text-decoration: none;
}

.menu__link:hover,
.menu__link:focus,
.menu__link:active {
  text-decoration: none;
}

.menu__link--active-link,
.menu__link--active-branch {
  font-weight: bold;
}

@media (min-width: 768px) and (max-width: 1150px) {
  .menu__link {
    font-size: 0.833rem;
  }
}

@media (max-width: 767px) {
  .menu__item {
    display: block;
    width: 100%;
  }

  .menu__link {
    display: block;
    font-size: 1.083rem;
  }
}

/* Menu items - top level */


.menu__item--depth-1 > .menu__link--active-link:after {
  bottom: -3px;
  content: '';
  height: 2px;
  left: 0;
  position: absolute;
  width: 100%;
}



/* Menu items - submenus */

.menu__submenu {
  box-shadow: none;
  border-radius: 8px;
  display: none;
  left: 0;
  position: absolute;
  text-align: left;
  text-transform: none;
  top: 100%;
  width: 270px;
  z-index: 99;
}

body .menu__submenu.mega-wrap {
  padding: 24px;
  left: 50%;
  position: fixed;
  top: 108px;
  width: 100%;
  box-shadow: 0 9px 11px 0 rgb(149 149 149 / 20%);
  border-bottom: medium none;
  transform: translateX(-50%) !important;
  max-width: 820px;
  border: 2px solid #e5e7eb;
  border-radius: 8px;
}
ul.no-list.mini-mega {
  border: 2px solid #e5e7eb;
}
.menu__item--open > .menu__submenu {
  display: block;
}

.mega-wrap.menu__submenu--level-2 {
  transform: translateX(-50%);
}
.mega-wrap.menu__submenu .menu__item {
  border-bottom: medium none;
}
/* Keeps the first menu item's drop down menu aligned to the left of the top level menu item */

.menu__item--depth-1:first-child .menu__submenu--level-2 {
  transform: unset;
}

.menu__submenu .menu__item {
  border-bottom: 1px solid #D1D6DC;
  padding: 0;
  width: 100%;
}

.menu__submenu .menu__link {
  display: block;
  padding: 0.7rem 1.05rem;
  transition: background-color 0.3s;
  width: 100%;
}

.menu__submenu--level-3 {
  left: 100%;
  top: 0;
}

/* Flyouts for the last two top level menu items go left to keep page responsive */

.menu__item--depth-1:nth-last-child(-n+2) .menu__submenu--level-3 {
  left: auto;
  right: 100%;
  top: 0;
}

/* Accounts for child toggle */

.menu__submenu .menu__item--has-submenu > .menu__link {
  padding-right: 3rem;
}

/* Creates the triangle at the top of the submenu drop down */

@media (min-width: 768px) {
  .menu__submenu--level-2 > .menu__item:first-child:before {
    border-radius: 6px;
    box-shadow: 0 2px 9px 0 rgb(0 0 0 / 20%);
    content: '';
    display: block;
    height: 30px;
    left: 125px;
    margin-left: 1rem;
    overflow: hidden;
    position: absolute;
    top: -12px;
    transform: rotate(45deg);
    transition: background-color .3s;
    width: 30px;
    z-index: 2;
  }

  /* Keeps triangle to the left for the first menu item's drop down menu */

  .menu__item--depth-1:first-child > .menu__submenu--level-2 > .menu__item:first-child:before {
    left: 0;
  }

  .menu__submenu--level-2 > .menu__item:first-child > .menu__link {
    position: relative;
    z-index: 2;
  }
}

@media (max-width: 1224px) {
  .menu__submenu {
    border: none;
    border-radius: 0;
    box-shadow: none;
    position: static;
    transform: unset;
    width: 100%;
  }

  .menu__submenu .menu__item {
    background-color: #FFF;
    border-bottom: none;
    border-top: 2px solid #EBEFF3;
    padding: 0;
  }

  .menu__submenu .menu__link {
    display: block;
    padding: 0.7rem 2rem;
    transition: none;
    width: 100%;
  }

  .menu__submenu .menu__item .menu__link:hover,
  .menu__submenu .menu__item .menu__link:focus {
    background-color: inherit;
    transition: none;
  }

  .menu__item--has-submenu > .menu__link {
    width: 70%;
  }

  .menu__submenu--level-3 .menu__item .menu__link {
    padding: 0.7rem 3rem;
  }
}

/* Menu icons */

@media(min-width: 768px) {
  .menu__submenu .menu__child-toggle {
    margin-left: auto;
    padding: 0 1.05rem;
  }

  .menu__child-toggle {
    position: absolute;
    right: 5px;
    top: 30px;
    z-index: 2;
  }

  .menu__item--depth-1 > .menu__child-toggle {
    position: static;
    right: 0;
    top: 0;
    vertical-align: middle;
  }

  .menu__child-toggle-icon {
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top-style: solid;
    border-top-width: 7px;
    display: block;
    height: 0;
    margin-left: 1px;
    width: 0;
  }
}

@media (max-width: 1224px) {
  .menu__child-toggle {
    background-position: center right 30px;
    background-repeat: no-repeat;
    background-size: 20px;
    border: none;
    cursor: pointer;
    height: 55px;
    padding: 15px 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 30%;
  }

  .menu__child-toggle-icon {
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTkiIGhlaWdodD0iMTkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgc3Ryb2tlPSIjOTc5ODlGIiBzdHJva2Utd2lkdGg9IjIuNCIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cmVjdCB4PSIxLjIiIHk9IjkuNiIgd2lkdGg9IjE2LjgiIGhlaWdodD0iMSIgcng9Ii41Ii8+PHJlY3QgdHJhbnNmb3JtPSJyb3RhdGUoOTAgOS42IDkuNikiIHg9IjEuMiIgeT0iOS42IiB3aWR0aD0iMTYuOCIgaGVpZ2h0PSIxIiByeD0iLjUiLz48L2c+PC9zdmc+);
    background-repeat: no-repeat;
    display: block;
    height: 20px;
    margin-left: auto;
    margin-right: 1.05rem;
    transition: transform 0.4s;
    width: 20px;
  }

  .menu__item--open > .menu__child-toggle .menu__child-toggle-icon {
    transform: rotate(45deg);
    transition: transform 0.4s;
  }
}


/* Mega Menu */
.mega-col-header {
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 32px;
}
.dynamic-panel {
  display: none;
}
.dynamic-panel.active {
  display: inline-block;
}
.mega-side-link {
  font-size: 24px;
  font-weight: bold;
  color: #2b2b2c;
  width: auto;
  max-width: max-content;
  padding: 24px 0px 0 0px;
  transition: all 400ms ease;
  position: relative;
  line-height: 30px;
  font-family: 'GT Super Display';
}
/* .mega-side-link:before {
position: absolute;
content: "";
height: 23px;
width: 32px;
position: absolute;
background-image: url('data:image/svg+xml,<svg width="76" height="23" viewBox="0 0 76 23" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M46 11.5L75 11.5M75 11.5L64.4545 1M75 11.5L64.4545 22" stroke="%232b2b2c" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path d="M1 11.5L30 11.5M30 11.5L19.4545 1M30 11.5L19.4545 22" stroke="%234879AE" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
left: 0;
background-repeat: no-repeat;
background-size: cover;
background-position: 100% 100%;
transition: all 400ms ease;
bottom: 50%;
transform: translateY(50%);

} */
.mega-side-link.active,
.mega-side-link.active a,
.mega-side-link:hover {  
  color: var(--blue);
  transition: all 300ms ease;
  cursor: pointer;
}
.mega-side-link.active:before,
.mega-side-link:hover:before {  
  background-position: 0 100%;
  transition: all 300ms ease;
}
a.mega-course-link {
  color: #2b2b2c;
  text-decoration: none;
  font-size: 16px;
  line-height: 24px;
  display: flex;
  flex-direction: column;
  margin-bottom: 16px;
  transition: all 300ms ease;
  height: 100%;
  justify-content: space-between;
}

.mega-locations a.mega-course-link {
  justify-content: center;
}
a.mega-course-link:hover {
  color: var(--blue);
  transition: all 300ms ease;
}
a.mega-course-link span:last-child {
  font-weight: 600;
  position: relative;
}
.mega-locations .span3 {
  display: flex;
}
/* a.mega-course-link span:last-child:after {
content: "";
position: absolute;
background-image: url('data:image/svg+xml,<svg width="32" height="11" viewBox="0 0 32 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M25.2685 0.268485C25.6265 -0.0894951 26.2069 -0.0894951 26.5648 0.268485L31.1482 4.85182C31.5062 5.2098 31.5062 5.7902 31.1482 6.14818L26.5648 10.7315C26.2069 11.0895 25.6265 11.0895 25.2685 10.7315C24.9105 10.3735 24.9105 9.79313 25.2685 9.43515L29.2036 5.5L25.2685 1.56485C24.9105 1.20687 24.9105 0.626466 25.2685 0.268485Z" fill="black"/><path fill-rule="evenodd" clip-rule="evenodd" d="M0.268486 0.268485C0.626467 -0.0894951 1.20687 -0.0894951 1.56485 0.268485L6.14818 4.85182C6.50616 5.2098 6.50616 5.7902 6.14818 6.14818L1.56485 10.7315C1.20687 11.0895 0.626466 11.0895 0.268485 10.7315C-0.0894952 10.3735 -0.0894952 9.79313 0.268485 9.43515L4.20364 5.5L0.268486 1.56485C-0.0894947 1.20687 -0.0894947 0.626466 0.268486 0.268485Z" fill="%234879AE"/></svg>');
height: 11px;
width: 11px;
background-repeat: no-repeat;
background-position: 100% 100%;
bottom: 5px;
transition: all 400ms ease;
margin-left: 8px;
}
a.mega-course-link:hover span:last-child:after {
background-position: 0 100%;
transition: all 300ms ease;
} */
.mega-blog--img {
  height: 170px;
  margin-bottom: 24px;
}
.nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 24px;
  box-shadow: 0px 6px 20px -6px rgb(157 156 156 / 20%);
}
.menu__item--depth-1 {
  display: inline-block;
}

.header__language-switcher .lang_list_class li a,
.header__language-switcher-label-current,
.header__logo .logo-company-name, .menu__link {
  color: #2b2b2c;
}
.header {
  background-color: #fff;
  position: fixed;
  width: 100%;
}
.mega-wrap.menu__submenu .menu__link {
  display: block;
  padding: 32px;
  transition: all 0.3s ease;
  width: 100%;
  background-image: linear-gradient(180deg, #ffffff, #f2f2f2);
}
.header__language-switcher .lang_list_class, .menu .menu__submenu, .menu__submenu--level-2>.menu__item:first-child:before {
  background-color: #fff;
  border: medium none;
}
.menu__item--depth-1:first-child > .menu__submenu--level-2 > .menu__item:first-child:before {
  display: none;
}
li.menu__item.menu__item--depth-1 {
  transition: all 0.3s ease;
  position: relative;
}

li.menu__item.menu__item--depth-1.menu__item--has-submenu a {
  transition: all 0.3s ease;

}
li.menu__item.menu__item--depth-1:hover > a {
  color: #2b2b2c;
  transition: all 0.3s ease;
}
li.menu__item.menu__item--depth-1:hover {
  background-image: linear-gradient(180deg, #ffffff, #f2f2f2);
  transition: all 0.3s ease;
}
li.menu__item.menu__item--depth-1:hover > a {

  transition: all 0.3s ease;
}
li.menu__item.menu__item--depth-1 > a:after {
  content: "";
  height: 2px;
  width: 0;
  position: absolute;
  bottom: 0;
  background-color: var(--blue);
  transition: all 0.3s ease;
  left: 0;
}
li.menu__item.menu__item--depth-1:hover > a:after {
  width: 100%;
  transition: all 0.3s ease;
}
.mega-blog--content h2 {
  font-size: 24px;
  line-height: 30px;
}




/* Header DND sections */

.header .dnd-section {
  padding: 0;
}

/* Header container */

.header__container {
  display: flex;
  justify-content: space-between;
}

.header__row-1 {
  padding-top: 1rem;
}

.header__row-1,
.header__row-2 {
  align-items: center;
  display: flex;
  justify-content: flex-end;
  width: 100%;
}

@media (max-width: 1150px) and (min-width: 767px) {
  .header__column {
    width: 100%;
  }
}

@media (max-width: 1224px) {
  .header__container {
    flex-direction: column;
    padding: 1rem 0 0;
  }

  .header__column {
    position: relative;
  }

  .header__row-1 {
    padding-top: 0;
  }

  .header__row-2 {
    justify-content: center;
    padding: 14px 16px 15px 16px;
  }
  .scroll-up #subNav.is-stuck {
    transform: translateY(8px);
    transition: all 350ms ease;
  }
}

/* Navigation skipper */

.header__skip {
  height: 1px;
  left: -1000px;
  overflow: hidden;
  position: absolute;
  text-align: left;
  top: -1000px;
  width: 1px;
}

.header__skip:hover,
.header__skip:focus,
.header__skip:active {
  height: auto;
  left: 0;
  overflow: visible;
  top: 0;
  width: auto;
}

/* Logo */

.header__logo {
  align-items: center;
  display: flex;
  height: auto;
  margin-right: auto;
  max-width: 200px;
  overflow: hidden;
}

@media (max-width: 767px) {
  .header__logo {
    margin: 0 auto;
    width: 100%;
  }
}

.header__logo img {
  max-width: 100%;
}

.header__logo .logo-company-name {
  font-size: 1.167rem;
  margin-top: 0.7rem;
}

.header__logo--main {
  padding-top: 1rem;
}

/* Search bar */

.header__search {
  padding: 0 1rem;
  width: auto;
}



.hs-search-field__form {
  position: relative;
}

.header__search .hs-search-field__label {
  flex-basis: auto;
}



.header__search .hs-search-field__input {
  
  height: 45px;
  padding: 0 0.7rem;
}



.header__search .hs-search-field__button {
  padding: 0;
  fill: #000;
  background-color: transparent;
  border: none;
  padding: 10px;
  position: absolute;
  top: 0;
  right: 0;
}

.header__search .hs-search-field__button svg {
  height: 25px;
}


.header__search .hs-search-field--open .hs-search-field__input {
  border-bottom: none;
  border-radius: 6px 6px 0 0;
  max-width: 100%;
}

.header__search .hs-search-field--open .hs-search-field__suggestions {
  background-color: #FFF;
  border: 2px solid #D1D6DC;
  border-radius: 0 0 6px 6px;
  border-top-width: 1px;
  position: absolute;
  width: 100%;
  z-index: 10;
}

.header__search .hs-search-field__suggestions li {
  border-top: 1px solid #D1D6DC;
  font-size: 0.875rem;
}

.header__search .hs-search-field__suggestions li a {
  color: #494A52;
  padding: 0.35rem 0.7rem;
  text-decoration: none;
  transition: background-color 0.3s;
}

.header__search .hs-search-field__suggestions #results-for {
  display: none;
}

@media (min-width: 767px) {
  .header__search form {
    align-items: center;
    display: flex;
    flex-direction: row;
  }

  .header__search label {
    margin: 0 1rem 0 0;
  }

  .header__search .hs-search-field__input {
    width: auto;
  }
}

@media (max-width: 767px) {
  .header__search {
    border-top: 2px solid #CED4DB;
    order: 1;
    padding: 1.05rem;
  }
}

/* Language switcher */

.header__language-switcher {
  cursor: pointer;
  padding-right: 1.4rem;
}

.header__language-switcher .lang_switcher_class {
  position: static;
}

.header__language-switcher .lang_list_class {
  border: 2px solid;
  border-radius: 3px;
  box-shadow: none;
  display: block;
  left: calc(100% - 24px);
  opacity: 0;
  min-width: 100px;
  padding-top: 0;
  text-align: left;
  top: 100%;
  transition: opacity 0.3s;
  visibility: hidden;
}

.header__language-switcher:hover .lang_list_class,
.header__language-switcher:focus .lang_list_class {
  opacity: 1;
  transition: opacity 0.3s;
  visibility: visible;
}

.header__language-switcher .lang_list_class:before {
  left: 70%;
  top: -25px;
}

.header__language-switcher .lang_list_class:after {
  left: 70%;
  top: -22px;
}

.header__language-switcher .lang_list_class.first-active::after {
  top: -22px;
  transition: 0.3s;
}

.header__language-switcher .lang_list_class li {
  border: none;
  font-size: 18px;
  padding: 0.35rem 0.7rem;
}

.header__language-switcher .lang_list_class li:first-child {
  border-radius: 6px 6px 0 0;
  border-top: none;
}

.header__language-switcher .lang_list_class li:last-child {
  border-bottom: none;
  border-radius: 0 0 6px 6px;
}

.header__language-switcher .lang_list_class li:hover {
  transition: background-color 0.3s;
}

.header__language-switcher--label {
  display: flex;
  position: relative;
}

.header__language-switcher--label-current {
  align-items: center;
  display: flex;
  font-size: 0.75rem;
  margin-bottom: 0.175rem;
  margin-left: 0.7rem;
}

.header__language-switcher--label-current:after {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 6px solid #494A52;
  content: "";
  display: block;
  height: 0px;
  margin-left: 0.7rem;
  margin-top: 0.175rem;
  width: 0px;
}

/* @media (max-width: 767px) {
.header__language-switcher {
border-top: 2px solid #CED4DB;
padding-left: 1.05rem;
padding-right: 0;
}

.header__language-switcher .lang_list_class {
border: none;
box-shadow: unset;
display: block;
left: 30px;
opacity: 1;
padding: 0 1.05rem;
top: 0;
visibility: visible;
}

.header__language-switcher .lang_list_class li {
background-color: inherit;
font-size: 0.917rem;
}

.header__language-switcher--label-current {
display: none;
}

.header__language-switcher .globe_class {
background-image: none;
}

.header__language-switcher .lang_list_class li:hover{
background-color: inherit;
}

.header__language-switcher .lang_list_class:before,
.header__language-switcher .lang_list_class:after {
content: none;
}} */

/* Navigation */

#nav-toggle {
  display: none;
}

/* Mobile toggles */

@media (max-width: 1224px) {

  .header__navigation,
  .header__search,
  .header__language-switcher {
    display: none;
    width: 100%;
  }

  .header__navigation.open,
  .header__search.open,
  .header__language-switcher.open {
    background-color: #F8FAFC;
    display: block;
    left: 0;
    height: calc(85vh);
    position: absolute;
    right: 0;
    top: 70px;
    z-index: 2;
    overflow: auto;
  }

  .header__navigation--toggle,
  .header__search--toggle,
  .header__language-switcher--toggle,
  .header__close--toggle {
    cursor: pointer;
    margin: 0 5vw;
    position: relative;
  }

  .header__navigation--toggle.hide,
  .header__search--toggle.hide,
  .header__language-switcher--toggle.hide {
    display: none;
  }

  .header__navigation--toggle.open,
  .header__search--toggle.open,
  .header__language-switcher--toggle.open {
    display: block;
    margin-left: 0;
    margin-right: auto;
  }

  .header__navigation--toggle:after,
  .header__search--toggle:after,
  .header__language-switcher--toggle:after {
    display: none;
    font-size: 1.083rem;
    font-weight: 600;
    position: absolute;
    left: 40px;
    text-transform: uppercase;
    top: -10px;
  }

  .header__navigation--toggle.open:after,
  .header__search--toggle.open:after,
  .header__language-switcher--toggle.open:after {
    display: block;
    word-break: normal;
  }

  .header__navigation--toggle {
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSIyNHB4IiBoZWlnaHQ9IjI0cHgiIHZpZXdCb3g9IjAgMCAyNCAxOSIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4gICAgICAgIDx0aXRsZT5oYW1idXJnZXI8L3RpdGxlPiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4gICAgPGcgaWQ9ImhhbWJ1cmdlciIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+ICAgICAgICA8ZyBpZD0iR3JvdXAiIHN0cm9rZT0iIzQ5NEE1MiIgc3Ryb2tlLXdpZHRoPSIzIj4gICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlIiB4PSIxLjUiIHk9IjEuNSIgd2lkdGg9IjIxIiBoZWlnaHQ9IjEiIHJ4PSIwLjUiPjwvcmVjdD4gICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlLUNvcHktNCIgeD0iMS41IiB5PSI5LjUiIHdpZHRoPSIyMSIgaGVpZ2h0PSIxIiByeD0iMC41Ij48L3JlY3Q+ICAgICAgICAgICAgPHJlY3QgaWQ9IlJlY3RhbmdsZS1Db3B5LTUiIHg9IjEuNSIgeT0iMTcuNSIgd2lkdGg9IjIxIiBoZWlnaHQ9IjEiIHJ4PSIwLjUiPjwvcmVjdD4gICAgICAgIDwvZz4gICAgPC9nPjwvc3ZnPg==);
    background-size: cover;
    height: 25px;
    width: 25px;
  }

  .header__navigation--toggle:after {
    content: "Menu";
  }

  .header__language-switcher--toggle {
    background-image: url(//static.hsappstatic.net/cos-LanguageSwitcher/static-1.1/img/globe.png);
    background-size: cover;
    height: 25px;
    width: 25px;
  }

  .header__language-switcher--toggle:after {
    content: "Language";
  }

  .header__search--toggle {
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSIyNHB4IiBoZWlnaHQ9IjI0cHgiIHZpZXdCb3g9IjAgMCAyNCAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4gICAgICAgIDx0aXRsZT5TZWFyY2g8L3RpdGxlPiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4gICAgPGRlZnM+ICAgICAgICA8cGF0aCBkPSJNOS4xMzg2MTUzNCwxNS44OTI1Njg1IEM1LjQxMzk1NzQyLDE1Ljg5MjU2ODUgMi4zODM4ODUyNywxMi44NjM0NDc1IDIuMzgzODg1MjcsOS4xMzkwMDM3NiBDMi4zODM4ODUyNyw1LjQxNDU2MDA1IDUuNDEzOTU3NDIsMi4zODM4ODUyNyA5LjEzODYxNTM0LDIuMzgzODg1MjcgQzEyLjg2MzI3MzMsMi4zODM4ODUyNyAxNS44OTI1Njg1LDUuNDE0NTYwMDUgMTUuODkyNTY4NSw5LjEzOTAwMzc2IEMxNS44OTI1Njg1LDEyLjg2MzQ0NzUgMTIuODYzMjczMywxNS44OTI1Njg1IDkuMTM4NjE1MzQsMTUuODkyNTY4NSBNOS4xMzg3NTI0NSwyLjQzMzYwODg3ZS0xMyBDMTQuMTc3OTk1NSwyLjQzMzYwODg3ZS0xMyAxOC4yNzY0NTM3LDQuMTAwMzI0NzEgMTguMjc2NDUzNyw5LjEzOTI3Nzk2IEMxOC4yNzY0NTM3LDExLjIyOTgyMTEgMTcuNTcxMDE2OSwxMy4xNTg0NDM0IDE2LjM4NTYzMTMsMTQuNjk5NjY5NiBMMjMuNjUwODg4MSwyMS45NjUyMjY2IEMyNC4xMTYzNzA2LDIyLjQzMDcwOTIgMjQuMTE2MzcwNiwyMy4xODU0MDU1IDIzLjY1MDg4ODEsMjMuNjUwODg4MSBDMjMuMTg1NDA1NSwyNC4xMTYzNzA2IDIyLjQzMDcwOTIsMjQuMTE2MzcwNiAyMS45NjUyMjY2LDIzLjY1MDg4ODEgTDE0LjY5OTgxMzMsMTYuMzg1NDcxMyBDMTMuMTU4NDQwNSwxNy41NzA5NTA5IDExLjIyOTU3MzgsMTguMjc2NDUzNyA5LjEzODc1MjQ1LDE4LjI3NjQ1MzcgQzQuMDk5NTA5MzgsMTguMjc2NDUzNyAtMy43MzAzNDkzNmUtMTQsMTQuMTc4MjMxMiAtMy43MzAzNDkzNmUtMTQsOS4xMzkyNzc5NiBDLTMuNzMwMzQ5MzZlLTE0LDQuMTAwMzI0NzEgNC4wOTk1MDkzOCwyLjQzMzYwODg3ZS0xMyA5LjEzODc1MjQ1LDIuNDMzNjA4ODdlLTEzIFoiIGlkPSJwYXRoLTEiPjwvcGF0aD4gICAgPC9kZWZzPiAgICA8ZyBpZD0iU2VhcmNoIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4gICAgICAgIDxtYXNrIGlkPSJtYXNrLTIiIGZpbGw9IndoaXRlIj4gICAgICAgICAgICA8dXNlIHhsaW5rOmhyZWY9IiNwYXRoLTEiPjwvdXNlPiAgICAgICAgPC9tYXNrPiAgICAgICAgPHVzZSBpZD0iSWNvbnMvQWN0aW9ucy9TZWFyY2giIGZpbGw9IiM0OTRBNTIiIHhsaW5rOmhyZWY9IiNwYXRoLTEiPjwvdXNlPiAgICA8L2c+PC9zdmc+);
    background-size: cover;
    height: 25px;
    width: 25px;
  }

  .header__search--toggle:after {
    content: "Search";
  }

  .header__close--toggle {
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSIyNHB4IiBoZWlnaHQ9IjE5cHgiIHZpZXdCb3g9IjAgMCAyNCAxOSIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4gICAgICAgIDx0aXRsZT5jbG9zZTwvdGl0bGU+ICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPiAgICA8ZyBpZD0iY2xvc2UiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPiAgICAgICAgPGcgaWQ9Ikdyb3VwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgyLjAwMDAwMCwgLTEuMDAwMDAwKSIgc3Ryb2tlPSIjNDk0QTUyIiBzdHJva2Utd2lkdGg9IjMiPiAgICAgICAgICAgIDxyZWN0IGlkPSJSZWN0YW5nbGUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwLjAwMDAwMCwgMTAuNTAwMDAwKSByb3RhdGUoLTQ1LjAwMDAwMCkgdHJhbnNsYXRlKC0xMC4wMDAwMDAsIC0xMC41MDAwMDApICIgeD0iLTAuNSIgeT0iMTAuNSIgd2lkdGg9IjIxIiBoZWlnaHQ9IjEiIHJ4PSIwLjUiPjwvcmVjdD4gICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlLUNvcHktNSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTAuMDAwMDAwLCAxMC41MDAwMDApIHJvdGF0ZSg0NS4wMDAwMDApIHRyYW5zbGF0ZSgtMTAuMDAwMDAwLCAtMTAuNTAwMDAwKSAiIHg9Ii0wLjUiIHk9IjEwLjUiIHdpZHRoPSIyMSIgaGVpZ2h0PSIxIiByeD0iMC41Ij48L3JlY3Q+ICAgICAgICA8L2c+ICAgIDwvZz48L3N2Zz4=);
    background-repeat: no-repeat;
    background-size: 110%;
    display: none;
    height: 25px;
    margin-right: 0;
    width: 25px;
  }

  .header__close--toggle.show {
    display: block;
  }
  .menu__item--depth-1 {
    display: flex;
    flex-wrap: wrap;
  }
  button.menu__child-toggle.no-button {
    padding: 0;
    height: auto;
  }

}

a.mega-course-link:hover {
  text-decoration: none;
}
.link-wrap a.mega-course-link span:first-child {
  font-weight: 600;
  color: var(--blue);
}
.mega-col-header {
  position: relative;
}
.mega-col-header:after {
  content: "";
  position: absolute;
  left: 0;
  background-color: #f2f2f2;
  height: 2px;
  width: 100%;
  bottom: -10px;
}

/* a.mega-course-link span {
margin-bottom: 0;
margin-top: 6px;
} */
.menu__item--depth-1 > a {
  height: 100%;
  display: inline-block;
  padding: 24px 8px;
  font-weight: 500;
  letter-spacing: normal;
  font-size: 16px;
  color: #2b2b2c;
}
body .menu__item--depth-1 > .menu__child-toggle {
  right: 4px;
  position: relative;
  display: inline-block;
}

span.menu__child-toggle-icon {
  background-image: url('data:image/svg+xml,<svg width="12" height="33" viewBox="0 0 12 33" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M10.9399 26.06C11.2978 26.418 11.2978 26.9984 10.9399 27.3564L6.35652 31.9397C5.99854 32.2977 5.41814 32.2977 5.06016 31.9397L0.476829 27.3564C0.118848 26.9984 0.118848 26.418 0.476829 26.06C0.834809 25.702 1.41521 25.702 1.77319 26.06L5.70834 29.9951L9.6435 26.06C10.0015 25.702 10.5819 25.702 10.9399 26.06Z" fill="black"/><path fill-rule="evenodd" clip-rule="evenodd" d="M10.9399 1.05999C11.2978 1.41797 11.2978 1.99837 10.9399 2.35635L6.35652 6.93968C5.99854 7.29767 5.41814 7.29767 5.06016 6.93968L0.476829 2.35635C0.118848 1.99837 0.118848 1.41797 0.476829 1.05999C0.834809 0.702008 1.41521 0.702008 1.77319 1.05999L5.70834 4.99514L9.6435 1.05999C10.0015 0.702009 10.5819 0.702009 10.9399 1.05999Z" fill="%234879AE"/></svg>');
  height: 13px;
  width: 12px;
  background-size: cover;
  background-repeat: no-repeat;
  border: medium none;
  background-position: 100% 100%;
  margin-top: -6px;
  transition: all 400ms ease;
}

li.menu__item.menu__item--depth-1:hover span.menu__child-toggle-icon {
  background-position: 100% 5px;
  transition: all 400ms ease;
}
.menu__submenu--level-2>.menu__item:first-child:before {
  display: none;
}
a.mega-course-link span:nth-child(1) {
  font-weight: bold;
  color: var(--blue);
  font-family: 'GT Super Display';
  font-size: 20px;
}
a.mega-course-link:hover span:nth-child(1) {
  color: var(--black);
}
a.mega-course-link:hover span:nth-child(2) {
  color: var(--blue);
}
a.mega-course-link span:nth-child(2) {
  font-weight: 500;
}

.mini-mega.menu__submenu .menu__item {
  border-bottom: medium none;
  padding: 0;
  width: 100%;
  max-width: none;
}

ul.no-list.mini-mega {
  padding: 24px;
  max-width: none;
  width: 600px;
}

.mega-col-header.no-pad {
  margin-bottom: 8px;
}

.mega-blog .mega-col-header {
  margin-bottom: 32px;
}

@media (max-width: 1380px) {
  .nav--actions .btn-secondary {
    display: none;
  }
}
.advanced-menu-wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}
.advanced-menu-wrap .link-wrap {
  width: calc(50% - 32px);
  border-radius: 8px;
  padding: 24px;
  background-color: #fff;
  border: var(--border);
}
.advanced-menu-wrap.advanced-menu-wrap--addons .link-wrap {
  width: calc(33% - 24px);
}
a.mega-course-link span:nth-child(2) {
  font-weight: 500;
  transition: none;
  color: #2b2b2c;
}
.link-wrap a {
  gap: 8px;
  margin: 0;
}
a.mega-course-link:hover span:nth-child(2) {
  color: #2b2b2c;
  transition: none;
}
.link-wrap a span:first-child {
  font-size: 20px;
  font-family: 'GT Super Display';
}
.advanced-menu-wrap .link-wrap div {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

a.mega-course-link div span:after {
  display: none;
}

.nav--logo img {
  max-width: 100%;
  position: relative;
  top: 5px;
}

.nav--logo {

  max-width: 190px;
}

.menu__item__webinars .link-wrap a,
.menu__funding .link-wrap a,
.menu__about .link-wrap a{
  gap: 4px;
  margin: 0;
}
li.menu__item.menu__item--depth-2.hs-skip-lang-url-rewrite .row-fluid {
  gap: 24px;
}
.span6 .link-wrap:first-child {
  margin-bottom: 24px;
  margin-top: 0;
}
.advanced-menu-wrap .link-wrap a > span {
  font-weight: 600;
}

.mega-blog .event {
  flex-direction: column;
}
.mega-blog .event__img {
  width: 100%;
  min-height: 160px;
}
.mega-blog .event__img:after {
  content: none;
}
.mega-blog .event__details {
  width: 100%;
  padding: 16px;
}
.mega-blog .featured-events__card-date {
  flex-direction: column;
}
ul.no-list.mini-mega {
  padding: 24px;
  max-width: none;
  width: 700px;
  left: -70px;
}

ul.no-list.mini-mega.menu__funding {
  padding: 24px;
  max-width: none;
  width: 320px;
  left: -40px;
}

ul.menu__submenu.menu__submenu--level-2.no-list.mini-mega.menu__about {
  left: -270px;
}

@media(max-width: 1200px) {
  ul.menu__submenu.menu__submenu--level-2.no-list.mini-mega.menu__about {
    left: -470px;
  }
}

.top-nav {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: right;
  padding: 8px 24px;
  gap: 24px;
  background-color: var(--blue);
}
.top-nav a {
  color: #fff;
  letter-spacing: 0.2px;
  font-weight: 600;
  font-size: 14px;
}

.sub-btn {
  display: flex;
  justify-content: flex-end;
  width: 100%;
}
.sub-btn a.btn.btn-tertiary {
  font-weight: 500;
}

span.m-desc {
  font-size: 14px;
}
.row-top {
  margin-bottom: 24px;
}

/* .hero h6,
.hero p {
  font-weight: 400 !important;
  line-height: 26px !important;
} */

.last-row .span6 .link-wrap {
  margin: 0;
}

@media (max-width: 1224px) {
  .nav--logo {
    max-width: 190px;
    height: 100%;
    min-width: 150px;
  }
  .menu--desktop {
    display: none;
  }
  .top-nav {
    display: none;
  }
  .menu--mobile {
    display: block;
  }
  .nav {
    padding: 16px 24px;
  }
  .nav--menu-wrap {
    gap: 8px;
    flex-direction: row-reverse;
  }
  .header--toggle.header__navigation--toggle {
    margin: 0;
  }
  .nav--actions .btn-secondary {
    display: inline-block;
  }
  .nav--actions {
    gap: 24px;
  }
  .nav--actions a.btn {
    padding: 8px 16px;
  }
  .hero {
    padding: 110px 24px 0;
  }
}

@media (max-width: 767px) {
  .nav--logo {
    max-width: 150px;
    height: 100%;
    min-width: 150px;
  }
  .nav--actions .btn-primary,
  .nav--actions .btn-secondary {
    display: none;
  }
  .nav {
    padding: 8px 24px;
  }
}



/* Mobile menu drawer */
.cc-mobileMenu {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: none;
}

.cc-mobileMenu[aria-hidden="false"] {
  display: block;
}

.cc-mobileMenu__overlay {
  position: absolute;
  inset: 0;
  background: rgba(43, 43, 44, 0.56);
}

.cc-mobileMenu__panel {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: min(420px, 100%);
  background: #FFF;
  border-left: var(--border);
  display: grid;
  grid-template-rows: auto 1fr auto;
}

.cc-mobileMenu__head {
  padding: 24px;
  border-bottom: var(--border);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.cc-mobileMenu__close {
  width: 40px;
  height: 40px;
  border-radius: 8px;
  border: var(--border);
  background: #FFF;
  color: #2b2b2c;
  cursor: pointer;
}

.cc-mobileMenu__body {
  padding: 24px;
  overflow: auto;
  display: grid;
  gap: 24px;
  height: calc(100vh - 230px);
}

.cc-mobileMenu__section {
  border: var(--border);
  border-radius: 8px;
  background: #f9fafc;
  padding: 24px;
}

.cc-mobileMenu__kicker {
  margin: 0 0 16px 0;
  color: #6D6C6D;
  font-weight: 600;
  letter-spacing: 0.4px;
  text-transform: uppercase;
  font-size: 12px;
}

.cc-mobileMenu__quick {
  display: grid;
  gap: 16px;
}

.cc-mobileMenu__link,
.cc-mobileMenu__primaryLink,
.cc-mobileMenu__subLink {
  display: block;
  text-decoration: none;
  color: #2b2b2c;
  padding: 12px 12px;
  border-radius: 8px;
  background: #FFF;
  border: var(--border);
}

.cc-mobileMenu__primaryLink {
  font-weight: 600;
}

.cc-mobileMenu__divider {
  height: 1px;
  background: #e5e7eb;
  margin: 16px 0;
}

.cc-mobileMenu__cities {
  display: grid;
  gap: 8px;
  grid-template-columns: 1fr 1fr;
}

.cc-mobileMenu__cities a {
  text-decoration: none;
  color: #2b2b2c;
  padding: 8px 12px;
  border-radius: 8px;
  background: #FFF;
  border: var(--border);
}

.cc-mobileMenu__footer {
  padding: 24px;
  border-top: var(--border);
  display: grid;
  gap: 16px;
  background: #FFF;
}

.cc-mobileMenu__footer a.btn {
  width: 100%;
  text-align: center;
}

/* Accordion */
.cc-acc__btn {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #2b2b2c;
  cursor: pointer;
  font-weight: 600;
}

.cc-acc__icon {
  width: 24px;
  height: 24px;
  border-radius: 8px;
  border: var(--border);
  background: #FFF;
  position: relative;
  flex: 0 0 auto;
}

.cc-acc__icon::before,
.cc-acc__icon::after {
  content: "";
  position: absolute;
  left: 6px;
  right: 6px;
  top: 11px;
  height: 2px;
  background: #2D4A7A;
}

.cc-acc__icon::after {
  transform: rotate(90deg);
}

.cc-acc__btn[aria-expanded="true"] .cc-acc__icon::after {
  transform: rotate(0deg);
}

.cc-acc__panel {
  margin-top: 16px;
}

.cc-mobileMenu__subgrid {
  display: grid;
  gap: 16px;
}

/* Small screens */
@media (max-width: 520px) {
  .cc-mobileMenu__cities {
    grid-template-columns: 1fr;
  }
}

/* Desktop: keep hidden */
@media (min-width: 980px) {
  .cc-mobileMenu {
    display: none !important;
  }
}



@media (max-width: 1224px) {
  .menu__item--depth-1 {
    border-top: 2px solid #CED4DB;
    padding: 0;
  }

  .menu__item--depth-1 > .menu__link {
    padding: 16px;
  }

  .menu__item--depth-1 > .menu__link--active-link:after {
    content: none;
  }


  .menu--mobile-custom .menu__item--depth-2 {
    margin: 0;
    padding: 0 16px;
    border-bottom: medium none;
  }
  .menu--mobile-custom .menu__item--depth-2>.menu__link {
    border: medium none;
    color: #2b2b2c;
    display: block;
    line-height: 24px;
    padding: 8px 0;
    text-decoration: none;
  }


}

@media (max-width: 767px) {
  .menu__item--has-submenu > .menu__link {
    width: 85%;
  }
  .menu__child-toggle {
    width: 15%;
  }
}

.header--toggle.header__navigation--toggle.hide.open {
  display: none;
}
/* Menu and simple menu */

.hs-menu-wrapper ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding-left: 0;
}

/* Horizontal menu */

.hs-menu-wrapper.hs-menu-flow-horizontal .hs-menu-children-wrapper {
  flex-direction: column;
}

@media (max-width: 767px) {
  .hs-menu-wrapper.hs-menu-flow-horizontal ul {
    flex-direction: column;
  }
}

/* Vertical menu */

.hs-menu-wrapper.hs-menu-flow-vertical ul {
  flex-direction: column;
}

/* Flyouts */

.hs-menu-wrapper.hs-menu-flow-vertical.flyouts ul {
  display: inline-flex;
}

@media (max-width: 767px) {
  .hs-menu-wrapper.hs-menu-flow-vertical ul {
    display: flex;
  }
}

.hs-menu-wrapper.flyouts .hs-item-has-children {
  position: relative;
}

.hs-menu-wrapper.flyouts .hs-menu-children-wrapper {
  left: -9999px;
  opacity: 0;
  position: absolute;
}

.hs-menu-wrapper.flyouts .hs-menu-children-wrapper a {
  display: block;
  white-space: nowrap;
}

.hs-menu-wrapper.hs-menu-flow-horizontal.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper {
  left: 0;
  opacity: 1;
  top: 100%;
}

.hs-menu-wrapper.hs-menu-flow-vertical.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper {
  left: 100%;
  opacity: 1;
  top: 0;
}

@media (max-width: 767px) {
  .hs-menu-wrapper.flyouts .hs-menu-children-wrapper,
  .hs-menu-wrapper.hs-menu-flow-horizontal.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper,
  .hs-menu-wrapper.hs-menu-flow-vertical.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper {
    left: 0;
    opacity: 1;
    position: relative;
    top: auto;
  }
}

/* CTA, logo, and rich text images */

.hs_cos_wrapper_type_cta img,
.hs_cos_wrapper_type_logo img,
.hs_cos_wrapper_type_rich_text img {
  height: auto;
  max-width: 100%;
}
/* ===== Header ===== */
.courses .title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.courses .title h1 {
  margin: 0;
  font-size: 1.28rem;
  font-weight: 700;
  letter-spacing: 0.1px;
  color: #0b1e6d; /* refined navy */
}
.courses .actions {
  display: flex;
  gap: 8px;
}
.cc-tip__bubble p,
.cc-tip__bubble li {
  color: #e6eaf7;
}
/* ===== Auftakt Callout (very compact) ===== */
.courses .auftakt {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  border-radius: 10px;
  background: linear-gradient(180deg, #f0f3ff, #e8ecff);
  border: 1px solid #d9dff8;
  margin-top: 14px;
}
.courses .auftakt h2 {
  margin: 0;
  font-size: 1.02rem;
  color: #0b1e6d;
  font-weight: 700;
}
.courses .auftakt p {
  margin: 0;
  color: #2a2f39;
}
.courses .chip {
  display: inline-block;
  padding: 0 8px;
  height: 22px;
  line-height: 22px;
  border-radius: 999px;
  border: 1px solid #cfd6ff;
  background: #eef2ff;
  color: #0b1e6d;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}
.courses time {
  font-variant-numeric: tabular-nums;
}

/* ===== Accordion ===== */
.courses .stack {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}
.courses .accordion {
  border: 1px solid var(--black);
  border-radius: 10px;
  padding: 14px;
  margin: 18px 0;
  background: #fff;
}

.courses details.module {
  border: 1px solid #e6e9f0;
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
  transition:
    box-shadow 0.2s ease,
    border-color 0.2s ease,
    transform 0.05s ease;
}
.courses details.module:hover {
  border-color: #dfe3ea;
  box-shadow: none;
}
.courses details.module[open] {
  border-color: #d6dae3;
  box-shadow: none;
}

.courses summary {
  list-style: none;
  cursor: pointer;
  padding: 10px 14px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 10px;
}
.courses summary::-webkit-details-marker {
  display: none;
}

.courses .summary-line {
  display: flex;
  align-items: baseline;
  gap: 10px 12px;
  flex-wrap: wrap;
  min-width: 0;
}
.courses .mod-title {
  color: #0b1e6d;
  font-weight: 750;
  font-size: 1.02rem;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.courses .mod-meta {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  color: #5f6674;
  font-size: 0.92rem;
}
.courses .sep {
  opacity: 0.6;
}

.courses .chev {
  font-size: 1rem;
  color: #7a8291;
  transform: rotate(-90deg);
  transition:
    transform 0.18s ease,
    color 0.15s ease;
}
.courses details[open] .chev {
  transform: rotate(0deg);
  color: #0b1e6d;
}

/* ===== Panel / Content ===== */
.courses .panel {
  padding: 8px 14px 12px;
  border-top: 1px solid #eef1f5;
}
.courses dl.compact {
  display: grid;
  grid-template-columns: 92px 1fr;
  column-gap: 12px;
  row-gap: 6px;
  margin: 0;
}
@media (min-width: 640px) {
  .courses dl.compact {
    grid-template-columns: 110px 1fr;
  }
}
.courses dt {
  margin: 0;
  color: #0b1e6d;
  font-weight: 700;
}
.courses dd {
  margin: 0;
}
.courses .list {
  display: grid;
  gap: 6px;
}
.courses .slot {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 22px;
}
.courses .dot {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #9aa1ad;
  flex: 0 0 4px;
}

/* Subtle emphasis for Remote/Präsenz in body if needed */
.courses .badge-inline {
  display: inline-block;
  padding: 0 6px;
  height: 18px;
  line-height: 18px;
  border-radius: 5px;
  border: 1px solid #e6e9f5;
  background: #f5f7ff;
  color: #0b1e6d;
  font-size: 0.76rem;
  font-weight: 700;
}

/* ===== Focus & Reduced Motion ===== */
.courses details.module:focus-within {
  outline: 2px solid #0b1e6d;
  outline-offset: 2px;
}
.courses .caret {
  transition: transform 0.2s ease;
  font-size: 1.2em;
}
.courses details[open] .caret {
  transform: rotate(180deg);
}



/* Animations */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes slideUp {
  from {
    transform: translateY(50px);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}


/* ===== Course Intro ===== */

.o-section { padding: 0 24px; }

.o-section.hero-wrapper {
  margin-top: 80px;
}
.course-intro {
  padding: 140px 24px 56px;
}

.intro-container {
  position: relative;
  width: 100%;
  max-width: 80rem;
  margin: 0 auto;
}

.hero-content {
  display: flex;
  flex-direction: column;
  max-width: 100%; /* mobile first */
}

.hero-button-row {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.hero-logos {
  display: flex;
  gap: 16px;
  margin: 40px 0;
}

/* Typography (mobile first) */
.hero-wrapper h1 {
  color: #2b2b2c;
  font-size: 36px;
  line-height: 43px;
}
.hero-wrapper h1 span { color: var(--blue); }

.hero-wrapper h6 {
  font-size: 18px;
  line-height: 26px;
  margin: 0;
  max-width: 100%;
}

.hero-wrapper p {
  font-size: 16px;
}

/* ≥480px */
@media (min-width: 480px) {
  .hero-wrapper h1 {
    font-size: 56px;
    line-height: 62px;
    margin-bottom: 8px;
  }
}

/* ≥768px (tablet) */
@media (min-width: 768px) {
  .hero-wrapper {
    min-height: 80vh;
    padding-top: calc(100px + 5vh);
    padding-bottom: 100px;
  }

}

/* ≥992px (desktop) */
@media (min-width: 992px) {



  .hero-wrapper h1 {
    font-size: 60px;
    line-height: 70px;
  }

  .hero-wrapper h6 {
    font-size: 24px;
    line-height: 32px;
  }
}

.hero-content h1 {
  animation: fadeInUp 0.8s ease;
}

.hero-content h6 {
  animation: fadeInUp 0.8s ease 0.2s both;
}

.hero-content p {
  animation: fadeInUp 0.8s ease 0.4s both;
}

.hero-content div {
  animation: fadeInUp 0.8s ease 0.6s both;
}
.info__intro {
  display: flex;
  align-items: center;
  margin-bottom: 40px;
}
.info__intro > div:first-child {
  width: 35%;
  padding-right: 80px;
}
.info__intro > div:last-child {
  width: 65%;
}
.info__intro h2 {
  margin: 0;
}
.info__container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}
.cardbox.box-shadow.top-box {
  margin-bottom: 24px;
}
.cardbox {
  border: var(--border);
  border-radius: 16px;
  text-align: left;
  padding: 24px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.cardbox__heading {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 16px;
}
.cardbox__heading h3 {
  font-size: 24px;
  line-height: 32px;
  margin-bottom: 0;
}
.info__intro p {
  margin: 0;
}

.cardbox a:hover path {
  stroke: var(--blue);
}
.cardbox a:hover {
  color: var(--blue);
}
.cardbox a:hover svg {
  transform: translateX(3px);
  transition: all 250ms ease;
}
.cardbox a svg {
  transition: all 250ms ease;
  position: relative;
  top: 1px;
  left: 2px;
}
.intro-container {
  display: flex;
  gap: 40px;
}

.price-box {
  animation: fadeInUp 0.8s ease 0.6s both;
  border-radius: 16px;

}

.top-section-info h1,
.top-section-info p,
.top-section-info li,
.top-section-info h6{
  color: #fff;
}

.top-section li {
  font-size: 18px;
  line-height: 30px;
}


.container.info__container.info__container--single {
  grid-template-columns: 1fr;
}

ul.cc-funding-checklist__list {
  list-style: none;
  padding: 0;
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}


.stick.register-box {
  background-color: #F6F8F9;
  padding: 32px;
  border-radius: 8px;
  display: flex;
  flex-direction: row;
}
.bottom-section {
  padding: 80px 24px;
}

.cc-course-card {
  max-width: 620px;
/*   background: #f9fafc; */
  color: #0f172a;
  border: var(--border);
  border-radius: 8px;
/*   box-shadow: 0 6px 14px rgba(15, 23, 42, 0.12); */

}

.cc-course-card__inner {
  padding: 24px 24px 20px 24px;
}

/* Header */
.cc-course-card__title {
  margin: 0 0 6px 0;
  font-size: 38px;
  line-height: 1.15;
  font-weight: 800;
  letter-spacing: .2px;
}
.cc-course-card__subtitle {
  margin: 0;
  font-size: 20px;
}

/* Price */
.cc-course-card__price {
  display: flex;
  align-items: center;
  gap: 10px;  margin: 4px 0 8px 0;
}
.cc-price__amount {
  font-size: 50px;
  color: var(--blue);
  letter-spacing: .2px;
  font-family: 'GT Super Display';
}
.cc-price__meta {
  font-size: 14px;
  color: #2b2b2c;
}

/* Rating */
.cc-course-card__rating {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
}
.cc-stars svg { display: inline-block; vertical-align: middle; }
.cc-reviews-link {
  color: #2b2b2c;
  font-size: 14px;
}
.cc-reviews-link a{
  text-decoration: underline;
}


/* Blurb */
.cc-course-card__blurb {
  margin: 0 0 16px 0;
  color: #2b2b2c;
  font-size: 16px;
  line-height: 27px;
}

/* CTA buttons */
.cc-course-card__cta {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  align-items: center;
  margin-top: 32px;
}
.cc-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  border-radius: 10px;
  text-decoration: none;
  font-weight: 700;
  font-size: 15px;
  line-height: 1;
  transition: transform .04s ease, box-shadow .2s ease, background .2s ease;
}
.cc-btn svg { flex: 0 0 auto; }

.cc-btn--primary {
  background: #2b2b2b;
  color: #ffffff;
  box-shadow: 0 6px 0 rgba(0,0,0,0.25);
}
.cc-btn--primary:hover { transform: translateY(-1px); }
.cc-btn--primary:active { transform: translateY(0); box-shadow: 0 2px 0 rgba(0,0,0,0.25); }

.cc-btn--ghost {
  background: transparent;
  color: #0f172a;
  border: 1px solid #cbd5e1;
}
.cc-btn--ghost:hover { background: #e5e7eb; }

/* Divider */
.cc-divider {
  border: 0;
  border-top: var(--border);
  margin: 16px 0;
}

/* Funding snippet */
.cc-course-card__funding { display: grid; gap: 8px; }
.cc-funding-text {
  margin: 0;
  color: #2b2b2c;
  font-size: 16px;
  line-height: 27px;
}
.cc-funding-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #0f172a;
  font-weight: 800;
  text-decoration: none;
}
.cc-funding-link:hover { text-decoration: underline; }

/* Footer countdown bar */
.cc-course-card__footer {
  background: #4872a3;
  color: #ffffff;
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  align-items: center;
  padding: 16px 20px;
  border-top: 1px solid rgba(255,255,255,0.2);
}
.cc-timer__label {
  font-weight: 600;
  opacity: 0.95;
}
.cc-timer {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-auto-flow: column;
  gap: 18px;
  color: #fff;
}
.cc-time {
  text-align: center;
  min-width: 54px;
}
.cc-time__value {
  font-size: 22px;
  font-weight: 800;
  letter-spacing: .5px;
  font-family: 'GT Super Display';
}
.cc-time__unit {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 1px;
  opacity: .9;
  border-top: 2px solid rgba(255,255,255,0.6);
  display: inline-block;
  padding-top: 2px;
  margin-top: 4px;
}

/* Responsive tweaks */
@media (max-width: 540px) {
  .cc-course-card__title { font-size: 28px; }
  .cc-course-card__subtitle { font-size: 18px; }
  .cc-price__amount { font-size: 34px; }
  .cc-course-card__footer {
    grid-template-columns: 1fr;
    row-gap: 10px;
  }
  .cc-timer { justify-content: start; }
}
.cardbox.box-shadow.no-margin {
  margin: 0;
}


.cc-tooltip {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
  top: 0;
  left: 3px;
}
/* Trigger button */
.cc-tip__trigger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  border-radius: 999px;
  background: #0b152f;
  border: 1px solid #2b2b2c;
  padding: 0;
  cursor: help;
  line-height: 1;
  transition: box-shadow .2s ease, transform .06s ease;
}
.cc-tip__trigger:hover { transform: translateY(-1px); }
.cc-tip__trigger:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(94,234,212,.28);
}

/* Bubble */
.cc-tip__bubble {
  position: absolute;
  inset-inline-start: -60%;
  inset-block-start: auto;
  max-width: 300px;
  min-width: 250px;
  z-index: 60;
  pointer-events: none;
  color: #e6eaf7;
  background: rgba(15,21,43,.9);
  border: 1px solid #2a3458;
  border-radius: 10px;
  box-shadow: 0 8px 24px rgba(0,0,0,.25);
  backdrop-filter: blur(2px);
  padding: 10px 12px;
  font-size: 13.5px;
  line-height: 1.45;
  transform: translate(-50%, 6px) scale(.98);
  opacity: 0;
  transition: opacity .18s ease,
    transform .22s cubic-bezier(.22,.79,.34,1);
}

/* Arrow */
.cc-tip__bubble::after {
  content: "";
  position: absolute;
  width: 10px; height: 10px;
  background: rgba(15,21,43,.9);
  border-left: 1px solid #2a3458;
  border-top: 1px solid #2a3458;
  transform: rotate(45deg);
  inset-inline-start: calc(50% - 5px);
}

/* Visible state: via :hover/:focus-within or JS .is-open */
.cc-tooltip:hover .cc-tip__bubble,
.cc-tooltip:focus-within .cc-tip__bubble,
.cc-tooltip.is-open .cc-tip__bubble {
  opacity: 1;
  transform: translate(-50%, 0) scale(1);
  pointer-events: auto;
}

/* Placement: top (default) */
.cc-tooltip[data-pos="top"] .cc-tip__bubble {
  inset-block-end: calc(100% + 10px);
  inset-block-start: auto;
}
.cc-tooltip[data-pos="top"] .cc-tip__bubble::after {
  inset-block-start: auto;
  inset-block-end: -5px;
  border-left: 1px solid #2a3458;
  border-top: 1px solid #2a3458;
}

/* Placement: bottom (auto-flip) */
.cc-tooltip[data-pos="bottom"] .cc-tip__bubble {
  inset-block-start: calc(100% + 10px);
  inset-block-end: auto;
}
.cc-tooltip[data-pos="bottom"] .cc-tip__bubble::after {
  inset-block-start: -5px;
  inset-block-end: auto;
  border-left: none;
  border-top: none;
  border-right: 1px solid #2a3458;
  border-bottom: 1px solid #2a3458;
}




ul.taglist {
  list-style: none;
  display: flex;
  padding: 0;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 16px;
}
.taglist li {
  padding: 8px 16px;
  border: var(--border);
  border-radius: 8px;
}

/* Simple, branded bullet list */
.brand-list {
  margin: 0;
  padding: 0 0 0 1.25rem;     /* keep native list semantics */
  list-style: disc;
  color: #0f172a;             /* body text color (adjust to your theme) */
  line-height: 1.55;
}

.brand-list li {
  margin: 8px 0;
  padding-left: 0;
  color: #6D6C6D;
}

/* Brand the bullets (modern browsers) */
.brand-list li::marker {
  color: var(--blue);             /* your brand color */
  font-weight: 700;           /* slightly bolder bullet */
}


.brand-list {
  padding-left: 1rem;
}

/* Links inside list items */
.brand-list a {
  color: var(--blue);
  
}
.brand-list a:hover {
  text-decoration: underline;
}
.brand-list a:focus-visible {
  outline: 3px solid rgba(73,124,173,.35);
  border-radius: 2px;
}
.info li {
  font-size: 16px;
  line-height: 25px;
  color: #6D6C6D;
}
.top-section p {
  font-size: 18px;
  line-height: 30px;
}
.top-section {
  display: flex;
  gap: 24px;
}
.top-section-info {
  width: 70%;
}
.sub-nav {
  padding: 16px 24px;
  background-color: transparent;
}
.sub-nav ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  gap: 24px;
  font-weight: 500;
  align-items: center;
}
.sub-nav ul li {
  transform: translateY(0);
  transition: all 250ms ease;
}
.sub-nav ul li:hover {
  transform: translateY(3px);
  transition: all 250ms ease;
}
/* Base subnav styles (example) */
#subNav {
  border-bottom: 1px solid #f0f0f0;
  z-index: 9;
  transform: translateY(0);
  border-top: 1px solid #f0f0f0;
  background-color: #fff;
}

/* Stuck state */
#subNav.is-stuck{
  position:fixed;
  top:80px;
  left:0;
  right:0;
  box-shadow:0 10px 20px rgba(15,23,42,.06);
  transform: translateY(-80px);
  transition: all 350ms ease;
}
.scroll-up #subNav.is-stuck {
/*   transform: translateY(40px); */
  transition: all 350ms ease;
}
.bottom-scroll.scroll-up #subNav.is-stuck {
  transform: translateY(-150px);
  transition: all 350ms ease;
}
.bottom-scroll #subNav.is-stuck {
  transform: translateY(-150px);
  transition: all 350ms ease;
}
/* Spacer that preserves layout height only when stuck */
#subNav-spacer{
  height:0; transition:height .15s ease;  /* smooth collapse on release */
}

.header {
  transform: translateY(0);
  transition: all 350ms ease;
}
.header.has-sticky-subnav {
  background-color: #fff;
  position: fixed;
  width: 100%;
  transform: translateY(-100%);
  transition: all 350ms ease;
}

.sub-nav a.btn.btn-primary {
  padding: 6px 16px;
}
a.active-link {
  color: var(--blue);
}
.none {
  display: none;
}

.cardbox p {
  line-height: 26px;
}
.course-intro {
  background-size: cover;
  width: 100%;
  background-position: center center;
}

/* USPs Section */
.cc-usp-section {
  margin-top: 2rem;
}

.cc-usp-card {
  background-color: #ffffff;
  border-radius: 24px;
  border: var(--border);
  box-shadow: none;
  padding: 1.75rem 1.75rem 2rem;
}

.cc-usp-card-header {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.cc-usp-icon {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  border: var(--border);
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f9fafb;
  color: #111827;
}

.cc-usp-icon svg {
  width: 24px;
  height: 24px;
}

.cc-usp-kicker {
  font-size: 0.8125rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 500;
  color: #6b7280;
  margin: 0 0 0.15rem;
}

.cc-usp-title {
  font-size: 1.35rem;
  line-height: 1.3;
  margin: 0;
  color: #111827;
}

.cc-usp-list-wrap {
  margin-top: 1.25rem;
}

.cc-usp-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

h1.cc-hero-title {
  position: relative;
  top: -8px;
}
.cc-usp-list li {
  display: flex;
  align-items: flex-start;
  gap: 0.6rem;
}

.cc-usp-check {
  width: 22px;
  height: 22px;
  flex-shrink: 0;
  color: #fff;
}
.cc-usp-card-header h3 {
  font-size: 20px;
  line-height: 28px;
  margin: 0;
}
.cc-usp-check svg {
  width: 22px;
  height: 22px;
}

.cc-usp-text {
  font-size: 18px;
  line-height: 1.5;
  color: #fff;
}

/* Responsive */
@media (max-width: 900px) {
  .cc-usp-card {
    padding: 1.5rem 1.25rem 1.75rem;
  }

  .cc-usp-list {
    grid-template-columns: 1fr;
    gap: 0.85rem;
  }
}
/* .cc-course-card__cta a.btn.btn-tertiary svg {
width: 24px;
position: relative;
left: -2px;
top: 6px;
} */
.cc-course-card__cta a.btn.btn-tertiary:hover path {
  /*   stroke: transparent; */
  fill: var(--blue);
}

@media(max-width: 1100px) {
  .top-section {
    display: inline-block;
  }
  .top-section-info {
    width: 100%;
    margin-bottom: 24px;
  }
  .cc-course-card {
    max-width: none;
  }

}


/* ===== Course Overview ===== */
.course-info__price span {
  font-size: 14px;
  color: #2b2b2c;
  font-family: 'Open Sans';
  line-height: 1;
  font-weight: 600;
}

.section.courses {
  padding: 80px 24px;
  background-size: cover;
}
.courses__intro {
  text-align: center;
  margin-bottom: 24px;
  display: inline-block;
  width: 100%;
}

.course,
.course-new {
  display: flex;
  border: var(--border);
  border-radius: 8px;
  overflow: hidden;
  transform: translateY(-2px);
  transition: all 300ms ease;
}

.course:hover,
.course-new:hover {
  transform: translateY(0);
  box-shadow: none;
  transition: all 300ms ease;
  cursor: pointer;
}

.course__img,
.course__img-new{
  width: 25%;
  background-size: cover;
  background-position: center center;
}

.course__img > div,
.course__img-new > div {
  background-color: rgb(73 124 173 / 80%);
  min-height: 65%;
  width: 65%;
  margin: 0 auto;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  color: #fff;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  box-shadow: none;
  border: 1px solid rgba(73, 124, 173, 0.3);
  border-radius: 4px;
  gap: 4px;
}
.course__date-month {
  top: 5px;
  position: relative;
} 
.course__date-day {
  font-family: 'GT Super Display';
  font-size: 32px;
  line-height: 1;
  font-weight: bold;
}
.course__date-month,
.course__day {
  font-size: 16px;
  line-height: 1.2;
}
.featured-courses__card-date {
  display: flex;
  gap: 16px;
  margin-bottom: 16px;
}
.featured-courses__card-date img {
  margin-bottom: -6px;
  margin-right: 3px;
}
.courses__left {
  display: flex;
  flex-direction: column;
  gap: 32px;
  width: 50%;
}
.courses__right {
  width: 50%;
}
.courses__container,
.courses__container-new {
  display: flex;
  flex-direction: row;
  gap: 32px;
}

.courses__actions {
  display: flex;
  gap: 16px;
}
.courses__actions a.btn.btn-primary {
  background-image: url('data:image/svg+xml,<svg width="7" height="12" viewBox="0 0 7 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0.876953 0.5C0.977777 0.5 1.05475 0.530412 1.13281 0.608398L6.07715 5.55273C6.13104 5.60665 6.15622 5.64863 6.16797 5.67676V5.67773C6.18275 5.71329 6.19141 5.75306 6.19141 5.80176C6.19141 5.85046 6.18275 5.89022 6.16797 5.92578V5.92676C6.15621 5.95488 6.13103 5.99687 6.07715 6.05078L1.1084 11.0195C1.03063 11.0973 0.963489 11.1192 0.882812 11.1162C0.788784 11.1127 0.707921 11.0809 0.62207 10.9951C0.543947 10.917 0.512697 10.8402 0.512695 10.7393C0.512695 10.6384 0.543945 10.5615 0.62207 10.4834L5.30371 5.80176L0.59668 1.09473C0.519014 1.01703 0.497072 0.95072 0.5 0.870117C0.503448 0.77585 0.536015 0.694453 0.62207 0.608398C0.699995 0.530589 0.776363 0.500076 0.876953 0.5Z" fill="%23ffffff" stroke="%23ffffff"></path></svg>');
  background-repeat: no-repeat;
  background-position: calc(100% - 15px) 50%;
  padding-right: 32px;
}

.course-info a.btn.btn-secondary {
  background-image: url('data:image/svg+xml,<svg width="7" height="12" viewBox="0 0 7 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0.876953 0.5C0.977777 0.5 1.05475 0.530412 1.13281 0.608398L6.07715 5.55273C6.13104 5.60665 6.15622 5.64863 6.16797 5.67676V5.67773C6.18275 5.71329 6.19141 5.75306 6.19141 5.80176C6.19141 5.85046 6.18275 5.89022 6.16797 5.92578V5.92676C6.15621 5.95488 6.13103 5.99687 6.07715 6.05078L1.1084 11.0195C1.03063 11.0973 0.963489 11.1192 0.882812 11.1162C0.788784 11.1127 0.707921 11.0809 0.62207 10.9951C0.543947 10.917 0.512697 10.8402 0.512695 10.7393C0.512695 10.6384 0.543945 10.5615 0.62207 10.4834L5.30371 5.80176L0.59668 1.09473C0.519014 1.01703 0.497072 0.95072 0.5 0.870117C0.503448 0.77585 0.536015 0.694453 0.62207 0.608398C0.699995 0.530589 0.776363 0.500076 0.876953 0.5Z" fill="%23262626" stroke="%23262626"></path></svg>');
  background-repeat: no-repeat;
  background-position: calc(100% - 15px) 50%;
  padding-right: 32px;
  background-color: transparent;
  border: medium none;
  color: #2b2b2c;
  box-shadow: none;
  padding-left: 0;

}
.courses__actions {
  margin-top: 24px;
}
.course-info p {
  margin: 0;
}

@media(max-width: 767px) {
  .course__date-day {
    font-size: 20px;
  }
  body .hero .container {
    margin-bottom: 24px;
    position: relative;
  }
  .hero-img img {
    border-radius: 16px;
  }
/*   body .hero-img {
    height: auto;
    min-height: auto;
    width: 100%;
  } */
}

.view-location {
  color: #6D6C6D;
  text-decoration: underline;
  font-size: 12px;
  cursor: pointer;
}

.course-info {
  padding: 24px;
  border: var(--border);
  border-radius: 8px;
  overflow: hidden;
  background-color: #F6F8F9;
}
.course-info__stars {
  background-image: url('data:image/svg+xml,<svg width="81" height="14" viewBox="0 0 81 14" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_730_349)"><path d="M5.89608 1.36577C6.11952 0.803857 6.88051 0.803857 7.10395 1.36577L8.42265 4.6823C8.5169 4.91919 8.72988 5.08105 8.97436 5.10155L12.3973 5.38859C12.9772 5.43723 13.2124 6.19428 12.7705 6.5902L10.1626 8.92694C9.97637 9.09387 9.89497 9.35579 9.95189 9.60531L10.7486 13.0992C10.8836 13.6912 10.268 14.1591 9.77147 13.8419L6.84096 11.9695C6.63164 11.8358 6.36839 11.8358 6.15908 11.9695L3.22855 13.8419C2.73203 14.1591 2.11638 13.6912 2.25137 13.0992L3.04813 9.60531C3.10504 9.35579 3.02369 9.09387 2.83742 8.92694L0.229491 6.5902C-0.212367 6.19428 0.0227942 5.43723 0.602741 5.38859L4.02569 5.10155C4.27019 5.08105 4.48316 4.91919 4.57735 4.6823L5.89608 1.36577Z" fill="%23EBDC76"/><path d="M22.8961 1.36577C23.1195 0.803857 23.8805 0.803857 24.1039 1.36577L25.4226 4.6823C25.5169 4.91919 25.7299 5.08105 25.9744 5.10155L29.3973 5.38859C29.9772 5.43723 30.2124 6.19428 29.7705 6.5902L27.1626 8.92694C26.9764 9.09387 26.895 9.35579 26.9519 9.60531L27.7486 13.0992C27.8836 13.6912 27.268 14.1591 26.7715 13.8419L23.841 11.9695C23.6316 11.8358 23.3684 11.8358 23.1591 11.9695L20.2286 13.8419C19.732 14.1591 19.1164 13.6912 19.2514 13.0992L20.0481 9.60531C20.105 9.35579 20.0237 9.09387 19.8374 8.92694L17.2295 6.5902C16.7876 6.19428 17.0228 5.43723 17.6027 5.38859L21.0257 5.10155C21.2702 5.08105 21.4832 4.91919 21.5774 4.6823L22.8961 1.36577Z" fill="%23EBDC76"/><path d="M39.8961 1.36577C40.1195 0.803857 40.8805 0.803857 41.1039 1.36577L42.4226 4.6823C42.5169 4.91919 42.7299 5.08105 42.9744 5.10155L46.3973 5.38859C46.9772 5.43723 47.2124 6.19428 46.7705 6.5902L44.1626 8.92694C43.9764 9.09387 43.895 9.35579 43.9519 9.60531L44.7486 13.0992C44.8836 13.6912 44.268 14.1591 43.7715 13.8419L40.841 11.9695C40.6316 11.8358 40.3684 11.8358 40.1591 11.9695L37.2286 13.8419C36.732 14.1591 36.1164 13.6912 36.2514 13.0992L37.0481 9.60531C37.105 9.35579 37.0237 9.09387 36.8374 8.92694L34.2295 6.5902C33.7876 6.19428 34.0228 5.43723 34.6027 5.38859L38.0257 5.10155C38.2702 5.08105 38.4832 4.91919 38.5774 4.6823L39.8961 1.36577Z" fill="%23EBDC76"/><path d="M56.8961 1.36577C57.1195 0.803857 57.8805 0.803857 58.1039 1.36577L59.4226 4.6823C59.5169 4.91919 59.7299 5.08105 59.9744 5.10155L63.3973 5.38859C63.9772 5.43723 64.2124 6.19428 63.7705 6.5902L61.1626 8.92694C60.9764 9.09387 60.895 9.35579 60.9519 9.60531L61.7486 13.0992C61.8836 13.6912 61.268 14.1591 60.7715 13.8419L57.841 11.9695C57.6316 11.8358 57.3684 11.8358 57.1591 11.9695L54.2286 13.8419C53.732 14.1591 53.1164 13.6912 53.2514 13.0992L54.0481 9.60531C54.105 9.35579 54.0237 9.09387 53.8374 8.92694L51.2295 6.5902C50.7876 6.19428 51.0228 5.43723 51.6027 5.38859L55.0257 5.10155C55.2702 5.08105 55.4832 4.91919 55.5774 4.6823L56.8961 1.36577Z" fill="%23EBDC76"/><path d="M73.8961 1.36577C74.1195 0.803857 74.8805 0.803857 75.1039 1.36577L76.4226 4.6823C76.5169 4.91919 76.7299 5.08105 76.9744 5.10155L80.3973 5.38859C80.9772 5.43723 81.2124 6.19428 80.7705 6.5902L78.1626 8.92694C77.9764 9.09387 77.895 9.35579 77.9519 9.60531L78.7486 13.0992C78.8836 13.6912 78.268 14.1591 77.7715 13.8419L74.841 11.9695C74.6316 11.8358 74.3684 11.8358 74.1591 11.9695L71.2286 13.8419C70.732 14.1591 70.1164 13.6912 70.2514 13.0992L71.0481 9.60531C71.105 9.35579 71.0237 9.09387 70.8374 8.92694L68.2295 6.5902C67.7876 6.19428 68.0228 5.43723 68.6027 5.38859L72.0257 5.10155C72.2702 5.08105 72.4832 4.91919 72.5774 4.6823L73.8961 1.36577Z" fill="%23EBDC76"/></g><defs><clipPath id="clip0_730_349"><rect width="81" height="13" fill="white" transform="translate(0 0.944336)"/></clipPath></defs></svg>');
  width: 96px;
  height: 19px;
  margin-bottom: 16px;
  background-repeat: no-repeat;
  background-size: contain;
}

.course-info__reviews a {
  font-size: 14px;
  color: #6D6C6D;
}

.course-info__reviews {
  display: flex;
  color: #2b2b2c;
  text-decoration: underline;
  gap: 13px;
}

.course-info__divider {
  width: 100%;
  height: 2px;
  background-color: #E7E7E7;
  margin-top: 32px;
  margin-bottom: 32px;
  display: inline-block;
}
.course__details h3 {
  font-size: 20px;
  line-height: 26px;
  margin: 0px 0 8px 0;
  font-family: 'Open Sans';
  font-weight: 600;
  letter-spacing: normal;
}

p.course-info__price {
  color: var(--blue);
  font-size: 40px;
  font-family: 'GT Super Display';
  line-height: 1;
  margin-bottom: 24px;
}
.course-info {
  display: none;
}
.course-info.show {
  display: block;
}

.course--inner.box-shadow,
.course--inner-new{
  max-height: 388px;
}
.filter__container {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.filter__container > div:first-child {
  width: 60%;
  padding-right: 40px;
}
.filter__container > div:last-child {
  width: 40%;
}
.course-btns .btn-secondary {
  padding: 4px 13px;
}

.filter__grid,
.filter__grid-b-new{
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  justify-content: end;
}
.filter__grid{
  justify-content: start;
}
.filter__grid-item,
.filter__grid-item-new{
  width: auto;
  transition: all 250ms ease;
  line-height: 30px;
  cursor: pointer;
}

.filter__grid-item-new.filter__grid-item--alt,
.filter__grid-item-new.filter__grid-item--alt:hover,
.filter__grid-item-new.filter__grid-item--alt,
.filter__grid-item-new.filter__grid-item--alt:hover {
  border: medium none;
}
.filter__grid-item.filter__grid-item--alt,
.filter__grid-item-new.filter__grid-item--alt{
  padding-left: 0;
  font-weight: bold;
}
.filter__grid-item.filter__grid-item--alt span,
.filter__grid-item-new.filter__grid-item--alt span{
  color: var(--blue);
}

.filter__grid-item,
.filter__grid-item-new{
  transform: translateY(-2px);
  transition: all 300ms ease;
  padding: 4px 16px;
  border: 2px solid #e5e7eb;
  border-radius: 6px;
}
.filter__grid-item:hover,
.filter__grid-item.active-location,
.filter__grid-item-new:hover,
.filter__grid-item-new.active-location-new{
  transform: translateY(0px);
  transition: all 300ms ease;
  box-shadow: none;
  border-color: var(--blue);
}

.course,
.course-info {
  display: none;
}
.course,
.course-info {
  display: none;
}
.course.show-course,
.course-info.show-course {
  display: flex;
}

.card-link {
  font-weight: 600;
}
.course:hover .card-link {
  color: var(--blue);
}
.course:hover .card-link svg {
  transform: translateX(3px);
  transition: all 250ms ease;
}
.card-link svg {
  transition: all 250ms ease;
  position: relative;
  top: 1px;
  left: 2px;
}
.course:hover .card-link path {
  stroke: var(--blue);
}
a.paths__grid-item.paths__grid-item--alt span {
  color: var(--blue);
  font-weight: bold;
}

/* ============================= Upcoming Courses ======= */
section.section.courses.master-courses.master-courses-adv {
  padding-top: 0;
}
.courses .kp-list {
  margin-bottom: 24px;
}
.course-info__price span {
  font-size: 14px;
  color: #2b2b2c;
  font-family: 'Open Sans';
  line-height: 1;
  font-weight: 600;
}
.courses_text.courses_text_mt,
.courses_text-new.courses_text_mt{
  margin-top: 16px;
}
.section.courses {
  padding: 56px 24px 64px;
  background-size: cover;
}
.courses__intro {
  text-align: center;
  margin-bottom: 24px;
  display: inline-block;
  width: 100%;
}

.course,
.course-new {
  display: flex;
  border: var(--border);
  border-radius: 8px;
  overflow: hidden;
  transform: translateY(-2px);
  transition: all 300ms ease;
  width: calc(33% - 16px);
}

@media(max-width: 991px) {
  .course,
  .course-new {
    width: calc(50% - 16px);
  }
}
@media(max-width: 767px) {
  .course,
  .course-new {
    width: 100%;   
  }
  body .course__img-new > div,
  body .course__img > div {
    display: none;
  }
  body .course__img,
  body .course__img-new {
    padding: 136px 0 0 0;
  }
}

.course:hover,
.course-new:hover {
  transform: translateY(0);
  box-shadow: none;
  transition: all 300ms ease;
  cursor: pointer;
}

.course__img,
.course__img-new {
  width: 35%;
  background-size: cover;
  background-position: center center;
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
}

.course__details {
  background-color: #fff;
  border-radius: 8px;
  padding: 24px;
  width: 75%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.course__img > div,
.course__img-new > div{
  background-color: rgb(73 124 173 / 80%);
  min-height: 65%;
  width: 65%;
  margin: 0 auto;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  color: #fff;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  box-shadow: none;
  border: 1px solid rgba(73, 124, 173, 0.3);
  border-radius: 4px;
  gap: 4px;
  padding: 8px;
}
.course__date-month {
  top: 5px;
  position: relative;
} 
.course__date-day {
  font-family: 'GT Super Display';
  font-size: 32px;
  line-height: 1;
  font-weight: bold;
}
.course__date-month,
.course__day {
  font-size: 16px;
  line-height: 1.2;
}
.featured-courses__card-date {
  display: flex;
  gap: 16px;
  margin-bottom: 16px;
}
.featured-courses__card-date img {
  margin-bottom: -6px;
  margin-right: 3px;
}
.courses__left {
  display: flex;
  flex-direction: column;
  gap: 32px;
  width: 50%;
}
.courses__right {
  width: 50%;
}
.courses__container,
.courses__container-new {
  flex-direction: row;
  gap: 32px;
}

.courses__actions {
  display: flex;
  gap: 16px;
}
.courses__actions a.btn.btn-primary {
  background-image: url('data:image/svg+xml,<svg width="7" height="12" viewBox="0 0 7 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0.876953 0.5C0.977777 0.5 1.05475 0.530412 1.13281 0.608398L6.07715 5.55273C6.13104 5.60665 6.15622 5.64863 6.16797 5.67676V5.67773C6.18275 5.71329 6.19141 5.75306 6.19141 5.80176C6.19141 5.85046 6.18275 5.89022 6.16797 5.92578V5.92676C6.15621 5.95488 6.13103 5.99687 6.07715 6.05078L1.1084 11.0195C1.03063 11.0973 0.963489 11.1192 0.882812 11.1162C0.788784 11.1127 0.707921 11.0809 0.62207 10.9951C0.543947 10.917 0.512697 10.8402 0.512695 10.7393C0.512695 10.6384 0.543945 10.5615 0.62207 10.4834L5.30371 5.80176L0.59668 1.09473C0.519014 1.01703 0.497072 0.95072 0.5 0.870117C0.503448 0.77585 0.536015 0.694453 0.62207 0.608398C0.699995 0.530589 0.776363 0.500076 0.876953 0.5Z" fill="%23ffffff" stroke="%23ffffff"></path></svg>');
  background-repeat: no-repeat;
  background-position: calc(100% - 15px) 50%;
  padding-right: 32px;
}

.course-info a.btn.btn-secondary {
  background-image: url('data:image/svg+xml,<svg width="7" height="12" viewBox="0 0 7 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0.876953 0.5C0.977777 0.5 1.05475 0.530412 1.13281 0.608398L6.07715 5.55273C6.13104 5.60665 6.15622 5.64863 6.16797 5.67676V5.67773C6.18275 5.71329 6.19141 5.75306 6.19141 5.80176C6.19141 5.85046 6.18275 5.89022 6.16797 5.92578V5.92676C6.15621 5.95488 6.13103 5.99687 6.07715 6.05078L1.1084 11.0195C1.03063 11.0973 0.963489 11.1192 0.882812 11.1162C0.788784 11.1127 0.707921 11.0809 0.62207 10.9951C0.543947 10.917 0.512697 10.8402 0.512695 10.7393C0.512695 10.6384 0.543945 10.5615 0.62207 10.4834L5.30371 5.80176L0.59668 1.09473C0.519014 1.01703 0.497072 0.95072 0.5 0.870117C0.503448 0.77585 0.536015 0.694453 0.62207 0.608398C0.699995 0.530589 0.776363 0.500076 0.876953 0.5Z" fill="%23262626" stroke="%23262626"></path></svg>');
  background-repeat: no-repeat;
  background-position: calc(100% - 15px) 50%;
  padding-right: 32px;
  background-color: transparent;
  border: medium none;
  color: #2b2b2c;
  box-shadow: none;
  padding-left: 0;

}
.courses__actions {
  margin-top: 24px;
}
.course-info p {
  margin: 0;
}

@media(max-width: 767px) {
  .course__date-day {
    font-size: 20px;
  }
}

.view-location {
  color: #6D6C6D;
  text-decoration: underline;
  font-size: 12px;
  cursor: pointer;
}

.course-info {
  padding: 24px;
  border: var(--border);
  border-radius: 8px;
  overflow: hidden;
  background-color: #F6F8F9;
}
.course-info__stars {
  background-image: url('data:image/svg+xml,<svg width="81" height="14" viewBox="0 0 81 14" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_730_349)"><path d="M5.89608 1.36577C6.11952 0.803857 6.88051 0.803857 7.10395 1.36577L8.42265 4.6823C8.5169 4.91919 8.72988 5.08105 8.97436 5.10155L12.3973 5.38859C12.9772 5.43723 13.2124 6.19428 12.7705 6.5902L10.1626 8.92694C9.97637 9.09387 9.89497 9.35579 9.95189 9.60531L10.7486 13.0992C10.8836 13.6912 10.268 14.1591 9.77147 13.8419L6.84096 11.9695C6.63164 11.8358 6.36839 11.8358 6.15908 11.9695L3.22855 13.8419C2.73203 14.1591 2.11638 13.6912 2.25137 13.0992L3.04813 9.60531C3.10504 9.35579 3.02369 9.09387 2.83742 8.92694L0.229491 6.5902C-0.212367 6.19428 0.0227942 5.43723 0.602741 5.38859L4.02569 5.10155C4.27019 5.08105 4.48316 4.91919 4.57735 4.6823L5.89608 1.36577Z" fill="%23EBDC76"/><path d="M22.8961 1.36577C23.1195 0.803857 23.8805 0.803857 24.1039 1.36577L25.4226 4.6823C25.5169 4.91919 25.7299 5.08105 25.9744 5.10155L29.3973 5.38859C29.9772 5.43723 30.2124 6.19428 29.7705 6.5902L27.1626 8.92694C26.9764 9.09387 26.895 9.35579 26.9519 9.60531L27.7486 13.0992C27.8836 13.6912 27.268 14.1591 26.7715 13.8419L23.841 11.9695C23.6316 11.8358 23.3684 11.8358 23.1591 11.9695L20.2286 13.8419C19.732 14.1591 19.1164 13.6912 19.2514 13.0992L20.0481 9.60531C20.105 9.35579 20.0237 9.09387 19.8374 8.92694L17.2295 6.5902C16.7876 6.19428 17.0228 5.43723 17.6027 5.38859L21.0257 5.10155C21.2702 5.08105 21.4832 4.91919 21.5774 4.6823L22.8961 1.36577Z" fill="%23EBDC76"/><path d="M39.8961 1.36577C40.1195 0.803857 40.8805 0.803857 41.1039 1.36577L42.4226 4.6823C42.5169 4.91919 42.7299 5.08105 42.9744 5.10155L46.3973 5.38859C46.9772 5.43723 47.2124 6.19428 46.7705 6.5902L44.1626 8.92694C43.9764 9.09387 43.895 9.35579 43.9519 9.60531L44.7486 13.0992C44.8836 13.6912 44.268 14.1591 43.7715 13.8419L40.841 11.9695C40.6316 11.8358 40.3684 11.8358 40.1591 11.9695L37.2286 13.8419C36.732 14.1591 36.1164 13.6912 36.2514 13.0992L37.0481 9.60531C37.105 9.35579 37.0237 9.09387 36.8374 8.92694L34.2295 6.5902C33.7876 6.19428 34.0228 5.43723 34.6027 5.38859L38.0257 5.10155C38.2702 5.08105 38.4832 4.91919 38.5774 4.6823L39.8961 1.36577Z" fill="%23EBDC76"/><path d="M56.8961 1.36577C57.1195 0.803857 57.8805 0.803857 58.1039 1.36577L59.4226 4.6823C59.5169 4.91919 59.7299 5.08105 59.9744 5.10155L63.3973 5.38859C63.9772 5.43723 64.2124 6.19428 63.7705 6.5902L61.1626 8.92694C60.9764 9.09387 60.895 9.35579 60.9519 9.60531L61.7486 13.0992C61.8836 13.6912 61.268 14.1591 60.7715 13.8419L57.841 11.9695C57.6316 11.8358 57.3684 11.8358 57.1591 11.9695L54.2286 13.8419C53.732 14.1591 53.1164 13.6912 53.2514 13.0992L54.0481 9.60531C54.105 9.35579 54.0237 9.09387 53.8374 8.92694L51.2295 6.5902C50.7876 6.19428 51.0228 5.43723 51.6027 5.38859L55.0257 5.10155C55.2702 5.08105 55.4832 4.91919 55.5774 4.6823L56.8961 1.36577Z" fill="%23EBDC76"/><path d="M73.8961 1.36577C74.1195 0.803857 74.8805 0.803857 75.1039 1.36577L76.4226 4.6823C76.5169 4.91919 76.7299 5.08105 76.9744 5.10155L80.3973 5.38859C80.9772 5.43723 81.2124 6.19428 80.7705 6.5902L78.1626 8.92694C77.9764 9.09387 77.895 9.35579 77.9519 9.60531L78.7486 13.0992C78.8836 13.6912 78.268 14.1591 77.7715 13.8419L74.841 11.9695C74.6316 11.8358 74.3684 11.8358 74.1591 11.9695L71.2286 13.8419C70.732 14.1591 70.1164 13.6912 70.2514 13.0992L71.0481 9.60531C71.105 9.35579 71.0237 9.09387 70.8374 8.92694L68.2295 6.5902C67.7876 6.19428 68.0228 5.43723 68.6027 5.38859L72.0257 5.10155C72.2702 5.08105 72.4832 4.91919 72.5774 4.6823L73.8961 1.36577Z" fill="%23EBDC76"/></g><defs><clipPath id="clip0_730_349"><rect width="81" height="13" fill="white" transform="translate(0 0.944336)"/></clipPath></defs></svg>');
  width: 96px;
  height: 19px;
  margin-bottom: 16px;
  background-repeat: no-repeat;
  background-size: contain;
}

.course-info__reviews a {
  font-size: 14px;
  color: #6D6C6D;
}

.course-info__reviews {
  display: flex;
  color: #2b2b2c;
  text-decoration: underline;
  gap: 13px;
}

.course-info__divider {
  width: 100%;
  height: 2px;
  background-color: #E7E7E7;
  margin-top: 32px;
  margin-bottom: 32px;
  display: inline-block;
}


p.course-info__price {
  color: var(--blue);
  font-size: 40px;
  font-family: 'GT Super Display';
  line-height: 1;
  margin-bottom: 24px;
}

.course-info.show {
  display: block;
}



.filter__grid,
.filter__grid-b-new{
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}
.filter__grid-item,
.filter__grid-item-new {
  width: auto;
  transition: all 250ms ease;
  line-height: 30px;
  cursor: pointer;
}

.filter__grid-item.filter__grid-item--alt,
.filter__grid-item.filter__grid-item--alt:hover,
.filter__grid-item-new.filter__grid-item--alt,
.filter__grid-item-new.filter__grid-item--alt:hover{
  border: medium none;
}
.filter__grid-item.filter__grid-item--alt,
.filter__grid-item-new.filter__grid-item--alt{
  padding-left: 0;
  font-weight: bold;
}
.filter__grid-item.filter__grid-item--alt span,
.filter__grid-item-new.filter__grid-item--alt span{
  color: var(--blue);
}
.filter__container p.bold {
  margin-bottom: 0;
  color: #2b2b2c;
  font-size: 16px;
  position: relative;
  top: 7px;
}
.filter__grid-item,
.filter__grid-item-new {
  transform: translateY(-2px);
  transition: all 300ms ease;
  padding: 4px 16px;
  border: 2px solid #e5e7eb;
  border-radius: 6px;
}
.filter__grid-item:hover,
.filter__grid-item.active-location,
.filter__grid-item-new:hover,
.filter__grid-item-new.active-location{
  transform: translateY(0px);
  transition: all 300ms ease;
  box-shadow: none;
  border-color: var(--blue);
}


.course.show-course,
.course-info.show-course {
  display: flex;
}
.courses_text p,
.courses_text-new p{
  font-size: 16px;
  color: #2b2b2c;
}

.course:hover .card-link {
  color: var(--blue);
}
.course:hover .card-link svg {
  transform: translateX(3px);
  transition: all 250ms ease;
}
.card-link svg {
  transition: all 250ms ease;
  position: relative;
  top: 1px;
  left: 2px;
}
.course:hover .card-link path {
  stroke: var(--blue);
}
a.paths__grid-item.paths__grid-item--alt span {
  color: var(--blue);
  font-weight: bold;
}
a.paths__grid-item.paths__grid-item--alt {
  align-items: center;
  display: flex;
  width: 100%;
}
.courses__full,
.courses__full-new {
  display: flex;
  gap: 24px;
  flex-wrap: wrap;
  justify-content: flex-start;
}

/* Compact accordion (brand var(--blue)) */
.cc-accordion {
  border: var(--border);
  border-radius: 10px;
  background: #ffffff;
  max-width: 920px;
}
.cc-accordion__summary {
  cursor: pointer;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 14px;
  font-weight: 600;
  color: #0f172a;
}
.cc-accordion__summary::-webkit-details-marker { display: none; }
.cc-accordion__summary:focus-visible {
  outline: 3px solid rgba(73,124,173,.35);
  border-radius: 8px;
}

/* Chevron animation */
.cc-accordion__chev { transition: transform .18s ease; }
.cc-accordion[open] .cc-accordion__chev { transform: rotate(180deg); }

/* List content */
.cc-times {
  margin: 0;
  padding: 8px 14px 12px;
  border-top: var(--border);
  list-style: none;               /* minimal, single column */
  display: grid;
  gap: 6px;
  font-size: 15px;
  color: #0f172a;
}

.cc-times__label {
  margin-top: 6px;
  padding-top: 6px;
  border-top: var(--border);
  color: var(--blue);                 /* brand color section label */
  font-weight: 700;
}

/* Optional subtle bullet for non-label items */
.cc-times li:not(.cc-times__label) {
  position: relative;
  padding-left: 14px;
}
.cc-times li:not(.cc-times__label)::before {
  content: "";
  position: absolute;
  left: 0; top: .6em;
  width: 6px; height: 6px;
  border-radius: 50%;
  background: var(--blue);
  box-shadow: none;
}

/* Small screens: keep it tight */
@media (max-width: 560px) {
  .cc-accordion__summary { padding: 12px; }
  .cc-times { padding: 8px 12px 12px; }
}
.course.course--outer,
.course-new.course--outer{
  flex-direction: column;
  gap: 16px;
  border: medium none;
  overflow: visible;
/*   height: 100%; */
}
.course--inner,
.course--inner-new {
  display: flex;
  border: var(--border);
  border-radius: 8px;
  height: 100%;
}

li.cc-times__label:first-child {
  border: medium none;
  margin-top: 0;
}
.course__date-month {
  display: flex;
  flex-direction: column;
  position: relative;
  padding-top: 8px;
}
.course__date-month:after {
  content: "";
  position: absolute;
  width: 16px;
  height: 2px;
  background-color: #fff;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.course__img,
.course__img-new {
  width: 45%;
  background-size: cover;
  background-position: center center;
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
}
.course-new,
.master-courses .course {
  display: none;
}
.course-new.show-new,
.master-courses .course.show-course {
  display: flex;
}
.courses__full,
.courses__full-new {
  width: 100%;
}

.featured-courses__card-date {

  font-size: 14px;
}
/* ========= Course Details ========== */
/* =========================
Premium Kurssektion – Styles (8px scale, no shadows) — NO CSS VARIABLES
========================= */

/* Section */
#kursdetails {
  position: relative;
  isolation: isolate;

  padding: 56px 24px 64px;
  border-top: 2px solid rgba(15, 23, 42, 0.08);
}

#kursdetails .kp-wrap {
  margin: 0 auto;
  display: grid;
  gap: 24px;
}

/* Header */
.kp-head { display: grid; }

.kp-eyebrow {
  display: inline-flex;
  align-items: center;
  padding: 8px 16px;
  border-radius: 999px;
  font-size: 16px;
  color: #0b2a6b; /* kp-primary-ink (light) */
  background: linear-gradient(180deg, #e8f0ff, #e8f0ff00);
  border: 2px solid rgba(59, 130, 246, 0.24);
}

.kp-title {
  margin: 0;
  font-size: 32px;
  line-height: 40px;
  color: #0f172a; /* kp-text (light) */
  font-weight: 800;
  letter-spacing: -0.02em;
}

.kp-lead {
  margin: 0;
  color: #475569; /* kp-muted (light) */
  font-size: 16px;
  line-height: 24px;
  max-width: 960px;
}

/* KPI chips */
.kp-kpis {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.kp-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  border-radius: 999px;
  background: #ffffff; /* kp-bg (light) */
  border: var(--border);
  color: #475569; /* kp-muted (light) */
  font-size: 16px;
}

.kp-chip svg { width: 16px; height: 16px; }

/* Tabs */
.kp-tabs {
  border-radius: 16px;
  background: #ffffff; /* kp-bg (light) */
  border: var(--border);
  overflow: clip;
}

.kp-tablist {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  background: linear-gradient(180deg, #f3f5f9, #ffffff);
  border-bottom: var(--border);
}

.kp-tab {
  appearance: none;
  background: transparent;
  padding: 16px;
  font: inherit;
  color: #2b2b2c;
  border: 0;
  cursor: pointer;
  transition: background .2s ease, color .2s ease;
  font-size: 16px;
  font-weight: 600;
  font-family: 'GT Super Display';
  font-size: 24px;
}

.kp-tab[aria-selected="true"] {
  background: rgb(82 124 173);
  color: #fff;
}

.kp-tab:focus-visible {
  outline: 4px solid #c7d2fe; /* kp-ring (light) */
  outline-offset: -4px;
}

@media (max-width: 864px) {
  .kp-tablist { grid-template-columns: 1fr; }
}

.kp-panels { padding: 16px; }
.kp-panel { display: none; padding: 16px; }
.kp-panel[aria-hidden="false"] { display: block; }

/* Grid cards */
.kp-grid {
  display: grid;
  gap: 24px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 864px) {
  .kp-grid { grid-template-columns: 1fr; }
}

.kp-card {
  background: #f6f8f9;
  border: var(--border);
  border-radius: 8px;
  padding: 24px;
}

.kp-media {
  /* display: grid;
  grid-template-columns: 24px 1fr; */
  gap: 16px;
  align-items: start;
}

.kp-icon svg {
  width: 24px;
  height: 24px;
  color: #3b82f6; /* kp-primary (light) */
}

/* Text */
.kp-h3 {
  margin: 0 0 12px 0;
  font-size: 16px;
  line-height: 24px;
  color: #0f172a; /* kp-text (light) */
  font-weight: 700;
  font-family: 'Open Sans';
}

.kp-text {
  margin: 0;
  color: #475569; /* kp-muted (light) */
  font-size: 16px;
  line-height: 24px;
}

/* Lists */
.kp-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 8px;
}

.kp-list li {
  display: grid;
  grid-template-columns: 16px 1fr;
  gap: 16px;
  align-items: start;
}

.kp-list svg {
  width: 16px;
  height: 16px;
  color: #10b981; /* kp-ok (light) */
  margin-top: 4px;
}

/* Accordion */
.kp-accordion { margin-top: 24px; border-top: var(--border); }
.kp-acc-item { border-bottom: var(--border); }

.kp-acc-btn {
  width: 100%;
  text-align: left;
  padding: 16px 0;
  background: transparent;
  border: 0;
  color: #0f172a; /* kp-text (light) */
  font-weight: 700;
  font-size: 16px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.kp-acc-btn:focus-visible {
  outline: 4px solid #c7d2fe; /* kp-ring (light) */
  border-radius: 8px;
}

.kp-acc-signal { font-size: 16px; }

.kp-acc-panel {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows .24s ease;
}

.kp-acc-panel[aria-hidden="false"] { grid-template-rows: 1fr; }

.kp-acc-inner {
  overflow: clip;
  padding: 0 0 16px 0;
}

.kp-card p, .kp-card {
  color: #2b2b2c;
  font-size: 16px;
  line-height: 25px;
}



/* Dark mode overrides (no variables, so we override the specific properties) */
@media (prefers-color-scheme: dark) {
  .kp-title { color: #e5e7eb; }
  .kp-lead { color: #94a3b8; }

  .kp-chip {
    background: #0b1020;
    color: #94a3b8;
  }

  .kp-tabs { background: #0b1020; }
  .kp-tab { color: #94a3b8; }
  .kp-tab:focus-visible { outline-color: #1d4ed8; }

  .kp-icon svg { color: #60a5fa; }

  .kp-h3 { color: #e5e7eb; }
  .kp-text { color: #94a3b8; }

  .kp-list svg { color: #34d399; }

  .kp-acc-btn { color: #e5e7eb; }
  .kp-acc-btn:focus-visible { outline-color: #1d4ed8; }

  .kp-eyebrow { color: #dbeafe; }
}



/* ========== Events Module ================== */

.section.events {
  padding: 80px;
  background-size: cover;
}
.events__intro {
  text-align: center;
  margin-bottom: 24px;
  display: inline-block;
  width: 100%;
}
.events .container {
  background-color: #fff;
  padding: 64px;
  border: var(--border);
  border-radius: 8px;
}

.event {
  display: flex;
  border: var(--border);
  border-radius: 8px;
  overflow: hidden;
}

.event__img {
  width: 25%;
  background-size: cover;
  background-position: center center;
  position: relative;
}
.event__img:after {
  position: absolute;
  content: "";
  background-color: #587291;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0.7;
  z-index: 0;
}
.event__details {
  width: 75%;
  padding: 32px;
}
.event__details h3 {
  font-size: 1.5rem;
  letter-spacing: -0.01em;
  line-height: 2rem;
}
.event__img > div {
  background-color: rgb(255 255 255 / 11%);
  min-height: 60%;
  width: 65%;
  margin: 0 auto;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  color: #fff;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(4px);
  box-shadow: none;
  border: 1px solid #a8a9aa;
  border-radius: 4px;
  gap: 4px;
  z-index: 1;
}
.event__date-month {
  top: 5px;
  position: relative;
}
.event__date-day {
  font-family: 'GT Super Display';
  font-size: 48px;
  line-height: 1;
  font-weight: bold;
}
.event__date-month,
.event__day {
  font-size: 18px;
  line-height: 1;
}
.featured-events__card-date {
  display: flex;
  gap: 8px;
  margin-bottom: 16px;
}
.featured-events__card-date img {
  margin-bottom: -6px;
  margin-right: 8px;
}
.events__container {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.events__actions {
  margin-top: 24px;
  display: flex;
  justify-content: center;
}
.cc-upcoming-description p {
  margin: 0;
}
.cc-upcoming-description  {
  margin-bottom: 16px;
}
@media(max-width: 767px) {
  .event__date-day {
    font-size: 24px;
  }
  .kp-tab {
    font-size: 20px;
  }
}

/* ============ Steps module ================ */
.steps {
  position: relative;
}
.section.steps {
  padding: 80px 24px;
  background-color: #F6F8F9;
  z-index: 1;
}
.steps__overlap {
  position: absolute;
  height: 40%;
  top: 0;
  left: 0;
  width: 100%;
  z-index: -1;
  background-size: cover;
  background-position: center center;
}
.steps__container {
  background-color: #fff;
  padding: 64px;
  border-radius: 8px;
  border: var(--border);
}

.steps__container {
  display: flex;
  align-items: start;
}
.steps__container > div:first-child {
  width: 35%;
  padding-right: 80px;
}
.steps__container > div:last-child {
  width: 65%;
}

.steps__container p {
  margin: 0;
}

.steps__grid {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}
a.steps__grid-item {
  width: auto;
  border: var(--border);
  border-radius: 8px;
  padding: 24px;
  transition: all 250ms ease;
}
a.steps__grid-item:hover {
  border-color: var(--blue);
  transition: all 250ms ease;
}
a.steps__grid-item.steps__grid-item--alt,
a.steps__grid-item.steps__grid-item--alt:hover {
  border: medium none;
}
a.steps__grid-item.steps__grid-item--alt {
  padding-left: 0;
  font-weight: bold;
}
a.steps__grid-item.steps__grid-item--alt span {
  color: var(--blue);
}
.steps__container p.bold {
  margin-bottom: 16px;
  color: #2b2b2c;
}
a.steps__grid-item {
  transform: translateY(-2px);
  transition: all 300ms ease;
}
a.steps__grid-item:hover {
  transform: translateY(0px);
  transition: all 300ms ease;
  box-shadow: none;
}
.steps__grid-item.box-shadow {
  padding: 24px;
  display: flex;
  align-items: start;
  border: var(--border);
  border-radius: 8px;
  gap: 16px;
}
.steps__grid h3 {
  font-size: 20px;
  line-height: 30px;
  margin-bottom: 8px;
}

.steps__tabs{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:24px;
}

.steps__tab{
  padding:10px 14px;
  border:1px solid rgba(0,0,0,.15);
  background:#fff;
  border-radius:6px;
  cursor:pointer;
  font:inherit;
}

.steps__tab.is-active{
  border-color: rgba(0,0,0,.35);
  font-weight:600;
}

.steps__grid[hidden]{
  display:none !important;
}

@media(max-width: 1200px) {
  .steps__container > div:first-child {
    width: 40%;
    padding-right: 56px;
  }
  .steps__container > div:last-child {
    width: 60%;
  }
}

@media(max-width: 991px) {
  .steps__container {
    display: flex;
    align-items: start;
    flex-direction: column;
  }
  .steps__container > div:first-child {
    width: 100%;
    padding-right: 0;
  }
  .steps__container > div:last-child {
    width: 100%;
  }
  .steps__left {
    display: flex;
    align-items: center;
    gap: 24px;
    flex-direction: row-reverse;
    margin-bottom: 24px;
  }
  .steps__left div:last-child {
    width: 200px;
  }
  .steps__container {
    padding: 40px;
  }
  .section.steps h2 {
    font-size: 40px;
    line-height: 52px;
    margin: 0;
  }
}

@media(max-width: 767px) {
  .section.steps {
    padding: 56px 24px;
    background-color: #F6F8F9;
    z-index: 1;
  }
  .steps__left {
    flex-direction: column;
  }
  .steps__left div:first-child,
  .steps__left div:last-child {
    width: 100%;
  }
  .steps__left div:last-child {
    display: none;
  }

}

.steps__center .container.steps__container {
  flex-direction: column;
}
.steps__center .steps__container > div:first-child {
  width: 100%;
  padding-right: 0;
  text-align: center;
  margin: 0 auto 40px;
  max-width: 700px;
}
.steps__center .steps__container > div:last-child {
  width: 100%;
}
.steps__center .steps__grid-item.box-shadow {
  width: calc(25% - 12px);
}


/* ============== FAQ =============== */
.faq-module {
  color: #2b2b2c;
  padding: 64px 16px 56px;
}

.faq-header {
  max-width: 680px;
  margin: 0 auto 28px;
  text-align: center;
}

.faq-header h2 {
  margin: 0 0 10px;
}

.faq-header p {
  margin: 0;
}

.faq-grid {
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}
.container.faq-container {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 40px;
}
/* Make details look like the boxed cards */
.faq-item {
  border: var(--border);
  background: #fff;
  border-radius: 8px;
}

/* Remove default marker */
.faq-item > summary {
  list-style: none;
}
.faq-item > summary::-webkit-details-marker {
  display: none;
}

.faq-summary {
  width: 100%;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 16px 16px;
  cursor: pointer;
  user-select: none;
}

.faq-summary:focus-visible {
  outline: 2px solid #000;
  outline-offset: 2px;
}

.faq-question {
  font-weight: 600;
}

.faq-caret {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  margin-top: 2px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: transform 180ms ease;
}

.faq-caret svg {
  width: 18px;
  height: 18px;
  display: block;
  fill: #111;
}

/* closed = caret down, open = caret up */
.faq-item[open] .faq-caret {
  transform: rotate(180deg);
}

.faq-content {
  padding: 0 16px 14px;
}

.faq-content p {
  margin: 0;
  color: #2b2b2c;
}

/* Footer / CTA */
.faq-footer {
  text-align: center;
  margin: 54px auto 0;
  /*   max-width: 820px; */
  background-color: #f6f8f9;
  padding: 24px;
  border-top: var(--border);
  border-bottom: var(--border);
}

.faq-footer h3 {
  margin: 0 0 8px;
  font-weight: 700;
}

.faq-footer p {
  margin: 0 0 16px;
}


@media (max-width: 820px) {
  .faq-grid {
    grid-template-columns: 1fr;
  }

}

p.eyebrow.eyebrow-cat {
  text-align: center;
  margin: 16px auto;
}



@media (max-width: 767px) {
  .faq-module {
    padding: 64px 16px 24px;
  }

}

/* ========== Hero =========== */
.hero {
  padding: 200px 24px 80px;
  text-align: center;
  background-image: url('https://139525743.fs1.hubspotusercontent-eu1.net/hubfs/139525743/website/cc/hero-simple.png'), linear-gradient(270deg, #EDF0F2, #fff);
  background-size: cover;
}
.hero h1 span {
  color:var(--blue);
}
.hero__value {
  text-align: left;
  margin: 0 auto;
  display: inline-block;
  border: var(--border);
  padding: 16px;
  border-radius: 8px;
  background-color: #fff;
  margin-top: 40px;
}
.hero__value ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  gap: 24px;
  width: auto;
}
.hero__value li {
  display: grid;
  grid-template-columns: 16px 1fr;
  gap: 16px;
  align-items: start;
}
.hero__value svg {
  width: 24px;
  height: 24px;
  color: #2b2b2c;
  margin-top: -1px;
}
.cc-logo-slider__header {
  margin-top: 56px;
}
.cc-logo-slider {
  background: transparent;
  color: rgba(12, 18, 32, 0.92);
}

.cc-logo-slider__inner {
  margin: 0 auto;
  border-radius: 26px;
}

.cc-logo-slider__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  padding: 4px 4px 14px 4px;
  margin-bottom: 14px;
}

.cc-logo-slider__eyebrow {
  margin: 0 0 6px 0;
  font-size: 12px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(12, 18, 32, 0.58);
}

.cc-logo-slider__title {
  margin: 0;
  font-size: clamp(18px, 1.6vw, 22px);
  letter-spacing: -0.02em;
  line-height: 1.2;
}

.cc-logo-slider__link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 999px;
  text-decoration: none;
  color: rgba(12, 18, 32, 0.80);
  border: 1px solid rgba(12, 18, 32, 0.10);
  background: rgba(255, 255, 255, 0.80);
  box-shadow: none;
  transition: transform 140ms ease, border-color 140ms ease, background 140ms ease;
  white-space: nowrap;
  font-size: 13px;
}

.cc-logo-slider__chev {
  width: 20px;
  height: 20px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: rgba(12, 18, 32, 0.06);
  color: rgba(12, 18, 32, 0.72);
  line-height: 1;
}

.cc-logo-slider__link:hover {
  transform: translateY(-1px);
  border-color: rgba(12, 18, 32, 0.16);
  background: rgba(255, 255, 255, 0.92);
}

.cc-logo-slider__link:focus {
  outline: 2px solid rgba(12, 18, 32, 0.24);
  outline-offset: 2px;
}

.cc-logo-slider__marquee {
  position: relative;
  overflow: hidden;
  border-radius: 16px; /* calc(26px - 10px) */
  /* soft edge fade */
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 42px, #000 calc(100% - 42px), transparent);
  mask-image: linear-gradient(90deg, transparent, #000 42px, #000 calc(100% - 42px), transparent);
  padding: 0 0 24px;
}

.cc-logo-slider__track {
  display: flex;
  width: max-content;
  height: 100%;
  will-change: transform;
  animation: cc-marquee 36s linear infinite;
}

.cc-logo-slider__group {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 0 10px;
}

.cc-logo-slider__item {
  display: grid;
  place-items: center;
  height: calc(44px + (14px * 2));
  padding: 14px 18px;
  border-radius: 18px;
  border: 1px solid rgba(12, 18, 32, 0.08);
  background:
    radial-gradient(120px 60px at 30% 20%, rgba(12, 18, 32, 0.05), transparent 60%),
    #fff;
  box-shadow: none;
  transition: transform 140ms ease, border-color 140ms ease, box-shadow 140ms ease;
}

.cc-logo-slider__item:hover {
  transform: translateY(-1px);
  border-color: rgba(12, 18, 32, 0.14);
  box-shadow: none;
}

.cc-logo-slider__item:focus-within {
  outline: 2px solid rgba(12, 18, 32, 0.22);
  outline-offset: 2px;
}

.cc-logo-slider__img {
  height: 44px;
  width: auto;
  max-width: 190px;
  object-fit: contain;
  display: block;
  filter: saturate(1.02);
}

.cc-logo-slider__marquee:hover .cc-logo-slider__track,
.cc-logo-slider__marquee:focus-within .cc-logo-slider__track {
  animation-play-state: paused;
}

@keyframes cc-marquee {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(calc(-1 * 50%));
  }
}

/* Mobile */
@media (max-width: 680px) {
  .cc-logo-slider__head {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
  }
  .cc-logo-slider__link {
    align-self: flex-start;
  }
  .cc-logo-slider {
    --logoH: 38px;
    --marqueeH: 70px;
    --fade: 28px;
  }
  .cc-logo-slider__img {
    max-width: 160px;
  }
}



/* Screen-reader-only list */
.cc-logo-slider__sr {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  white-space: nowrap;
}


/* =========== Testimonials ============ */

.testimonials__intro {
  text-align: center;
  margin-bottom: 24px;
}
.testimonials__intro h2 {
  display: inline-block;
}
.testimonials__intro p {
  margin: 0;
}
.testimonials__container {
  display: grid;
  gap: 24px;
  grid-template-columns: repeat(auto-fit,minmax(420px,1fr));
}
.testimonial-card {

  border: var(--border);
  border-radius: 8px;
  padding: 24px;
  justify-content: space-between;
  display: flex;
  flex-direction: column;
  background-color: #fff;
}
.testimonial-card img {
  width: 50px;
  height: 50px;
  object-fit: cover;
  border-radius: 100%;
}

.testimonial-card__stars {
  background-image: url('data:image/svg+xml,<svg width="116" height="19" viewBox="0 0 116 19" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_513_416)"><path d="M9.07088 0.612343C9.41462 -0.204115 10.5854 -0.204114 10.9291 0.612346L12.9579 5.43123C13.1029 5.77543 13.4306 6.01061 13.8067 6.0404L19.0727 6.45748C19.9649 6.52814 20.3267 7.62813 19.6469 8.2034L15.6348 11.5987C15.3482 11.8412 15.223 12.2218 15.3106 12.5843L16.5363 17.661C16.744 18.5211 15.7969 19.201 15.033 18.7401L10.5245 16.0196C10.2025 15.8252 9.7975 15.8252 9.47548 16.0196L4.96699 18.7401C4.20311 19.201 3.25596 18.5211 3.46363 17.661L4.68942 12.5843C4.77698 12.2218 4.65182 11.8412 4.36526 11.5987L0.353062 8.2034C-0.326718 7.62813 0.0350679 6.52814 0.927291 6.45748L6.19336 6.0404C6.5695 6.01061 6.89716 5.77543 7.04207 5.43123L9.07088 0.612343Z" fill="%23EBDC76"/><path d="M33.0709 0.612343C33.4146 -0.204115 34.5854 -0.204114 34.9291 0.612346L36.9579 5.43123C37.1029 5.77543 37.4306 6.01061 37.8067 6.0404L43.0727 6.45748C43.9649 6.52814 44.3267 7.62813 43.6469 8.2034L39.6348 11.5987C39.3482 11.8412 39.223 12.2218 39.3106 12.5843L40.5363 17.661C40.744 18.5211 39.7969 19.201 39.033 18.7401L34.5245 16.0196C34.2025 15.8252 33.7975 15.8252 33.4755 16.0196L28.967 18.7401C28.2031 19.201 27.256 18.5211 27.4636 17.661L28.6894 12.5843C28.777 12.2218 28.6518 11.8412 28.3653 11.5987L24.3531 8.2034C23.6733 7.62813 24.0351 6.52814 24.9273 6.45748L30.1934 6.0404C30.5695 6.01061 30.8972 5.77543 31.0421 5.43123L33.0709 0.612343Z" fill="%23EBDC76"/><path d="M57.0709 0.612343C57.4146 -0.204115 58.5854 -0.204114 58.9291 0.612346L60.9579 5.43123C61.1029 5.77543 61.4306 6.01061 61.8067 6.0404L67.0727 6.45748C67.9649 6.52814 68.3267 7.62813 67.6469 8.2034L63.6348 11.5987C63.3482 11.8412 63.223 12.2218 63.3106 12.5843L64.5363 17.661C64.744 18.5211 63.7969 19.201 63.033 18.7401L58.5245 16.0196C58.2025 15.8252 57.7975 15.8252 57.4755 16.0196L52.967 18.7401C52.2031 19.201 51.256 18.5211 51.4636 17.661L52.6894 12.5843C52.777 12.2218 52.6518 11.8412 52.3653 11.5987L48.3531 8.2034C47.6733 7.62813 48.0351 6.52814 48.9273 6.45748L54.1934 6.0404C54.5695 6.01061 54.8972 5.77543 55.0421 5.43123L57.0709 0.612343Z" fill="%23EBDC76"/><path d="M81.0709 0.612343C81.4146 -0.204115 82.5854 -0.204114 82.9291 0.612346L84.9579 5.43123C85.1029 5.77543 85.4306 6.01061 85.8067 6.0404L91.0727 6.45748C91.9649 6.52814 92.3267 7.62813 91.6469 8.2034L87.6348 11.5987C87.3482 11.8412 87.223 12.2218 87.3106 12.5843L88.5363 17.661C88.744 18.5211 87.7969 19.201 87.033 18.7401L82.5245 16.0196C82.2025 15.8252 81.7975 15.8252 81.4755 16.0196L76.967 18.7401C76.2031 19.201 75.256 18.5211 75.4636 17.661L76.6894 12.5843C76.777 12.2218 76.6518 11.8412 76.3653 11.5987L72.3531 8.2034C71.6733 7.62813 72.0351 6.52814 72.9273 6.45748L78.1934 6.0404C78.5695 6.01061 78.8972 5.77543 79.0421 5.43123L81.0709 0.612343Z" fill="%23EBDC76"/><path d="M105.071 0.612343C105.415 -0.204115 106.585 -0.204114 106.929 0.612346L108.958 5.43123C109.103 5.77543 109.431 6.01061 109.807 6.0404L115.073 6.45748C115.965 6.52814 116.327 7.62813 115.647 8.2034L111.635 11.5987C111.348 11.8412 111.223 12.2218 111.311 12.5843L112.536 17.661C112.744 18.5211 111.797 19.201 111.033 18.7401L106.525 16.0196C106.203 15.8252 105.797 15.8252 105.475 16.0196L100.967 18.7401C100.203 19.201 99.256 18.5211 99.4636 17.661L100.689 12.5843C100.777 12.2218 100.652 11.8412 100.365 11.5987L96.3531 8.2034C95.6733 7.62813 96.0351 6.52814 96.9273 6.45748L102.193 6.0404C102.569 6.01061 102.897 5.77543 103.042 5.43123L105.071 0.612343Z" fill="%23EBDC76"/></g><defs><clipPath id="clip0_513_416"><rect width="116" height="18.8889" fill="white"/></clipPath></defs></svg>');
  width: 116px;
  height: 19px;
  margin-bottom: 16px;
}

.testimonial-card__author {
  display: flex;
  gap: 16px;
  align-items: center;
}
.testimonial-card__author p {
  margin: 0;
  line-height: 20px;
  font-size: 13px;
}
.testimonial-card__author p span {
  font-weight: 500;
  color: #2b2b2c;
  font-size: 16px;
}
.load-more-container {
  text-align: center;
}

.load-more-container .btn {
  margin: 56px 0 0;
}


/* ============== Training Calendar ================== */

.cc-day {
  /*   max-width: 196px; */
}
body .cc-dialog__panel {
  max-height: 75vh;
}
body .cc-dialog {
  align-items: center;
}

body .cc-dialog__panel {
  max-height: 75vh;
  margin-bottom: -100px;
}
.cc-event {

  max-width: 230px;
}



body .logo-strip {  
  width: 100%;
  max-width: 600px;
  flex-wrap: wrap;
}


.filter__grid-item.box-shadow {
  background-color: #fff;
}
.course__details p.sub-title {
  margin: 0 0 8px;
}
.date-color {
  color: var(--blue);
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: .02em;
  font-size: 15px;
}
.js-date strong {
  font-weight: 500;
}


.filter__grid-b-new.aos-init.aos-animate {
  justify-content: flex-start;
}
.courses__inner .bold {  
  width: 100%;
}

.cc-course-card__funding a.btn.btn-tertiary,
.cc-course-card__cta a.btn.btn-tertiary {
  font-weight: 600;
  border: transparent;
  background-color: transparent;
  color: var(--black);
  padding-left: 0;
}

/* Course Contents */
body .about-course__container {
  display: flex;
  gap: 0;
  flex-wrap: wrap;
}
.cc-acc-badge {
  min-width: 70px;
}
@media(max-width: 1200px) {
  body .about-course__inner,
  body .about-course__sidebar {
    width: 100%;
  }
  .container.info__container.info__container--single {
    display: block;
  }
}

@media(max-width: 991px) {
  .courses__full.wide {
    grid-template-columns:  1fr;
  }
  
  .container.faq-container {
    grid-template-columns:  1fr;
    gap: 24px;
  }
  .faq-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media(max-width: 767px) {
  .course.course--outer, .course-new.course--outer {
    height: auto;
  }
  nav.crumbs {
    display: none;
  }
  .faq-grid {
    grid-template-columns: 1fr;
  }
}

.role__img {
  line-height: 0;
}

.course__img,
.course__img-new {
  min-height: 240px;
}
.course__img > div,
.course__img-new > div {
  display: none;
}

.course,
.course-new {
  width: calc(50% - 16px);
}
@media(max-width: 767px) {
  .course,
  .course-new {
    width: 100%;
  }
}


body .blogs__intro{
  align-items: self-end;
}
.blogs__intro p.eyebrow + h2,
.cards__intro p.eyebrow + h2 {
  margin-bottom: 0;
}

/* ==Privacy */

.section.legal-page {

  color: #2b2b2c;
}

.container {

  margin: 0 auto;
}

.legal-page__intro {
  max-width: 760px;
  margin-bottom: 40px;
}


.legal-page__intro > p:last-child {
  margin: 0;
  font-size: 18px;
  line-height: 32px;
  color: #6D6C6D;
}

.legal-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 24px;
}

.legal-main,
.legal-aside {
  display: grid;
  gap: 24px;
}

.legal-card {
  padding: 24px;
  background: #f9fafc;
  border: 1px solid #f0f0f0;
  border-radius: 16px;
}

.legal-card h2 {
  margin: 0 0 16px;
  font-size: 24px;
  line-height: 32px;
  font-weight: 600;
  color: #2b2b2c;
}

.legal-card p,
.legal-card address {
  margin: 0 0 16px;
  font-size: 16px;
  line-height: 28px;
  color: #6D6C6D;
}

.legal-card p:last-child,
.legal-card address:last-child {
  margin-bottom: 0;
}

.legal-address {
  font-style: normal;
  color: #2b2b2c;
}

.legal-stack {
  display: grid;
  gap: 16px;
}

.legal-card strong {
  color: #2b2b2c;
  font-weight: 600;
}

.legal-card a {
  color: #2D4A7A;
  text-decoration: underline;
  
  word-break: break-word;
}

.legal-card a:hover {
  color: #497CAD;
}

.legal-card a:focus-visible {
  outline: 3px solid #497CAD;
  outline-offset: 3px;
  border-radius: 4px;
}

@media (min-width: 900px) {
  .legal-layout {
    grid-template-columns: minmax(320px, 0.9fr) minmax(0, 1.3fr);
    align-items: start;
    gap: 24px;
  }

  .legal-main {
    position: sticky;
    top: 24px;
  }
}

@media (max-width: 767px) {
  .section.legal-page {
    padding: 48px 0;
  }

  .legal-card {
    padding: 20px;
    border-radius: 12px;
  }

  .legal-card h2 {
    font-size: 21px;
    line-height: 30px;
  }

  .legal-card p,
  .legal-card address {
    font-size: 15px;
    line-height: 26px;
  }
}

body .kp-card p,
body .kp-card {
  color: #6d6d6d;
  margin-bottom: 8px;
}
body section header {
  z-index: 1;
}
/* Utilities
Helper classes with ability to override anything that comes before it
*/
/**
 * Skipped minification because the original files appears to be already minified.
 * Original file: /npm/aos@2.3.4/dist/aos.css
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
[data-aos][data-aos][data-aos-duration="50"],body[data-aos-duration="50"] [data-aos]{transition-duration:50ms}[data-aos][data-aos][data-aos-delay="50"],body[data-aos-delay="50"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="50"].aos-animate,body[data-aos-delay="50"] [data-aos].aos-animate{transition-delay:50ms}[data-aos][data-aos][data-aos-duration="100"],body[data-aos-duration="100"] [data-aos]{transition-duration:.1s}[data-aos][data-aos][data-aos-delay="100"],body[data-aos-delay="100"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="100"].aos-animate,body[data-aos-delay="100"] [data-aos].aos-animate{transition-delay:.1s}[data-aos][data-aos][data-aos-duration="150"],body[data-aos-duration="150"] [data-aos]{transition-duration:.15s}[data-aos][data-aos][data-aos-delay="150"],body[data-aos-delay="150"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="150"].aos-animate,body[data-aos-delay="150"] [data-aos].aos-animate{transition-delay:.15s}[data-aos][data-aos][data-aos-duration="200"],body[data-aos-duration="200"] [data-aos]{transition-duration:.2s}[data-aos][data-aos][data-aos-delay="200"],body[data-aos-delay="200"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="200"].aos-animate,body[data-aos-delay="200"] [data-aos].aos-animate{transition-delay:.2s}[data-aos][data-aos][data-aos-duration="250"],body[data-aos-duration="250"] [data-aos]{transition-duration:.25s}[data-aos][data-aos][data-aos-delay="250"],body[data-aos-delay="250"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="250"].aos-animate,body[data-aos-delay="250"] [data-aos].aos-animate{transition-delay:.25s}[data-aos][data-aos][data-aos-duration="300"],body[data-aos-duration="300"] [data-aos]{transition-duration:.3s}[data-aos][data-aos][data-aos-delay="300"],body[data-aos-delay="300"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="300"].aos-animate,body[data-aos-delay="300"] [data-aos].aos-animate{transition-delay:.3s}[data-aos][data-aos][data-aos-duration="350"],body[data-aos-duration="350"] [data-aos]{transition-duration:.35s}[data-aos][data-aos][data-aos-delay="350"],body[data-aos-delay="350"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="350"].aos-animate,body[data-aos-delay="350"] [data-aos].aos-animate{transition-delay:.35s}[data-aos][data-aos][data-aos-duration="400"],body[data-aos-duration="400"] [data-aos]{transition-duration:.4s}[data-aos][data-aos][data-aos-delay="400"],body[data-aos-delay="400"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="400"].aos-animate,body[data-aos-delay="400"] [data-aos].aos-animate{transition-delay:.4s}[data-aos][data-aos][data-aos-duration="450"],body[data-aos-duration="450"] [data-aos]{transition-duration:.45s}[data-aos][data-aos][data-aos-delay="450"],body[data-aos-delay="450"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="450"].aos-animate,body[data-aos-delay="450"] [data-aos].aos-animate{transition-delay:.45s}[data-aos][data-aos][data-aos-duration="500"],body[data-aos-duration="500"] [data-aos]{transition-duration:.5s}[data-aos][data-aos][data-aos-delay="500"],body[data-aos-delay="500"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="500"].aos-animate,body[data-aos-delay="500"] [data-aos].aos-animate{transition-delay:.5s}[data-aos][data-aos][data-aos-duration="550"],body[data-aos-duration="550"] [data-aos]{transition-duration:.55s}[data-aos][data-aos][data-aos-delay="550"],body[data-aos-delay="550"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="550"].aos-animate,body[data-aos-delay="550"] [data-aos].aos-animate{transition-delay:.55s}[data-aos][data-aos][data-aos-duration="600"],body[data-aos-duration="600"] [data-aos]{transition-duration:.6s}[data-aos][data-aos][data-aos-delay="600"],body[data-aos-delay="600"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="600"].aos-animate,body[data-aos-delay="600"] [data-aos].aos-animate{transition-delay:.6s}[data-aos][data-aos][data-aos-duration="650"],body[data-aos-duration="650"] [data-aos]{transition-duration:.65s}[data-aos][data-aos][data-aos-delay="650"],body[data-aos-delay="650"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="650"].aos-animate,body[data-aos-delay="650"] [data-aos].aos-animate{transition-delay:.65s}[data-aos][data-aos][data-aos-duration="700"],body[data-aos-duration="700"] [data-aos]{transition-duration:.7s}[data-aos][data-aos][data-aos-delay="700"],body[data-aos-delay="700"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="700"].aos-animate,body[data-aos-delay="700"] [data-aos].aos-animate{transition-delay:.7s}[data-aos][data-aos][data-aos-duration="750"],body[data-aos-duration="750"] [data-aos]{transition-duration:.75s}[data-aos][data-aos][data-aos-delay="750"],body[data-aos-delay="750"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="750"].aos-animate,body[data-aos-delay="750"] [data-aos].aos-animate{transition-delay:.75s}[data-aos][data-aos][data-aos-duration="800"],body[data-aos-duration="800"] [data-aos]{transition-duration:.8s}[data-aos][data-aos][data-aos-delay="800"],body[data-aos-delay="800"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="800"].aos-animate,body[data-aos-delay="800"] [data-aos].aos-animate{transition-delay:.8s}[data-aos][data-aos][data-aos-duration="850"],body[data-aos-duration="850"] [data-aos]{transition-duration:.85s}[data-aos][data-aos][data-aos-delay="850"],body[data-aos-delay="850"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="850"].aos-animate,body[data-aos-delay="850"] [data-aos].aos-animate{transition-delay:.85s}[data-aos][data-aos][data-aos-duration="900"],body[data-aos-duration="900"] [data-aos]{transition-duration:.9s}[data-aos][data-aos][data-aos-delay="900"],body[data-aos-delay="900"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="900"].aos-animate,body[data-aos-delay="900"] [data-aos].aos-animate{transition-delay:.9s}[data-aos][data-aos][data-aos-duration="950"],body[data-aos-duration="950"] [data-aos]{transition-duration:.95s}[data-aos][data-aos][data-aos-delay="950"],body[data-aos-delay="950"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="950"].aos-animate,body[data-aos-delay="950"] [data-aos].aos-animate{transition-delay:.95s}[data-aos][data-aos][data-aos-duration="1000"],body[data-aos-duration="1000"] [data-aos]{transition-duration:1s}[data-aos][data-aos][data-aos-delay="1000"],body[data-aos-delay="1000"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="1000"].aos-animate,body[data-aos-delay="1000"] [data-aos].aos-animate{transition-delay:1s}[data-aos][data-aos][data-aos-duration="1050"],body[data-aos-duration="1050"] [data-aos]{transition-duration:1.05s}[data-aos][data-aos][data-aos-delay="1050"],body[data-aos-delay="1050"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="1050"].aos-animate,body[data-aos-delay="1050"] [data-aos].aos-animate{transition-delay:1.05s}[data-aos][data-aos][data-aos-duration="1100"],body[data-aos-duration="1100"] [data-aos]{transition-duration:1.1s}[data-aos][data-aos][data-aos-delay="1100"],body[data-aos-delay="1100"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="1100"].aos-animate,body[data-aos-delay="1100"] [data-aos].aos-animate{transition-delay:1.1s}[data-aos][data-aos][data-aos-duration="1150"],body[data-aos-duration="1150"] [data-aos]{transition-duration:1.15s}[data-aos][data-aos][data-aos-delay="1150"],body[data-aos-delay="1150"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="1150"].aos-animate,body[data-aos-delay="1150"] [data-aos].aos-animate{transition-delay:1.15s}[data-aos][data-aos][data-aos-duration="1200"],body[data-aos-duration="1200"] [data-aos]{transition-duration:1.2s}[data-aos][data-aos][data-aos-delay="1200"],body[data-aos-delay="1200"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="1200"].aos-animate,body[data-aos-delay="1200"] [data-aos].aos-animate{transition-delay:1.2s}[data-aos][data-aos][data-aos-duration="1250"],body[data-aos-duration="1250"] [data-aos]{transition-duration:1.25s}[data-aos][data-aos][data-aos-delay="1250"],body[data-aos-delay="1250"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="1250"].aos-animate,body[data-aos-delay="1250"] [data-aos].aos-animate{transition-delay:1.25s}[data-aos][data-aos][data-aos-duration="1300"],body[data-aos-duration="1300"] [data-aos]{transition-duration:1.3s}[data-aos][data-aos][data-aos-delay="1300"],body[data-aos-delay="1300"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="1300"].aos-animate,body[data-aos-delay="1300"] [data-aos].aos-animate{transition-delay:1.3s}[data-aos][data-aos][data-aos-duration="1350"],body[data-aos-duration="1350"] [data-aos]{transition-duration:1.35s}[data-aos][data-aos][data-aos-delay="1350"],body[data-aos-delay="1350"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="1350"].aos-animate,body[data-aos-delay="1350"] [data-aos].aos-animate{transition-delay:1.35s}[data-aos][data-aos][data-aos-duration="1400"],body[data-aos-duration="1400"] [data-aos]{transition-duration:1.4s}[data-aos][data-aos][data-aos-delay="1400"],body[data-aos-delay="1400"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="1400"].aos-animate,body[data-aos-delay="1400"] [data-aos].aos-animate{transition-delay:1.4s}[data-aos][data-aos][data-aos-duration="1450"],body[data-aos-duration="1450"] [data-aos]{transition-duration:1.45s}[data-aos][data-aos][data-aos-delay="1450"],body[data-aos-delay="1450"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="1450"].aos-animate,body[data-aos-delay="1450"] [data-aos].aos-animate{transition-delay:1.45s}[data-aos][data-aos][data-aos-duration="1500"],body[data-aos-duration="1500"] [data-aos]{transition-duration:1.5s}[data-aos][data-aos][data-aos-delay="1500"],body[data-aos-delay="1500"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="1500"].aos-animate,body[data-aos-delay="1500"] [data-aos].aos-animate{transition-delay:1.5s}[data-aos][data-aos][data-aos-duration="1550"],body[data-aos-duration="1550"] [data-aos]{transition-duration:1.55s}[data-aos][data-aos][data-aos-delay="1550"],body[data-aos-delay="1550"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="1550"].aos-animate,body[data-aos-delay="1550"] [data-aos].aos-animate{transition-delay:1.55s}[data-aos][data-aos][data-aos-duration="1600"],body[data-aos-duration="1600"] [data-aos]{transition-duration:1.6s}[data-aos][data-aos][data-aos-delay="1600"],body[data-aos-delay="1600"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="1600"].aos-animate,body[data-aos-delay="1600"] [data-aos].aos-animate{transition-delay:1.6s}[data-aos][data-aos][data-aos-duration="1650"],body[data-aos-duration="1650"] [data-aos]{transition-duration:1.65s}[data-aos][data-aos][data-aos-delay="1650"],body[data-aos-delay="1650"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="1650"].aos-animate,body[data-aos-delay="1650"] [data-aos].aos-animate{transition-delay:1.65s}[data-aos][data-aos][data-aos-duration="1700"],body[data-aos-duration="1700"] [data-aos]{transition-duration:1.7s}[data-aos][data-aos][data-aos-delay="1700"],body[data-aos-delay="1700"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="1700"].aos-animate,body[data-aos-delay="1700"] [data-aos].aos-animate{transition-delay:1.7s}[data-aos][data-aos][data-aos-duration="1750"],body[data-aos-duration="1750"] [data-aos]{transition-duration:1.75s}[data-aos][data-aos][data-aos-delay="1750"],body[data-aos-delay="1750"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="1750"].aos-animate,body[data-aos-delay="1750"] [data-aos].aos-animate{transition-delay:1.75s}[data-aos][data-aos][data-aos-duration="1800"],body[data-aos-duration="1800"] [data-aos]{transition-duration:1.8s}[data-aos][data-aos][data-aos-delay="1800"],body[data-aos-delay="1800"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="1800"].aos-animate,body[data-aos-delay="1800"] [data-aos].aos-animate{transition-delay:1.8s}[data-aos][data-aos][data-aos-duration="1850"],body[data-aos-duration="1850"] [data-aos]{transition-duration:1.85s}[data-aos][data-aos][data-aos-delay="1850"],body[data-aos-delay="1850"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="1850"].aos-animate,body[data-aos-delay="1850"] [data-aos].aos-animate{transition-delay:1.85s}[data-aos][data-aos][data-aos-duration="1900"],body[data-aos-duration="1900"] [data-aos]{transition-duration:1.9s}[data-aos][data-aos][data-aos-delay="1900"],body[data-aos-delay="1900"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="1900"].aos-animate,body[data-aos-delay="1900"] [data-aos].aos-animate{transition-delay:1.9s}[data-aos][data-aos][data-aos-duration="1950"],body[data-aos-duration="1950"] [data-aos]{transition-duration:1.95s}[data-aos][data-aos][data-aos-delay="1950"],body[data-aos-delay="1950"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="1950"].aos-animate,body[data-aos-delay="1950"] [data-aos].aos-animate{transition-delay:1.95s}[data-aos][data-aos][data-aos-duration="2000"],body[data-aos-duration="2000"] [data-aos]{transition-duration:2s}[data-aos][data-aos][data-aos-delay="2000"],body[data-aos-delay="2000"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="2000"].aos-animate,body[data-aos-delay="2000"] [data-aos].aos-animate{transition-delay:2s}[data-aos][data-aos][data-aos-duration="2050"],body[data-aos-duration="2050"] [data-aos]{transition-duration:2.05s}[data-aos][data-aos][data-aos-delay="2050"],body[data-aos-delay="2050"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="2050"].aos-animate,body[data-aos-delay="2050"] [data-aos].aos-animate{transition-delay:2.05s}[data-aos][data-aos][data-aos-duration="2100"],body[data-aos-duration="2100"] [data-aos]{transition-duration:2.1s}[data-aos][data-aos][data-aos-delay="2100"],body[data-aos-delay="2100"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="2100"].aos-animate,body[data-aos-delay="2100"] [data-aos].aos-animate{transition-delay:2.1s}[data-aos][data-aos][data-aos-duration="2150"],body[data-aos-duration="2150"] [data-aos]{transition-duration:2.15s}[data-aos][data-aos][data-aos-delay="2150"],body[data-aos-delay="2150"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="2150"].aos-animate,body[data-aos-delay="2150"] [data-aos].aos-animate{transition-delay:2.15s}[data-aos][data-aos][data-aos-duration="2200"],body[data-aos-duration="2200"] [data-aos]{transition-duration:2.2s}[data-aos][data-aos][data-aos-delay="2200"],body[data-aos-delay="2200"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="2200"].aos-animate,body[data-aos-delay="2200"] [data-aos].aos-animate{transition-delay:2.2s}[data-aos][data-aos][data-aos-duration="2250"],body[data-aos-duration="2250"] [data-aos]{transition-duration:2.25s}[data-aos][data-aos][data-aos-delay="2250"],body[data-aos-delay="2250"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="2250"].aos-animate,body[data-aos-delay="2250"] [data-aos].aos-animate{transition-delay:2.25s}[data-aos][data-aos][data-aos-duration="2300"],body[data-aos-duration="2300"] [data-aos]{transition-duration:2.3s}[data-aos][data-aos][data-aos-delay="2300"],body[data-aos-delay="2300"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="2300"].aos-animate,body[data-aos-delay="2300"] [data-aos].aos-animate{transition-delay:2.3s}[data-aos][data-aos][data-aos-duration="2350"],body[data-aos-duration="2350"] [data-aos]{transition-duration:2.35s}[data-aos][data-aos][data-aos-delay="2350"],body[data-aos-delay="2350"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="2350"].aos-animate,body[data-aos-delay="2350"] [data-aos].aos-animate{transition-delay:2.35s}[data-aos][data-aos][data-aos-duration="2400"],body[data-aos-duration="2400"] [data-aos]{transition-duration:2.4s}[data-aos][data-aos][data-aos-delay="2400"],body[data-aos-delay="2400"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="2400"].aos-animate,body[data-aos-delay="2400"] [data-aos].aos-animate{transition-delay:2.4s}[data-aos][data-aos][data-aos-duration="2450"],body[data-aos-duration="2450"] [data-aos]{transition-duration:2.45s}[data-aos][data-aos][data-aos-delay="2450"],body[data-aos-delay="2450"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="2450"].aos-animate,body[data-aos-delay="2450"] [data-aos].aos-animate{transition-delay:2.45s}[data-aos][data-aos][data-aos-duration="2500"],body[data-aos-duration="2500"] [data-aos]{transition-duration:2.5s}[data-aos][data-aos][data-aos-delay="2500"],body[data-aos-delay="2500"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="2500"].aos-animate,body[data-aos-delay="2500"] [data-aos].aos-animate{transition-delay:2.5s}[data-aos][data-aos][data-aos-duration="2550"],body[data-aos-duration="2550"] [data-aos]{transition-duration:2.55s}[data-aos][data-aos][data-aos-delay="2550"],body[data-aos-delay="2550"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="2550"].aos-animate,body[data-aos-delay="2550"] [data-aos].aos-animate{transition-delay:2.55s}[data-aos][data-aos][data-aos-duration="2600"],body[data-aos-duration="2600"] [data-aos]{transition-duration:2.6s}[data-aos][data-aos][data-aos-delay="2600"],body[data-aos-delay="2600"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="2600"].aos-animate,body[data-aos-delay="2600"] [data-aos].aos-animate{transition-delay:2.6s}[data-aos][data-aos][data-aos-duration="2650"],body[data-aos-duration="2650"] [data-aos]{transition-duration:2.65s}[data-aos][data-aos][data-aos-delay="2650"],body[data-aos-delay="2650"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="2650"].aos-animate,body[data-aos-delay="2650"] [data-aos].aos-animate{transition-delay:2.65s}[data-aos][data-aos][data-aos-duration="2700"],body[data-aos-duration="2700"] [data-aos]{transition-duration:2.7s}[data-aos][data-aos][data-aos-delay="2700"],body[data-aos-delay="2700"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="2700"].aos-animate,body[data-aos-delay="2700"] [data-aos].aos-animate{transition-delay:2.7s}[data-aos][data-aos][data-aos-duration="2750"],body[data-aos-duration="2750"] [data-aos]{transition-duration:2.75s}[data-aos][data-aos][data-aos-delay="2750"],body[data-aos-delay="2750"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="2750"].aos-animate,body[data-aos-delay="2750"] [data-aos].aos-animate{transition-delay:2.75s}[data-aos][data-aos][data-aos-duration="2800"],body[data-aos-duration="2800"] [data-aos]{transition-duration:2.8s}[data-aos][data-aos][data-aos-delay="2800"],body[data-aos-delay="2800"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="2800"].aos-animate,body[data-aos-delay="2800"] [data-aos].aos-animate{transition-delay:2.8s}[data-aos][data-aos][data-aos-duration="2850"],body[data-aos-duration="2850"] [data-aos]{transition-duration:2.85s}[data-aos][data-aos][data-aos-delay="2850"],body[data-aos-delay="2850"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="2850"].aos-animate,body[data-aos-delay="2850"] [data-aos].aos-animate{transition-delay:2.85s}[data-aos][data-aos][data-aos-duration="2900"],body[data-aos-duration="2900"] [data-aos]{transition-duration:2.9s}[data-aos][data-aos][data-aos-delay="2900"],body[data-aos-delay="2900"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="2900"].aos-animate,body[data-aos-delay="2900"] [data-aos].aos-animate{transition-delay:2.9s}[data-aos][data-aos][data-aos-duration="2950"],body[data-aos-duration="2950"] [data-aos]{transition-duration:2.95s}[data-aos][data-aos][data-aos-delay="2950"],body[data-aos-delay="2950"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="2950"].aos-animate,body[data-aos-delay="2950"] [data-aos].aos-animate{transition-delay:2.95s}[data-aos][data-aos][data-aos-duration="3000"],body[data-aos-duration="3000"] [data-aos]{transition-duration:3s}[data-aos][data-aos][data-aos-delay="3000"],body[data-aos-delay="3000"] [data-aos]{transition-delay:0}[data-aos][data-aos][data-aos-delay="3000"].aos-animate,body[data-aos-delay="3000"] [data-aos].aos-animate{transition-delay:3s}[data-aos][data-aos][data-aos-easing=linear],body[data-aos-easing=linear] [data-aos]{transition-timing-function:cubic-bezier(.25,.25,.75,.75)}[data-aos][data-aos][data-aos-easing=ease],body[data-aos-easing=ease] [data-aos]{transition-timing-function:ease}[data-aos][data-aos][data-aos-easing=ease-in],body[data-aos-easing=ease-in] [data-aos]{transition-timing-function:ease-in}[data-aos][data-aos][data-aos-easing=ease-out],body[data-aos-easing=ease-out] [data-aos]{transition-timing-function:ease-out}[data-aos][data-aos][data-aos-easing=ease-in-out],body[data-aos-easing=ease-in-out] [data-aos]{transition-timing-function:ease-in-out}[data-aos][data-aos][data-aos-easing=ease-in-back],body[data-aos-easing=ease-in-back] [data-aos]{transition-timing-function:cubic-bezier(.6,-.28,.735,.045)}[data-aos][data-aos][data-aos-easing=ease-out-back],body[data-aos-easing=ease-out-back] [data-aos]{transition-timing-function:cubic-bezier(.175,.885,.32,1.275)}[data-aos][data-aos][data-aos-easing=ease-in-out-back],body[data-aos-easing=ease-in-out-back] [data-aos]{transition-timing-function:cubic-bezier(.68,-.55,.265,1.55)}[data-aos][data-aos][data-aos-easing=ease-in-sine],body[data-aos-easing=ease-in-sine] [data-aos]{transition-timing-function:cubic-bezier(.47,0,.745,.715)}[data-aos][data-aos][data-aos-easing=ease-out-sine],body[data-aos-easing=ease-out-sine] [data-aos]{transition-timing-function:cubic-bezier(.39,.575,.565,1)}[data-aos][data-aos][data-aos-easing=ease-in-out-sine],body[data-aos-easing=ease-in-out-sine] [data-aos]{transition-timing-function:cubic-bezier(.445,.05,.55,.95)}[data-aos][data-aos][data-aos-easing=ease-in-quad],body[data-aos-easing=ease-in-quad] [data-aos]{transition-timing-function:cubic-bezier(.55,.085,.68,.53)}[data-aos][data-aos][data-aos-easing=ease-out-quad],body[data-aos-easing=ease-out-quad] [data-aos]{transition-timing-function:cubic-bezier(.25,.46,.45,.94)}[data-aos][data-aos][data-aos-easing=ease-in-out-quad],body[data-aos-easing=ease-in-out-quad] [data-aos]{transition-timing-function:cubic-bezier(.455,.03,.515,.955)}[data-aos][data-aos][data-aos-easing=ease-in-cubic],body[data-aos-easing=ease-in-cubic] [data-aos]{transition-timing-function:cubic-bezier(.55,.085,.68,.53)}[data-aos][data-aos][data-aos-easing=ease-out-cubic],body[data-aos-easing=ease-out-cubic] [data-aos]{transition-timing-function:cubic-bezier(.25,.46,.45,.94)}[data-aos][data-aos][data-aos-easing=ease-in-out-cubic],body[data-aos-easing=ease-in-out-cubic] [data-aos]{transition-timing-function:cubic-bezier(.455,.03,.515,.955)}[data-aos][data-aos][data-aos-easing=ease-in-quart],body[data-aos-easing=ease-in-quart] [data-aos]{transition-timing-function:cubic-bezier(.55,.085,.68,.53)}[data-aos][data-aos][data-aos-easing=ease-out-quart],body[data-aos-easing=ease-out-quart] [data-aos]{transition-timing-function:cubic-bezier(.25,.46,.45,.94)}[data-aos][data-aos][data-aos-easing=ease-in-out-quart],body[data-aos-easing=ease-in-out-quart] [data-aos]{transition-timing-function:cubic-bezier(.455,.03,.515,.955)}[data-aos^=fade][data-aos^=fade]{opacity:0;transition-property:opacity,transform}[data-aos^=fade][data-aos^=fade].aos-animate{opacity:1;transform:translateZ(0)}[data-aos=fade-up]{transform:translate3d(0,100px,0)}[data-aos=fade-down]{transform:translate3d(0,-100px,0)}[data-aos=fade-right]{transform:translate3d(-100px,0,0)}[data-aos=fade-left]{transform:translate3d(100px,0,0)}[data-aos=fade-up-right]{transform:translate3d(-100px,100px,0)}[data-aos=fade-up-left]{transform:translate3d(100px,100px,0)}[data-aos=fade-down-right]{transform:translate3d(-100px,-100px,0)}[data-aos=fade-down-left]{transform:translate3d(100px,-100px,0)}[data-aos^=zoom][data-aos^=zoom]{opacity:0;transition-property:opacity,transform}[data-aos^=zoom][data-aos^=zoom].aos-animate{opacity:1;transform:translateZ(0) scale(1)}[data-aos=zoom-in]{transform:scale(.6)}[data-aos=zoom-in-up]{transform:translate3d(0,100px,0) scale(.6)}[data-aos=zoom-in-down]{transform:translate3d(0,-100px,0) scale(.6)}[data-aos=zoom-in-right]{transform:translate3d(-100px,0,0) scale(.6)}[data-aos=zoom-in-left]{transform:translate3d(100px,0,0) scale(.6)}[data-aos=zoom-out]{transform:scale(1.2)}[data-aos=zoom-out-up]{transform:translate3d(0,100px,0) scale(1.2)}[data-aos=zoom-out-down]{transform:translate3d(0,-100px,0) scale(1.2)}[data-aos=zoom-out-right]{transform:translate3d(-100px,0,0) scale(1.2)}[data-aos=zoom-out-left]{transform:translate3d(100px,0,0) scale(1.2)}[data-aos^=slide][data-aos^=slide]{transition-property:transform}[data-aos^=slide][data-aos^=slide].aos-animate{transform:translateZ(0)}[data-aos=slide-up]{transform:translate3d(0,100%,0)}[data-aos=slide-down]{transform:translate3d(0,-100%,0)}[data-aos=slide-right]{transform:translate3d(-100%,0,0)}[data-aos=slide-left]{transform:translate3d(100%,0,0)}[data-aos^=flip][data-aos^=flip]{backface-visibility:hidden;transition-property:transform}[data-aos=flip-left]{transform:perspective(2500px) rotateY(-100deg)}[data-aos=flip-left].aos-animate{transform:perspective(2500px) rotateY(0)}[data-aos=flip-right]{transform:perspective(2500px) rotateY(100deg)}[data-aos=flip-right].aos-animate{transform:perspective(2500px) rotateY(0)}[data-aos=flip-up]{transform:perspective(2500px) rotateX(-100deg)}[data-aos=flip-up].aos-animate{transform:perspective(2500px) rotateX(0)}[data-aos=flip-down]{transform:perspective(2500px) rotateX(100deg)}[data-aos=flip-down].aos-animate{transform:perspective(2500px) rotateX(0)}
/* For content that needs to be visually hidden but stay visible for screenreaders */

.show-for-sr {
  border: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
  height: 1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
}

@media (max-width: 767px) {
  .show-for-sr--mobile {
    border: 0 !important;
    clip: rect(0, 0, 0, 0) !important;
    height: 1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
  }
}





/* ── Scoped reset — no bare root selectors ── */
.imc-home, .imc-home *, .imc-home *::before, .imc-home *::after { box-sizing: border-box; }
.imc-home {
  color: #2b2b2c; font-size: 16px; line-height: 1.6; -webkit-font-smoothing: antialiased;
}
.imc-home img { max-width: 100%; }

/* ── Shared tokens ── */
.imc-wrap { margin: 0 auto; }
.imc-accent { color: #497CAD; }
.ico {
  width: 16px; height: 16px; flex-shrink: 0; fill: none; stroke: currentColor;
  stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round;
}
.ico--arr { width: 14px; height: 14px; }
.ico--chk { width: 20px; height: 20px; color: #00A36C; }


.link-arrow {
  display: inline-flex; align-items: center; gap: 8px;
  color: #497CAD; font-weight: 600; font-size: 15px; text-decoration: none;
}
.link-arrow:hover { text-decoration: underline; }
.link-arrow--light { color: #FFFFFF; }
.btn--sm {
  display: inline-flex; align-items: center; gap: 8px; font-size: 14px; padding: 8px 16px;
}

.imc-btn-row { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; }
.imc-btn-row--center { justify-content: center; }

/* ── Section frame ── */
.imc-section { padding: 88px 24px; background: #FFFFFF; }
.imc-section--tint { background: #f9fafc; }
.imc-section--accent { background: #EEF4FA; }

.imc-head { max-width: 680px; margin: 0 0 48px; }
.imc-head--row {
  max-width: none; display: flex; align-items: flex-end;
  justify-content: space-between; gap: 24px; flex-wrap: wrap;
}
.imc-head--row .eyebrow { margin-bottom: 8px; }
.imc-h2 { font-size: 40px; font-weight: 700; letter-spacing: -.015em; color: #2b2b2c; margin: 0; }
.imc-sub { font-size: 18px; color: #6D6C6D; margin: 16px 0 0; }
.imc-head__cta { margin-top: 40px; }

/* ── 1 · HERO ── */
.cch-hero { background-image: url('https://139525743.fs1.hubspotusercontent-eu1.net/hubfs/139525743/website/cc/hero-simple.png');background-size: cover; padding: 72px 24px; }
.imc-hero { background-image: url('https://139525743.fs1.hubspotusercontent-eu1.net/hubfs/139525743/website/cc/hero-simple.png');background-size: cover; padding: 72px 24px; }

.imc-hero__grid {
  display: grid; grid-template-columns: 1.05fr .95fr; gap: 64px; align-items: center;
}
.imc-hero__title {
  font-size: 56px; font-weight: 700; line-height: 1.06;
  letter-spacing: -.018em; color: #2b2b2c; margin: 0 0 24px;
}
.imc-hero__intro { font-size: 18px; color: #6D6C6D; max-width: 520px; margin: 0 0 24px; }
.imc-checks { list-style: none; margin: 0 0 32px; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.imc-checks li { display: flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 600; color: #2b2b2c; }

/* Fair Price calculator */
.imc-fp {
  background: #FFFFFF; border: 1px solid #f0f0f0; border-radius: 16px;
  box-shadow: 0 24px 56px rgba(15,23,42,.08); padding: 32px;
}
.imc-fp__head { display: flex; align-items: center; gap: 16px; margin-bottom: 16px; }
.imc-fp__icon {
  width: 48px; height: 48px; flex-shrink: 0; display: flex; align-items: center;
  justify-content: center; background: #EEF4FA; border-radius: 8px; color: #497CAD;
}
.imc-fp__icon svg { width: 24px; height: 24px; }
.imc-fp__kicker { margin: 0; font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #2D4A7A; }
.imc-fp__tag { margin: 0; font-size: 14px; color: #6D6C6D; }
.imc-fp__lead { font-size: 14px; color: #6D6C6D; margin: 0 0 24px; }

.imc-fp__controls { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 24px; }
.imc-field { display: flex; flex-direction: column; gap: 8px; }
.imc-field label { font-size: 13px; font-weight: 700; color: #2b2b2c; }
.imc-select {
  width: 100%; height: 40px; padding: 8px 16px; font-size: 14px; color: #2b2b2c;
  background: #FFFFFF; border: 1px solid #f0f0f0; border-radius: 8px; appearance: none;
}
.imc-select:focus-visible { outline: 2px solid #497CAD; outline-offset: 2px; }
.imc-toggle { display: flex; border: 1px solid #f0f0f0; border-radius: 8px; overflow: hidden; height: 40px; }
.imc-toggle button {
  flex: 1; border: 0; background: #FFFFFF; color: #6D6C6D;
  font-size: 14px; font-weight: 600; cursor: pointer;
}
.imc-toggle button.is-active { background: #497CAD; color: #FFFFFF; }
.imc-toggle button + button { border-left: 1px solid #f0f0f0; }

.imc-fp__result {
  background: #EEF4FA; border-radius: 8px; padding: 24px;
  display: flex; flex-direction: column; gap: 8px; margin-bottom: 24px;
}
.imc-fp__resultlabel { font-size: 13px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: #2D4A7A; }
.imc-fp__amount { font-size: 40px; font-weight: 700; color: #2b2b2c; line-height: 1; letter-spacing: -.02em; }
.imc-fp__resultnote { font-size: 13px; color: #6D6C6D; }
.imc-fp__cta { display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; }
.imc-fp__fineprint { font-size: 13px; color: #929395; margin: 16px 0 0; text-align: center; }
.imc-fp__fineprint a { color: #497CAD; }

/* ── 2 · TRUST STRIP ── */
.imc-trust { background: #FFFFFF; padding: 0 24px 24px; }
.imc-trust__inner {
  border-top: 1px solid #f0f0f0; padding-top: 40px;
  display: flex; align-items: center; gap: 40px; flex-wrap: wrap; justify-content: center;
}
.imc-trust__label {
  margin: 0; font-size: 13px; font-weight: 700; letter-spacing: .08em;
  text-transform: uppercase; color: #929395;
}
.imc-trust__logos { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: 40px; flex-wrap: wrap; }
.imc-trust__logos img { display: block; width: auto; opacity: .85; }

/* ── 3 · FORMATS ── */
.imc-formats__primary { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-bottom: 24px; }
.imc-formats__secondary { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }

.imc-fcard {
  position: relative; display: block; text-decoration: none;
  background: #FFFFFF; border: 1px solid #f0f0f0; border-radius: 16px; padding: 24px;
  transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.imc-fcard:hover {
  border-color: #497CAD; box-shadow: 0 16px 40px rgba(15,23,42,.08); transform: translateY(-2px);
}
.imc-fcard--lg { padding: 32px; }
.imc-fcard__pill {
  position: absolute; top: 24px; right: 24px;
  font-size: 11px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase;
  color: #FFFFFF; background: #497CAD; border-radius: 999px; padding: 8px 16px;
}
.imc-fcard__icon {
  display: flex; align-items: center; justify-content: center;
  width: 48px; height: 48px; border-radius: 8px;
  background: #EEF4FA; color: #497CAD; margin-bottom: 16px;
}
.imc-fcard__icon svg { width: 24px; height: 24px; }
.imc-fcard__title { font-size: 20px; font-weight: 700; color: #2b2b2c; margin: 0 0 8px; letter-spacing: -.01em; }
.imc-fcard__desc { font-size: 14px; color: #6D6C6D; margin: 0 0 16px; }
.imc-fcard__link {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: 14px; font-weight: 600; color: #2D4A7A;
}
.imc-fcard__link svg { transition: transform .15s ease; }
.imc-fcard:hover .imc-fcard__link svg { transform: translateX(8px); }

/* ── 4 · STEPS ── */
.imc-steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
.imc-step { border-top: 2px solid #497CAD; padding-top: 24px; }
.imc-step__num { font-size: 14px; font-weight: 700; color: #497CAD; letter-spacing: .08em; }
.imc-step__title { font-size: 20px; font-weight: 700; color: #2b2b2c; margin: 8px 0; }
.imc-step__desc { font-size: 15px; color: #6D6C6D; margin: 0; }

/* ── 5 · UPCOMING ── */
.imc-up__list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; }
.imc-up__card {
  display: grid; grid-template-columns: 64px 1fr auto; grid-template-areas: "date body fee" "date body cta";
  gap: 8px 24px; align-items: center;
  background: #FFFFFF; border: 1px solid #f0f0f0; border-radius: 16px; padding: 24px;
  transition: box-shadow .15s ease;
}
.imc-up__card:hover { box-shadow: 0 16px 40px rgba(15,23,42,.08); }
.imc-up__date {
  grid-area: date; align-self: start; text-align: center;
  border: 1px solid #f0f0f0; border-radius: 8px; overflow: hidden; width: 64px;
}
.imc-up__month { display: block; background: #497CAD; color: #FFFFFF; font-size: 11px; font-weight: 700; letter-spacing: .08em; padding: 8px 0; }
.imc-up__day { display: block; font-size: 24px; font-weight: 700; color: #2b2b2c; line-height: 1; padding: 8px 0; }
.imc-up__body { grid-area: body; }
.imc-up__tag {
  display: inline-block; font-size: 10px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase;
  color: #2D4A7A; background: #EEF4FA; border-radius: 999px; padding: 8px; margin-bottom: 8px;
}
.imc-up__tag--adv { color: #FFFFFF; background: #497CAD; }
.imc-up__name { font-size: 16px; font-weight: 700; line-height: 1.3; margin: 0 0 8px; }
.imc-up__name a { color: #2b2b2c; text-decoration: none; }
.imc-up__name a:hover { color: #497CAD; }
.imc-up__meta { font-size: 13px; color: #6D6C6D; margin: 0; }
.imc-up__fee { grid-area: fee; text-align: right; }
.imc-up__feeamount { display: block; font-size: 20px; font-weight: 700; color: #2b2b2c; line-height: 1; }
.imc-up__feenote { display: block; font-size: 11px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: #929395; margin-top: 8px; }
.imc-up__cta { grid-area: cta; justify-self: end; align-self: end; }
.imc-up__note { font-size: 13px; color: #6D6C6D; margin: 24px 0 0; }

.imc-empty {
  text-align: center; background: #FFFFFF; border: 1px solid #f0f0f0; border-radius: 16px;
  padding: 64px 24px; display: flex; flex-direction: column; gap: 24px; align-items: center;
}
.imc-empty p { margin: 0; font-size: 15px; color: #6D6C6D; }

/* ── 6 & 8 · SPLIT ── */
.imc-split { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; }
.imc-split__text .imc-h2 { margin-bottom: 16px; }
.imc-split__text .imc-sub { margin-top: 0; margin-bottom: 24px; }
.imc-split--rev .imc-split__text { order: 2; }

.imc-credlist { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 16px; }
.imc-cred { background: #f9fafc; border: 1px solid #f0f0f0; border-radius: 16px; padding: 24px; }
.imc-cred__step { font-size: 13px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: #497CAD; }
.imc-cred__title { font-size: 18px; font-weight: 700; color: #2b2b2c; margin: 8px 0; }
.imc-cred__desc { font-size: 14px; color: #6D6C6D; margin: 0; }

.imc-bullets { list-style: none; margin: 0 0 24px; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.imc-bullets li { display: flex; align-items: flex-start; gap: 8px; font-size: 15px; color: #2b2b2c; }

.imc-stats { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 16px; }
.imc-stat {
  display: flex; align-items: baseline; gap: 24px;
  background: #f9fafc; border: 1px solid #f0f0f0; border-radius: 16px; padding: 24px 32px;
}
.imc-stat__num { font-size: 48px; font-weight: 700; color: #497CAD; line-height: 1; letter-spacing: -.02em; }
.imc-stat__label { font-size: 15px; font-weight: 600; color: #2b2b2c; }

/* ── 7 · TRAINERS ── */
.imc-trainers { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.imc-tcard { background: #FFFFFF; border: 1px solid #f0f0f0; border-radius: 16px; padding: 32px; }
.imc-tcard__icon {
  display: flex; align-items: center; justify-content: center;
  width: 48px; height: 48px; border-radius: 8px; background: #EEF4FA; color: #497CAD; margin-bottom: 16px;
}
.imc-tcard__icon svg { width: 24px; height: 24px; }
.imc-tcard__title { font-size: 18px; font-weight: 700; color: #2b2b2c; margin: 0 0 8px; }
.imc-tcard__desc { font-size: 14px; color: #6D6C6D; margin: 0; }

/* ── 9 · FAIR PRICING STEPS ── */
.imc-fpsteps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.imc-fpstep { background: #FFFFFF; border: 1px solid #f0f0f0; border-radius: 16px; padding: 32px; }
.imc-fpstep__num {
  display: flex; align-items: center; justify-content: center;
  width: 40px; height: 40px; border-radius: 999px;
  background: #497CAD; color: #FFFFFF; font-size: 16px; font-weight: 700; margin-bottom: 16px;
}
.imc-fpstep__title { font-size: 18px; font-weight: 700; color: #2b2b2c; margin: 0 0 8px; }
.imc-fpstep__desc { font-size: 14px; color: #6D6C6D; margin: 0; }

/* ── 10 · QUOTES ── */
.imc-quotes { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.imc-quote {
  margin: 0; background: #FFFFFF; border: 1px solid #f0f0f0; border-radius: 16px;
  padding: 32px; display: flex; flex-direction: column;
}
.imc-quote__stars { color: #E1A92B; font-size: 16px; letter-spacing: .12em; }
.imc-quote__text { font-size: 16px; color: #2b2b2c; line-height: 1.55; margin: 16px 0 24px; }
.imc-quote__by { margin-top: auto; display: flex; flex-direction: column; gap: 8px; }
.imc-quote__name { font-size: 14px; font-weight: 700; color: #2b2b2c; }
.imc-quote__role { font-size: 13px; color: #6D6C6D; }

/* ── 11 · FAQ ── */
.imc-faq { max-width: 880px; }
.imc-faq__list { display: flex; flex-direction: column; }
.imc-faq__item { border-bottom: 1px solid #f0f0f0; }
.imc-faq__item:first-child { border-top: 1px solid #f0f0f0; }
.imc-faq__q {
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
  padding: 24px 0; cursor: pointer; list-style: none;
  font-size: 18px; font-weight: 600; color: #2b2b2c;
}
.imc-faq__q::-webkit-details-marker { display: none; }
.imc-faq__icon { position: relative; width: 16px; height: 16px; flex-shrink: 0; }
.imc-faq__icon::before, .imc-faq__icon::after {
  content: ""; position: absolute; background: #497CAD; border-radius: 8px;
}
.imc-faq__icon::before { top: 7px; left: 0; width: 16px; height: 2px; }
.imc-faq__icon::after { top: 0; left: 7px; width: 2px; height: 16px; transition: transform .2s ease; }
.imc-faq__item[open] .imc-faq__icon::after { transform: rotate(90deg); }
.imc-faq__a { padding: 0 0 24px; }
.imc-faq__a p { margin: 0; font-size: 15px; color: #6D6C6D; }

/* ── 12 · CTA ── */
.imc-cta { padding: 88px 24px; }
.imc-cta__inner { text-align: center; max-width: 680px; }
.imc-cta__title { font-size: 36px; font-weight: 700; color: #FFFFFF; letter-spacing: -.015em; margin: 0 0 16px; }
.imc-cta__text { font-size: 16px; color: #e6e9f0; margin: 0 0 32px; }

/* ── RESPONSIVE ── */
@media (max-width: 980px) {
  .imc-hero__grid { grid-template-columns: 1fr; gap: 40px; }
  .imc-hero__title { font-size: 44px; }
  .imc-h2 { font-size: 32px; }
  .imc-formats__secondary,
  .imc-steps,
  .imc-trainers,
  .imc-fpsteps,
  .imc-quotes { grid-template-columns: 1fr 1fr; }
  .imc-split { grid-template-columns: 1fr; gap: 40px; }
  .imc-split--rev .imc-split__text { order: 0; }
  .imc-up__list { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .imc-section, .imc-hero, .imc-cta { padding: 56px 16px; }
  .imc-trust { padding: 0 16px 16px; }
  .imc-hero__title { font-size: 34px; }
  .imc-h2 { font-size: 28px; }
  .imc-cta__title { font-size: 26px; }
  .imc-fp { padding: 24px; }
  .imc-fp__controls,
  .imc-formats__primary,
  .imc-formats__secondary,
  .imc-steps,
  .imc-trainers,
  .imc-fpsteps,
  .imc-quotes { grid-template-columns: 1fr; }
  .imc-fcard--lg { padding: 24px; }
  .imc-fcard__pill { position: static; display: inline-block; margin-bottom: 16px; }
  .imc-up__card {
    grid-template-columns: 64px 1fr; grid-template-areas: "date body" "fee fee" "cta cta"; gap: 16px;
  }
  .imc-up__fee { text-align: left; }
  .imc-up__cta { justify-self: stretch; }
  .imc-up__cta.btn { justify-content: center; }
  .imc-stat { padding: 24px; }
  .imc-stat__num { font-size: 40px; }
}



/* ──────────────────────────────────────────────────────────────
* IMC · Professional Mediation Course — page styles
* Built on CONSENSUS Design System tokens.
* ────────────────────────────────────────────────────────────── */

.imc-course {
  --p-blue:        #497CAD;
  --p-blue-deep:   #2D4A7A;
  --p-blue-deep-2: #1f3656;
  --p-blue-soft:   #4872a3;
  --p-gold:        #EBDC76;
  --p-gold-deep:   #c9b15a;
  --p-coral:       #E84156;
  --p-coral-soft:  #f59c8a;
  --p-green:       #5C987B;
  --p-green-deep:  #00666B;
  --p-emerald:     #00A36C;
  --p-black:       #1a1a1b;
  --p-ink:         #2b2b2c;
  --p-gray:        #6D6C6D;
  --p-gray-2:      #929395;
  --p-gray-3:      #c4c8cd;
  --p-bg:          #f7f6f1;
  --p-bg-warm:     #efece3;
  --p-bg-cool:     #f6f8f9;
  --p-border:      #ece9dd;
  --p-border-2:    #e6e3d5;
  --p-surface:     #ffffff;

  --p-accent:      var(--p-blue-deep);
}

.imc-course * { box-sizing: border-box; }

.imc-course { scroll-padding-top: 80px; }

.imc-course {
  margin: 0;
  /*   background: var(--p-bg); */
  color: var(--p-ink);
  font-family: 'Open Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
  font-size: 16px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.imc-course img { max-width: 100%; display: block; }

.imc-course a { color: var(--p-blue); text-decoration: none; }

/* ── Layout helpers ────────────────────────────────────── */
.imc-course .wrap { max-width: 80rem; margin: 0 auto; }
@media (min-width: 1500px) {
  .imc-course .wrap{
    max-width: 90rem;
    margin: 0 auto;
    width: 100%;
  }
}
.imc-course .wrap-wide { max-width: 1440px; margin: 0 auto; padding: 0 40px; }
.imc-course .section { padding: 96px 0; position: relative; }
.imc-course .section--tight { padding: 72px 0; }
.imc-course .section--cool { background: var(--p-bg-cool); }
.imc-course .section--warm { background: var(--p-bg-warm); }
/* .imc-course .section { background: var(--p-bg-warm); } */
.imc-course .section--white { background: var(--p-surface); }
.imc-course .section--dark { background: var(--p-blue-deep-2); color: #fff; }

/* ── Type ──────────────────────────────────────────────── */
.imc-course .eyebrow {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--p-blue);
  margin: 0;
}
.imc-course .eyebrow--gray { color: var(--p-gray-2); }
.imc-course .eyebrow--gold { color: var(--p-gold-deep); }
.imc-course .eyebrow--white { color: rgba(255,255,255,0.75); }
.imc-course .eyebrow .dot { display: inline-block; width: 5px; height: 5px; border-radius: 50%; background: currentColor; margin: 0 10px 2px; vertical-align: middle; }



.imc-course .h-display {
  font-weight: 700;
  font-size: clamp(40px, 5.4vw, 72px);
  line-height: 1.02;
  letter-spacing: -0.02em;
  margin: 0;
  color: var(--p-black);
  text-wrap: balance;
}
.imc-course .h-display em { font-style: normal; font-weight: 500; color: var(--p-blue); }

.imc-course .h-section {

  font-weight: 700;
  font-size: clamp(34px, 4vw, 52px);
  line-height: 1.05;
  letter-spacing: -0.018em;
  color: var(--p-black);
  margin: 0;
  text-wrap: balance;
}
.imc-course .h-section em { font-style: normal; font-weight: 500; color: var(--p-blue); }

.imc-course .h-card {

  font-weight: 700;
  font-size: 28px;
  line-height: 1.1;
  letter-spacing: -0.015em;
  color: var(--p-black);
  margin: 0;
}

.imc-course .lede { font-size: 19px; line-height: 1.55; color: var(--p-gray); margin: 0; max-width: 580px; }
.imc-course .body-lg { font-size: 17px; line-height: 1.65; color: var(--p-gray); margin: 0; }
.imc-course .muted { color: var(--p-gray); }

/* ── Buttons ───────────────────────────────────────────── */


/* ── Header ────────────────────────────────────────────── */
.imc-course .site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(255,255,255,0.94);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border-bottom: 1px solid var(--p-border);
}
.imc-course .site-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  padding: 14px 40px;
  max-width: 1440px;
  margin: 0 auto;
}
.imc-course .site-header__brand img { height: 36px; }
.imc-course .site-header__nav { display: flex; gap: 4px; align-items: center; }
.imc-course .site-header__nav a {
  padding: 12px 14px;
  font-size: 14.5px;
  font-weight: 500;
  color: var(--p-ink);
  border-bottom: 2px solid transparent;
  transition: border-color 200ms ease, color 200ms ease;
}
.imc-course .site-header__nav a:hover { color: var(--p-blue); border-color: var(--p-blue); }
.imc-course .site-header__cta { display: flex; gap: 12px; align-items: center; }
.imc-course .site-header__cta .btn { padding: 10px 18px; font-size: 14px; }

/* ── Hero ──────────────────────────────────────────────── */
.imc-course .hero { position: relative; overflow: hidden; }
.imc-course .hero__bg {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, var(--p-bg) 0%, var(--p-bg-warm) 100%);
  z-index: 0;
}
.imc-course .hero__inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  gap: 56px;
  align-items: center;
  padding: 80px 0 100px;
}
.imc-course .hero__copy { max-width: 640px; }
.imc-course .hero__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  padding: 8px 16px;
  background: rgba(73,124,173,0.10);
  border-radius: 999px;
  margin-bottom: 28px;
}
.imc-course .hero__eyebrow .badge {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--p-blue-deep);
}
.imc-course .hero__eyebrow .meta {
  font-size: 12.5px;
  color: var(--p-gray);
  font-weight: 600;
  letter-spacing: 0.02em;
}
.imc-course .hero__title { margin-bottom: 28px; }
.imc-course .hero__lede { font-size: 20px; line-height: 1.5; color: var(--p-gray); max-width: 540px; margin: 0 0 36px; }
.imc-course .hero__cta { display: flex; gap: 14px; flex-wrap: wrap; margin-bottom: 44px; }
.imc-course .hero__trust {
  display: flex;
  gap: 36px;
  flex-wrap: wrap;
  padding-top: 28px;
  border-top: 1px solid var(--p-border-2);
}
.imc-course .hero__trust-item { display: flex; flex-direction: column; gap: 2px; }
.imc-course .hero__trust-item .num {

  font-size: 32px;
  font-weight: 700;
  color: var(--p-blue-deep);
  line-height: 1;
  letter-spacing: -0.02em;
}
.imc-course .hero__trust-item .num em { font-style: normal; font-weight: 500; color: var(--p-blue); }
.imc-course .hero__trust-item .lbl { font-size: 13px; color: var(--p-gray); letter-spacing: 0.04em; }

/* Hero card (registration) */
.imc-course .reg-card {
  background: var(--p-surface);
  border-radius: 18px;
  border: 1px solid var(--p-border);
  box-shadow: 0 30px 60px rgba(31,54,86,0.12), 0 6px 16px rgba(15,23,42,0.04);
  overflow: hidden;
  position: relative;
}
.imc-course .reg-card__visual {
  position: relative;
  height: 220px;
  overflow: hidden;
  background: linear-gradient(135deg, #aac1d5 0%, #d0c9a5 60%, #e8b8a8 100%);
}
.imc-course .reg-card__visual img { width: 100%; height: 100%; object-fit: cover; }
.imc-course .reg-card__visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(45,74,122,0.05) 40%, rgba(45,74,122,0.50) 100%);
}
.imc-course .reg-card__visual-tag {
  position: absolute;
  top: 16px;
  left: 16px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 11px;
  background: rgba(255,255,255,0.92);
  backdrop-filter: blur(4px);
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--p-blue-deep);
  z-index: 1;
}
.imc-course .reg-card__visual-tag .pulse {
  width: 7px; height: 7px; border-radius: 50%; background: var(--green);
  box-shadow: 0 0 0 0 rgba(92,152,123,0.6);
  animation: regPulse 2s infinite;
}

@keyframes regPulse {
  0% { box-shadow: 0 0 0 0 rgba(92,152,123,0.55); }
  70% { box-shadow: 0 0 0 8px rgba(92,152,123,0); }
  100% { box-shadow: 0 0 0 0 rgba(92,152,123,0); }
}
.imc-course .reg-card__body { padding: 28px 30px 26px; }
.imc-course .reg-card__kicker {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--p-blue);
  margin-bottom: 6px;
}
.imc-course .reg-card__title {

  font-weight: 700;
  font-size: 28px;
  line-height: 1.08;
  color: var(--p-black);
  margin: 0 0 18px;
  letter-spacing: -0.015em;
}
.imc-course .reg-card__title em { font-style: normal; font-weight: 500; color: var(--p-blue); }
.imc-course .reg-card__meta {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px 24px;
  margin: 0 0 22px;
  padding: 18px 0 0;
  border-top: 1px solid var(--p-border);
}
.imc-course .reg-card__meta dt {
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--p-gray-2);
  font-weight: 600;
  margin-bottom: 2px;
}
.imc-course .reg-card__meta dd {
  margin: 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--p-ink);
}
.imc-course .reg-card__cta { display: flex; gap: 10px; flex-wrap: wrap; }
.imc-course .reg-card__cta .btn { flex: 1; min-width: 0; justify-content: center; padding: 13px 18px; font-size: 14px; }
.imc-course .reg-card__footer {
  background: var(--p-bg);
  color: #fff;
  padding: 14px 30px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.imc-course .reg-card__footer-label { font-size: 13px; letter-spacing: 0.06em; opacity: 0.92; color: #6d6c6d;}

.imc-course .reg-card__footer-value {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--p-gray);
  display: flex;
  align-items: end;
  gap: 4px;
}
.imc-course .reg-card__footer:hover span {
  color: var(--dark-blue);
  transition: all 350ms ease;
}
.imc-course .reg-card__footer-value span {
  opacity: 0.6;
  font-size: 21px;
}
.imc-course .reg-card__footer-value:hover span {
  opacity: 1;
  transition: all 350ms ease;
}
.imc-course .reg-card__footer-value:hover {
  color: var(--dark-blue);
  transition: all 350ms ease;
}

/* ── Credentials marquee ───────────────────────────────── */
.imc-course .credentials {
  background: var(--p-bg-warm);
  border-top: 1px solid var(--p-border);
  border-bottom: 1px solid var(--p-border);
  padding: 32px 24px;
}
.imc-course .credentials__inner {
  display: flex;
  align-items: center;
  gap: 48px;
  flex-wrap: wrap;
  justify-content: space-between;
}
.imc-course .credentials__label {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--p-gray);
}
.imc-course .credentials__marks {
  display: flex;
  gap: 52px;
  align-items: center;
  flex-wrap: wrap;
  width: 100%;
  justify-content: space-between;
}
.imc-course .credentials__mark {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
}
.imc-course .credentials__mark .acronym {

  font-size: 26px;
  font-weight: 700;
  color: var(--p-blue-deep);
  letter-spacing: -0.01em;
  line-height: 1;
}
.imc-course .credentials__mark .full {
  font-size: 11px;
  letter-spacing: 0.06em;
  color: var(--p-gray);
  font-weight: 500;
}

/* ── Intro section ─────────────────────────────────────── */
.imc-course .intro {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: 80px;
  align-items: start;
}
.imc-course .intro__head .eyebrow { margin-bottom: 20px; }
.imc-course .intro__body { font-size: 18px; line-height: 1.7; color: var(--p-gray); }
.imc-course .intro__body p { margin: 0 0 20px; }
.imc-course .intro__body p:last-child { margin: 0; }
.imc-course .intro__body strong { color: var(--p-ink); font-weight: 600; }

/* ── Schedule card ─────────────────────────────────────── */
.imc-course .schedule {
  display: grid;
  grid-template-columns: 1fr 1.4fr;
  gap: 48px;
  align-items: start;
}
.imc-course .schedule__head .eyebrow { margin-bottom: 16px; }
.imc-course .schedule__title { margin-bottom: 18px; }
.imc-course .schedule__card {
  background: var(--p-surface);
  border: 1px solid var(--p-border);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 18px 40px rgba(15,23,42,0.05);
}
.imc-course .schedule__card-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 22px 28px;
  background: var(--p-blue-deep-2);
  color: #fff;
}
.imc-course .schedule__card-head .pill {
  background: var(--p-gold);
  color: var(--p-blue-deep-2);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  padding: 6px 11px;
  border-radius: 999px;
}
.imc-course .schedule__card-head .term {

  font-size: 20px;
  font-weight: 600;
  letter-spacing: -0.01em;
}
.imc-course .schedule__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}
.imc-course .schedule__cell {
  padding: 22px 24px;
  border-right: 1px solid var(--p-border);
  border-bottom: 1px solid var(--p-border);
}
.imc-course .schedule__cell:nth-child(4n) { border-right: none; }
.imc-course .schedule__cell:nth-last-child(-n+4) { border-bottom: none; }
.imc-course .schedule__cell dt {
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--p-gray-2);
  font-weight: 600;
  margin-bottom: 6px;
}
.imc-course .schedule__cell dd {
  margin: 0;

  font-size: 22px;
  font-weight: 600;
  color: var(--p-black);
  letter-spacing: -0.015em;
  line-height: 1.1;
}
.imc-course .schedule__cell dd .small {
  font-family: 'Open Sans', sans-serif;
  font-size: 13px;
  font-weight: 500;
  color: var(--p-gray);
  letter-spacing: 0;
  display: block;
  margin-top: 2px;
}
.imc-course .schedule__foot {
  padding: 20px 28px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #fafaf6;
}
.imc-course .schedule__foot .seats { display: flex; align-items: center; gap: 10px; font-size: 14px; color: var(--p-gray); }
.imc-course .schedule__foot .seats .dot { width: 8px; height: 8px; border-radius: 50%; background: var(--p-emerald); }

/* ── Format & Inclusions ───────────────────────────────── */
.imc-course .format-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  margin-top: 56px;
}
.imc-course .format-card {
  background: var(--p-surface);
  border: 1px solid var(--p-border);
  border-radius: 18px;
  padding: 36px 36px 32px;
  display: flex;
  flex-direction: column;
}
.imc-course .format-card--dark {
  background: linear-gradient(155deg, var(--p-blue-deep) 0%, var(--p-blue-deep-2) 100%);
  color: #fff;
  border-color: transparent;
  position: relative;
  overflow: hidden;
}
.imc-course .format-card--dark::before {
  content:"";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255,255,255,0.05) 1px, transparent 1px);
  background-size: 4px 4px;
  opacity: 0.4;
  pointer-events: none;
}
.imc-course .format-card__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 22px;
}
.imc-course .format-card__head .eyebrow { color: var(--p-blue); }
.imc-course .format-card--dark .format-card__head .eyebrow { color: var(--p-gold); }
.imc-course .format-card__head .meta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 600;
  color: var(--p-gray);
}
.imc-course .format-card--dark .format-card__head .meta { color: rgba(255,255,255,0.75); }
.imc-course .format-card__title {

  font-weight: 700;
  font-size: 30px;
  line-height: 1.08;
  letter-spacing: -0.018em;
  color: inherit;
  margin: 0 0 14px;
}
.imc-course .format-card__lede {
  font-size: 15.5px;
  line-height: 1.6;
  color: var(--p-gray);
  margin: 0 0 24px;
}
.imc-course .format-card--dark .format-card__lede { color: rgba(255,255,255,0.82); }

.imc-course .format-stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  padding: 22px 0;
  margin-bottom: 22px;
  border-top: 1px solid rgba(255,255,255,0.18);
  border-bottom: 1px solid rgba(255,255,255,0.18);
}
.imc-course .format-card:not(.format-card--dark) .format-stats {
  border-color: var(--p-border);
}
.imc-course .format-stat .num {

  font-size: 32px;
  font-weight: 700;
  color: inherit;
  letter-spacing: -0.02em;
  line-height: 1;
}
.imc-course .format-card:not(.format-card--dark) .format-stat .num { color: var(--p-blue-deep); }
.imc-course .format-stat .lbl { font-size: 13px; letter-spacing: 0.04em; color: rgba(255,255,255,0.7); margin-top: 6px; }
.imc-course .format-card:not(.format-card--dark) .format-stat .lbl { color: var(--p-gray); }

.imc-course .format-bullets {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 11px;
}
.imc-course .format-bullets li {
  position: relative;
  padding-left: 28px;
  font-size: 14.5px;
  line-height: 1.5;
  color: inherit;
}
.imc-course .format-card--dark .format-bullets li { color: rgba(255,255,255,0.92); }
.imc-course .format-card:not(.format-card--dark) .format-bullets li { color: var(--p-ink); }
.imc-course .format-bullets li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 5px;
  width: 16px;
  height: 16px;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23497cad' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
}
.imc-course .format-card--dark .format-bullets li::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23EBDC76' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
}
@media (max-width: 900px) {
  .imc-course #format .intro,
  .imc-course .included-grid {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  .imc-course .format-grid {
    grid-template-columns: 1fr;
    gap: 22px;
    margin-top: 36px;
  }

  .imc-course .format-card {
    padding: 28px 24px;
  }

  .imc-course .included-grid {
    margin-top: 56px !important;
  }

  .imc-course .included-grid .format-bullets {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
}

@media (max-width: 520px) {
  .imc-course .format-card__head {
    align-items: flex-start;
    gap: 12px;
    flex-direction: column;
  }

  .imc-course .format-card__title {
    font-size: 25px;
  }

  .imc-course .format-card__lede {
    font-size: 15px;
  }

  .imc-course .format-stats {
    grid-template-columns: 1fr;
    gap: 14px;
    padding: 18px 0;
  }

  .imc-course .format-stat .num {
    font-size: 28px;
  }

  .imc-course .format-bullets li {
    font-size: 14px;
    padding-left: 25px;
  }

  .imc-course .included-grid .h-section {
    font-size: 30px !important;
  }
}
/* ── Curriculum ────────────────────────────────────────── */
.imc-course .curriculum {
  display: grid;
  grid-template-columns: 1fr 1.6fr;
  gap: 72px;
  align-items: start;
}
.imc-course .curriculum__head { position: sticky; top: 110px; }
.imc-course .curriculum__head .eyebrow { margin-bottom: 18px; }
.imc-course .curriculum__head .lede { margin-top: 22px; font-size: 17px; }
.imc-course .curriculum__head .stats {
  margin-top: 32px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px 24px;
  padding-top: 24px;
  border-top: 1px solid var(--p-border-2);
}
.imc-course .curriculum__head .stats > div { display: flex; flex-direction: column; gap: 2px; }
.imc-course .curriculum__head .stats .num {

  font-size: 28px;
  font-weight: 700;
  color: var(--p-blue-deep);
  letter-spacing: -0.018em;
  line-height: 1;
}
.imc-course .curriculum__head .stats .lbl { font-size: 12.5px; color: var(--p-gray); letter-spacing: 0.02em; }

.imc-course .phase {
  border-top: 1px solid var(--p-border-2);
  padding: 28px 0;
}
.imc-course .phase:first-of-type { border-top: 1px solid var(--p-border-2); padding-top: 0; border: 0; }
.imc-course .phase:first-of-type { padding-top: 0; }
.imc-course .phase__head {
  display: grid;
  grid-template-columns: 56px 1fr auto;
  gap: 20px;
  align-items: center;
  cursor: pointer;
  background: none;
  border: 0;
  width: 100%;
  padding: 14px 0;
  text-align: left;
  font-family: inherit;
  color: inherit;
}
.imc-course .phase__num {

  font-size: 38px;
  font-weight: 600;
  font-style: normal;
  color: var(--p-blue);
  line-height: 1;
  font-family: 'GT Super Display';
  letter-spacing: -0.02em;
}
.imc-course .phase__title {

  font-weight: 600;
  font-size: 24px;
  letter-spacing: -0.015em;
  color: var(--p-black);
  line-height: 1.15;
  margin: 0;
}
.imc-course .phase__title .sub {
  display: block;
  font-family: 'Open Sans', sans-serif;
  font-size: 13px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--p-gray);
  font-weight: 600;
  margin-top: 4px;
}
.imc-course .phase__toggle {
  width: 36px; height: 36px;
  border-radius: 999px;
  border: 1px solid var(--p-border-2);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background 200ms ease, border-color 200ms ease, transform 250ms ease;
  background: var(--p-surface);
}
.imc-course .phase__toggle .icon {
  font-size: 20px;
  color: var(--p-ink);
  transition: transform 300ms ease;
}
.imc-course .phase[open] .phase__toggle { background: var(--p-ink); border-color: var(--p-ink); }
.imc-course .phase[open] .phase__toggle .icon { color: #fff; transform: rotate(45deg); }
.imc-course .phase__body {
  padding: 8px 0 14px 76px;
}
.imc-course .phase__list { list-style: none; padding: 0; margin: 0; display: grid; gap: 14px; }
.imc-course .phase__list li {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 16px;
  align-items: baseline;
  font-size: 15.5px;
  color: var(--p-ink);
  line-height: 1.4;
  padding-bottom: 14px;
  border-bottom: 1px dashed var(--p-border-2);
}
.imc-course .phase__list li:last-child { border-bottom: 0; padding-bottom: 0; }
.imc-course .phase__list .session-num {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--p-blue);
}
.imc-course .phase__list .session-name { color: var(--p-ink); }
.imc-course .phase__list .qa { color: var(--p-coral); }

/* ── Pillars (What You'll Learn) ───────────────────────── */
.imc-course .pillars {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  margin-top: 56px;
}
.imc-course .pillar {
  background: var(--p-surface);
  border: 1px solid var(--p-border);
  border-radius: 16px;
  padding: 32px 28px;
  display: flex;
  flex-direction: column;
}
.imc-course .pillar__num {

  font-style: normal;
  font-size: 30px;
  font-weight: 500;
  color: var(--p-blue);
  letter-spacing: -0.02em;
  margin-bottom: 18px;
}
.imc-course .pillar__title {

  font-weight: 700;
  font-size: 22px;
  line-height: 1.15;
  letter-spacing: -0.015em;
  margin: 0 0 14px;
  color: var(--p-black);
}
.imc-course .pillar__body { font-size: 14.5px; line-height: 1.6; color: var(--p-gray); margin: 0; }

/* ── Pathway ───────────────────────────────────────────── */
.imc-course .pathway { position: relative; padding-top: 24px; }
.imc-course .pathway__head { max-width: 720px; margin: 0 auto 64px; text-align: center; }
.imc-course .pathway__head .eyebrow { display: inline-block; }
.imc-course .pathway__head .lede { margin: 18px auto 0; }
.imc-course .pathway__steps {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  position: relative;
}
.imc-course .pathway__steps::before {
  content: "";
  position: absolute;
  top: 38px;
  left: 16%;
  right: 16%;
  height: 2px;
  background: repeating-linear-gradient(to right, var(--p-blue) 0 6px, transparent 6px 14px);
  opacity: 0.5;
}
.imc-course .pathway__step { padding: 0 28px; text-align: center; position: relative; }
.imc-course .pathway__step-num {
  width: 76px; height: 76px;
  margin: 0 auto 24px;
  border-radius: 50%;
  background: var(--p-surface);
  border: 2px solid var(--p-blue);
  display: inline-flex;
  align-items: center;
  justify-content: center;

  font-size: 30px;
  font-weight: 700;
  color: var(--p-blue);
  position: relative;
  z-index: 1;
}
.imc-course .pathway__step-num.is-recommended {
  background: var(--blue);
  color: #fff;
}
.imc-course .pathway__head .eyebrow::before {
  display: none;
}
.imc-course .pathway__step-kicker {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--p-gray);
  margin-bottom: 10px;
}
.imc-course .pathway__step-title {

  font-weight: 700;
  font-size: 22px;
  line-height: 1.15;
  color: var(--p-black);
  margin: 0 0 14px;
  letter-spacing: -0.015em;
}
.imc-course .pathway__step-body { font-size: 14.5px; line-height: 1.6; color: var(--p-gray); max-width: 320px; margin: 0 auto; }

/* ── Why us ────────────────────────────────────────────── */
.imc-course .why-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  margin-top: 48px;
  background: var(--p-surface);
  border: 1px solid var(--p-border);
  border-radius: 18px;
  overflow: hidden;
}
.imc-course .why-cell {
  padding: 36px 36px 32px;
  border-right: 1px solid var(--p-border);
  border-bottom: 1px solid var(--p-border);
}
.imc-course .why-cell:nth-child(2n) { border-right: 0; }
.imc-course .why-cell:nth-last-child(-n+2) { border-bottom: 0; }
.imc-course .why-cell__icon {
  width: 48px; height: 48px;
  border-radius: 12px;
  background: rgba(73,124,173,0.10);
  color: var(--p-blue-deep);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
}
.imc-course .why-cell__icon .icon { font-size: 26px; }
.imc-course .why-cell__title {

  font-weight: 700;
  font-size: 24px;
  letter-spacing: -0.015em;
  color: var(--p-black);
  margin: 0 0 10px;
}
.imc-course .why-cell__body { font-size: 15px; line-height: 1.6; color: var(--p-gray); margin: 0; }

/* ── Audience ──────────────────────────────────────────── */
.imc-course .audience-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-top: 56px;
}
.imc-course .audience-card {
  background: var(--p-surface);
  border: 1px solid var(--p-border);
  border-radius: 14px;
  padding: 28px 26px;
  position: relative;
  overflow: hidden;
  transition: transform 280ms ease, box-shadow 280ms ease, border-color 280ms ease;
}
.imc-course .audience-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 44px rgba(15,23,42,0.06);
  border-color: var(--p-blue);
}
.imc-course .audience-card__tag {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--p-blue);
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.imc-course .audience-card__tag .ico {
  width: 26px; height: 26px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(73,124,173,0.12);
}
.imc-course .audience-card__tag .ico .icon { font-size: 16px; color: var(--p-blue-deep); }
.imc-course .audience-card__title {

  font-weight: 700;
  font-size: 22px;
  line-height: 1.15;
  letter-spacing: -0.015em;
  color: var(--p-black);
  margin: 0 0 10px;
}
.imc-course .audience-card__body { font-size: 14.5px; line-height: 1.55; color: var(--p-gray); margin: 0; }

/* ── Pricing ───────────────────────────────────────────── */
.imc-course .pricing {
  display: grid;
  grid-template-columns: 0.95fr 1.05fr;
  gap: 64px;
  align-items: center;
}
.imc-course .pricing__visual {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  aspect-ratio: 4/5;
  background: linear-gradient(135deg, var(--p-blue-deep) 0%, var(--p-blue-deep-2) 100%);
}
.imc-course .pricing__visual img { width: 100%; height: 100%; object-fit: cover; opacity: 0.95; }
.imc-course .pricing__chip {
  position: absolute;
  bottom: 22px;
  left: 22px;
  right: 22px;
  background: rgba(255,255,255,0.95);
  backdrop-filter: blur(6px);
  padding: 18px 22px;
  border-radius: 14px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 16px;
  align-items: center;
}
.imc-course .pricing__chip .country {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--p-blue);
}
.imc-course .pricing__chip .name {  font-size: 18px; font-weight: 600; color: var(--p-black); }
.imc-course .pricing__chip .price {

  font-size: 26px;
  font-weight: 700;
  color: var(--p-blue-deep);
  letter-spacing: -0.018em;
}
.imc-course .pricing__chip .price em { font-style: normal; font-weight: 500; color: var(--p-blue); }

.imc-course .pricing__copy .eyebrow { margin-bottom: 18px; }
.imc-course .pricing__copy h2 { margin-bottom: 22px; }
.imc-course .pricing__copy .lede { margin-bottom: 28px; max-width: 540px; }
.imc-course .pricing__steps { list-style: none; padding: 0; margin: 0 0 36px; }
.imc-course .pricing__steps li {
  display: grid;
  grid-template-columns: 36px 1fr;
  gap: 18px;
  padding: 18px 0;
  border-top: 1px solid var(--p-border-2);
}
.imc-course .pricing__steps li:last-child { border-bottom: 1px solid var(--p-border-2); }
.imc-course .pricing__steps .step-num {

  font-size: 22px;
  font-style: normal;
  font-weight: 500;
  color: var(--p-blue);
  letter-spacing: -0.02em;
}
.imc-course .pricing__steps .step-title {
  font-weight: 700;
  font-size: 16px;
  color: var(--p-black);
  margin: 0 0 4px;
}
.imc-course .pricing__steps .step-body { font-size: 14.5px; color: var(--p-gray); line-height: 1.55; margin: 0; }

.imc-course .pricing__guarantee {
  background: rgba(73,124,173,0.06);
  border-left: 3px solid var(--p-blue);
  padding: 18px 22px;
  border-radius: 0 12px 12px 0;
  margin-bottom: 32px;
}
.imc-course .pricing__guarantee .head {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--p-blue-deep);
  margin-bottom: 10px;
}
.imc-course .pricing__guarantee ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 6px;
}
.imc-course .pricing__guarantee li {
  position: relative;
  padding-left: 24px;
  font-size: 14px;
  color: var(--p-ink);
}
.imc-course .pricing__guarantee li::before {
  content: "";
  position: absolute;
  left: 0; top: 4px;
  width: 14px; height: 14px;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300A36C' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
}

/* ── Trainers ──────────────────────────────────────────── */
.imc-course .trainers {
  display: grid;
  grid-template-columns: 1fr 1.4fr;
  gap: 64px;
  align-items: center;
}
.imc-course .trainers__copy .eyebrow { margin-bottom: 18px; }
.imc-course .trainers__copy h2 { margin-bottom: 24px; }
.imc-course .trainers__copy .lede { margin-bottom: 32px; }
.imc-course .trainers__points { list-style: none; padding: 0; margin: 0 0 32px; display: grid; gap: 14px; }
.imc-course .trainers__points li {
  position: relative;
  padding-left: 28px;
  font-size: 15.5px;
  line-height: 1.55;
  color: var(--p-ink);
}
.imc-course .trainers__points li::before {
  content: "";
  position: absolute;
  left: 0; top: 5px;
  width: 18px; height: 18px;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23497CAD' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
}
.imc-course .trainers__visual {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  aspect-ratio: 5/4;
}
.imc-course .trainers__visual img { width: 100%; height: 100%; object-fit: cover; }
.imc-course .trainers__overlay {
  position: absolute;
  bottom: 22px;
  left: 22px;
  display: flex;
  align-items: center;
  gap: 14px;
  background: rgba(255,255,255,0.95);
  backdrop-filter: blur(6px);
  padding: 12px 18px 12px 12px;
  border-radius: 999px;
}
.imc-course .trainers__overlay .avatars { display: flex; }
.imc-course .trainers__overlay .avatars span {
  width: 32px; height: 32px;
  border-radius: 50%;
  border: 2px solid #fff;
  margin-left: -8px;
  background: linear-gradient(135deg, #a8c3d9 0%, #d2b8a0 100%);
}
.imc-course .trainers__overlay .avatars span:first-child { margin-left: 0; }
.imc-course .trainers__overlay .avatars span:nth-child(2) { background: linear-gradient(135deg, #d2b8a0 0%, #e8b8a8 100%); }
.imc-course .trainers__overlay .avatars span:nth-child(3) { background: linear-gradient(135deg, #c1d3a8 0%, #a8c3d9 100%); }
.imc-course .trainers__overlay .avatars span:nth-child(4) { background: linear-gradient(135deg, #ebdc76 0%, #d2b8a0 100%); }
.imc-course .trainers__overlay .text {
  font-size: 13.5px;
  color: var(--p-ink);
  font-weight: 600;
}
.imc-course .trainers__overlay .text em { font-style: normal; color: var(--p-blue); }

/* ── Final CTA ─────────────────────────────────────────── */
.imc-course .final-cta {
  background: var(--p-blue-deep-2);
  color: #fff;
  position: relative;
  overflow: hidden;
}
.imc-course .final-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 85% 0%, rgba(235,220,118,0.13) 0%, transparent 55%),
    radial-gradient(circle at 10% 100%, rgba(73,124,173,0.20) 0%, transparent 55%);
  pointer-events: none;
}
.imc-course .final-cta__inner {
  position: relative;
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 64px;
  align-items: end;
  padding: 96px 0;
}
.imc-course .final-cta__title {

  font-weight: 700;
  font-size: clamp(40px, 4.5vw, 64px);
  line-height: 1.02;
  letter-spacing: -0.02em;
  color: #fff;
  margin: 18px 0 0;
  text-wrap: balance;
}
.imc-course .final-cta__title em { font-style: normal; font-weight: 500; color: var(--p-gold); }
.imc-course .final-cta__copy { font-size: 17px; color: rgba(255,255,255,0.78); margin: 32px 0 0; max-width: 520px; }
.imc-course .final-cta__cta { display: flex; gap: 14px; flex-wrap: wrap; }
.imc-course .final-cta__cta .btn { background: #fff; color: var(--p-ink); border-color: #fff; }
.imc-course .final-cta__cta .btn--ghost { background: transparent; color: #fff; border-color: rgba(255,255,255,0.4); box-shadow: none; }
.imc-course .final-cta__cta .btn--ghost:hover { background: #fff; color: var(--p-ink); border-color: #fff; }

/* ── Footer ────────────────────────────────────────────── */
.imc-course .site-footer { background: var(--p-black); color: #d6d3c8; padding: 72px 0 36px; }
.imc-course .site-footer__top {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1fr 1fr;
  gap: 40px;
  padding-bottom: 48px;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.imc-course .site-footer__brand img { height: 44px; margin-bottom: 20px; }
.imc-course .site-footer__brand p { font-size: 14px; line-height: 1.6; color: #aba89c; max-width: 280px; margin: 0; }
.imc-course .site-footer__col h4 {

  font-size: 15px;
  font-weight: 600;
  color: #fff;
  margin: 0 0 16px;
  letter-spacing: -0.01em;
}
.imc-course .site-footer__col ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; }
.imc-course .site-footer__col a { color: #aba89c; font-size: 14px; text-decoration: none; transition: color 150ms ease; }
.imc-course .site-footer__col a:hover { color: #fff; }
.imc-course .site-footer__bottom {
  padding-top: 28px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 13px;
  color: #79766c;
}
.imc-course .site-footer__bottom .links { display: flex; gap: 24px; }
.imc-course .site-footer__bottom .links a { color: inherit; }

/* ── Responsive ────────────────────────────────────────── */
@media (max-width: 1100px) {

  .imc-course .hero__inner { grid-template-columns: 1fr; gap: 48px; padding: 56px 0 72px; }
  .imc-course .intro, .imc-course .schedule, .imc-course .curriculum, .imc-course .pricing, .imc-course .trainers, .imc-course .final-cta__inner { grid-template-columns: 1fr; gap: 40px; }
  .imc-course .curriculum__head { position: static; }
  .imc-course .format-grid { grid-template-columns: 1fr; }
  .imc-course .pillars { grid-template-columns: 1fr 1fr; }
  .imc-course .why-grid { grid-template-columns: 1fr; }
  .imc-course .why-cell { border-right: 0; }
  .imc-course .why-cell:nth-last-child(-n+2) { border-bottom: 1px solid var(--p-border); }
  .imc-course .why-cell:last-child { border-bottom: 0; }
  .imc-course .audience-grid { grid-template-columns: 1fr 1fr; }
  .imc-course .pathway__steps { grid-template-columns: 1fr; gap: 36px; }
  .imc-course .pathway__steps::before { display: none; }
  .imc-course .schedule__grid { grid-template-columns: 1fr 1fr; }
  .imc-course .schedule__cell:nth-child(2n) { border-right: 0; }
  .imc-course .site-footer__top { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 720px) {

  .imc-course .section { padding: 64px 0; }
  .imc-course .site-header__inner { padding: 12px 20px; }
  .imc-course .site-header__nav { display: none; }
  .imc-course .hero__trust { gap: 24px; }
  .imc-course .pillars, .imc-course .audience-grid { grid-template-columns: 1fr; }
  .imc-course .schedule__grid { grid-template-columns: 1fr; }
  .imc-course .schedule__cell { border-right: 0; }
  .imc-course .credentials__inner { gap: 24px; }
  .imc-course .credentials__marks { gap: 28px; }
  .imc-course .phase__body { padding-left: 0; }
  .imc-course .phase__head { grid-template-columns: 44px 1fr auto; }
  .imc-course .phase__num { font-size: 30px; }
  .imc-course .site-footer__top { grid-template-columns: 1fr; }
  .imc-course .site-footer__bottom { flex-direction: column; gap: 12px; align-items: flex-start; }
}

/* ── Material icons ────────────────────────────────────── */
.imc-course .icon {
  font-family: 'Material Symbols Outlined';
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  font-variation-settings: 'wght' 300, 'GRAD' 0, 'opsz' 24;
}

/* ── Tweak: background tone ────────────────────────────── */
.imc-course[data-bg="cool"] { background: #f4f6f8; }
.imc-course[data-bg="cool"] .hero__bg { background: linear-gradient(180deg, #f4f6f8 0%, #e8edf2 100%); }
.imc-course[data-bg="cool"] .credentials, .imc-course[data-bg="cool"] .section--warm { background: #ebeff3; }

/* ── Tweak: no imagery ─────────────────────────────────── */
.imc-course.no-imagery .reg-card__visual img, .imc-course.no-imagery .pricing__visual img, .imc-course.no-imagery .trainers__visual img { display: none; }
.imc-course.no-imagery .reg-card__visual {
  background: linear-gradient(135deg, var(--p-blue-deep) 0%, var(--p-blue-deep-2) 100%);
}
.imc-course.no-imagery .pricing__visual {
  background:
    radial-gradient(circle at 30% 30%, rgba(235,220,118,0.20) 0%, transparent 55%),
    linear-gradient(135deg, var(--p-blue-deep) 0%, var(--p-blue-deep-2) 100%);
}
.imc-course.no-imagery .trainers__visual {
  background:
    radial-gradient(circle at 70% 30%, rgba(232,65,86,0.16) 0%, transparent 50%),
    linear-gradient(135deg, #cbd6e3 0%, #d4cdb4 100%);
}

.imc-course .hero__bg {
  background: linear-gradient(180deg, var(--p-blue-deep) 0%, var(--p-blue-deep-2) 100%);
}
.imc-course .hero {
  color: #fff;
}

.imc-course .hero .h-display { color: #fff; }
.imc-course .hero .h-display em { color: var(--p-gold); }
.imc-course .hero__lede { color: rgba(255,255,255,0.78); }
.imc-course .hero__eyebrow { background: rgba(255,255,255,0.10); }
.imc-course .hero__eyebrow .badge { color: var(--p-gold); }
.imc-course .hero__eyebrow .meta { color: rgba(255,255,255,0.7); }
.imc-course .hero__trust { border-top-color: rgba(255,255,255,0.15); }
.imc-course .hero__trust-item .num { color: var(--p-gold); }
.imc-course .hero__trust-item .num em { color: #fff; }
.imc-course .hero__trust-item .lbl { color: rgba(255,255,255,0.7); }
.imc-course .hero__cta .btn:not(.btn--ghost) { background: var(--p-gold); color: var(--p-blue-deep-2); border-color: var(--p-gold); }
.imc-course .hero__cta .btn--ghost { background: transparent; color: #fff; border-color: rgba(255,255,255,0.4); }
.imc-course .hero__cta .btn--ghost:hover { background: #fff; color: var(--p-ink); border-color: #fff; }

section#curriculum,
section.section.section--cool{
  background: #f6f8f9;
}
section.imc-section.imc-section--tint.imc-up-section {
  background: #f7f6f1;
}
section#top {
  padding: 90px 0 0 0;
  text-align: left;
  background-image: none;
}
section#top.hero {
  padding: 90px 24px 0;
}
.reg-card__cta a.btn.btn-secondary {
  background-color: #fff;
  color: #2b2b2b;
}

.imc-course .hero__cta .btn:not(.btn--ghost) {
  background: #fff;
  color: var(--p-blue-deep-2);
  border-color: var(--p-gold);
}
.imc-course .hero__cta .btn:not(.btn--ghost):hover {
  background: var(--dark-blue);
  color: #fff;
}

section#format {
  background-image: url(https://139525743.fs1.hubspotusercontent-eu1.net/hubfs/139525743/website/cc/hero-simple.png);
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: 100% -80%;
}

.imc-course em,
.formats-section__title em,
.imc-course .h-display em,
.imc-course .h-section em {
  font-style: normal !important;
}
@media (max-width: 520px) {
  .imc-course .hero__eyebrow  {
    display: none;
  }
}

@media (max-width: 1521px) {
  body .ccnv__trigger {
    width: 0;
  }
}


/* ──────────────────────────────────────────────────────────────
* IMC · Training listing pages — shared additions
* Extends course-page.css. Components used by:
*   - Training Hub
*   - In Person Courses
*   - Courses by Time Zone
*   - Advanced Courses
*   - Individual course detail pages (Pakistan etc.)
* ────────────────────────────────────────────────────────────── */

/* ── Listing hero ──────────────────────────────────────── */
.lhero {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, var(--p-bg) 0%, var(--p-bg-warm) 100%);
}
section.lhero.lhero--withart {
  padding-top: 120px;
  padding-left: 24px;
  padding-right: 24px;
}
.lhero__inner {
  position: relative;
  z-index: 2;
  padding: 88px 0 80px;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  gap: 56px;
  align-items: end;
}
.lhero__copy { max-width: 640px; }
.lhero__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  padding: 8px 16px;
  background: rgba(73,124,173,0.10);
  border-radius: 999px;
  margin-bottom: 28px;
}
.lhero__eyebrow .badge {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--p-blue-deep);
}
.lhero__eyebrow .meta {
  font-size: 12.5px;
  color: var(--p-gray);
  font-weight: 600;
  letter-spacing: 0.02em;
}
.lhero__title { margin-bottom: 24px; }
.lhero__lede { font-size: 19.5px; line-height: 1.55; color: var(--p-gray); max-width: 540px; margin: 0 0 32px; }
.lhero__cta { display: flex; gap: 14px; flex-wrap: wrap; }
.lhero__aside {
  display: grid;
  gap: 16px;
}

/* Trust stats row at the bottom of a hero */
.lhero__stats {
  display: flex;
  gap: 48px;
  flex-wrap: wrap;
  padding-top: 36px;
  margin-top: 36px;
  border-top: 1px solid var(--p-border-2);
}
.lhero__stat .num {
  font-family: 'GT Super Display', Georgia, serif;
  font-size: 36px;
  font-weight: 700;
  color: var(--blue);
  line-height: 1;
  letter-spacing: -0.02em;
}
.lhero__stat .num em { font-style: normal; font-weight: 500; color: var(--blue); }
.lhero__stat .lbl { font-size: 12px; color: var(--p-gray); letter-spacing: 0.04em; margin-top: 6px; display: block; }

/* ── World map backdrop ────────────────────────────────── */
.worldmap-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  overflow: hidden;
}
.worldmap-bg svg {
  width: min(1400px, 110%);
  height: auto;
  opacity: 0.14;
  transform: translateY(-2%);
}
.worldmap-bg .land { fill: var(--p-blue-deep); }
.worldmap-bg .grid { stroke: var(--p-blue-deep); stroke-width: 0.5; fill: none; opacity: 0.25; }
.worldmap-bg .pin-dot { fill: var(--p-coral); }
.worldmap-bg .pin-ring { fill: none; stroke: var(--p-coral); stroke-width: 1.2; opacity: 0.5; }

/* ── Section heading helper ────────────────────────────── */
.section-head {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 32px;
  flex-wrap: wrap;
  margin-bottom: 48px;
}
.section-head__copy { max-width: 640px; }
.section-head__copy .eyebrow { margin-bottom: 14px; }
.section-head__copy h2 { margin: 0 0 14px; }
.section-head__copy .lede { margin: 0; }
.section-head__aside { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }

/* ── Course card grid ──────────────────────────────────── */
.course-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
  gap: 24px;
}

.course-card {
  background: var(--p-surface);
  border: 1px solid var(--p-border);
  border-radius: 18px;
  overflow: hidden;
  display: grid;
  grid-template-rows: auto 1fr auto;
  transition: transform 280ms ease, box-shadow 280ms ease, border-color 280ms ease;
  text-decoration: none;
  color: inherit;
}
.course-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 26px 50px rgba(15,23,42,0.08);
  border-color: var(--p-blue);
}
.course-card__visual {
  position: relative;
  height: 200px;
  overflow: hidden;
  background: linear-gradient(135deg, #aac1d5 0%, #d0c9a5 60%, #e8b8a8 100%);
}
.course-card__visual img {
  width: 100%; height: 100%; object-fit: cover;
  transition: transform 600ms ease;
}
.course-card:hover .course-card__visual img { transform: scale(1.04); }
.course-card__visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, var(--dark-blue) 0%, var(--blue) 60%, var(--dark-blue) 100%);
}
.course-card__pin {
  position: absolute;
  top: 14px;
  left: 14px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 11px 6px 9px;
  background: rgba(255,255,255,0.95);
  backdrop-filter: blur(4px);
  border-radius: 999px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--p-blue-deep);
  z-index: 1;
}
.course-card__pin .icon { font-size: 14px; color: var(--p-coral); }
.course-card__status {
  position: absolute;
  top: 14px;
  right: 14px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 10px;
  background: var(--green);
  border-radius: 999px;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #fff;
  z-index: 1;
}
.course-card__status--soon {
  background: rgba(255,255,255,0.95);
  color: var(--p-gray);
  border: 1px solid var(--p-border);
}
.course-card__status--filling { background: rgba(235, 220, 118, 0.96); color: var(--p-blue-deep-2); }
.course-card__status .dot {
  width: 6px; height: 6px; border-radius: 50%; background: currentColor;
  box-shadow: 0 0 0 0 currentColor;
  animation: cardPulse 2s infinite;
}
@keyframes cardPulse {
  0% { box-shadow: 0 0 0 0 rgba(255,255,255,0.55); }
  70% { box-shadow: 0 0 0 6px rgba(255,255,255,0); }
  100% { box-shadow: 0 0 0 0 rgba(255,255,255,0); }
}

.course-card__body { padding: 24px 26px 8px; }
.course-card__kicker {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--p-blue);
  margin: 0 0 10px;
}
.course-card__title {
  font-family: 'GT Super Display', Georgia, serif;
  font-weight: 700;
  font-size: 26px;
  line-height: 1.1;
  letter-spacing: -0.015em;
  color: var(--p-black);
  margin: 0 0 12px;
}
.course-card__title em { font-style: normal; font-weight: 500; color: var(--p-blue); }
.course-card__lede {
  font-size: 14.5px;
  line-height: 1.55;
  color: var(--p-gray);
  margin: 0 0 18px;
}
.course-card__meta {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px 18px;
  padding: 16px 0 0;
  border-top: 1px solid var(--p-border);
  margin: 0;
}
.course-card__meta div {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.course-card__meta dt {
  font-size: 10.5px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--p-gray-2);
  font-weight: 700;
}
.course-card__meta dd {
  margin: 0;
  font-size: 14.5px;
  font-weight: 600;
  color: var(--p-ink);
}
.course-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 26px 22px;
  gap: 12px;
}
.course-card__price {
  font-family: 'GT Super Display', Georgia, serif;
  font-size: 24px;
  font-weight: 700;
  color: var(--p-blue-deep);
  letter-spacing: -0.018em;
  line-height: 1;
}
.course-card__price em { font-style: normal; font-weight: 500; color: var(--p-blue); }
.course-card__price .from {
  display: block;
  font-family: 'Open Sans', sans-serif;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--p-gray);
  margin-bottom: 4px;
}
.course-card__action {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 700;
  color: var(--p-ink);
  letter-spacing: 0.02em;
}
.course-card__action .icon {
  font-size: 18px;
  transition: transform 250ms ease;
}
.course-card:hover .course-card__action { color: var(--p-blue); }
.course-card:hover .course-card__action .icon { transform: translateX(3px); }

/* Empty / coming-soon card */
.course-card--soon {
  border-style: dashed;
  background: transparent;
}
.course-card--soon:hover { transform: none; box-shadow: none; border-color: var(--p-blue); }
.course-card--soon .course-card__visual {
  background:
    radial-gradient(circle at 30% 30%, rgba(73,124,173,0.10) 0%, transparent 55%),
    linear-gradient(135deg, #f4f3ec 0%, #ece9dd 100%);
}
.course-card--soon .course-card__visual::after { display: none; }
.course-card--soon .course-card__visual-glyph {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--p-blue-deep);
  opacity: 0.32;
}
.course-card--soon .course-card__visual-glyph .icon { font-size: 76px; }

/* ── Hub cards (Training Hub page) ─────────────────────── */
.hub-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 28px;
  margin-top: 48px;
}
.hub-card {
  position: relative;
  background: var(--p-surface);
  border: 1px solid var(--p-border);
  border-radius: 20px;
  padding: 36px 36px 32px;
  text-decoration: none;
  color: inherit;
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: 18px;
  overflow: hidden;
  transition: transform 280ms ease, box-shadow 280ms ease, border-color 280ms ease;
}
.hub-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 26px 50px rgba(15,23,42,0.08);
  border-color: var(--p-blue);
}
.hub-card--featured {
  background: linear-gradient(155deg, var(--p-blue-deep) 0%, var(--p-blue-deep-2) 100%);
  color: #fff;
  border-color: transparent;
}
.hub-card--featured::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255,255,255,0.05) 1px, transparent 1px);
  background-size: 4px 4px;
  opacity: 0.4;
  pointer-events: none;
}
.hub-card__head { display: flex; align-items: center; justify-content: space-between; gap: 14px; position: relative; }
.hub-card__num {
  font-family: 'GT Super Display', Georgia, serif;
  font-style: normal;
  font-size: 26px;
  font-weight: 500;
  color: var(--p-blue);
  letter-spacing: -0.02em;
}
.hub-card--featured .hub-card__num { color: var(--p-gold); }
.hub-card__tag {
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--p-blue-deep);
  background: rgba(73,124,173,0.10);
  padding: 6px 11px;
  border-radius: 999px;
}
.hub-card--featured .hub-card__tag { background: rgba(235,220,118,0.18); color: var(--p-gold); }
.hub-card__title {
  font-family: 'GT Super Display', Georgia, serif;
  font-weight: 700;
  font-size: 32px;
  line-height: 1.05;
  letter-spacing: -0.018em;
  color: var(--p-black);
  margin: 0;
  position: relative;
}
.hub-card--featured .hub-card__title { color: #fff; }
.hub-card__title em { font-style: normal; font-weight: 500; color: var(--p-blue); }
.hub-card--featured .hub-card__title em { color: var(--p-gold); }
.hub-card__lede {
  font-size: 15.5px;
  line-height: 1.55;
  color: var(--p-gray);
  margin: 0;
  position: relative;
}
.hub-card--featured .hub-card__lede { color: rgba(255,255,255,0.78); }
.hub-card__feat {
  display: flex;
  gap: 22px;
  flex-wrap: wrap;
  padding-top: 18px;
  border-top: 1px solid var(--p-border-2);
  position: relative;
}
.hub-card--featured .hub-card__feat { border-top-color: rgba(255,255,255,0.18); }
.hub-card__feat > div { display: flex; flex-direction: column; gap: 2px; }
.hub-card__feat .num {
  font-family: 'GT Super Display', Georgia, serif;
  font-size: 22px;
  font-weight: 700;
  color: var(--p-blue-deep);
  letter-spacing: -0.018em;
  line-height: 1;
}
.hub-card--featured .hub-card__feat .num { color: var(--p-gold); }
.hub-card__feat .lbl { font-size: 11.5px; color: var(--p-gray); letter-spacing: 0.04em; }
.hub-card--featured .hub-card__feat .lbl { color: rgba(255,255,255,0.65); }
.hub-card__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14.5px;
  font-weight: 700;
  color: var(--p-ink);
  letter-spacing: 0.02em;
  margin-top: 6px;
  position: relative;
}
.hub-card--featured .hub-card__cta { color: var(--p-gold); }
.hub-card__cta .icon { font-size: 18px; transition: transform 250ms ease; }
.hub-card:hover .hub-card__cta .icon { transform: translateX(3px); }

/* ── Time-zone bands ───────────────────────────────────── */
.tz-bands {
  display: grid;
  gap: 16px;
  margin-top: 40px;
}
.tz-band {
  position: relative;
  background: var(--p-surface);
  border: 1px solid var(--p-border);
  border-radius: 16px;
  padding: 26px 28px;
  display: grid;
  grid-template-columns: minmax(220px, 0.8fr) minmax(0, 1.5fr) auto;
  gap: 32px;
  align-items: center;
  overflow: hidden;
}
.tz-band--unavailable {
  background: transparent;
  border-style: dashed;
}
.tz-band__head { display: flex; align-items: center; gap: 18px; }
.tz-band__head .glyph {
  width: 48px; height: 48px;
  border-radius: 50%;
  background: rgba(73,124,173,0.10);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.tz-band__head .glyph .icon { font-size: 26px; color: var(--p-blue-deep); }
.tz-band--unavailable .tz-band__head .glyph { background: rgba(0,0,0,0.04); }
.tz-band--unavailable .tz-band__head .glyph .icon { color: var(--p-gray-2); }
.tz-band__head .label .name {
  font-family: 'GT Super Display', Georgia, serif;
  font-size: 22px;
  font-weight: 700;
  color: var(--p-black);
  line-height: 1;
  letter-spacing: -0.015em;
}
.tz-band__head .label .zone {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.06em;
  color: var(--p-gray);
  margin-top: 4px;
}

.tz-band__bar {
  position: relative;
  height: 56px;
}
.tz-band__bar-grid {
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-columns: repeat(24, 1fr);
  border-radius: 8px;
  overflow: hidden;
  background: #f6f4ec;
  border: 1px solid var(--p-border);
}
.tz-band__bar-grid span {
  border-right: 1px solid var(--p-border);
  position: relative;
}
.tz-band__bar-grid span:nth-child(6n+1)::before {
  content: attr(data-h);
  position: absolute;
  bottom: 100%;
  left: -1px;
  font-size: 10px;
  color: var(--p-gray-2);
  letter-spacing: 0.04em;
  font-weight: 600;
  white-space: nowrap;
  padding-bottom: 4px;
}
.tz-band__window {
  position: absolute;
  top: 6px;
  bottom: 6px;
  background: linear-gradient(180deg, rgba(73,124,173,0.18) 0%, rgba(73,124,173,0.30) 100%);
  border: 1.5px solid var(--p-blue);
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 700;
  color: var(--p-blue-deep-2);
  letter-spacing: 0.03em;
}
.tz-band--unavailable .tz-band__window {
  background: repeating-linear-gradient(45deg, rgba(146,147,149,0.10), rgba(146,147,149,0.10) 6px, transparent 6px, transparent 12px);
  border-color: var(--p-gray-2);
  border-style: dashed;
  color: var(--p-gray);
}
.tz-band__status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  border-radius: 999px;
  font-size: 11.5px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  background: rgba(0,163,108,0.12);
  color: #00754d;
}
.tz-band__status .dot { width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.tz-band__status--soon { background: rgba(73,124,173,0.10); color: var(--p-blue-deep); }
.tz-band__status--soon .dot { background: var(--p-blue-deep); }

/* ── Prereq / note banner ──────────────────────────────── */
.note-banner {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 18px;
  align-items: start;
  background: rgba(73,124,173,0.06);
  border-left: 3px solid var(--p-blue);
  border-radius: 0 14px 14px 0;
  padding: 22px 26px;
  margin: 0 0 56px;
}
.note-banner__glyph {
  width: 40px; height: 40px;
  border-radius: 999px;
  background: var(--p-blue-deep);
  color: var(--p-gold);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.note-banner__glyph .icon { font-size: 22px; }
.note-banner__head {
  font-size: 11.5px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--p-blue-deep);
  margin: 0 0 4px;
}
.note-banner__body { font-size: 15px; color: var(--p-ink); line-height: 1.55; margin: 0; }
.note-banner__body a { color: var(--p-blue-deep); text-decoration: underline; }

/* ── Partner row (for In-Person partner orgs) ──────────── */
.partner-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 18px;
  margin-top: 40px;
}
.partner-cell {
  background: var(--p-surface);
  border: 1px solid var(--p-border);
  border-radius: 14px;
  padding: 24px;
}
.partner-cell .acronym {
  font-family: 'GT Super Display', Georgia, serif;
  font-size: 26px;
  font-weight: 700;
  color: var(--p-blue-deep);
  letter-spacing: -0.01em;
  line-height: 1;
}
.partner-cell .full {
  font-size: 12px;
  color: var(--p-gray);
  letter-spacing: 0.04em;
  font-weight: 500;
  margin-top: 6px;
  display: block;
}
.partner-cell .body {
  font-size: 14px;
  color: var(--p-gray);
  line-height: 1.55;
  margin: 14px 0 0;
}

/* ── Locations grid (where we've taught) ───────────────── */
.locations-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 1px;
  background: var(--p-border);
  border: 1px solid var(--p-border);
  border-radius: 16px;
  overflow: hidden;
  margin-top: 40px;
}
.location-cell {
  background: var(--p-surface);
  padding: 24px 22px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.location-cell .city {
  font-family: 'GT Super Display', Georgia, serif;
  font-size: 19px;
  font-weight: 600;
  color: var(--p-black);
  letter-spacing: -0.01em;
}
.location-cell .country {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--p-gray);
}
.location-cell .meta {
  font-size: 12.5px;
  color: var(--p-blue);
  font-weight: 600;
  margin-top: 8px;
}

/* ── Sub-nav under header (Training crumb) ─────────────── */
.subnav {
  background: var(--p-surface);
  border-bottom: 1px solid var(--p-border);
  font-size: 13.5px;
}
.subnav__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 12px 40px;
  display: flex;
  align-items: center;
  gap: 14px;
  color: var(--p-gray);
}
.subnav__crumb { display: flex; align-items: center; gap: 10px; color: var(--p-gray); text-decoration: none; }
.subnav__crumb:hover { color: var(--p-blue); }
.subnav__sep { color: var(--p-gray-3); }
.subnav__current { color: var(--p-ink); font-weight: 600; }

@media (max-width: 1100px) {
  .lhero__inner { grid-template-columns: 1fr; gap: 16px; padding: 56px 0 64px; }
  .hub-grid { grid-template-columns: 1fr; }
  .tz-band { grid-template-columns: 1fr; gap: 18px; }
  .tz-band__bar { width: 100%; }
}
@media (max-width: 720px) {
  .lhero__stats { gap: 24px; }
  .section-head { margin-bottom: 32px; }
  .subnav__inner { padding: 10px 20px; flex-wrap: wrap; }
}

/* ── Hero with image fading in from top-right (light bg) ── */
.lhero--withart { position: relative; overflow: hidden; }
.lhero__art {
  position: absolute;
  top: 0;
  right: 0;
  width: min(46%, 620px);
  height: 86%;
  overflow: hidden;
  pointer-events: none;
  z-index: 1;
  -webkit-mask-image:
    linear-gradient(225deg, #000 22%, transparent 90%),
    linear-gradient(to bottom, #000 58%, transparent 100%);
  -webkit-mask-composite: source-in;
  mask-image:
    linear-gradient(225deg, #000 22%, transparent 90%),
    linear-gradient(to bottom, #000 58%, transparent 100%);
  mask-composite: intersect;
}
.lhero__art img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 60% 30%;
  filter: saturate(0.92) contrast(1.02);
  opacity: 0.92;
}
.lhero__art-gesture {
  position: absolute;
  right: 6%;
  bottom: -4%;
  width: 56%;
  height: 68%;
  opacity: 0.45;
  pointer-events: none;
  z-index: 2;
}

.lhero--withart .lhero__inner {
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.6fr);
  align-items: end;
  padding: 96px 0 96px;
}
.lhero--withart .lhero__stats {
  grid-column: 1 / -1;
  padding-top: 40px;
  margin-top: 8px;
}

@media (max-width: 1100px) {
  .lhero--withart .lhero__inner { grid-template-columns: 1fr; padding: 56px 0 56px; }
  .lhero__art { width: min(70%, 480px); height: 50%; opacity: 0.6; }
}
/*   body .imc-final-cta__inner, */
body .imc-final-cta,
.section.section--overview,
.section.section--format,
.section.section--curriculum,
.section.padded,
body .section-pad .section {
  padding-left: 24px;
  padding-right: 24px;
}

.imc-course .hero__trust-item .num em {
  color: var(--p-gold);
}
body a.imc-family-link {
  color: #fff;
}

body .blogs-date {
  align-items: center;
  display: flex;
  gap: 16px;
  flex-direction: row;
  width: 100%;
}
body .blogs-date img {
  left: -3px;
  position: relative;
  top: -2px;
}
.imc-course a h3 {
  color: #2b2b2c;
  text-decoration: none;
}
.imc-course a.btn.btn--ghost {
  color: var(--dark-blue);
  text-decoration: none;
}


.fp {
  --blue:        #497CAD;
  --blue-deep:   #2D4A7A;
  --blue-deep-2: #21385c;
  --gold:        #EBDC76;
  --gold-deep:   #d6c252;
  --ink:         #2b2b2c;
  --ink-2:       #1a1a1b;
  --gray:        #6D6C6D;
  --gray-2:      #929395;
  --green:       #5C987B;
  --sand:        #efece3;
  --sand-2:      #e6e2d6;
  --surface:     #ffffff;
  --border:      #ece9dd;
  --border-cool: #e6e9f0;

  font-family: 'Open Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: var(--ink);
}
.fp img { max-width: 100%; display: block; }
.fp a { color: var(--blue); text-decoration: none; }

.fp .wrap { max-width: 1200px; margin: 0 auto; }
.fp .section { padding: 104px 0; position: relative; }
.fp .section--sand { background: var(--sand); }

/* Type primitives */
.fp .eyebrow {
  font-size: 12.5px; font-weight: 700;
  letter-spacing: 0.2em; text-transform: uppercase;
  color: var(--blue); margin: 0 0 20px;
}
.fp .h-section {
  font-family: 'GT Super Display', Georgia, serif;
  font-weight: 600;
  font-size: clamp(34px, 4vw, 52px);
  line-height: 1.06;
  letter-spacing: -0.018em;
  margin: 0;
  color: var(--ink-2);
  text-wrap: balance;
}
.fp .h-section em { font-style: normal; color: var(--blue); }
.fp .lede { font-size: 17px; line-height: 1.62; color: var(--gray); }
.fp .icon {
  font-family: 'Material Symbols Outlined';
  font-weight: normal; font-style: normal;
  display: inline-block; line-height: 1;
  -webkit-font-feature-settings: 'liga'; -webkit-font-smoothing: antialiased;
}

/* ═══════════════════════════════════════════════════════════
* SECTION A — "Why fair pricing" (ABOVE the tool)
* ═══════════════════════════════════════════════════════════ */
.fp .why__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  gap: 72px;
  align-items: center;
}
.fp .why__title { margin: 0 0 28px; }
.fp .why__title .h-section { font-size: clamp(33px, 3.5vw, 46px); }
.fp .why__p { font-size: 17px; line-height: 1.66; color: var(--gray); margin: 0 0 20px; max-width: 540px; }
.fp .why__p strong { color: var(--ink); font-weight: 600; }
.fp .why__p--lead { font-size: 18.5px; color: var(--ink); }

.fp .why__points {
  list-style: none; margin: 32px 0 0; padding: 28px 0 0;
  border-top: 1px solid var(--border-cool);
  display: grid; gap: 16px;
}
.fp .why__point { display: flex; gap: 14px; align-items: flex-start; }
.fp .why__point .tick {
  flex: 0 0 auto; width: 26px; height: 26px; border-radius: 50%;
  background: rgba(92,152,123,0.14); color: var(--green);
  display: grid; place-items: center; margin-top: 1px;
}
.fp .why__point .tick .icon { font-size: 17px; }
.fp .why__point span.t { font-size: 15.5px; color: var(--ink); line-height: 1.5; }
.fp .why__point span.t b { font-weight: 700; }

/* Image + floating quote */
.fp .why__media { position: relative; }
.fp .why__img {
  border-radius: 18px; overflow: hidden;
  box-shadow: 0 30px 60px -24px rgba(33,56,92,0.40);
  aspect-ratio: 5 / 6;
  background: var(--sand);
}
.fp .why__img img { width: 100%; height: 100%; object-fit: cover; }
.fp .why__quote {
  position: absolute; left: -34px; bottom: 40px;
  max-width: 320px;
  background: var(--blue-deep);
  color: #fff;
  padding: 26px 28px 24px;
  border-radius: 16px;
  box-shadow: 0 24px 48px -18px rgba(33,56,92,0.55);
}
.fp .why__quote .mark {
  font-family: 'GT Super Display', Georgia, serif; font-weight: 600;
  font-size: 44px; line-height: 0.6; color: var(--gold);
  display: block; height: 22px;
}
.fp .why__quote p {
  font-family: 'GT Super Display', Georgia, serif;
  font-size: 18px; line-height: 1.42; margin: 12px 0 0; color: #fff;
  letter-spacing: -0.01em;
}
.why__points .tick {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  background-color: #1D9E75;
  border-radius: 50%;
  margin-top: 2px;
}

.why__points .tick::after {
  content: '';
  display: block;
  width: 10px;
  height: 6px;
  border-left: 2px solid white;
  border-bottom: 2px solid white;
  border-radius: 0;
  transform: rotate(-45deg) translate(1px, -1px);
}

/* ═══════════════════════════════════════════════════════════
* SECTION C — "How fair pricing works" (BELOW the tool)
* ═══════════════════════════════════════════════════════════ */
.fp .how__head { max-width: 720px; margin: 0 0 56px; }
.fp .how__head .h-section { margin-bottom: 22px; }
.fp .how__head .lede { max-width: 600px; }
.fp .how__head .lede strong { color: var(--ink); font-weight: 600; }

.fp .how__grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
}
.fp .how__card {
  background: var(--surface); border: 1px solid var(--border);
  border-radius: 16px; padding: 32px 30px 30px;
  box-shadow: 0 10px 30px -22px rgba(15,23,42,0.4);
  display: flex; flex-direction: column;
}
.fp .how__num {
  width: 42px; height: 42px; border-radius: 12px;
  background: var(--blue-deep); color: #fff;
  display: grid; place-items: center; margin-bottom: 22px;
  font-family: 'GT Super Display', serif; font-weight: 600; font-size: 20px;
}
.fp .how__card h4 {
  font-family: 'GT Super Display', Georgia, serif; font-weight: 600;
  font-size: 21px; line-height: 1.2; color: var(--ink-2);
  margin: 0 0 12px; letter-spacing: -0.01em;
}
.fp .how__card p { font-size: 15px; line-height: 1.6; color: var(--gray); margin: 0; }
.fp .how__card p b { color: var(--ink); font-weight: 600; }

/* Transparency band */
.fp .how__band {
  margin-top: 24px;
  background: var(--blue-deep);
  border-radius: 16px;
  padding: 36px 40px;
  display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 32px 56px;
  align-items: center;
  color: #fff;
  position: relative; overflow: hidden;
}
.fp .how__band::after {
  content: ""; position: absolute; right: -60px; top: -60px;
  width: 240px; height: 240px; border-radius: 50%;
  background: radial-gradient(circle, rgba(73,124,173,0.55) 0%, rgba(73,124,173,0) 70%);
}
.fp .how__band-main { position: relative; z-index: 1; }
.fp .how__band-main h3 {
  font-family: 'GT Super Display', Georgia, serif; font-weight: 600;
  font-size: clamp(24px, 2.6vw, 32px); line-height: 1.1;
  margin: 0 0 12px; color: #fff; letter-spacing: -0.01em;
}
.fp .how__band-main h3 em { font-style: normal; color: var(--gold); }
.fp .how__band-main p { font-size: 15.5px; line-height: 1.6; color: rgba(255,255,255,0.78); margin: 0; max-width: 540px; }
.fp .how__band-main p a { color: #fff; border-bottom: 1px solid rgba(255,255,255,0.5); padding-bottom: 1px; font-weight: 600; }
.fp .how__included {
  position: relative; z-index: 1;
  list-style: none; margin: 0; padding: 0; display: grid; gap: 12px;
}
.fp .how__included li {
  display: flex; align-items: center; gap: 12px;
  font-size: 15px; font-weight: 600; color: #fff; white-space: nowrap;
}
.fp .how__included .tick {
  width: 24px; height: 24px; border-radius: 50%;
  background: rgba(235,220,118,0.16); color: var(--gold);
  display: grid; place-items: center; flex: 0 0 auto;
}
.fp .how__included .tick .icon { font-size: 16px; }

/* ── Responsive ─────────────────────────────────────────── */
@media (max-width: 960px) {
  .fp .section { padding: 80px 0; }

  .fp .why__grid { grid-template-columns: 1fr; gap: 44px; }
  .fp .why__media { max-width: 480px; }
  .fp .why__quote { left: 0; right: 16px; max-width: none; }
  .fp .tool__grid { grid-template-columns: 1fr; max-width: 520px; }
  .fp .how__grid { grid-template-columns: 1fr; gap: 16px; }
  .fp .how__band { grid-template-columns: 1fr; gap: 28px; padding: 32px; }
}
@media (max-width: 560px) {

  .fp .section { padding: 64px 0; }
  .fp .tool__panel, .fp .tool__price { padding: 26px; }
  .fp .tool__price-val { font-size: 68px; }
  .fp .why__quote { position: static; margin-top: 16px; }
  .fp .why__img { aspect-ratio: 4 / 3; }
  .fp .tool__cta { gap: 12px; }
  .fp .btn { width: 100%; }
}