.innovation {
  width: var(--page);
  margin: var(--section-space) auto 0;
  padding: clamp(48px, 6vw, 78px);
  color: var(--white);
  background: var(--dark);
}

.innovation-intro {
  display: grid;
  grid-template-columns: minmax(260px, .65fr) 1fr;
  gap: clamp(48px, 8vw, 120px);
}

.innovation .section-index { color: #cf806a; }
.innovation h2 { max-width: 460px; font-size: clamp(40px, 5vw, 70px); }
.innovation-copy > p { max-width: 690px; margin: 0; color: #cacac2; font-size: 17px; }

.innovation-copy .private-access-note {
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid #50534e;
  color: #aeb0aa;
  font-size: 14px;
}

.private-access-note strong { color: var(--white); }
.internal-apps { margin-top: clamp(54px, 7vw, 88px); }

.internal-app-grid,
.internal-apps-more {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid #50534e;
  border-left: 1px solid #50534e;
}

.internal-apps-more[hidden] { display: none; }

.internal-app-card {
  display: flex;
  min-width: 0;
  min-height: 520px;
  padding: clamp(24px, 3vw, 38px);
  border-right: 1px solid #50534e;
  border-bottom: 1px solid #50534e;
  flex-direction: column;
}

.internal-app-card header {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

.app-icon {
  display: grid;
  width: 56px;
  height: 56px;
  border: 1px solid #8f5c4f;
  color: #e4a493;
  font-family: var(--display);
  font-size: 19px;
  letter-spacing: -.02em;
  place-items: center;
}

.private-label {
  margin: 0 0 9px;
  color: #cf806a;
  font-size: 9px;
  font-weight: 750;
  letter-spacing: .09em;
  line-height: 1.4;
  text-transform: uppercase;
}

.internal-app-card h3 {
  margin: 0;
  font-family: var(--display);
  font-size: clamp(25px, 2.4vw, 34px);
  font-weight: 500;
  letter-spacing: -.025em;
  line-height: 1.08;
}

.app-purpose {
  margin: 34px 0 26px;
  color: #e2e2dc;
  font-family: var(--display);
  font-size: clamp(19px, 1.7vw, 24px);
  line-height: 1.4;
}

.internal-app-card dl { margin: 0 0 34px; }
.internal-app-card dl div { padding: 13px 0; border-top: 1px solid #454842; }

.internal-app-card dt {
  margin-bottom: 5px;
  color: #92958e;
  font-size: 9px;
  font-weight: 750;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.internal-app-card dd { margin: 0; color: #c8cac4; font-size: 13px; line-height: 1.55; }

.private-app-link {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: center;
  margin-top: auto;
  padding-top: 17px;
  border-top: 1px solid #8f5c4f;
  color: #f0b2a1;
  font-size: 11px;
  font-weight: 750;
  letter-spacing: .06em;
  text-decoration: none;
  text-transform: uppercase;
  transition: color .2s ease;
}

.private-app-link:hover { color: var(--white); }

.internal-tools-toggle {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  width: 100%;
  margin-top: 22px;
  padding: 18px 0;
  border: 0;
  border-top: 1px solid #8f5c4f;
  border-bottom: 1px solid #8f5c4f;
  color: var(--white);
  background: transparent;
  font-size: 11px;
  font-weight: 750;
  letter-spacing: .08em;
  text-align: left;
  text-transform: uppercase;
  cursor: pointer;
}

.internal-tools-toggle span:last-child { color: #cf806a; font-size: 22px; font-weight: 400; line-height: .7; }
.internal-tools-toggle[aria-expanded="true"] span:last-child { transform: rotate(45deg); }

@media (max-width: 960px) {
  .innovation-intro { grid-template-columns: 1fr; }
  .internal-app-card { min-height: 550px; }
}

@media (max-width: 760px) {
  .internal-app-grid, .internal-apps-more { grid-template-columns: 1fr; }
  .internal-app-card { min-height: 0; }
}

@media (max-width: 620px) {
  .innovation { margin-top: 76px; padding: 42px 24px; }
  .internal-apps { margin-top: 46px; }
  .internal-app-card { padding: 26px 20px 28px; }
  .internal-app-card header { grid-template-columns: 48px minmax(0, 1fr); gap: 14px; }
  .app-icon { width: 48px; height: 48px; font-size: 17px; }
  .private-label { font-size: 8px; }
  .app-purpose { margin-top: 28px; }
}

@media (prefers-reduced-motion: reduce) {
  .private-app-link { transition: none; }
}
