

  .haccretion-global-footer,
  .haccretion-global-footer * {
    box-sizing: border-box;
  }

  .haccretion-global-footer {
    position: relative;
    overflow: hidden;
    padding: 96px 0 34px;
    background: #050505;
    color: #f5f5f7;
    border-top: 1px solid rgba(255,255,255,.10);
    font-family:
      -apple-system,
      BlinkMacSystemFont,
      "SF Pro Text",
      "SF Pro Display",
      "Helvetica Neue",
      Helvetica,
      Arial,
      sans-serif;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
  }


  /* =========================================================
     SUBTLE BACKGROUND
  ========================================================== */

  .haccretion-global-footer::before {
    content: "";
    position: absolute;
    width: 700px;
    height: 700px;
    right: -320px;
    top: -420px;
    border-radius: 50%;
    background:
      radial-gradient(
        circle,
        rgba(124,174,73,.09) 0%,
        rgba(124,174,73,.025) 42%,
        rgba(124,174,73,0) 72%
      );
    pointer-events: none;
  }

  .haccretion-global-footer::after {
    content: "";
    position: absolute;
    width: 440px;
    height: 440px;
    left: -260px;
    bottom: -310px;
    border-radius: 50%;
    background:
      radial-gradient(
        circle,
        rgba(255,255,255,.035) 0%,
        rgba(255,255,255,0) 70%
      );
    pointer-events: none;
  }


  /* =========================================================
     SHELL
  ========================================================== */

  .haccretion-footer-shell {
    position: relative;
    z-index: 2;
    width: min(1180px, calc(100% - 48px));
    margin: 0 auto;
  }


  /* =========================================================
     TOP
  ========================================================== */

  .haccretion-footer-top {
    display: grid;
    grid-template-columns: minmax(260px,.72fr) minmax(0,1.5fr);
    gap: clamp(70px,9vw,140px);
    padding-bottom: 82px;
  }


  /* =========================================================
     BRAND
  ========================================================== */

  .haccretion-footer-brand {
    max-width: 390px;
  }

  .haccretion-footer-logo {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    color: #f5f5f7;
    text-decoration: none;
  }

  .haccretion-footer-logo img {
    display: block;
    width: 54px;
    height: auto;
    object-fit: contain;
  }

  .haccretion-footer-logo span {
    font-size: 22px;
    line-height: 1;
    font-weight: 600;
    letter-spacing: -.035em;
  }

  .haccretion-footer-brand p {
    margin: 27px 0 0;
    max-width: 360px;
    color: #86868b;
    font-size: 14px;
    line-height: 1.65;
    letter-spacing: -.01em;
  }

  .haccretion-footer-tagline {
    margin-top: 28px;
    color: #7CAE49;
    font-size: 11px;
    line-height: 1.4;
    font-weight: 600;
    letter-spacing: .02em;
  }


  /* =========================================================
     NAVIGATION
  ========================================================== */

  .haccretion-footer-navigation {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 12px;
  }

  .haccretion-footer-link {
    position: relative;
    min-height: 142px;
    padding: 25px 25px 23px;
    display: flex;
    flex-direction: column;
    overflow: hidden;

    border: 1px solid rgba(255,255,255,.09);
    border-radius: 22px;

    background:
      linear-gradient(
        145deg,
        rgba(255,255,255,.055),
        rgba(255,255,255,.022)
      );

    color: #f5f5f7;
    text-decoration: none;

    transition:
      transform .35s cubic-bezier(.2,.8,.2,1),
      background .35s ease,
      border-color .35s ease,
      box-shadow .35s ease;
  }

  .haccretion-footer-link:hover {
    transform: translateY(-3px);

    background:
      linear-gradient(
        145deg,
        rgba(255,255,255,.09),
        rgba(255,255,255,.045)
      );

    border-color: rgba(255,255,255,.17);

    box-shadow:
      0 18px 45px rgba(0,0,0,.24);
  }

  .haccretion-footer-link small {
    color: #86868b;
    font-size: 10px;
    line-height: 1;
    font-weight: 600;
    letter-spacing: .035em;
    text-transform: uppercase;
    transition: color .3s ease;
  }

  .haccretion-footer-link:hover small {
    color: #7CAE49;
  }

  .haccretion-footer-link strong {
    max-width: calc(100% - 38px);
    margin-top: auto;
    font-size: 19px;
    line-height: 1.18;
    font-weight: 600;
    letter-spacing: -.035em;
  }

  .haccretion-footer-link > span {
    position: absolute;
    right: 24px;
    bottom: 22px;
    color: #6e6e73;
    font-size: 18px;
    font-weight: 400;
    transition:
      color .3s ease,
      transform .3s ease;
  }

  .haccretion-footer-link:hover > span {
    color: #f5f5f7;
    transform: translateX(2px);
  }


  /* =========================================================
     FEATURED CARDS
  ========================================================== */

  .haccretion-footer-link.home-link {
    background:
      linear-gradient(
        145deg,
        rgba(124,174,73,.16),
        rgba(124,174,73,.055)
      );

    border-color: rgba(124,174,73,.24);
  }

  .haccretion-footer-link.home-link small {
    color: #7CAE49;
  }

  .haccretion-footer-link.home-link:hover {
    border-color: rgba(124,174,73,.48);

    box-shadow:
      0 18px 50px rgba(0,0,0,.26),
      0 0 50px rgba(124,174,73,.06);
  }


  .haccretion-footer-link.ecosystem-link {
    background:
      linear-gradient(
        145deg,
        rgba(124,174,73,.13),
        rgba(255,255,255,.025)
      );

    border-color: rgba(124,174,73,.22);
  }

  .haccretion-footer-link.ecosystem-link small {
    color: #7CAE49;
  }

  .haccretion-footer-link.ecosystem-link:hover {
    border-color: rgba(124,174,73,.45);

    box-shadow:
      0 18px 50px rgba(0,0,0,.26),
      0 0 50px rgba(124,174,73,.05);
  }


  /* =========================================================
     INVESTOR / FUNDING CARDS
  ========================================================== */

  .haccretion-footer-link.investor-link small,
  .haccretion-footer-link.funding-link small,
  .haccretion-footer-link.operating-plan-link small,
  .haccretion-footer-link.business-model-link small {
    color: #7CAE49;
  }

  .haccretion-footer-link.investor-link {
    border-color: rgba(124,174,73,.18);
  }

  .haccretion-footer-link.funding-link {
    background:
      linear-gradient(
        145deg,
        rgba(124,174,73,.11),
        rgba(255,255,255,.025)
      );

    border-color: rgba(124,174,73,.24);
  }

  .haccretion-footer-link.investor-link:hover,
  .haccretion-footer-link.funding-link:hover,
  .haccretion-footer-link.operating-plan-link:hover,
  .haccretion-footer-link.business-model-link:hover {
    border-color: rgba(124,174,73,.45);

    box-shadow:
      0 18px 50px rgba(0,0,0,.26),
      0 0 45px rgba(124,174,73,.05);
  }


  /* =========================================================
     HACCRETION COMPANIES
  ========================================================== */

  .haccretion-footer-link.company-link {
    border-color: rgba(124,174,73,.16);
  }

  .haccretion-footer-link.company-link small {
    color: #7CAE49;
  }

  .haccretion-footer-link.company-link:hover {
    border-color: rgba(124,174,73,.42);

    box-shadow:
      0 18px 50px rgba(0,0,0,.26),
      0 0 42px rgba(124,174,73,.045);
  }


  /* =========================================================
     BOTTOM BAR
  ========================================================== */

  .haccretion-footer-bottom {
    padding-top: 27px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 35px;
    border-top: 1px solid rgba(255,255,255,.10);
  }

  .haccretion-footer-bottom p {
    margin: 0;
    color: #6e6e73;
    font-size: 11px;
    line-height: 1.5;
  }

  .haccretion-footer-bottom-links {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px 24px;
  }

  .haccretion-footer-bottom-links a {
    color: #86868b;
    text-decoration: none;
    font-size: 11px;
    line-height: 1.5;
    font-weight: 500;
    transition: color .2s ease;
  }

  .haccretion-footer-bottom-links a:hover {
    color: #f5f5f7;
  }


  /* =========================================================
     ACCESSIBILITY
  ========================================================== */

  .haccretion-footer-logo:focus-visible,
  .haccretion-footer-link:focus-visible,
  .haccretion-footer-bottom-links a:focus-visible {
    outline: 2px solid #7CAE49;
    outline-offset: 4px;
  }


  /* =========================================================
     TABLET
  ========================================================== */

  @media (max-width: 900px) {

    .haccretion-global-footer {
      padding-top: 78px;
    }

    .haccretion-footer-top {
      grid-template-columns: 1fr;
      gap: 58px;
    }

    .haccretion-footer-brand {
      max-width: 520px;
    }

  }


  /* =========================================================
     MOBILE
  ========================================================== */

  @media (max-width: 650px) {

    .haccretion-global-footer {
      padding: 64px 0 28px;
    }

    .haccretion-footer-shell {
      width: calc(100% - 30px);
    }

    .haccretion-footer-top {
      gap: 46px;
      padding-bottom: 55px;
    }

    .haccretion-footer-navigation {
      grid-template-columns: 1fr;
      gap: 10px;
    }

    .haccretion-footer-link {
      min-height: 118px;
      padding: 21px;
      border-radius: 18px;
    }

    .haccretion-footer-link > span {
      right: 21px;
      bottom: 19px;
    }

    .haccretion-footer-bottom {
      flex-direction: column;
      align-items: flex-start;
      gap: 20px;
    }

    .haccretion-footer-bottom-links {
      justify-content: flex-start;
      gap: 10px 20px;
    }

  }


  /* =========================================================
     REDUCED MOTION
  ========================================================== */

  @media (prefers-reduced-motion: reduce) {

    .haccretion-footer-link,
    .haccretion-footer-link > span {
      transition: none;
    }

    .haccretion-footer-link:hover {
      transform: none;
    }

  }


/* Reserve space below page content while the shared footer loads. */
[data-haccretion-footer]:not([data-loaded]) { min-height: 1100px; background: #050505; }
@media (max-width: 900px) { [data-haccretion-footer]:not([data-loaded]) { min-height: 1400px; } }
@media (max-width: 650px) { [data-haccretion-footer]:not([data-loaded]) { min-height: 2300px; } }
