:root {
  --green-900: #1d9e75;
  --green-800: #05803a;
  --green-700: #15803d;
  --green-600: #16a34a;
  --green-500: #22c55e;
  --green-400: #4ade80;
  --green-300: #86efac;
  --green-200: #bbf7d0;
  --green-100: #dcfce7;
  --green-50: #f0fdf4;
  --slate-900: #0f172a;
  --slate-800: #1e293b;
  --slate-700: #334155;
  --slate-600: #475569;
  --slate-500: #64748b;
  --slate-400: #94a3b8;
  --slate-300: #cbd5e1;
  --slate-200: #e2e8f0;
  --slate-100: #f1f5f9;
  --slate-50: #f8fafc;
  --amber-700: #92400e;
  --amber-100: #fef3c7;
  --amber-50: #fffbeb;
  --indigo-700: #4338ca;
  --indigo-100: #e0e7ff;
  --indigo-50: #eef2ff;
  --coral: #dc6843;
  --coral-light: #fef0ec;
  --teal-600: #0d9488;
  --teal-100: #ccfbf1;
  --blue-600: #2563eb;
  --blue-100: #dbeafe;
  --radius: 16px;
  --radius-sm: 10px;
  --radius-xs: 6px
}
  
  /* FIXED HEADER */
  
  #ec-site-header {
    position: fixed;
    top: var(--ec-announcement-height);
    left: 0;
    right: 0;
    z-index: 1090;
    height: var(--ec-header-height);
    margin: 0;
    padding: 0;
    background: #fff;
    border-bottom: 1px solid var(--ec-border);
    box-shadow: 0 4px 20px rgba(12, 30, 20, .055);
    overflow: visible;
  }
  
  #ec-site-header,
  #ec-site-header * {
    box-sizing: border-box;
  }
  
  #ec-site-header a {
    text-decoration: none;
  }
  
  #ec-site-header .ec-header-shell {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    position: static;
  }
  
  #ec-site-header .ec-brand {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    line-height: 0;
  }
  
  #ec-site-header .ec-brand img {
    display: block;
    width: 180px;
    height: auto;
    max-width: 100%;
  }
  
  /* TOP NAVIGATION */
  
  #ec-site-header .ec-desktop-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 1 1 auto;
    min-width: 0;
    height: 100%;
  }
  
  #ec-site-header .ec-desktop-nav > ul.headder-content {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: clamp(10px, 1.3vw, 26px);
    height: 100%;
    width: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
  }
  
  #ec-site-header .ec-nav-entry {
    display: flex;
    align-items: center;
    height: 100%;
    position: static;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  
  #ec-site-header .ec-nav-trigger {
    appearance: none;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    position: relative;
    padding: 15px 6px;
    margin: 0;
    background: transparent;
    border: 0;
    color: var(--ec-ink);
    font: inherit;
    font-size: 15px;
    font-weight: 650;
    line-height: 1.25;
    white-space: nowrap;
    cursor: pointer;
    transition: color .18s ease;
  }
  
  /* No underline on header tabs */
  
  #ec-site-header .ec-nav-trigger::after {
    content: none;
    display: none;
  }
  
  #ec-site-header .ec-nav-trigger:hover,
  #ec-site-header .ec-nav-entry.is-open .ec-nav-trigger {
    color: var(--ec-green);
  }
  
  #ec-site-header .ec-chevron {
    width: 7px;
    height: 7px;
    display: inline-block;
    border: solid currentColor;
    border-width: 0 1.6px 1.6px 0;
    transform: rotate(45deg) translateY(-2px);
    transition: transform .18s ease;
  }
  
  #ec-site-header .ec-nav-entry.is-open .ec-chevron {
    transform: rotate(225deg) translate(-2px, -2px);
  }
  
  /* HEADER CTA */
  
  #ec-site-header .primary-button-elixir.ec-header-cta,
  #ec-site-header .primary-button-elixir.ec-mobile-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    flex-shrink: 0;
    min-height: 45px;
    padding: 13px 21px;
    background: var(--ec-green);
    border: 1px solid var(--ec-green);
    border-radius: 9px;
    color: #fff !important;
    font: inherit;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.25;
    white-space: nowrap;
    transition: background .18s ease, box-shadow .18s ease;
  }
  
  #ec-site-header .ec-header-cta:hover,
  #ec-site-header .ec-mobile-cta:hover {
    background: var(--ec-green-dark);
    box-shadow: 0 5px 16px rgba(20, 83, 45, .15);
  }
  
  #ec-site-header .ec-header-cta > span,
  #ec-site-header .ec-mobile-cta > span {
    color: #fff !important;
    font-size: 13px;
    line-height: 1;
  }
  
  /* MEGA MENU POSITIONING */
  
  #ec-site-header .ec-megamenu {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1050;
    padding: 0 0 12px;
    background: transparent;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: none;
    transition:
      opacity .16s ease,
      visibility .16s ease;
  }
  
  #ec-site-header .ec-nav-entry.is-open > .ec-megamenu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
  
  #ec-site-header .ec-menu-shell {
    width: min(1320px, calc(100% - 36px));
    max-height: calc(
      100dvh - var(--ec-header-height) -
      var(--ec-announcement-height) - 12px
    );
    margin: 0 auto;
    background: #fff;
    border: 1px solid #dde7df;
    border-top: 3px solid var(--ec-green);
    border-radius: 0 0 16px 16px;
    box-shadow: 0 21px 52px rgba(13, 34, 26, .16);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
  }
  
  /* MEGA MENU HEADING */
  
  #ec-site-header .ec-menu-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    padding: 20px 27px;
    border-bottom: 1px solid #e7ede8;
  }
  
  #ec-site-header .ec-menu-kicker {
    display: block;
    margin-bottom: 6px;
    color: var(--ec-green);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .085em;
    line-height: 1.4;
  }
  
  #ec-site-header .ec-menu-heading h2 {
    margin: 0 0 5px;
    color: var(--ec-ink);
    font: inherit;
    font-size: 25px;
    font-weight: 750;
    line-height: 1.24;
    letter-spacing: -.45px;
  }
  
  #ec-site-header .ec-menu-heading p {
    margin: 0;
    color: #46584e;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.55;
  }
  
  #ec-site-header .ec-menu-overview {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 44px;
    padding: 12px 17px;
    background: var(--ec-green);
    border: 1px solid var(--ec-green);
    border-radius: 8px;
    color: #fff !important;
    font-size: 14px;
    font-weight: 700;
    white-space: nowrap;
    transition: background .18s ease;
  }
  
  #ec-site-header .ec-menu-overview:hover {
    background: var(--ec-green-dark);
  }
  
  #ec-site-header .ec-menu-overview > span {
    color: #fff !important;
    font-size: 12px;
    line-height: 1;
  }
  
  /* SHARED CONTENT LAYOUT */
  
  #ec-site-header .ec-menu-content {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    align-items: stretch;
    gap: 0;
  }
  
  #ec-site-header .ec-menu-links {
    min-width: 0;
    padding: 22px 22px 24px 27px;
  }
  
  #ec-site-header .ec-link-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
  }
  
  /* PLATFORM: EXACTLY TWO COLUMNS */
  
  @media (min-width: 1281px) {
    #ec-site-header
    [data-ec-menu="platform"] .ec-link-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  
  /* DESTINATION CARDS */
  
  #ec-site-header .ec-link-card {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    position: relative;
    min-width: 0;
    min-height: 103px;
    padding: 14px 12px;
    background: #fff;
    border: 1px solid #e1e9e3;
    border-radius: 10px;
    box-shadow: 0 1px 2px rgba(11, 31, 21, .025);
    color: var(--ec-ink);
    transition:
      background .17s ease,
      border-color .17s ease,
      box-shadow .17s ease,
      transform .17s ease;
  }
  
  #ec-site-header .ec-link-card:hover,
  #ec-site-header .ec-link-card:focus-visible {
    background: #f1f8f3;
    border-color: #91bea0;
    box-shadow: 0 5px 14px rgba(20, 83, 45, .07);
    transform: translateY(-2px);
  }
  
  #ec-site-header .ec-card-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    background: #f6faf7;
    border: 1px solid #e2ebe4;
    border-radius: 9px;
  }
  
  #ec-site-header .ec-card-icon img {
    display: block;
    width: 28px;
    height: 28px;
    object-fit: contain;
  }
  
  #ec-site-header .ec-card-copy {
    display: flex;
    flex-direction: column;
    min-width: 0;
    gap: 5px;
  }
  
  #ec-site-header .ec-card-copy strong {
    display: block;
    color: #152a20;
    font-size: 14px;
    font-weight: 750;
    line-height: 1.32;
  }
  
  #ec-site-header .ec-card-copy small {
    display: block;
    color: #44564c;
    font-size: 12px;
    font-weight: 450;
    line-height: 1.48;
  }
  
  /* SMALL ARROWS: HOVER AND KEYBOARD FOCUS ONLY */
  
  #ec-site-header .ec-small-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 12px;
    height: 14px;
    margin-left: auto;
    flex: 0 0 12px;
    color: var(--ec-green) !important;
    font-size: 12px !important;
    line-height: 1;
    opacity: 0;
    visibility: hidden;
    transform: translate(-3px, 3px);
    transition:
      opacity .16s ease,
      transform .16s ease,
      visibility .16s ease;
  }
  
  #ec-site-header .ec-link-card:hover .ec-small-arrow,
  #ec-site-header .ec-link-card:focus-visible .ec-small-arrow {
    opacity: 1;
    visibility: visible;
    transform: translate(0, 0);
  }
  
  /* NAVY CONVERSION PANEL */
  
  #ec-site-header .ec-menu-aside {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    min-width: 0;
    padding: 18px;
    background: #f7f9f7;
    border-left: 1px solid #e3ebe5;
  }
  
  #ec-site-header .ec-conversion-card {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
    width: 100%;
    height: 100%;
    min-height: 0;
    padding: 24px 20px;
    background: var(--ec-navy);
    border-radius: 12px;
    color: #fff;
  }
  
  #ec-site-header .ec-conversion-label {
    display: block;
    color: #a6e6ba;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.5;
    letter-spacing: .075em;
  }
  
  #ec-site-header .ec-conversion-card h3 {
    margin: 0;
    color: #fff;
    font: inherit;
    font-size: 20px;
    font-weight: 750;
    line-height: 1.34;
    letter-spacing: -.3px;
  }
  
  #ec-site-header .ec-conversion-card p {
    margin: 0;
    color: #e4eff0;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.6;
  }
  
  #ec-site-header .ec-conversion-card p + p {
    margin-top: 4px;
  }
  
  #ec-site-header .ec-conversion-cta {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: auto;
    width: 100%;
    min-height: 49px;
    padding: 13px 14px;
    background: #fff;
    border: 1px solid #fff;
    border-radius: 8px;
    color: #0d4428 !important;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.4;
    text-align: center;
    transition:
      background .18s ease,
      box-shadow .18s ease;
  }
  
  #ec-site-header .ec-conversion-cta:hover,
  #ec-site-header .ec-conversion-cta:focus-visible {
    background: #e1f4e7;
    color: #09371f !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, .13);
  }
  
  /* DIGITAL WORKERS: EXISTING ICONS AND GRID */
  
  #ec-site-header
  [data-ec-menu="digital-workers"] .ec-link-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
  }
  
  #ec-site-header
  [data-ec-menu="digital-workers"] .ec-link-card {
    min-height: 75px;
    padding: 10px;
    align-items: center;
  }
  
  #ec-site-header
  [data-ec-menu="digital-workers"] .ec-card-icon {
    width: 34px;
    height: 34px;
    flex-basis: 34px;
  }
  
  #ec-site-header
  [data-ec-menu="digital-workers"] .ec-card-icon img {
    width: 26px;
    height: 26px;
  }
  
  #ec-site-header
  [data-ec-menu="digital-workers"] .ec-card-copy strong {
    font-size: 13px;
  }
  
  /* Uniform two-line description spacing */
  
  #ec-site-header
  [data-ec-menu="digital-workers"] .ec-card-copy small {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    overflow: hidden;
    color: #44564c;
    font-size: 11px;
    font-weight: 450;
    line-height: 1.5;
    min-height: 33px;
  }
  
  /* COMPACT PRICING AND RESOURCES */
  
  #ec-site-header .ec-megamenu--compact .ec-menu-shell {
    width: min(950px, calc(100% - 36px));
  }
  
  #ec-site-header .ec-megamenu--compact .ec-menu-content {
    grid-template-columns: minmax(0, 1fr) 310px;
    align-items: stretch;
  }
  
  #ec-site-header .ec-megamenu--compact .ec-menu-links {
    padding: 22px 24px;
  }
  
  #ec-site-header .ec-megamenu--compact .ec-link-grid {
    grid-template-columns: 1fr;
    gap: 9px;
  }
  
  #ec-site-header .ec-megamenu--compact .ec-link-card {
    min-height: 76px;
    padding: 13px 15px;
    align-items: center;
  }
  
  #ec-site-header
  [data-ec-menu="resources"] .ec-megamenu--compact .ec-link-card {
    min-height: 66px;
  }
  
  #ec-site-header .ec-megamenu--compact .ec-menu-aside {
    padding: 14px;
  }
  
  #ec-site-header .ec-megamenu--compact .ec-conversion-card {
    height: auto;
    padding: 22px 20px;
    gap: 14px;
  }
  
  #ec-site-header .ec-inline-guidance {
    margin-top: 13px;
    padding: 16px;
    background: #f3f8f4;
    border: 1px solid #e0ebe2;
    border-radius: 10px;
  }
  
  #ec-site-header .ec-inline-guidance strong {
    color: #152a20;
    font-size: 14px;
    font-weight: 750;
  }
  
  #ec-site-header .ec-inline-guidance p {
    color: #42554a;
    margin: 7px 0 0;
    font-size: 13px;
    line-height: 1.6;
  }
  
  /* KEYBOARD FOCUS */
  
  #ec-site-header a:focus-visible,
  #ec-site-header button:focus-visible {
    outline: 2px solid var(--ec-green);
    outline-offset: 3px;
  }
  
  /* MOBILE NAVIGATION */
  
  #ec-site-header .ec-mobile-toggle,
  #ec-site-header .ec-mobile-menu {
    display: none;
  }
  
  @media (max-width: 1280px) {
    :root {
      --ec-header-height: 76px;
    }
  
    #ec-site-header .ec-desktop-nav,
    #ec-site-header .ec-header-cta {
      display: none !important;
    }
  
    #ec-site-header .ec-header-shell {
      justify-content: space-between;
    }
  
    #ec-site-header .ec-brand img {
      width: 165px;
    }
  
    #ec-site-header .ec-mobile-toggle {
      appearance: none;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 5px;
      width: 42px;
      height: 42px;
      padding: 9px;
      flex: 0 0 auto;
      background: #fff;
      border: 1px solid var(--ec-border);
      border-radius: 9px;
      cursor: pointer;
    }
  
    #ec-site-header .ec-mobile-toggle > span {
      display: block;
      width: 21px;
      height: 2px;
      background: var(--ec-ink);
      border-radius: 3px;
      transition: transform .2s ease, opacity .2s ease;
    }
  
    #ec-site-header
    .ec-mobile-toggle.is-active > span:nth-child(1) {
      transform: translateY(7px) rotate(45deg);
    }
  
    #ec-site-header
    .ec-mobile-toggle.is-active > span:nth-child(2) {
      opacity: 0;
    }
  
    #ec-site-header
    .ec-mobile-toggle.is-active > span:nth-child(3) {
      transform: translateY(-7px) rotate(-45deg);
    }
  
    #ec-site-header .ec-mobile-menu {
      position: absolute;
      top: 100%;
      left: 0;
      right: 0;
      width: 100%;
      height: calc(
        100dvh - var(--ec-header-height) -
        var(--ec-announcement-height)
      );
      max-height: calc(
        100dvh - var(--ec-header-height) -
        var(--ec-announcement-height)
      );
      overflow-y: auto;
      overflow-x: hidden;
      overscroll-behavior: contain;
      z-index: 1080;
      padding: 0 0 25px;
      margin: 0;
      background: #fff;
      border-top: 1px solid var(--ec-border);
      box-shadow: 0 14px 26px rgba(10, 32, 19, .11);
      opacity: 1;
      visibility: visible;
    }
  
    #ec-site-header .ec-mobile-menu.is-open {
      display: block;
    }
  
    #ec-site-header .ec-mobile-menu-inner {
      padding-top: 18px;
      padding-bottom: 25px;
    }
  
    #ec-site-header .ec-mobile-title {
      margin: 0 0 13px;
      color: #57705e;
      font-size: 12px;
      font-weight: 800;
      letter-spacing: .075em;
      text-transform: uppercase;
    }
  
    #ec-site-header .ec-mobile-group {
      border-bottom: 1px solid var(--ec-border);
    }
  
    #ec-site-header .ec-mobile-accordion {
      appearance: none;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 15px;
      width: 100%;
      margin: 0;
      padding: 17px 2px;
      background: transparent;
      border: 0;
      color: var(--ec-ink);
      font: inherit;
      font-size: 16px;
      font-weight: 700;
      text-align: left;
      cursor: pointer;
    }
  
    #ec-site-header .ec-mobile-accordion > span {
      font-size: 21px;
      line-height: 1;
      color: var(--ec-green);
      transition: transform .18s ease;
    }
  
    #ec-site-header
    .ec-mobile-accordion[aria-expanded="true"] {
      color: var(--ec-green);
    }
  
    #ec-site-header
    .ec-mobile-accordion[aria-expanded="true"] > span {
      transform: rotate(180deg);
    }
  
    #ec-site-header .ec-mobile-submenu {
      display: flex;
      flex-direction: column;
      gap: 1px;
      margin: 0 0 12px 2px;
      padding: 0 0 14px 12px;
      border-left: 2px solid #cfe2d3;
    }
  
    #ec-site-header .ec-mobile-submenu[hidden] {
      display: none !important;
    }
  
    #ec-site-header .ec-mobile-submenu a {
      display: block;
      width: 100%;
      padding: 11px 12px;
      color: #273d31;
      border-radius: 6px;
      background: transparent;
      font-size: 14px;
      font-weight: 550;
      line-height: 1.45;
    }
  
    #ec-site-header .ec-mobile-submenu a:hover,
    #ec-site-header .ec-mobile-submenu a:focus-visible {
      background: #edf6ef;
      color: var(--ec-green);
    }
  
    #ec-site-header .primary-button-elixir.ec-mobile-cta {
      display: flex;
      width: 100%;
      margin-top: 25px;
    }
  }
  
  @media (max-width: 1023px) {
    :root {
      --ec-announcement-height: 0px;
    }
  
    .header-upper {
      display: none;
    }
  
    #ec-site-header {
      top: 0;
    }
  }
  
  @media (max-width: 600px) {
    :root {
      --ec-header-height: 68px;
    }
  
    #ec-site-header .ec-brand img {
      width: 145px;
    }
  
    #ec-site-header .ec-mobile-toggle {
      width: 40px;
      height: 40px;
    }
  }
  
  /* SHORT DESKTOP SCREENS */
  
  @media (min-width: 1281px) and (max-height: 750px) {
    #ec-site-header .ec-menu-heading {
      padding-top: 13px;
      padding-bottom: 13px;
    }
  
    #ec-site-header .ec-menu-links {
      padding-top: 14px;
      padding-bottom: 15px;
    }
  
    #ec-site-header .ec-link-card {
      min-height: 85px;
      padding: 10px;
    }
  
    #ec-site-header .ec-menu-aside {
      padding: 12px;
    }
  
    #ec-site-header .ec-conversion-card {
      padding: 17px 15px;
    }
  
    #ec-site-header
    [data-ec-menu="digital-workers"] .ec-link-card {
      min-height: 75px;
    }
  
    #ec-site-header .ec-conversion-card p + p {
      display: none;
    }
  }
  
  /* EXISTING AI DISCOVERY LINKS */
  
  #ec-site-header .ai-discovery-links {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
  }
  
  /* REDUCED MOTION */
  
  @media (prefers-reduced-motion: reduce) {
    #ec-site-header *,
    #ec-site-header *::before,
    #ec-site-header *::after {
      transition-duration: .01ms !important;
      animation-duration: .01ms !important;
    }
  }
  