/* Asset Manager — Layout C page-scoped styles. Builds on bundle.css tokens (:root vars). */
:root {
  --amc-shadow-float: 17px 88px 60px -100px #4f5e782e, 11px 0 20px -9px #4f5e781a;
}

html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

.amc-mono { font-variant-numeric: tabular-nums; }
.caption.amc-caption-sm { font-size: .75rem; line-height: 1rem; }

/* .caption and heading-size-* are sometimes set on a <p> in this page (for correct
   heading semantics on non-heading numerals); bundle.css's global p{margin-bottom:10px}
   would otherwise add unwanted space inside flex/grid layouts. */
.caption, .heading-size-h2, .heading-size-h3 { margin: 0; }

/* ---- hero: intro row + stat bar ---- */
.amc-hero-row {
  margin-top: 2rem;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 4rem;
}
.amc-hero-row .paragraph-secondary { max-width: 620px; }
.amc-ctas { justify-content: flex-start; flex-shrink: 0; flex-wrap: wrap; }

.amc-stats {
  margin-top: 4rem;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid var(--contrast-divider);
}
.amc-stat {
  padding: 2rem 0 2rem 2rem;
  border-left: 1px solid var(--contrast-divider);
  display: flex;
  flex-direction: column;
  gap: .5rem;
}
.amc-stat:first-child { padding-left: 0; border-left: 0; }
.amc-stat .heading-size-h2 { margin: 0; }

/* ---- shared two-column "chapter" layout ---- */
.amc-ch {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4rem;
  align-items: center;
}
.amc-ch .amc-reorder-first { order: -1; }

/* ---- shared tags + kv rows ---- */
.amc-tags { display: flex; flex-wrap: wrap; gap: .5rem; }
.amc-tag {
  display: inline-flex;
  align-items: center;
  gap: .375rem;
  padding: .25rem .75rem;
  border-radius: 999em;
  border: 1px solid transparent;
  font-family: DM Sans, sans-serif;
  font-size: .875rem;
  line-height: 1.25rem;
  font-weight: 400;
  white-space: nowrap;
}
.amc-tag.is-tint { background-color: var(--additional-lightblue); color: var(--brand-primary); }
.amc-tag.is-white { background-color: var(--contrast-primary); color: var(--brand-primary); }
.amc-tag.is-outline { border-color: var(--contrast-divider-dark); color: var(--background-default); }
.amc-tag.is-positive { background-color: var(--additional-greenlight); color: var(--background-default); }

.amc-kv {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: .75rem;
  padding: .5rem 0;
  border-top: 1px solid var(--contrast-divider-dark);
  font-size: .875rem;
  line-height: 1.25rem;
}
.amc-kv:first-child { border-top: 0; }
.amc-kv > span:first-child { color: var(--background-opacity-80); font-weight: 300; }
.amc-kv > span:last-child { color: var(--background-default); text-align: right; font-variant-numeric: tabular-nums; }

.amc-field-label { display: none; font-size: .75rem; line-height: 1rem; margin-bottom: .25rem; }

/* ---- 01 Add: equipment sheet ---- */
.amc-sheet {
  background-color: var(--contrast-primary);
  border: 1px solid var(--contrast-divider-dark);
  border-radius: 1rem;
  overflow: hidden;
}
.amc-sheet-head {
  display: flex; justify-content: space-between; gap: .75rem;
  padding: .875rem 1.125rem;
  background-color: var(--background-secondary);
  border-bottom: 1px solid var(--contrast-divider-dark);
}
.amc-sr {
  display: grid;
  grid-template-columns: 1.3fr 1fr 1fr;
  font-size: .875rem; line-height: 1.25rem;
  border-bottom: 1px solid var(--contrast-divider-dark);
  color: var(--background-default);
  font-variant-numeric: tabular-nums;
}
.amc-sr:last-child { border-bottom: 0; }
.amc-sr > div { padding: .75rem 1.125rem; }
.amc-sr .is-nil { color: var(--contrast-tertiary-dark); }
.amc-sr.is-hl { background-color: var(--additional-lightblue); color: var(--brand-primary); }
.amc-sr.is-hl .is-nil { color: var(--brand-primary); }

/* ---- 02 Enrich: enriched card ---- */
.amc-card {
  background-color: var(--contrast-primary);
  border-radius: 1.5rem;
  padding: 2rem;
  box-shadow: var(--amc-shadow-float);
  display: flex; flex-direction: column; gap: 1rem;
}
.amc-card-head { display: flex; justify-content: space-between; align-items: flex-start; gap: .75rem; }
.amc-card-head .paragraph { font-size: .875rem; line-height: 1.25rem; }
.amc-two { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; }

/* ---- 03 Work: flagged units ---- */
.amc-flag {
  background-color: var(--contrast-primary);
  border-radius: 1.5rem;
  padding: 2rem;
  box-shadow: var(--amc-shadow-float);
  display: flex; flex-direction: column; gap: 1rem;
}
.amc-flag-head { display: flex; justify-content: space-between; align-items: center; gap: .75rem; }
.amc-flag-head .heading-size-h3 { color: var(--brand-primary); margin: 0; }
.amc-unit {
  border: 1px solid var(--contrast-divider-dark);
  border-radius: 1rem;
  padding: 1.125rem;
  display: flex; justify-content: space-between; align-items: center; gap: .75rem;
}
.amc-unit .amc-unit-name { font-size: 1rem; line-height: 1.5rem; color: var(--background-default); }
.amc-unit .amc-unit-meta { font-size: .875rem; line-height: 1.25rem; color: var(--background-opacity-80); font-weight: 300; }
.amc-unit.is-hot { background-color: var(--brand-primary); border-color: var(--brand-primary); }
.amc-unit.is-hot .amc-unit-name, .amc-unit.is-hot .amc-unit-meta { color: var(--contrast-primary); }

/* ---- 04/05 Reach out & Booked ---- */
.amc-pair { display: flex; flex-direction: column; gap: 2rem; }
.amc-pair .amc-pair-item + .amc-pair-item { border-top: 1px solid var(--contrast-divider-dark); padding-top: 2rem; }
.amc-chat {
  background-color: var(--background-secondary);
  border-radius: 1.5rem;
  padding: 2rem;
  display: flex; flex-direction: column; gap: .75rem;
}
.amc-chat-head { text-align: center; }
.amc-bubble { max-width: 82%; padding: .875rem 1.125rem; font-size: 1rem; line-height: 1.5rem; font-weight: 300; }
.amc-bubble.is-out { align-self: flex-end; background-color: var(--brand-primary); color: var(--contrast-primary); border-radius: 20px 20px 4px 20px; }
.amc-bubble.is-in { align-self: flex-start; max-width: 70%; background-color: var(--contrast-primary); color: var(--background-default); border-radius: 20px 20px 20px 4px; }
.amc-booked { align-self: center; margin-top: .5rem; }
.amc-booked .amc-tag { padding: .5rem 1rem; white-space: normal; text-align: center; }

/* ---- Use cases ---- */
.amc-uc-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 3rem; margin-top: 4rem; }
.amc-uc-head .paragraph-secondary { max-width: 380px; }
.amc-cards5 { margin-top: 2rem; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1rem; }
.amc-cards5 > div {
  background-color: var(--contrast-primary);
  border-radius: 1rem;
  padding: 1.5rem;
  display: flex; flex-direction: column; gap: 1rem;
  min-height: 240px;
}
.amc-cards5 .amc-tagline { margin-top: auto; }

/* ---- Why this matters ---- */
.amc-why { display: grid; grid-template-columns: 7fr 5fr; gap: 4rem; align-items: end; }
.amc-why .amc-txt h2 { max-width: 654px; }
.amc-why-r { display: flex; flex-direction: column; gap: 2rem; }
.amc-why-r .button { align-self: flex-start; }

/* ---- responsive ---- */
@media screen and (max-width: 991px) {
  .amc-hero-row { flex-direction: column; align-items: flex-start; gap: 2rem; }
  .amc-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .amc-stat:nth-child(3) { padding-left: 0; border-left: 0; }
  .amc-stat:nth-child(n+3) { border-top: 1px solid var(--contrast-divider); }
  .amc-ch, .amc-why { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
  .amc-uc-head { flex-direction: column; align-items: flex-start; gap: 1.25rem; }
  .amc-cards5 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .amc-cards5 > div { min-height: 200px; }
  .amc-cards5 > div:last-child { grid-column: 1 / -1; }
}
@media screen and (max-width: 767px) {
  .amc-stats { grid-template-columns: minmax(0, 1fr); }
  .amc-stat, .amc-stat:nth-child(3) { padding: 1.25rem 0; border-left: 0; }
  .amc-stat + .amc-stat { border-top: 1px solid var(--contrast-divider); }
  .amc-sr.is-head { display: none; }
  .amc-sr { grid-template-columns: minmax(0, 1fr); padding: .875rem 1.125rem; gap: .5rem; }
  .amc-sr > div { padding: 0; }
  .amc-sr .amc-field-label { display: block; }
  .amc-sr.is-hl .amc-field-label { color: var(--brand-primary); }
  .amc-card, .amc-flag { padding: 1.25rem; }
  .amc-card-head { flex-direction: column; }
  .amc-two { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .amc-unit { flex-direction: column; align-items: flex-start; }
  .amc-chat { padding: 1.25rem; border-radius: 1.5rem; }
  .amc-bubble, .amc-bubble.is-in { max-width: 90%; font-size: .9375rem; }
  .amc-cards5 { grid-template-columns: minmax(0, 1fr); }
  .amc-cards5 > div { min-height: 0; padding: 1.25rem; }
  .amc-cards5 > div:last-child { grid-column: auto; }
}
@media screen and (max-width: 479px) {
  .amc-ctas, .amc-ctas > * { width: 100%; }
  .amc-why-r .button { align-self: stretch; }
}
