/* Click-through objective cards; all content remains visible without JavaScript. */
.index-page #objectives {
  overflow: hidden;
  background: radial-gradient(ellipse at 90% 85%, #dfeddf, transparent 55%), #f8fbfc;
}
.index-page #objectives::before { content: none; }

.objectives-deck { position: relative; outline: none; }
.objectives-deck-stage { position: relative; isolation: isolate; }
.objectives-slide {
  position: relative;
  display: flex;
  min-height: 510px;
  margin-bottom: 24px;
  padding: clamp(30px, 5vw, 72px);
  overflow: hidden;
  flex-direction: column;
  justify-content: space-between;
  gap: 48px;
  border: 1px solid rgba(6, 45, 75, .1);
  border-radius: 32px;
  background: #c9e8e8;
  color: #062d4b;
}
.objectives-slide:nth-child(2) { background: #d9eda9; }
.objectives-slide:nth-child(3) { background: #f4dfaa; }
.objectives-slide:nth-child(4) { background: #c4dcef; }
.objectives-slide[hidden], .objectives-deck [hidden] { display: none !important; }
.objectives-slide-top { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.objectives-slide-top > span { font-size: 11px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; }
.objectives-slide-top > i {
  display: grid; width: 64px; height: 64px; place-items: center;
  border: 1px solid rgba(6, 45, 75, .2); border-radius: 50%; font-size: 26px;
}
.objectives-slide-copy { position: relative; z-index: 1; max-width: 820px; }
.index-page #objectives .objectives-slide h3 {
  margin: 0 0 26px; max-width: 800px; color: #041d31;
  font: 500 clamp(40px, 5.5vw, 80px)/1.03 "Poppins", sans-serif; letter-spacing: -.06em;
}
.objectives-slide h3 em { font-family: Georgia, "Times New Roman", serif; font-weight: 400; color: #2f6a48; }
.index-page #objectives .objectives-slide p { max-width: 660px; margin: 0; color: #294e5d; font-size: clamp(16px, 1.4vw, 20px); line-height: 1.75; }
.objectives-slide-watermark { position: absolute; right: 20px; bottom: -45px; color: rgba(6, 45, 75, .06); font: 700 clamp(180px, 25vw, 360px)/1 "Poppins", sans-serif; letter-spacing: -.1em; pointer-events: none; }
.objectives-deck.is-enhanced { margin: 0 14px; }
.objectives-deck.is-enhanced .objectives-deck-stage::before,
.objectives-deck.is-enhanced .objectives-deck-stage::after {
  content: ""; position: absolute; inset: 0; z-index: -1; border-radius: 32px;
  border: 1px solid #b7d1d4; background: #dfebea; transform: rotate(-2deg);
}
.objectives-deck.is-enhanced .objectives-deck-stage::after { background: #eaf0e2; transform: rotate(2deg); }
.objectives-deck.is-enhanced .objectives-slide { margin-bottom: 0; box-shadow: 0 24px 55px rgba(4, 29, 49, .1); }
.objectives-slide.is-entering { animation: objectiveCardIn .65s cubic-bezier(.22, 1, .36, 1) both; }
.objectives-card-next { position: absolute; inset: 0 0 90px; z-index: 2; width: 100%; border: 0; border-radius: 32px; background: transparent; cursor: pointer; }
.objectives-deck-controls { position: relative; display: flex; height: 90px; align-items: center; justify-content: space-between; gap: 20px; }
.objectives-deck-hint { display: flex; align-items: center; gap: 12px; color: #486674; font-size: 12px; }
.objectives-deck-dots, .objectives-deck-navigation { display: flex; align-items: center; gap: 12px; }
.objectives-deck-dots button { position: relative; width: 28px; height: 44px; padding: 0; border: 0; background: transparent; }
.objectives-deck-dots button::after { content: ""; display: block; height: 4px; border-radius: 4px; background: #c0ced0; transition: background .2s, transform .2s; }
.objectives-deck-dots button[aria-pressed="true"]::after { background: #2f6a48; transform: scaleY(1.5); }
.objectives-deck-count { margin-right: 12px; color: #56717d; font-size: 12px; letter-spacing: .08em; font-variant-numeric: tabular-nums; }
.objectives-deck-count > span { color: #062d4b; font-weight: 700; }
.objectives-deck-navigation button { display: grid; width: 48px; height: 48px; place-items: center; border: 1px solid #acbfc5; border-radius: 50%; background: transparent; color: #062d4b; transition: background .2s; }
.objectives-deck-navigation button:hover { background: #d9eda9; }
.objectives-deck button:focus-visible, .objectives-deck:focus-visible { outline: 3px solid #007ea5; outline-offset: 5px; }
@keyframes objectiveCardIn { from { opacity: .15; transform: translateX(var(--objective-enter-x, 16px)); } to { opacity: 1; transform: none; } }
@media (max-width: 767px) {
  .objectives-deck.is-enhanced { margin-inline: 6px; }
  .objectives-slide { min-height: 540px; padding: 30px 26px; border-radius: 24px; gap: 35px; }
  .objectives-slide-top > i { width: 48px; height: 48px; font-size: 22px; }
  .objectives-deck-hint { display: none; }
  .objectives-deck-controls { gap: 10px; }
  .objectives-deck-dots { gap: 6px; }
  .objectives-deck-dots button { width: 22px; }
  .objectives-deck-navigation { gap: 8px; }
  .objectives-deck-count { margin-right: 2px; }
  .objectives-deck-navigation button { width: 42px; height: 42px; }
}
/* Side-by-side editorial introduction and a generous, layered card deck. */
.index-page #objectives {
  position: relative;
  background: radial-gradient(ellipse at 0% 15%, #dff0ee, transparent 45%), radial-gradient(ellipse at 95% 90%, #e5edd7, transparent 45%), #fafbf5;
}
.index-page #objectives > .objectives {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  align-items: center;
  gap: clamp(40px, 6vw, 90px);
}
.index-page #objectives .objectives-header { position: relative; display: block; margin: 0; padding-bottom: 70px; text-align: left; }
.index-page #objectives .objectives-heading-kicker { display: flex; align-items: center; gap: 14px; margin: 0 0 30px; color: #386573; font: 500 10px/1.5 "Poppins", sans-serif; letter-spacing: .16em; text-transform: uppercase; }
.objectives-heading-kicker > i { display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid #9cc9ce; border-radius: 10px; color: #097d9b; font-size: 19px; background: #e1f0ee; }
.index-page #objectives .objectives-header::after { content: ""; display: block; width: min(100%, 240px); height: 1px; margin-top: 30px; background: linear-gradient(90deg, #3e9db1, #bfd7cf 65%, transparent); }
.index-page #objectives .objective-badge { display: inline-flex; align-items: center; gap: 12px; margin-bottom: 34px; padding: 0; border: 0; background: none; box-shadow: none; color: #2f6a48; font-size: 11px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; }
.index-page #objectives .objective-badge > i { display: grid; width: 38px; height: 38px; place-items: center; border: 1px solid #a8c6b0; border-radius: 50%; font-size: 18px; }
.index-page #objectives h2#objectives-heading.objectives-title {
  position: relative;
  isolation: isolate;
  margin: 0;
  color: #062d4b !important;
  font-family: "Bricolage Grotesque", "Poppins", sans-serif !important;
  font-size: clamp(52px, 5.7vw, 84px) !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: -.065em !important;
  text-wrap: nowrap;
}
.index-page #objectives .objectives-title-lead {
  position: relative;
  display: inline-block;
  margin-bottom: .09em;
  color: #167e9b;
  font: italic 400 .76em/1.05 Georgia, "Times New Roman", serif;
  letter-spacing: -.045em;
}
.index-page #objectives .objectives-title-lead::before {
  content: none;
}
.index-page #objectives h2#objectives-heading.objectives-title .highlight {
  display: inline-block;
  position: relative;
  color: #062d4b !important;
  font-family: "Bricolage Grotesque", "Poppins", sans-serif !important;
  font-size: 1em !important;
  font-style: normal !important;
  font-weight: 800 !important;
  letter-spacing: -.065em !important;
  text-shadow: none;
  transform: none;
}
.index-page #objectives .objectives-title-dot { color: #179db6; }
.index-page #objectives h2#objectives-heading.objectives-title .highlight::after {
  content: none;
}
.index-page #objectives .objectives-intro-note { margin: 30px 0 40px; color: #46616c; font-size: 16px; line-height: 1.8; }
.objectives-explore-note { display: flex; align-items: center; gap: 17px; }
.objectives-explore-note > span { display: grid; flex: 0 0 54px; height: 54px; place-items: center; border: 1px solid #acc7b4; border-radius: 50%; background: #e3eed5; color: #2f6a48; font-size: 25px; }
.index-page #objectives .objectives-explore-note p { margin: 0; color: #062d4b; font-size: 12px; font-weight: 500; line-height: 1.8; }
.objectives-explore-note small { color: #5b737b; font-size: 11px; font-weight: 400; }
.index-page #objectives .objectives-deck { min-width: 0; }
.index-page #objectives .objectives-slide { min-height: 555px; padding: clamp(28px, 3.5vw, 50px); gap: 50px; border: 1px solid #ffffffaa; border-radius: 34px; background: linear-gradient(145deg, #d6f0ec, #acdce1); }
.index-page #objectives .objectives-slide:nth-child(2) { background: linear-gradient(145deg, #e9f4ce, #c8e695); }
.index-page #objectives .objectives-slide:nth-child(3) { background: linear-gradient(145deg, #f9edce, #efd18e); }
.index-page #objectives .objectives-slide:nth-child(4) { background: linear-gradient(145deg, #e0edf5, #b0d0e7); }
.objectives-slide::before { content: ""; position: absolute; top: -110px; right: -100px; width: 330px; height: 330px; border: 1px solid #062d4b12; border-radius: 50%; box-shadow: 0 0 0 45px #ffffff16, 0 0 0 90px #ffffff0d; pointer-events: none; }
.objectives-slide-top { position: relative; z-index: 1; }
.objectives-slide-top > span { padding-bottom: 12px; border-bottom: 1px solid #062d4b44; font-size: 10px; }
.objectives-slide-top > i { width: 74px; height: 74px; background: #ffffff66; border-color: #ffffffaa; box-shadow: 0 10px 20px #062d4b0a; font-size: 29px; transform: rotate(-8deg); }
.index-page #objectives .objectives-slide h3 { font-size: clamp(34px, 3.5vw, 53px); line-height: 1.05; margin-bottom: 24px; }
.index-page #objectives .objectives-slide p { font-size: 16px; line-height: 1.8; }
.objectives-slide-watermark { right: 16px; bottom: -25px; font-size: clamp(160px, 17vw, 260px); }
.objectives-deck.is-enhanced .objectives-deck-stage::before { inset: 10px -8px -3px; border-radius: 34px; background: #d8e5d0; transform: rotate(-5deg); }
.objectives-deck.is-enhanced .objectives-deck-stage::after { inset: 8px -8px -3px; border-radius: 34px; background: #e5eee0; transform: rotate(4deg); }
.objectives-deck.is-enhanced .objectives-slide { box-shadow: 0 30px 65px -20px #062d4b33; }
.objectives-deck-controls { height: 90px; padding-top: 10px; }
.objectives-deck-navigation button { width: 50px; height: 50px; background: #ffffff88; border-color: #b8ccca; }
.objectives-deck-navigation button:last-child { background: #062d4b; border-color: #062d4b; color: #fff; }
.objectives-deck-navigation button:last-child:hover { background: #2f6a48; }
.objectives-deck-dots button { width: 25px; }
.objectives-deck-count { font-size: 11px; white-space: nowrap; flex-shrink: 0; }
.objectives-deck-dots .objectives-autoplay { display: grid; place-items: center; width: 32px; height: 36px; border: 1px solid #a7c2c5; border-radius: 50%; color: #062d4b; background: #ffffff88; font-size: 18px; }
.objectives-deck-dots .objectives-autoplay::after { content: none; display: none; }
.objectives-deck-dots .objectives-autoplay:hover { background: #dcecef; }
.objectives-deck-dots .objectives-autoplay:disabled { opacity: .45; cursor: default; }
.index-page.dark-mode .objectives-deck-dots .objectives-autoplay { background: #183c4c; border-color: #51717a; color: #d4edf1; }
.index-page.dark-mode #objectives { background: radial-gradient(ellipse at 0% 15%, #153e48, transparent 60%), #071f32; }
.index-page.dark-mode #objectives h2#objectives-heading.objectives-title { color: #fff !important; }
.index-page.dark-mode #objectives .objectives-title-lead { color: #9ddbea; }
.index-page.dark-mode #objectives h2#objectives-heading.objectives-title .highlight { color: #f1f7f5 !important; }
.index-page.dark-mode #objectives .objectives-heading-kicker { color: #b5d7dc; }
.index-page.dark-mode #objectives .objectives-heading-kicker > i { color: #b1e7ee; background: #174451; border-color: #3b6975; }
.index-page.dark-mode #objectives .objectives-title-dot { color: #7ed3e5; }
.index-page.dark-mode #objectives .objectives-intro-note,
.index-page.dark-mode #objectives .objectives-explore-note p,
.index-page.dark-mode #objectives .objectives-explore-note small,
.index-page.dark-mode #objectives .objective-badge,
.index-page.dark-mode #objectives .objectives-deck-count,
.index-page.dark-mode #objectives .objectives-deck-count > span { color: #c7dadc; }
@media (max-width: 991px) {
  .index-page #objectives > .objectives { grid-template-columns: 1fr; gap: 55px; }
  .index-page #objectives .objectives-header { padding-bottom: 0; }
  .index-page #objectives .objectives-title { max-width: 620px; }
  .index-page #objectives .objectives-intro-note { margin: 24px 0; }
  .index-page #objectives .objectives-slide { min-height: 500px; }
  .index-page #objectives .objectives-slide h3 { max-width: 550px; font-size: clamp(38px, 6vw, 53px); }
}
@media (max-width: 767px) {
  .index-page #objectives h2#objectives-heading.objectives-title { font-size: clamp(44px, 12.8vw, 74px) !important; }
  .index-page #objectives .objectives-heading-kicker { font-size: 9px; gap: 12px; margin-bottom: 25px; }
  .index-page #objectives .objectives-slide { min-height: 530px; padding: 30px 26px; border-radius: 26px; }
  .index-page #objectives .objectives-slide h3 { font-size: clamp(33px, 9vw, 43px); }
  .objectives-slide-top > i { width: 54px; height: 54px; font-size: 23px; }
  .objectives-deck.is-enhanced .objectives-deck-stage::before,
  .objectives-deck.is-enhanced .objectives-deck-stage::after { border-radius: 26px; }
  .objectives-deck-navigation button { width: 42px; height: 42px; }
  .objectives-deck-dots button { width: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  .objectives-slide.is-entering { animation: none; }
  .objectives-deck button, .objectives-deck button::after { transition: none; }
}
@media (max-width: 400px) {
  .objectives-deck-dots { gap: 4px; }
  .objectives-deck-dots button[data-objective-index] { width: 16px; }
  .objectives-deck-dots .objectives-autoplay { width: 30px; height: 34px; }
  .objectives-deck-navigation { gap: 5px; }
  .objectives-deck-navigation button { width: 38px; height: 38px; }
  .objectives-deck-count { margin-right: 0; font-size: 10px; }
}
