/* Australia Awards Africa — Applications page.
   Scoped to .aaa-apps-*; the only global rule is the header CTA hide. */

.aaa-apps-hero {
  position: relative;
  overflow: hidden;
  padding: 56px 0;
  color: var(--aa-white);
}
.aaa-apps-hero--open {
  background: linear-gradient(115deg, var(--aa-teal) 0%, var(--aa-navy) 100%);
}
.aaa-apps-hero--closed {
  background: linear-gradient(115deg, var(--aa-navy) 0%, #0d4a68 100%);
}
.aaa-apps-hero__angle {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: auto;
  aspect-ratio: 138.31 / 380;
  pointer-events: none;
}
.aaa-apps-hero__star {
  position: absolute;
  right: 48px;
  bottom: 32px;
  width: 56px;
  height: 56px;
  margin: 0;
  background-color: rgba(255, 255, 255, .18);
  pointer-events: none;
}
.aaa-apps-hero__inner {
  position: relative;
  z-index: 1;
  max-width: 820px;
}
.aaa-apps-status {
  display: inline-block;
  padding: 8px 14px;
  background: var(--aa-sky);
  color: var(--aa-navy);
  font: 700 13px/1 var(--aa-sans);
  letter-spacing: .08em;
  text-transform: uppercase;
}
.aaa-apps-hero--closed .aaa-apps-status {
  background: var(--aa-cream);
}
.aaa-apps-hero__message {
  margin: 18px 0 28px;
  font-family: var(--aa-serif);
  font-size: 30px;
  line-height: 1.25;
  color: var(--aa-white);
}
.aaa-apps-hero__message p {
  margin: 0;
}
.aaa-apps-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}
/* The eligibility ghost CTA stays white on the hero gradient; the brand
   ghost hover inverts to navy on a white background. */
body.aaa-brand .aaa-apps-hero .aa-btn--ghost {
  color: var(--aa-white);
}
body.aaa-brand .aaa-apps-hero .aa-btn--ghost:hover,
body.aaa-brand .aaa-apps-hero .aa-btn--ghost:focus-visible {
  background: var(--aa-white);
  color: var(--aa-navy);
}
.aaa-apps-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 56px;
  padding: 56px 0 72px;
  align-items: start;
}
.aaa-apps-content {
  min-width: 0;
  max-width: 760px;
}
.aaa-apps-content h2 {
  margin: 0 0 18px;
  color: var(--aa-navy);
  font-family: var(--aa-serif);
  font-size: 30px;
  font-weight: 400;
}
.aaa-apps-body h2 {
  margin-top: 1.4em;
}
.aaa-apps-body h2:first-child {
  margin-top: 0;
}
.aaa-apps-body ul {
  padding-left: 1.2em;
}
.aaa-apps-body a {
  color: var(--aa-teal);
}
.aaa-apps-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
.aaa-apps-action {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 22px;
  background: var(--aa-white);
  border: 1px solid var(--aa-line);
  box-shadow: var(--aa-shadow);
  text-decoration: none;
}
.aaa-apps-action:hover,
.aaa-apps-action:focus-visible {
  border-color: var(--aa-teal);
}
.aaa-apps-action__title {
  font: 700 18px/1.2 var(--aa-sans);
  color: var(--aa-navy);
}
.aaa-apps-action__text {
  color: var(--aa-grey-dark);
  font-size: 15px;
  line-height: 1.5;
}
.aaa-apps-sidebar {
  position: sticky;
  top: 24px;
  display: grid;
  gap: 20px;
}
.aaa-apps-card {
  padding: 22px;
  background: var(--aa-white);
  border: 1px solid var(--aa-line);
  box-shadow: var(--aa-shadow);
}
.aaa-apps-card h2 {
  margin: 0 0 14px;
  color: var(--aa-navy);
  font-family: var(--aa-serif);
  font-size: 22px;
  font-weight: 400;
}
.aaa-apps-card--cta {
  background: var(--aa-navy);
}
.aaa-apps-page .aaa-apps-card--cta h2 {
  color: var(--aa-white);
}
.aaa-apps-dates {
  margin: 0;
}
.aaa-apps-dates dt {
  margin-top: 10px;
  color: var(--aa-grey-dark);
  font: 700 13px/1.2 var(--aa-sans);
  letter-spacing: .06em;
  text-transform: uppercase;
}
.aaa-apps-dates dt:first-child {
  margin-top: 0;
}
.aaa-apps-dates dd {
  margin: 4px 0 0;
  color: var(--aa-ink);
  line-height: 1.5;
}
.aaa-apps-links {
  margin: 0;
  padding: 0;
  list-style: none;
}
.aaa-apps-links li {
  border-bottom: 1px solid var(--aa-line);
}
.aaa-apps-links li:last-child {
  border-bottom: 0;
}
.aaa-apps-links a {
  display: block;
  padding: 10px 0;
  color: var(--aa-teal);
  text-decoration: none;
}
.aaa-apps-links a:hover,
.aaa-apps-links a:focus-visible {
  color: var(--aa-navy);
}
.aaa-apps-page a:focus-visible,
.aaa-apps-page button:focus-visible {
  outline: 3px solid var(--aa-focus);
  outline-offset: 3px;
}

/* Hide the header Alumni Register CTA only while the plugin is open and the
   hide setting is enabled. The body class is added by the plugin. */
body.aaa-applications-open .aa-header__ctas a[href*="awardsCMS/alumni"],
body.aaa-applications-open .aa-nav__ctas a[href*="awardsCMS/alumni"] {
  display: none !important;
}

@media (max-width: 991px) {
  .aaa-apps-layout {
    grid-template-columns: 1fr;
    gap: 40px;
    padding: 40px 0 56px;
  }
  .aaa-apps-sidebar {
    position: static;
  }
}

@media (max-width: 600px) {
  .aaa-apps-hero {
    padding: 40px 0;
  }
  .aaa-apps-hero__message {
    font-size: 24px;
  }
  .aaa-apps-actions {
    grid-template-columns: 1fr;
  }
  .aaa-apps-hero__star {
    right: 18px;
    bottom: 18px;
    width: 40px;
    height: 40px;
  }
}
