/* One purposeful footer. Scoped beyond the reviewed-page legacy overrides. */
body .cp-site .cp-footer.gp-footer-refined {
  display: grid !important;
  grid-template-columns: minmax(200px, .85fr) minmax(0, 2fr);
  align-items: start !important;
  gap: 34px clamp(34px, 6vw, 90px);
  padding: 42px var(--cp-gutter, 32px) 22px !important;
  border-top: 1px solid #ffffff1f !important;
  background: #080a0d !important;
}

body .cp-site .gp-footer-refined .gp-footer-identity {
  min-width: 0;
  max-width: 330px;
}

body .cp-site .gp-footer-refined .gp-footer-wordmark {
  display: inline-block;
  color: #f4f0e9 !important;
  font: 400 clamp(25px, 2.35vw, 34px)/1.08 var(--cp-display, sans-serif);
  letter-spacing: .025em;
  text-transform: uppercase;
  text-decoration: none;
}

body .cp-site .gp-footer-refined .gp-footer-identity .gp-footer-tagline {
  max-width: 31ch;
  margin: 12px 0 0;
  color: #aaaeb4 !important;
  font: 400 13px/1.65 var(--cp-body, sans-serif);
  letter-spacing: 0;
}

body .cp-site .gp-footer-refined .gp-footer-identity .gp-footer-join {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  min-height: 42px;
  margin-top: 20px;
  padding: 9px 16px;
  border: 1px solid #5bcff54d !important;
  border-radius: 4px;
  background: #5bcff50b;
  color: #8dddf7 !important;
  font: 500 13px/1.3 var(--cp-body, sans-serif);
  letter-spacing: .01em;
  text-decoration: none;
  text-transform: none;
}

body .cp-site .gp-footer-refined .gp-footer-join span {
  color: inherit !important;
}

body .cp-site .gp-footer-refined .gp-footer-links--desktop {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: start;
  gap: clamp(18px, 3vw, 42px);
  margin: 0;
  padding: 0;
}

body .cp-site .gp-footer-refined .gp-footer-links--mobile {
  display: none;
}

body .cp-site .gp-footer-refined .gp-footer-column h2,
body .cp-site .gp-footer-refined .gp-footer-disclosure summary {
  margin: 0 0 10px;
  color: #83d7f5 !important;
  font: 600 11px/1.5 var(--cp-body, sans-serif);
  letter-spacing: .09em;
  text-transform: uppercase;
}

body .cp-site .gp-footer-refined .gp-footer-group-links {
  display: flex;
  flex-direction: column;
  gap: 0;
}

body .cp-site .gp-footer-refined .gp-footer-group-links a {
  display: flex;
  align-items: center;
  min-height: 35px;
  padding: 7px 0;
  border: 0 !important;
  background: transparent !important;
  color: #c8cbd0 !important;
  font: 400 13px/1.4 var(--cp-body, sans-serif);
  letter-spacing: 0;
  text-transform: none;
  text-decoration: none;
  overflow-wrap: anywhere;
}

body .cp-site .gp-footer-refined .gp-footer-utility {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 6px 24px;
  padding-top: 16px;
  border-top: 1px solid #ffffff18 !important;
}

body .cp-site .gp-footer-refined .gp-footer-utility small {
  color: #858b93 !important;
  font: 400 10px/1.6 var(--cp-body, sans-serif);
  letter-spacing: .025em;
}

body .cp-site .gp-footer-refined .gp-footer-utility-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px 22px;
}

body .cp-site .gp-footer-refined .gp-footer-utility-links a {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 32px;
  color: #a9afb7 !important;
  font: 400 11px/1.4 var(--cp-body, sans-serif);
  letter-spacing: 0;
  text-decoration: none;
}

body .cp-site .gp-footer-refined .gp-footer-utility-links span {
  color: inherit !important;
}

body .cp-site .gp-footer-refined :is(a:hover, a[aria-current="page"]) {
  color: #8dddf7 !important;
  text-decoration: underline;
  text-underline-offset: 4px;
}

body .cp-site .gp-footer-refined :is(a, summary):focus-visible {
  outline: 2px solid #8dddf7;
  outline-offset: 5px;
  border-radius: 2px;
}

.gp-footer-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

@media (max-width: 900px) {
  body .cp-site .cp-footer.gp-footer-refined {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  body .cp-site .gp-footer-refined .gp-footer-identity {
    max-width: none;
  }
}

@media (max-width: 600px) {
  body .cp-site .cp-footer.gp-footer-refined {
    gap: 24px;
    padding: 32px 22px 18px !important;
  }

  body .cp-site .gp-footer-refined .gp-footer-wordmark {
    font-size: 27px;
  }

  body .cp-site .gp-footer-refined .gp-footer-identity .gp-footer-tagline {
    max-width: 37ch;
    margin-top: 10px;
  }

  body .cp-site .gp-footer-refined .gp-footer-identity .gp-footer-join {
    margin-top: 16px;
    min-height: 44px;
  }

  body .cp-site .gp-footer-refined .gp-footer-links--desktop {
    display: none;
  }

  body .cp-site .gp-footer-refined .gp-footer-links--mobile {
    display: block;
    border-top: 1px solid #ffffff1f;
  }

  body .cp-site .gp-footer-refined .gp-footer-disclosure {
    border-bottom: 1px solid #ffffff1f;
  }

  body .cp-site .gp-footer-refined .gp-footer-disclosure summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 51px;
    margin: 0;
    padding: 12px 0;
    cursor: pointer;
    list-style: none;
  }

  body .cp-site .gp-footer-refined .gp-footer-disclosure summary::-webkit-details-marker {
    display: none;
  }

  body .cp-site .gp-footer-refined .gp-footer-disclosure summary span {
    color: #83d7f5 !important;
    font: 400 19px/1 var(--cp-body, sans-serif);
    transition: transform 150ms ease;
  }

  body .cp-site .gp-footer-refined .gp-footer-disclosure[open] summary span {
    transform: rotate(45deg);
  }

  body .cp-site .gp-footer-refined .gp-footer-disclosure .gp-footer-group-links {
    padding: 0 0 12px 2px;
  }

  body .cp-site .gp-footer-refined .gp-footer-group-links a {
    min-height: 44px;
    font-size: 14px;
  }

  body .cp-site .gp-footer-refined .gp-footer-utility {
    gap: 4px;
    padding-top: 0;
    border-top: 0 !important;
  }

  body .cp-site .gp-footer-refined .gp-footer-utility small {
    flex-basis: 100%;
    font-size: 9px;
  }

  body .cp-site .gp-footer-refined .gp-footer-utility-links a {
    min-height: 44px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body .cp-site .gp-footer-refined * {
    transition: none !important;
  }
}

@media print {
  body .cp-site .cp-footer.gp-footer-refined {
    display: none !important;
  }
}

/* A small, explicit primary navigation; secondary destinations stay accessible. */
.gp-more-menu{position:relative}.gp-more-menu>summary{list-style:none;cursor:pointer;min-height:44px;display:flex;align-items:center;gap:9px;font:600 14px/1.4 var(--cp-body);color:#e9eeeb}.gp-more-menu>summary::-webkit-details-marker{display:none}.gp-more-menu>div{position:absolute;top:calc(100% + 12px);right:0;width:230px;max-width:calc(100vw - 44px);max-height:calc(100dvh - var(--gp-sticky-header-offset,80px) - 28px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;display:flex;flex-direction:column;padding:12px;background:#10171e;border:1px solid #405760;box-shadow:0 18px 35px #0008;z-index:50}.cp-header .gp-more-menu>div>a{display:flex;min-height:44px;align-items:center;padding:10px 12px;text-decoration:none;color:#dce7e8;font:500 14px/1.4 var(--cp-body)}.gp-more-menu>div>a:hover{background:#ffffff0c}.gp-more-menu :focus-visible{outline:2px solid #83d6e1;outline-offset:3px}
@media(min-width:821px){.cp-header>.cp-menu{display:none!important}.cp-header .cp-primary-nav{display:flex!important;margin-left:auto}}
@media(max-width:820px){.cp-header .cp-primary-nav{display:none!important}}

@media(min-width:821px) and (max-width:1100px){.cp-header{gap:20px}.cp-header .cp-primary-nav{gap:20px}.cp-header .cp-primary-nav>a,.cp-header .gp-more-menu>summary{font-size:12px}.cp-header .reborn-header-join{font-size:12px;padding-inline:16px}.cp-header>a:first-child{min-width:0}.cp-header>a:first-child strong{font-size:21px}.cp-header>a:first-child small{font-size:8px}}

/* Quiet directory after the page's own invitation; comfortable targets on every screen. */
body .cp-site .cp-footer.gp-footer-refined{padding-top:48px!important;gap:32px clamp(34px,6vw,90px)}
body .cp-site .gp-footer-refined .gp-footer-group-links a{min-height:40px;font-size:13px;color:#b5c3cb!important}
body .cp-site .gp-footer-refined .gp-footer-column h2{margin-bottom:14px;font-size:10px;color:#93b5c0!important;letter-spacing:.14em}
body .cp-site .gp-footer-refined .gp-footer-identity .gp-footer-join{border-radius:0;background:transparent;padding:7px 0;border-width:0 0 1px!important;min-height:44px}
body .cp-site .gp-footer-refined .gp-footer-utility small{font-size:11px;line-height:1.7}
@media(max-width:600px){body .cp-site .cp-footer.gp-footer-refined{padding-top:34px!important}body .cp-site .gp-footer-refined .gp-footer-group-links a{min-height:44px;font-size:14px}body .cp-site .gp-footer-refined .gp-footer-utility small{font-size:10px}}
