@font-face {
  font-family: Manrope;
  src: url("assets/manrope-regular.ttf") format("truetype");
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: Manrope;
  src: url("assets/manrope-semibold.ttf") format("truetype");
  font-weight: 500 800;
  font-display: swap;
}
:root {
  color-scheme: dark;
  --bg: #080808;
  --text: #efefef;
  --muted: #aaaaaa;
  --line: #ffffff20;
  --silver: #dcdcdc;
  --font: Manrope, Arial, sans-serif;
}
* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: 30.4px;
}
body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font: 15px/1.75 var(--font);
  -webkit-font-smoothing: antialiased;
}
a {
  color: inherit;
  text-decoration: none;
}
button {
  font: inherit;
  cursor: pointer;
}
a,
button,
summary {
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}
::selection {
  background: #dbdbdb;
  color: #080808;
}
:focus-visible {
  outline: 2px solid #ededed;
  outline-offset: 6px;
}
h1,
h2,
h3,
p {
  margin-top: 0;
}
h1,
h2,
h3 {
  text-wrap: balance;
}
strong {
  font-weight: 600;
}
.wrap {
  width: calc(100% - 106.4px);
  max-width: 1261.6px;
  margin-inline: auto;
}
.header {
  height: 83.6px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 5;
  gap: 28.5px;
}
.brand-lockup {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
}
.brand-lockup img {
  width: 48.45px;
  height: 48.45px;
  object-fit: contain;
  display: block;
}
.wordmark {
  font-size: 20.9px;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1;
}
.glass {
  background: linear-gradient(115deg, #ffffff13, #ffffff04);
  border: 1px solid #ffffff21;
  box-shadow:
    inset 0 1px 0 #ffffff14,
    0 10px 33.25px #00000044;
  backdrop-filter: blur(19px);
  -webkit-backdrop-filter: blur(19px);
}
.nav {
  display: flex;
  gap: 28.5px;
  padding: 10px 23.75px;
  border-radius: 94.05px;
  font-size: 11px;
  color: #bdbdbd;
}
.nav a {
  transition: color 0.2s;
}
.nav a:hover {
  color: #ffffff;
}
.header-contact {
  display: inline-flex;
  align-items: center;
  gap: 18.05px;
  font-size: 11px;
  min-height: 41.8px;
}
.header-contact span {
  font-size: 17.1px;
}
.header-contact:hover {
  color: #ffffff;
  text-decoration: underline;
  text-underline-offset: 6px;
}
.hero {
  position: relative;
  min-height: 684px;
  height: calc(100svh - 83.6px);
  max-height: 893px;
  isolation: isolate;
  display: flex;
  align-items: center;
  overflow: clip;
}
.hero-image {
  position: absolute;
  inset: -30px -4% -28px 18%;
  z-index: -3;
}
.hero-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 66% 51%;
  will-change: transform;
}
.hero-shade {
  position: absolute;
  inset: -40px 0 -35px;
  z-index: -2;
  background:
    linear-gradient(
      90deg,
      #080808 1%,
      #080808f0 16%,
      #0808088a 43%,
      transparent 72%
    ),
    linear-gradient(
      0deg,
      #080808 1%,
      transparent 17%,
      transparent 78%,
      #080808 100%
    );
}
.hero-content {
  padding-bottom: 61.75px;
  padding-top: 20.9px;
}
.eyebrow {
  text-transform: uppercase;
  letter-spacing: 0.19em;
  color: #c4c4c4;
  font-size: 10px;
  font-weight: 600;
  margin-bottom: 24.7px;
}
h1 {
  font-size: clamp(38px, 4.2vw, 59.85px);
  font-weight: 400;
  letter-spacing: -0.062em;
  line-height: 1.18;
  margin-bottom: 23.75px;
  max-width: 760px;
}
.silver-title {
  font-size: 1.2em;
  font-weight: 500;
  line-height: 1.07;
  display: inline-block;
  background: linear-gradient(
    110deg,
    #a9a9a9 2%,
    #fefefe 20%,
    #d8d8d8 36%,
    #8d8d8d 52%,
    #fdfdfd 64%,
    #c1c1c1 84%,
    #ebebeb 100%
  );
  background-size: 180% 100%;
  background-position: 45% 50%;
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  filter: drop-shadow(0 1px 1px #ffffff12);
}
.hero-description {
  font-size: 14px;
  line-height: 1.9;
  color: #b4b4b4;
  max-width: 467.4px;
  margin-bottom: 26.6px;
}
.hero-description strong {
  color: #e3e3e3;
  font-weight: 500;
}
.hero-actions {
  display: flex;
  align-items: center;
  gap: 23.75px;
}
.button {
  isolation: isolate;
  position: relative;
  overflow: hidden;
  display: inline-flex;
  justify-content: space-between;
  align-items: center;
  gap: 19px;
  min-height: 53.2px;
  padding: 12px 14px 12px 20.9px;
  border-radius: 8px;
  font-size: 11px;
  font-weight: 600;
  transition:
    box-shadow 0.3s,
    transform 0.3s,
    border-color 0.3s;
  flex-shrink: 0;
}
.button > span {
  position: relative;
  z-index: 1;
}
.button-arrow {
  display: grid;
  place-items: center;
  width: 29.45px;
  height: 29.45px;
  border-radius: 5px;
  font-size: 18.05px;
  line-height: 1;
  transition: transform 0.3s;
  flex-shrink: 0;
}
.primary {
  color: #151515;
  border: 1px solid #ebebeb;
  background: linear-gradient(
    112deg,
    #bebebe 0%,
    #f3f3f3 23%,
    #cacaca 51%,
    #f0f0f0 77%,
    #adadad 100%
  );
  box-shadow:
    inset 0 1px 0 #ffffff,
    inset 0 -2px 0 #7d7d7d,
    0 3px 8px #00000099,
    0 0 28.5px #ffffff09;
}
.primary .button-arrow {
  background: #2323230a;
  border: 1px solid #54545425;
  box-shadow: inset 0 1px 0 #ffffff99;
}
.button:before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: -100% -50%;
  background: linear-gradient(
    110deg,
    transparent 37%,
    #ffffffaa 49%,
    transparent 61%
  );
  transform: translateX(-70%);
  pointer-events: none;
  transition: transform 0.7s cubic-bezier(0.2, 0.6, 0.2, 1);
}
.button:hover:before,
.button:focus-visible:before {
  transform: translateX(70%);
}
.button:hover {
  transform: translateY(-3px);
  box-shadow:
    inset 0 1px 0 #ffffff88,
    0 10px 28.5px #00000088,
    0 0 22.8px #f1f1f121;
}
.button:hover .button-arrow {
  transform: rotate(45deg);
}
.button:active {
  transform: translateY(0);
}
.secondary {
  color: #e7e7e7;
  border: 1px solid #dfdfdf42;
  background: linear-gradient(
    115deg,
    #6b6b6b50,
    #30303040 40%,
    #a0a0a030 70%,
    #23232380
  );
  box-shadow:
    inset 0 1px 0 #ffffff29,
    inset 0 -1px 0 #000000,
    0 5px 12px #00000044;
}
.secondary .button-arrow {
  background: #ffffff07;
  border: 1px solid #ffffff14;
}
.text-link {
  display: inline-flex;
  align-items: center;
  gap: 16.15px;
  font-size: 11px;
  min-height: 41.8px;
  color: #c0c0c0;
}
.text-link span {
  font-size: 17.1px;
  transition: transform 0.25s;
}
.text-link:hover {
  color: #ffffff;
}
.text-link:hover span {
  transform: translateY(3px);
}
.hero-context {
  font-size: 10px;
  color: #9e9e9e;
  margin: 16.15px 0 0;
}
.hero-foot {
  position: absolute;
  bottom: 20.9px;
  left: 0;
  right: 0;
  display: flex;
  align-items: center;
  gap: 25.65px;
  font-size: 10px;
  letter-spacing: 0.04em;
  color: #b1b1b1;
}
.hairline {
  height: 1px;
  position: relative;
  flex: 1;
  background: linear-gradient(90deg, #f5f5f531, #ffffff18);
  overflow: visible;
}
.hairline i {
  position: absolute;
  inset: 0;
  transform-origin: left;
  background: linear-gradient(90deg, transparent, #fafafa 75%, #ffffff);
  box-shadow: 0 0 9px #f9f9f977;
}
.hero-foot > span:last-child {
  letter-spacing: 0.23em;
  font-size: 9px;
}
.section-space {
  padding-block: 99.75px;
}
h2 {
  font-size: clamp(32.3px, 3.6vw, 48.45px);
  line-height: 1.19;
  font-weight: 500;
  letter-spacing: -0.05em;
  margin-bottom: 20.9px;
}
h2 span {
  color: #9c9c9c;
}
.audience-intro {
  max-width: 712.5px;
  margin-bottom: 43.7px;
}
.audience-intro > p {
  font-size: 14px;
  color: var(--muted);
  max-width: 560.5px;
}
.situations {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22.8px;
}
.situation {
  display: flex;
  flex-direction: column;
  position: relative;
  padding: 25.65px 26.6px 18.05px;
  border: 1px solid #dadada1d;
  border-radius: 11px;
  background: linear-gradient(140deg, #ffffff08, #ffffff01);
  box-shadow: inset 0 1px 0 #ffffff08;
}
.situation-top {
  display: flex;
  align-items: center;
  gap: 15px;
  font-size: 10px;
  color: #a9a9a9;
  margin-bottom: 27.55px;
}
.situation-index {
  font-size: 12px;
  color: #e5e5e5;
  font-variant-numeric: tabular-nums;
  width: 25.65px;
  border-bottom: 1px solid #d9d9d94d;
  padding-bottom: 5px;
}
.situation h3 {
  font-size: 18.05px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: -0.025em;
  margin-bottom: 17.1px;
  min-height: 55.1px;
}
.situation > p {
  font-size: 12px;
  color: #adadad;
  line-height: 1.9;
  margin-bottom: 24.7px;
  min-height: 65.55px;
}
.situation-answer {
  margin-top: auto;
  padding-top: 19px;
  border-top: 1px solid #ffffff0e;
}
.situation-answer > span {
  display: block;
  font-size: 9px;
  letter-spacing: 0.035em;
  color: #e4e4e4;
  margin-bottom: 10px;
}
.situation-answer p {
  font-size: 12px;
  line-height: 1.85;
  color: #a3a3a3;
  margin-bottom: 18.05px;
}
.situation a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  font-size: 10px;
  min-height: 41.8px;
  color: #e6e6e6;
}
.situation a span {
  font-size: 19px;
  transition: transform 0.25s;
}
.situation a:hover span {
  transform: translate(3px, -3px);
}
.method {
  position: relative;
  overflow: clip;
  border-block: 1px solid #d4d4d40e;
  background: radial-gradient(
    ellipse at 17% 32%,
    #272727 0%,
    #121212 35%,
    #080808 70%
  );
}
.method-top {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 85.5px;
  align-items: center;
  margin-bottom: 57px;
}
.pareto-block {
  padding-left: 15px;
}
.pareto-label {
  font-size: 12px;
  color: #d7d7d7;
  margin: 0 0 8px;
}
.pareto {
  font-size: clamp(114px, 13.8vw, 189.05px);
  line-height: 1.05;
  font-weight: 500;
  letter-spacing: -0.105em;
  display: flex;
  align-items: center;
  white-space: nowrap;
}
.pareto span {
  background: linear-gradient(
    135deg,
    #fdfdfd 5%,
    #c7c7c7 35%,
    #5a5a5a 65%,
    #dadada 88%
  );
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
}
.pareto i {
  font-size: 0.73em;
  letter-spacing: -0.08em;
  font-style: normal;
  font-weight: 400;
  margin-inline: 15px;
  color: #666666;
}
.pareto-caption {
  margin: 21.85px 0 0;
  font-size: 15px;
  color: #acacac;
  line-height: 1.7;
}
.pareto-caption strong {
  font-weight: 400;
  color: #e2e2e2;
}
.method-copy h2 {
  font-size: clamp(30.4px, 3.15vw, 41.8px);
}
.method-copy > p {
  color: #b1b1b1;
  font-size: 13px;
  line-height: 1.9;
}
.method-copy .method-example {
  padding-left: 18.05px;
  border-left: 1px solid #dadada44;
  color: #d7d7d7;
  margin-top: 19.95px;
}
.method-copy .method-caveat {
  font-size: 10px;
  color: #a2a2a2;
  margin-bottom: 0;
}
.metal-panel {
  isolation: isolate;
  position: relative;
  overflow: hidden;
  border: 1px solid #eaeaea50;
  border-radius: 13px;
  background:
    linear-gradient(
      125deg,
      #c3c3c323 0%,
      #ffffff05 28%,
      #e1e1e112 48%,
      #ffffff04 62%,
      #76767630 100%
    ),
    linear-gradient(180deg, #2a2a2a, #131313 38%, #191919 100%);
  box-shadow:
    inset 0 1px 0 #fcfcfc77,
    inset 1px 0 0 #ffffff16,
    inset 0 -1px 0 #000000,
    0 19px 42.75px #00000055,
    0 0 0 3px #ffffff02;
  backdrop-filter: blur(22.8px);
  -webkit-backdrop-filter: blur(22.8px);
}
.metal-panel:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: repeating-linear-gradient(
    0deg,
    #ffffff01 0px,
    #ffffff01 1px,
    transparent 1px,
    transparent 3px
  );
  opacity: 0.3;
}
.metal-panel:after {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: 12px;
  pointer-events: none;
  border: 1px solid #ffffff08;
}
.panel-reflection {
  position: absolute;
  inset: -80% -100%;
  z-index: -1;
  pointer-events: none;
  background: linear-gradient(
    115deg,
    transparent 37%,
    #fbfbfb1a 45%,
    #ffffff50 49.5%,
    #fafafa21 53%,
    transparent 62%
  );
  transform: translateX(-38%) rotate(-7deg);
  opacity: 0.5;
}
.method-glass {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  padding: 34.2px 0;
  transform-style: preserve-3d;
}
.step {
  padding: 0 30.4px;
}
.step + .step {
  border-left: 1px solid #f0f0f025;
}
.step-number {
  display: flex;
  justify-content: space-between;
  font-size: 10px;
  color: #b9b9b9;
  margin-bottom: 27.55px;
}
.step-number span {
  font-size: 16.15px;
  color: #e2e2e2;
}
.step h3 {
  font-size: 17.1px;
  font-weight: 500;
  letter-spacing: -0.03em;
  margin-bottom: 13px;
}
.step p {
  font-size: 12px;
  line-height: 1.9;
  color: #bababa;
  margin-bottom: 0;
}
.method-note {
  font-size: 11px;
  text-align: center;
  color: #a9a9a9;
  margin: 23.75px 0 0;
}
.method-note strong {
  font-weight: 400;
  color: #e3e3e3;
}
.programs-heading {
  margin-bottom: 50.35px;
}
.programs-heading p {
  color: var(--muted);
  font-size: 13px;
  max-width: 617.5px;
}
.program-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1.13fr;
  gap: 19px;
  perspective: 1140px;
}
.program {
  padding: 28.5px 25.65px 25.65px;
  display: flex;
  flex-direction: column;
  transform-origin: center bottom;
  scroll-margin-top: 28.5px;
}
.program-type {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 31.35px;
  font-size: 9px;
  color: #c5c5c5;
}
.program-id {
  font-size: 22.8px;
  letter-spacing: -0.04em;
  color: #dadada55;
  line-height: 1;
}
.program h3 {
  font-size: 25.65px;
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: -0.04em;
  min-height: 59.85px;
  margin-bottom: 23.75px;
  color: #f3f3f3;
}
.program-promise {
  font-size: 15px;
  color: #e9e9e9;
  line-height: 1.7;
  margin-bottom: 19px;
  min-height: 48.45px;
  letter-spacing: -0.02em;
}
.program-description {
  font-size: 12px;
  color: #b5b5b5;
  line-height: 1.9;
  min-height: 106.4px;
  margin-bottom: 20.9px;
}
.program ul {
  list-style: none;
  display: grid;
  gap: 13px;
  padding: 20.9px 0 0;
  margin: 0 0 32.3px;
  border-top: 1px solid #e3e3e31c;
}
.program li {
  position: relative;
  padding-left: 18.05px;
  font-size: 11px;
  line-height: 1.7;
  color: #cdcdcd;
}
.program li:before {
  content: "+";
  position: absolute;
  left: 0;
  color: #bdbdbd;
}
.program-end {
  margin-top: auto;
}
.program-end > p {
  font-size: 10px;
  line-height: 1.8;
  color: #b3b3b3;
  min-height: 36.1px;
  margin-bottom: 19px;
}
.program .button {
  width: 100%;
  font-size: 10px;
  gap: 7px;
  padding-left: 15px;
}
.program .button-arrow {
  width: 26.6px;
  height: 26.6px;
  font-size: 16.15px;
}
.strategic {
  border-color: #e5e5e57a;
  background:
    linear-gradient(125deg, #e9e9e93b, #ffffff09 38%, #c6c6c621 68%, #ffffff06),
    linear-gradient(180deg, #414141, #181818 55%, #202020);
  box-shadow:
    inset 0 1px 0 #fdfdfdbb,
    inset 1px 0 0 #f7f7f733,
    0 20.9px 61.75px #00000088,
    0 0 0 4px #f8f8f806;
}
.faq {
  display: grid;
  grid-template-columns: 0.9fr 1.4fr;
  gap: 80.75px;
  margin-top: 80.75px;
  padding-top: 45.6px;
  border-top: 1px solid var(--line);
}
.faq-intro h3 {
  font-size: 23.75px;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: -0.04em;
  margin-bottom: 17.1px;
}
.faq-intro p {
  font-size: 12px;
  line-height: 1.9;
  color: var(--muted);
}
details {
  border-bottom: 1px solid #ffffff16;
}
summary {
  cursor: pointer;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 19px;
  padding: 19.95px 0;
  font-size: 12px;
  line-height: 1.7;
  color: #dddddd;
}
summary::-webkit-details-marker {
  display: none;
}
summary > span {
  font-size: 20.9px;
  color: #b2b2b2;
  line-height: 1;
  transition: transform 0.25s;
}
details[open] summary > span {
  transform: rotate(45deg);
}
details[open] summary {
  color: #ffffff;
}
details > p {
  font-size: 12px;
  color: #b2b2b2;
  line-height: 1.9;
  margin: 0;
  padding: 0 30.4px 21.85px 0;
  max-width: 617.5px;
}
summary:hover {
  color: #ffffff;
}
.closing {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 57px;
  padding-top: 49.4px;
  margin-top: 52.25px;
}
.closing h3 {
  font-size: 21.85px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: -0.035em;
  margin-bottom: 14px;
}
.closing p {
  font-size: 12px;
  color: var(--muted);
  max-width: 532px;
  margin-bottom: 0;
}
.closing .button {
  font-size: 11px;
}
.footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 19px;
  border-top: 1px solid var(--line);
  min-height: 63.65px;
  padding-block: 10px;
  padding-bottom: max(10px, env(safe-area-inset-bottom));
  font-size: 9px;
  color: #999999;
}
.footer p {
  margin: 0;
}
.privacy-link {
  font-size: 9px;
  color: #b2b2b2;
  border: 0;
  background: none;
  padding: 12px 0;
  min-height: 41.8px;
}
.privacy-link:hover {
  color: #ffffff;
}
.skip-link {
  position: fixed;
  z-index: 100;
  top: 10px;
  left: 10px;
  padding: 10px 19px;
  background: #ffffff;
  color: #080808;
  transform: translateY(-160%);
}
.skip-link:focus {
  transform: none;
}
dialog {
  color: var(--text);
  background: #161616;
  border: 1px solid #ffffff30;
  border-radius: 14px;
  padding: 0;
  max-width: 532px;
  width: calc(100% - 38px);
  max-height: 85svh;
  box-shadow: 0 19px 95px #000000;
}
dialog::backdrop {
  background: #000000bb;
  backdrop-filter: blur(8px);
}
.privacy-body {
  padding: 38px;
  overscroll-behavior: contain;
}
.privacy-body h2 {
  font-size: 26.6px;
}
.privacy-body p {
  font-size: 13px;
  color: #bbbbbb;
}
.close-dialog {
  position: absolute;
  top: 8px;
  right: 12px;
  width: 41.8px;
  height: 41.8px;
  background: none;
  border: 0;
  color: #dddddd;
  font-size: 26.6px;
}
body:has(dialog[open]) {
  overflow: hidden;
}

@media (min-width: 1600px) {
  .hero-image {
    inset: -35px 0 -40px 23%;
  }
}
@media (max-width: 1150px) {
  .wrap {
    width: calc(100% - 60.8px);
  }
  .header {
    gap: 20.9px;
  }
  .nav {
    gap: 19px;
    padding-inline: 19px;
  }
  .wordmark {
    font-size: 18.05px;
  }
  .brand-lockup img {
    width: 41.8px;
    height: 41.8px;
  }
  .hero {
    min-height: 665px;
  }
  .hero-image {
    left: 12%;
    right: -12%;
  }
  h1 {
    font-size: 45.6px;
  }
  .hero-description {
    max-width: 422.75px;
  }
  .hero-actions {
    gap: 16.15px;
  }
  .hero-actions .button {
    font-size: 10px;
    padding-left: 16.15px;
  }
  .hero-actions .text-link {
    font-size: 10px;
  }
  .situations {
    gap: 15.2px;
  }
  .situation {
    padding: 22.8px 19.95px 15px;
  }
  .situation h3 {
    font-size: 16.15px;
    min-height: 72.2px;
  }
  .situation > p {
    min-height: 87.4px;
  }
  .method-top {
    gap: 42.75px;
  }
  .step {
    padding-inline: 21.85px;
  }
  .program-grid {
    gap: 15px;
  }
  .program {
    padding: 24.7px 20.9px;
  }
  .program h3 {
    font-size: 22.8px;
  }
  .program-promise {
    font-size: 13px;
  }
  .program-description {
    min-height: 130.15px;
  }
  .program-type {
    font-size: 8px;
  }
  .program .button {
    font-size: 9px;
    padding-left: 12px;
  }
  .program .button-arrow {
    width: 21.85px;
  }
  .faq {
    gap: 42.75px;
  }
}
@media (max-width: 950px) and (min-width: 761px) {
  .header-contact {
    font-size: 10px;
  }
  .nav {
    gap: 15px;
    font-size: 10px;
  }
  .program-grid {
    grid-template-columns: 1fr 1fr;
  }
  .strategic {
    grid-column: 1/-1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 42.75px;
  }
  .strategic .program-type {
    grid-column: 1/-1;
  }
  .strategic h3 {
    grid-column: 1;
    grid-row: 2;
    min-height: 0;
  }
  .strategic h3 br {
    display: none;
  }
  .strategic .program-promise {
    grid-column: 1;
    grid-row: 3;
  }
  .strategic .program-description {
    grid-column: 1;
    grid-row: 4;
    min-height: 0;
  }
  .strategic ul {
    grid-column: 2;
    grid-row: 2/4;
    align-self: center;
  }
  .strategic .program-end {
    grid-column: 2;
    grid-row: 4;
  }
  .program .button {
    font-size: 11px;
  }
  .program-description {
    min-height: 86.45px;
  }
  .method-top {
    gap: 28.5px;
  }
  .pareto {
    font-size: 118.75px;
  }
  .method-copy h2 {
    font-size: 29.45px;
  }
  .hero-image {
    opacity: 0.8;
  }
  .hero-shade {
    background:
      linear-gradient(
        90deg,
        #080808 2%,
        #080808d9 27%,
        #0808084a 65%,
        transparent
      ),
      linear-gradient(0deg, #080808, transparent 30%, transparent 80%, #080808);
  }
  .situation {
    padding-inline: 17.1px;
  }
  .situation h3 {
    font-size: 15.2px;
  }
  .situation > p {
    min-height: 109.25px;
  }
  .situation-top {
    font-size: 8px;
    gap: 9px;
  }
  .situation-answer > span {
    font-size: 8px;
  }
  .closing {
    gap: 23.75px;
  }
  .closing .button {
    font-size: 10px;
  }
}
@media (max-width: 760px) {
  .wrap {
    width: calc(100% - 38px);
  }
  .header {
    height: 72.2px;
    gap: 15.2px;
  }
  .wordmark {
    font-size: 16.15px;
  }
  .brand-lockup {
    gap: 8px;
  }
  .brand-lockup img {
    width: 38px;
    height: 38px;
  }
  .nav {
    display: none;
  }
  .header-contact {
    font-size: 9px;
    gap: 10px;
  }
  .header-contact span {
    font-size: 15.2px;
  }
  .hero {
    height: auto;
    min-height: 760px;
    max-height: none;
    align-items: flex-end;
  }
  .hero-image {
    inset: -15px -9% auto -43%;
    height: 399px;
  }
  .hero-image img {
    object-fit: cover;
    object-position: 75% 49%;
    opacity: 0.9;
  }
  .hero-shade {
    inset: 0;
    background: linear-gradient(
      0deg,
      #080808 0%,
      #080808 41%,
      #080808ee 55%,
      #08080860 75%,
      transparent 100%
    );
  }
  .hero-content {
    padding-top: 285px;
    padding-bottom: 82.65px;
  }
  .eyebrow {
    font-size: 8px;
    letter-spacing: 0.11em;
    margin-bottom: 19px;
  }
  h1 {
    font-size: clamp(27.55px, 7.6vw, 48.45px);
    line-height: 1.22;
    max-width: 100%;
    margin-bottom: 20.9px;
  }
  .silver-title {
    font-size: 1.2em;
    line-height: 1.1;
  }
  .desktop-break {
    display: none;
  }
  .hero-description {
    font-size: 12px;
    line-height: 1.85;
    max-width: 456px;
    margin-bottom: 21.85px;
  }
  .hero-actions {
    flex-wrap: wrap;
    gap: 12px;
  }
  .hero-actions .button {
    font-size: 11px;
    min-height: 51.3px;
    padding-left: 17.1px;
  }
  .hero-actions .text-link {
    font-size: 10px;
    min-height: 34.2px;
  }
  .hero-context {
    font-size: 9px;
    margin-top: 15px;
  }
  .hero-foot {
    bottom: 19px;
    font-size: 8px;
    gap: 14px;
  }
  .hero-foot > span:last-child {
    font-size: 7px;
    letter-spacing: 0.1em;
  }
  .hairline {
    min-width: 17.1px;
  }
  .section-space {
    padding-block: 70.3px;
  }
  h2 {
    font-size: 31.35px;
  }
  .audience-intro {
    margin-bottom: 30.4px;
  }
  .audience-intro > p {
    font-size: 13px;
  }
  .situations {
    grid-template-columns: 1fr;
    gap: 17.1px;
  }
  .situation {
    padding: 24.7px 23.75px 15px;
  }
  .situation-top {
    font-size: 10px;
    margin-bottom: 21.85px;
  }
  .situation h3 {
    font-size: 19.95px;
    min-height: 0;
    margin-bottom: 15px;
  }
  .situation > p {
    font-size: 13px;
    min-height: 0;
    margin-bottom: 20.9px;
  }
  .situation-answer p {
    font-size: 12px;
  }
  .situation a {
    font-size: 11px;
  }
  .method-top {
    grid-template-columns: 1fr;
    gap: 36.1px;
    margin-bottom: 33.25px;
  }
  .pareto-block {
    padding-left: 0;
  }
  .pareto-label {
    font-size: 11px;
  }
  .pareto {
    font-size: 137.75px;
  }
  .pareto-caption {
    font-size: 14px;
    margin-top: 15px;
  }
  .method-copy h2 {
    font-size: 31.35px;
  }
  .method-copy > p {
    font-size: 13px;
  }
  .method-glass {
    grid-template-columns: 1fr;
    padding: 0 24.7px;
  }
  .step {
    padding: 25.65px 0;
  }
  .step + .step {
    border-left: 0;
    border-top: 1px solid #ffffff24;
  }
  .step-number {
    margin-bottom: 15.2px;
  }
  .step h3 {
    font-size: 18.05px;
  }
  .step p {
    font-size: 12px;
  }
  .method-note {
    font-size: 10px;
    max-width: 247px;
    margin: 22.8px auto 0;
  }
  .programs-heading {
    margin-bottom: 30.4px;
  }
  .programs-heading p {
    font-size: 13px;
  }
  .program-grid {
    grid-template-columns: 1fr;
    gap: 23.75px;
  }
  .program {
    padding: 27.55px 23.75px;
  }
  .program-type {
    font-size: 10px;
    margin-bottom: 27.55px;
  }
  .program-id {
    font-size: 25.65px;
  }
  .program h3 {
    font-size: 28.5px;
    min-height: 0;
    margin-bottom: 20.9px;
  }
  .program-promise {
    font-size: 15.2px;
    min-height: 0;
    margin-bottom: 18.05px;
  }
  .program-description {
    font-size: 13px;
    min-height: 0;
  }
  .program li {
    font-size: 12px;
  }
  .program-end > p {
    font-size: 11px;
  }
  .program .button {
    font-size: 11px;
    padding-left: 15.2px;
  }
  .program .button-arrow {
    width: 27.55px;
  }
  .faq {
    grid-template-columns: 1fr;
    gap: 15px;
    margin-top: 50.35px;
    padding-top: 34.2px;
  }
  .faq-intro h3 {
    font-size: 24.7px;
  }
  .faq-intro p br {
    display: none;
  }
  .faq-intro p {
    font-size: 12px;
  }
  .faq-items summary {
    font-size: 12px;
    padding-block: 19px;
  }
  .faq-items details > p {
    font-size: 12px;
    padding-right: 12px;
  }
  .closing {
    display: block;
    padding-top: 28.5px;
    margin-top: 28.5px;
  }
  .closing h3 {
    font-size: 21.85px;
  }
  .closing p {
    font-size: 12px;
  }
  .closing .button {
    margin-top: 22.8px;
    font-size: 11px;
  }
  .footer {
    min-height: 60.8px;
    gap: 12px;
  }
  .footer > span {
    display: none;
  }
  .privacy-body {
    padding: 36.1px 22.8px;
  }
}
@media (max-width: 370px) {
  .header {
    gap: 8px;
  }
  .wordmark {
    font-size: 15px;
  }
  .brand-lockup img {
    width: 32.3px;
    height: 32.3px;
  }
  .header-contact {
    font-size: 8px;
    gap: 6px;
  }
  .hero {
    min-height: 798px;
  }
  .hero-content {
    padding-top: 256.5px;
  }
  .hero-image {
    height: 342px;
  }
  .hero-foot {
    font-size: 7px;
    gap: 8px;
  }
  .hero-foot > span:last-child {
    display: none;
  }
  .eyebrow {
    font-size: 7px;
  }
  .program {
    padding-inline: 21.85px;
  }
  .program-type {
    font-size: 9px;
  }
  h2 {
    font-size: 28.5px;
  }
  .pareto {
    font-size: 124.45px;
  }
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    animation: none !important;
    transition: none !important;
  }
  .hero-image img {
    will-change: auto;
  }
  .button:hover {
    transform: none;
  }
  .button:before {
    display: none;
  }
  .silver-title {
    background-position: 45% 50%;
  }
}
@media (prefers-reduced-transparency: reduce) {
  .glass,
  .metal-panel {
    background: #181818;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
  .panel-reflection {
    display: none;
  }
  dialog::backdrop {
    backdrop-filter: none;
    background: #000000ee;
  }
}
/* Keep the complete insignia readable at wide and intermediate widths. */
@media (min-width: 761px) {
  .hero-image {
    left: 9%;
    right: 0;
  }
  .hero-image img {
    object-fit: contain;
    object-position: right center;
  }
}
/* Editorial eagle returns; the official emblem stays in the identity system. */
.hero-image {
  left: 12%;
  right: 0;
}
.hero-image img {
  object-fit: cover;
  object-position: center 43%;
}
.partner-proof {
  margin-top: 21.85px;
}
.partner-proof > a {
  display: inline-flex;
  align-items: center;
  gap: 15px;
  min-height: 53.2px;
}
.partner-proof img {
  width: 112.1px;
  height: auto;
  display: block;
  flex-shrink: 0;
}
.partner-proof > a > span {
  font-size: 10px;
  line-height: 1.7;
  color: #bcbcbc;
}
.partner-proof small {
  display: block;
  font-size: 9px;
  color: #eee;
  margin-top: 3px;
}
.partner-proof a:hover small {
  text-decoration: underline;
  text-underline-offset: 4px;
}
.program-module {
  font-size: 10px;
  color: #bcbcbc;
  line-height: 1.8;
  padding: 13px 0;
  border-top: 1px solid #ffffff20;
  margin: -10px 0 22.8px;
}
.program-module strong {
  display: block;
  color: #e0e0e0;
  font-size: 9px;
  margin-bottom: 5px;
}
.faq-items p a {
  text-decoration: underline;
  text-underline-offset: 4px;
  color: #e2e2e2;
}
@media (min-width: 761px) {
  .hero {
    min-height: 722px;
  }
  .hero-content {
    padding-bottom: 68.4px;
  }
  .program-description {
    min-height: 108.3px;
  }
}
@media (max-width: 760px) {
  .hero-image {
    left: -40%;
    right: -5%;
    height: 399px;
  }
  .hero-image img {
    object-position: 70% 25%;
  }
  .hero-content {
    padding-bottom: 85.5px;
  }
  .hero {
    min-height: 845.5px;
  }
  .partner-proof {
    margin-top: 19px;
  }
  .partner-proof img {
    width: 95px;
  }
  .partner-proof > a > span {
    font-size: 9px;
  }
  .partner-proof small {
    font-size: 9px;
  }
  .program-description {
    min-height: 0;
  }
}
@media (max-width: 370px) {
  .hero {
    min-height: 878.75px;
  }
  .hero-image {
    height: 342px;
  }
  .partner-proof > a {
    gap: 11px;
  }
  .partner-proof img {
    width: 85.5px;
  }
  .partner-proof > a > span {
    font-size: 8px;
  }
}
