/* Asset Managers body only. Fonts are supplied by the existing website. */
.am-page {
  --am-ink: #18181b;
  --am-paper: #fafafa;
  --am-muted: #52525b;
  --am-line: #d4d4d8;
  --am-soft: #f4f4f5;
  color: var(--am-ink);
  font-family: Pretendard, Arial, sans-serif;
  font-size: 1rem;
  line-height: 1.55;
  overflow-wrap: anywhere;
}
.am-page, .am-page * { box-sizing: border-box; }
.am-page h1, .am-page h2, .am-page h3, .am-page p,
.am-page figure, .am-page ol, .am-page dl, .am-page dd { margin: 0; }
.am-page h1, .am-page h2, .am-page h3 {
  font-family: Sora, Pretendard, sans-serif;
  font-weight: 300;
  letter-spacing: -.04em;
  line-height: 1.22;
  text-wrap: balance;
}
.am-page a { color: inherit; text-decoration: none; }

.am-container { width: 100%; max-width: 1440px; margin-inline: auto; padding-inline: 3rem; }
.am-section { padding-block: 5rem; }
.am-eyebrow { font-size: .75rem; font-weight: 500; line-height: 1.6; letter-spacing: .075em; text-transform: uppercase; }
.am-mono {
  font-family: "IBM Plex Mono", monospace;
  font-size: .75rem;
  font-weight: 400;
  font-variant-numeric: tabular-nums lining-nums;
  font-feature-settings: "liga" 0, "calt" 0;
  font-kerning: none;
  letter-spacing: 0;
  white-space: nowrap;
}
.am-title-line { display: block; }
.am-section-title { font-size: clamp(1.75rem, 3vw, 2.75rem); }
.am-section-intro { color: var(--am-muted); font-size: 1.125rem; line-height: 1.6; max-width: 55ch; }
.am-button {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  min-height: 3.5rem;
  max-width: 100%;
  padding: 1rem 1.5rem;
  border: 1px solid var(--am-ink);
  background: var(--am-ink);
  color: var(--am-paper) !important;
  font-size: .875rem;
  line-height: 1.5;
}
.am-button:hover { background: #3f3f46; }
.am-link-arrow { flex: 0 0 auto; }
.am-text-link {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 44px;
  max-width: 100%;
  padding-block: .625rem;
  border-bottom: 1px solid var(--am-line);
  font-size: .875rem;
  line-height: 1.5;
}
.am-text-link:hover { border-color: var(--am-ink); }
.am-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: 4rem;
  padding-top: 2.5rem;
  padding-bottom: 5rem;
}
.am-hero-copy, .am-model, .am-disclosure-copy, .am-disclosure-policy { min-width: 0; }
.am-title { font-size: clamp(2.25rem, 4.2vw, 4rem); margin-block: 1.75rem !important; }
.am-intro { font-size: 1.125rem; color: var(--am-muted); max-width: 48ch; margin-bottom: 2rem !important; }
.am-model { border: 1px solid var(--am-line); background: var(--am-soft); }
.am-model-heading { padding: 1.5rem 1.75rem; border-bottom: 1px solid var(--am-line); }
.am-model-title { font-size: 1.5rem; margin-top: .875rem !important; }
.am-model-content { padding: 1.75rem; }
.am-strategy { position: relative; border: 1px solid var(--am-ink); padding: 1.25rem; background: var(--am-paper); }
.am-strategy::after { content: ""; position: absolute; height: 1.5rem; width: 1px; background: #a1a1aa; left: 50%; top: 100%; }
.am-strategy-name { font-size: 1rem; font-weight: 500; }
.am-strategy-detail { color: var(--am-muted); font-size: .875rem; margin-top: .375rem !important; }
.am-account-grid { position: relative; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; padding-top: 1.5rem; margin-top: 1.5rem; }
.am-account-grid::before { content: ""; position: absolute; top: 0; left: calc(25% - .25rem); right: calc(25% - .25rem); height: 1px; background: #a1a1aa; }
.am-account { position: relative; min-width: 0; padding: 1rem; background: var(--am-paper); border: 1px solid var(--am-line); }
.am-account::before { content: ""; position: absolute; left: 50%; top: -1.5rem; width: 1px; height: 1.5rem; background: #a1a1aa; }
.am-account-name { font-size: .875rem; font-weight: 500; }
.am-account-mandate { color: var(--am-muted); font-size: .75rem; margin-block: .25rem .75rem !important; }
.am-account-detail { font-size: .875rem; line-height: 1.5; }
.am-record-flow { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .875rem; margin-top: 1.75rem !important; }
.am-record-step { min-width: 0; border-top: 1px solid var(--am-line); padding-top: .75rem; font-size: .75rem; }
.am-record-step .am-mono { display: block; color: var(--am-muted); font-size: .625rem; margin-bottom: .375rem; }
.am-model-caption { border-top: 1px solid var(--am-line); color: var(--am-muted); font-size: .75rem; line-height: 1.6; padding: 1rem 1.75rem; }
.am-section-heading { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); align-items: end; gap: 3rem; margin-bottom: 3rem; }
.am-section-heading > * { min-width: 0; }
.am-section-heading .am-eyebrow { margin-bottom: 1rem; }
.am-changes { border-top: 1px solid var(--am-line); }
.am-change-row { display: grid; grid-template-columns: 2rem minmax(0, 1fr) 1.5rem minmax(0, 1.2fr); gap: 1.75rem; padding-block: 2rem; border-bottom: 1px solid var(--am-line); align-items: start; }
.am-change-row > * { min-width: 0; }
.am-row-number { padding-top: .25rem; color: var(--am-muted); }
.am-office-label, .am-small-label { color: var(--am-muted); font-size: .75rem; line-height: 1.6; margin-bottom: .75rem !important; }
.am-change-title { font-size: 1.25rem; line-height: 1.4 !important; letter-spacing: -.025em !important; text-wrap: initial !important; }
.am-change-arrow { align-self: center; color: var(--am-muted); }
.am-change-body { font-size: 1.0625rem; }
.am-resource-links { display: flex; flex-wrap: wrap; gap: .25rem 1.5rem; margin-top: .875rem; }
.am-resource-links .am-text-link { font-size: .75rem; }
.am-dark { color: var(--am-paper); background: var(--am-ink); }
.am-dark .am-section-intro { color: #d4d4d8; }
.am-dark .am-eyebrow { color: #d4d4d8; }
.am-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2rem; border-top: 1px solid #52525b; padding: 2rem 0 0; list-style: none; }
.am-step { min-width: 0; }
.am-step-number { display: block; color: #a1a1aa; margin-bottom: 1.5rem; }
.am-step-title { font-size: 1.125rem; margin-bottom: .75rem !important; letter-spacing: -.02em !important; }
.am-step-body { color: #d4d4d8; font-size: .9375rem; }
.am-case-note { border-top: 1px solid #52525b; padding-top: 1.25rem; margin-top: 2rem !important; max-width: none; color: #a1a1aa; font-size: .75rem; line-height: 1.6; }
.am-disclosure { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; gap: 4rem; }
.am-disclosure-copy .am-section-title { margin-block: 1rem 1.5rem; }
.am-disclosure-copy .am-section-intro { margin-bottom: 1.75rem; }
.am-solution-name { font-size: .75rem; color: var(--am-muted); }
.am-disclosure-policy { border-top: 1px solid var(--am-ink); }
.am-view-row { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.4fr); gap: 1.5rem; padding-block: 1.25rem; border-bottom: 1px solid var(--am-line); }
.am-view-row dt { font-size: .875rem; font-weight: 500; }
.am-view-row dd { min-width: 0; font-size: .9375rem; color: var(--am-muted); }
.am-scope-note { margin-top: 1.5rem; padding: 1.5rem; background: var(--am-soft); }
.am-scope-title { font-family: Pretendard, Arial, sans-serif !important; font-size: 1rem; font-weight: 500 !important; letter-spacing: 0 !important; margin-bottom: .625rem !important; }
.am-scope-note > p { color: var(--am-muted); font-size: .875rem; }
.am-solutions-band { background: var(--am-soft); border-top: 1px solid #e4e4e7; }
.am-section-heading-compact { display: block; margin-bottom: 2rem; }
.am-section-heading-compact .am-eyebrow { padding: 0; margin-bottom: .625rem; }
.am-solution-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2rem; }
.am-solution-card { display: flex; flex-direction: column; align-items: start; min-width: 0; padding-top: 1.25rem; border-top: 1px solid var(--am-line); }

.am-card-title { font-size: 1.125rem; line-height: 1.4 !important; letter-spacing: -.025em !important; text-wrap: initial !important; }
.am-card-body { color: var(--am-muted); font-size: .875rem; margin-block: .75rem 1.25rem !important; }
.am-card-arrow { font-size: 1.125rem; margin-top: auto; padding-bottom: .5rem; }
.am-contact-band { background: #e4e4e7; }
.am-contact-inner { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); align-items: center; gap: 3rem; }
.am-contact-copy { min-width: 0; }
.am-contact-copy .am-section-title { margin-block: 1rem 1.5rem; max-width: 24ch; }
.am-contact-copy .am-section-intro { font-size: 1rem; }
.am-contact-inner .am-button { justify-self: end; }

@media (max-width: 1100px) {
  .am-container { padding-inline: 2rem; }
  .am-hero, .am-disclosure { gap: 2.5rem; }
  .am-model-heading, .am-model-content { padding: 1.5rem; }
  .am-change-row { gap: 1.25rem; }
  .am-steps, .am-solution-grid { gap: 1.5rem; }
}
@media (max-width: 900px) {
  .am-hero, .am-disclosure { grid-template-columns: minmax(0, 1fr); }
  .am-hero-copy { max-width: 42rem; }
  .am-model { width: 100%; max-width: 44rem; justify-self: center; }
  .am-title { font-size: clamp(2.25rem, 5.5vw, 3.5rem); }
  .am-intro { max-width: 58ch; }
  .am-section-heading { gap: 2rem; }
  .am-steps, .am-solution-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem; }
  .am-contact-inner { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
  .am-contact-inner .am-button { justify-self: start; }
}
@media (max-width: 640px) {
  .am-container { padding-inline: 1.25rem; }
  .am-section { padding-block: 3.5rem; }
  .am-hero { gap: 2rem; padding-top: 1.5rem; padding-bottom: 3rem; }
  .am-title { font-size: clamp(2rem, 6.5vw, 2.75rem); margin-block: 1.25rem !important; }
  .am-intro, .am-section-intro { font-size: 1rem; }
  .am-section-heading, .am-section-heading-compact { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; margin-bottom: 2rem; }
  .am-section-heading-compact .am-eyebrow { margin-bottom: .625rem; padding: 0; }
  .am-section-title { font-size: 1.875rem; }
  .am-change-row { grid-template-columns: 1.5rem minmax(0, 1fr); gap: .75rem; padding-block: 1.5rem; }
  .am-row-number { grid-column: 1; grid-row: 1 / 3; }
  .am-change-challenge, .am-change-response { grid-column: 2; }
  .am-change-response { border-left: 2px solid var(--am-line); padding-left: 1rem; margin-top: .25rem; }
  .am-change-arrow { display: none; }
  .am-change-title { font-size: 1.125rem; }
  .am-change-body { font-size: 1rem; }
  .am-resource-links { gap: .25rem 1rem; }
  .am-steps { padding-top: 1.5rem; }
  .am-step-number { margin-bottom: .75rem; }
  .am-disclosure { gap: 2rem; }
  .am-view-row { gap: 1rem; }
}
@media (max-width: 480px) {
  .am-model-heading, .am-model-content { padding: 1.25rem; }
  .am-model-caption { padding: 1rem 1.25rem; }
  .am-model-title { font-size: 1.25rem; }
  .am-account-grid { grid-template-columns: minmax(0, 1fr); gap: .75rem; padding-top: 0; margin-top: 1.5rem; }
  .am-account-grid::before, .am-account::before { display: none; }
  .am-account-detail { font-size: .8125rem; }
  .am-record-flow { grid-template-columns: minmax(0, 1fr); gap: .5rem; margin-top: 1.25rem !important; }
  .am-record-step { display: grid; grid-template-columns: 1.5rem minmax(0, 1fr); gap: .75rem; padding-top: .5rem; }
  .am-record-step .am-mono { margin: 0; padding-top: .125rem; }
  .am-steps, .am-solution-grid { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
  .am-step + .am-step { border-top: 1px solid #52525b; padding-top: 1.5rem; }
  .am-view-row { grid-template-columns: minmax(0, 1fr); gap: .375rem; }
  .am-button { gap: 1rem; padding-inline: 1.125rem; }
}
@media print {
  .am-section { padding-block: 2rem; }
  .am-hero { display: block; padding-block: 1rem 2rem; }
  .am-model { margin-top: 2rem; }
  .am-dark { background: white; color: #18181b; }
  .am-dark .am-section-intro, .am-dark .am-eyebrow, .am-step-body, .am-case-note { color: #52525b; }
  .am-change-row, .am-model, .am-step, .am-solution-card { break-inside: avoid; }
  .am-contact-band { display: none; }
}
