.agency-tool-heading {
  padding-block: 155px 58px;
}
.agency-tool-heading .agency-breadcrumbs {
  margin-bottom: 35px;
  flex-wrap: wrap;
}
.agency-tool-eyebrow {
  color: #34745a;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.085em;
  text-transform: uppercase;
}
.agency-tool-heading h1 {
  max-width: 1000px;
  margin-top: 14px;
  font-size: clamp(38px, 5vw, 64px);
}
.agency-tool-heading h1 em {
  font-style: normal;
  color: #428366;
}
.agency-tool-heading h1 + p {
  max-width: 750px;
  margin-top: 24px;
  color: var(--agency-muted);
  font-size: 16px;
  line-height: 1.8;
}
.agency-tool-heading-compact h1 {
  font-size: clamp(34px, 4.5vw, 55px);
}
.agency-tools-list {
  padding-bottom: 70px;
}
.agency-tool-index-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 210px;
  align-items: start;
  gap: 38px;
  padding-block: 40px;
  border-top: 1px solid var(--agency-rule);
  border-bottom: 1px solid var(--agency-rule);
}
.agency-tool-index-row h2 {
  max-width: 630px;
  margin-top: 12px;
  font-size: 34px;
}
.agency-tool-index-row h2 a:hover {
  text-decoration: underline;
}
.agency-tool-index-row h2 + p {
  max-width: 600px;
  margin-block: 20px;
  color: var(--agency-muted);
}
.agency-tool-index-note {
  color: #607166;
  font-size: 13px;
  line-height: 1.9;
}
.agency-tool-index-row + .agency-tool-index-row {
  border-top: 0;
}
.agency-tool-service-link {
  display: block;
  width: fit-content;
  min-height: 40px;
  padding-top: 15px;
  font-size: 12px;
  color: #5f7466 !important;
}
.agency-tool-service-link:hover {
  text-decoration: underline;
}
.agency-tool-context {
  padding-block: 0 90px;
}
.agency-tool-context h2 {
  font-size: 34px;
}
.agency-tool-context p {
  max-width: 700px;
  margin-block: 22px;
  color: var(--agency-muted);
}
.agency-planner {
  padding-bottom: 100px;
}
.agency-planner .agency-button:disabled {
  cursor: not-allowed;
}
.agency-planner-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  align-items: start;
  gap: 48px;
}
.agency-planner-layout > *,
.agency-tool-section-heading > *,
.agency-tool-field {
  min-width: 0;
}
.agency-tool-section-heading {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 20px;
}
.agency-tool-section-heading h2 {
  margin-top: 10px;
  font-size: 29px;
  line-height: 1.2;
}
.agency-tool-intro {
  max-width: 700px;
  margin-bottom: 26px !important;
  color: var(--agency-muted);
  font-size: 13px;
}
.agency-tool-example-note {
  padding: 14px 0;
  margin-bottom: 20px !important;
  border-block: 1px solid var(--agency-rule);
  color: #3c6350;
  font-size: 13px;
}
.agency-tool-task {
  min-width: 0;
  padding: 25px 26px;
  margin: 0 0 24px;
  border: 1px solid var(--agency-rule);
  border-radius: 10px;
  background: #fbfcfa;
}
.agency-tool-task legend {
  padding-inline: 9px;
  margin-left: -9px;
  font-weight: 800;
  font-size: 15px;
}
.agency-tool-task-toolbar {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  margin-bottom: 20px;
}
.agency-tool-small {
  color: #606f65;
  font-size: 12px;
  line-height: 1.6;
}
.agency-tool-remove {
  min-width: 64px;
  min-height: 40px;
  padding: 7px;
  border: 0;
  background: transparent;
  color: #68534b;
  font-size: 12px !important;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.agency-tool-remove:disabled {
  opacity: 0.4;
  cursor: default;
}
.agency-tool-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}
.agency-tool-field-wide {
  grid-column: 1 / -1;
}
.agency-tool-time-hypotheses {
  grid-column: 1 / -1;
  min-width: 0;
  margin: 0;
  padding: 19px 0 0;
  border: 0;
  border-top: 1px solid #d8e2d8;
}
.agency-tool-time-hypotheses legend {
  margin: 0;
  padding: 0 9px 0 0;
  font-size: 12px;
  font-weight: 800;
}
.agency-tool-time-hypotheses legend span {
  font-weight: 500;
  color: #607166;
}
.agency-tool-time-hypotheses > p {
  margin-bottom: 20px;
}
.agency-tool-field label {
  display: block;
  margin-bottom: 8px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.6;
}
.agency-tool-field input,
.agency-tool-field select {
  display: block;
  width: 100%;
  min-height: 44px;
  padding: 11px 12px;
  border: 1px solid #c6d2c9;
  border-radius: 6px;
  background: #fff;
  color: var(--agency-ink);
  font-size: 16px;
  line-height: 1.4;
}
.agency-tool-field input::placeholder {
  color: #77867b;
  opacity: 1;
}
.agency-tool-field input[aria-invalid="true"] {
  border-color: #a93c2e;
}
.agency-tool-input-hint {
  margin-top: 7px !important;
  color: #637168;
  font-size: 11px;
  line-height: 1.6;
}
.agency-tool-field-error,
.agency-tool-form-error {
  margin-top: 8px !important;
  color: #9a3024;
  font-size: 12px;
}
.agency-tool-constraint {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 145px;
  align-items: center;
  gap: 16px;
  padding-top: 17px;
  border-top: 1px solid #e4eae3;
}
.agency-tool-constraint label {
  margin-bottom: 0;
}
.agency-tool-constraint select {
  font-size: 13px;
}
.agency-tool-form-actions,
.agency-tool-calculate,
.agency-tool-export-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
}
.agency-tool-calculate {
  margin-top: 30px;
}
.agency-tool-calculate > span {
  max-width: 320px;
  color: #66756a;
  font-size: 11px;
}
.agency-tool-method {
  position: sticky;
  top: 115px;
  padding-top: 18px;
  border-top: 2px solid #b5cdbd;
}
.agency-tool-method h2 {
  margin-top: 13px;
  font-size: 25px;
}
.agency-tool-method ol {
  padding-left: 18px;
  margin-block: 22px;
}
.agency-tool-method li {
  padding-left: 5px;
  margin-bottom: 17px;
  font-size: 12px;
}
.agency-tool-method li strong,
.agency-tool-method li span {
  display: block;
}
.agency-tool-method li span {
  margin-top: 4px;
  color: var(--agency-muted);
}
.agency-tool-method > p:not(.agency-tool-eyebrow) {
  margin-top: 17px;
  color: #5c6c61;
  font-size: 12px;
  line-height: 1.8;
}
.agency-tool-results {
  margin-top: 75px;
  padding-top: 40px;
  border-top: 1px solid var(--agency-rule);
  scroll-margin-top: 110px;
}
.agency-tool-results-summary {
  margin-bottom: 10px !important;
  font-size: 16px;
  font-weight: 700;
}
.agency-tool-first-batch {
  max-width: 800px;
  margin-bottom: 15px !important;
  color: #47614f;
  font-size: 13px;
}
.agency-tool-recipe {
  margin-block: 17px 24px;
  padding-left: 19px;
  color: var(--agency-muted);
  font-size: 13px;
}
.agency-tool-recipe li + li {
  margin-top: 10px;
}
.agency-tool-stale {
  margin-bottom: 20px !important;
  padding-block: 14px;
  border-block: 1px solid #dbbb7c;
  color: #70501a;
  font-size: 13px;
}
.agency-tool-result-list {
  margin-top: 30px;
}
.agency-tool-result {
  padding-block: 28px;
  border-top: 1px solid var(--agency-rule);
  overflow-wrap: anywhere;
}
.agency-tool-result-heading {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}
.agency-tool-result-heading h3 {
  max-width: 800px;
  font-size: 26px;
  line-height: 1.25;
}
.agency-tool-status {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 4px 10px;
  border: 1px solid #d0d9d1;
  border-radius: 4px;
  color: #4c5d51;
  background: #f5f7f3;
  font-size: 11px;
  font-weight: 700;
}
.agency-tool-status-ready {
  border-color: #b4d6c0;
  background: #edf7f0;
  color: #225d3e;
}
.agency-tool-status-blocked {
  border-color: #e4cbc0;
  background: #fcf4ef;
  color: #834a32;
}
.agency-tool-result-checks {
  padding-left: 18px;
  margin-block: 18px 20px;
  font-size: 13px;
  color: #526157;
}
.agency-tool-result-checks li + li {
  margin-top: 8px;
}
.agency-tool-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  padding-block: 18px;
  border-block: 1px solid #edf0eb;
  margin: 0 0 18px;
}
.agency-tool-metrics dt {
  font-size: 11px;
  color: #647267;
}
.agency-tool-metrics dd {
  margin: 8px 0 0;
  color: #1b3d2a;
  font-size: 26px;
  font-weight: 600;
  font-family: Urbanist, Manrope, sans-serif;
  line-height: 1.1;
  font-variant-numeric: tabular-nums;
}
.agency-tool-metrics dd.is-negative {
  color: #974b36;
}
.agency-tool-metrics dd.is-unknown {
  font-size: 18px;
  line-height: 1.4;
  color: #657466;
}
.agency-tool-result-detail {
  margin-top: 10px !important;
  color: #5c6c61;
  font-size: 12px;
  line-height: 1.8;
}
.agency-tool-result-detail strong {
  color: #293c2f;
}
.agency-tool-next-step {
  max-width: 750px;
  padding-top: 22px;
}
.agency-tool-next-step h3,
.agency-tool-project-cta h3 {
  font-size: 25px;
  line-height: 1.3;
}
.agency-tool-next-step p,
.agency-tool-project-cta p {
  margin-block: 13px 18px;
  color: var(--agency-muted);
  font-size: 13px;
}
.agency-tool-project-cta {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-top: 40px;
  padding: 28px;
  border-radius: 10px;
  background: #f0f5ed;
}
.agency-tool-project-cta > div {
  flex: 1 1 360px;
}
.agency-tool-project-cta > button {
  flex: 0 1 320px;
}
.agency-tool-project-cta p {
  margin-bottom: 0;
}
.agency-tool-no-script {
  padding-block: 30px;
}
.agency-tool-no-script a {
  text-decoration: underline;
}
@media (max-width: 1000px) {
  .agency-planner-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 36px;
  }
  .agency-tool-method {
    position: static;
    max-width: 750px;
  }
  .agency-tool-method ol {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 26px;
  }
  .agency-tool-index-row {
    grid-template-columns: minmax(0, 1fr);
    gap: 22px;
  }
  .agency-tool-index-note {
    display: none;
  }
}
@media (max-width: 600px) {
  .agency-tool-heading {
    padding-top: 125px;
    padding-bottom: 40px;
  }
  .agency-tool-heading .agency-breadcrumbs {
    gap: 7px;
    margin-bottom: 26px;
    font-size: 10px;
  }
  .agency-tool-heading h1 {
    font-size: 38px;
  }
  .agency-tool-heading-compact h1 {
    font-size: 34px;
  }
  .agency-tool-heading h1 + p {
    font-size: 14px;
    margin-top: 20px;
  }
  .agency-tool-section-heading {
    align-items: start;
  }
  .agency-tool-section-heading h2 {
    font-size: 26px;
  }
  .agency-tool-section-heading > button {
    width: 100%;
  }
  .agency-tool-task {
    padding: 18px 15px;
  }
  .agency-tool-task-toolbar {
    align-items: start;
  }
  .agency-tool-fields {
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
  }
  .agency-tool-constraint {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
  }
  .agency-tool-constraint select {
    font-size: 16px;
  }
  .agency-tool-calculate > button {
    width: 100%;
  }
  .agency-tool-method ol {
    display: block;
  }
  .agency-tool-results {
    margin-top: 50px;
  }
  .agency-tool-export-actions {
    width: 100%;
  }
  .agency-tool-export-actions > button {
    width: 100%;
  }
  .agency-tool-metrics {
    gap: 12px;
  }
  .agency-tool-metrics dt {
    font-size: 10px;
  }
  .agency-tool-metrics dd {
    font-size: 23px;
  }
  .agency-tool-index-row {
    grid-template-columns: minmax(0, 1fr);
    gap: 15px;
  }
  .agency-tool-index-row h2,
  .agency-tool-context h2 {
    font-size: 28px;
  }
  .agency-tool-project-cta {
    padding: 23px 20px;
  }
  .agency-tool-project-cta > a,
  .agency-tool-project-cta > button {
    flex-basis: auto;
    width: 100%;
  }
}
@media print {
  .agency-header,
  .agency-footer,
  .agency-planner-layout,
  .agency-tool-export-actions,
  .agency-tool-project-cta,
  .agency-tool-next-step,
  .agency-tool-heading .agency-breadcrumbs {
    display: none !important;
  }
  .agency-tool-heading {
    padding-block: 0 24px;
  }
  .agency-tool-heading h1 {
    font-size: 28px;
  }
  .agency-tool-results {
    margin-top: 0;
  }
  .agency-tool-result {
    break-inside: avoid;
  }
  .agency-shell {
    width: 100%;
  }
}
