:root {
  --ink: #102425;
  --muted: #58706d;
  --surface: #f8fbf9;
  --line: #d7e3de;
  --green: #12694f;
  --green-tint: #eaf7f1;
  --blue: #2e6f95;
  --blue-tint: #edf7fd;
  --yellow: #d2a637;
  --yellow-tint: #fff8df;
  --radius-sm: .65rem;
  --radius-md: .9rem;
  --radius-lg: 1.2rem;
  --content: 74rem;
  --shadow: 0 .75rem 2.5rem rgba(7, 22, 23, .07);
}
* { box-sizing: border-box; }
html { color: var(--ink); background: #fff; font: 16px/1.55 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
body { margin: 0; }
a { color: inherit; }
button, input, select { font: inherit; }
.site { min-height: 100vh; }
.skip-link { position: absolute; left: -9999px; top: 0; z-index: 20; padding: .75rem 1rem; background: #fff; }
.skip-link:focus { left: 1rem; top: 1rem; }
.header { display: flex; max-width: var(--content); margin: 0 auto; padding: 1rem 1.25rem; gap: 1.2rem; align-items: center; border-bottom: 1px solid var(--line); }
.lockup { color: var(--ink); font-weight: 850; letter-spacing: -.03em; text-decoration: none; }
.header nav { display: flex; gap: 1rem; margin-left: auto; }
.header nav a, .footer a { color: var(--muted); text-decoration: none; }
.header .account { display: flex; gap: .6rem; }
.button { display: inline-flex; min-height: 2.8rem; padding: .65rem .95rem; align-items: center; justify-content: center; border: 0; border-radius: var(--radius-sm); color: #fff; background: var(--green); font-weight: 780; text-decoration: none; cursor: pointer; }
.button.secondary { border: 1px solid var(--line); color: var(--ink); background: #fff; }
.footer { display: grid; max-width: var(--content); margin: 0 auto; padding: 2.5rem 1.25rem; gap: 1rem; border-top: 1px solid var(--line); color: var(--muted); }
.footer nav { display: flex; flex-wrap: wrap; gap: 1rem; }
.breadcrumbs { display: flex; flex-wrap: wrap; gap: .45rem; color: var(--muted); font-size: .9rem; }
.section-label { margin: 0 0 .5rem; color: var(--green); font-size: .75rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.acquisition-page { max-width: var(--content); min-height: 70vh; margin: 0 auto; padding: clamp(2rem, 5vw, 4.5rem) 1.25rem 5rem; }
.acquisition-hero { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(16rem, .7fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: end; padding: 2rem 0 3rem; border-bottom: 1px solid var(--line); }
.acquisition-hero h1 { max-width: 14ch; margin: 0; font-size: clamp(2.8rem, 7vw, 5.4rem); font-weight: 760; letter-spacing: -.055em; line-height: .98; }
.acquisition-lede { max-width: 50rem; margin: 1.25rem 0 0; color: var(--muted); font-size: clamp(1.05rem, 2vw, 1.25rem); }
.acquisition-hero aside { padding: 1.1rem; border: 1px solid var(--line); border-left: .35rem solid var(--yellow); border-radius: var(--radius-md); background: var(--yellow-tint); }
.acquisition-hero aside p { margin: .45rem 0 0; color: #55461f; }
.acquisition-workspace { padding: clamp(2.5rem, 7vw, 5rem) 0; }
.acquisition-workspace-heading { max-width: 48rem; margin-bottom: 2rem; }
.acquisition-workspace-heading h2, .acquisition-result h2, .acquisition-save-panel h2, .acquisition-explainer h2, .acquisition-sources h2 { margin: 0; font-size: clamp(1.9rem, 4vw, 3rem); letter-spacing: -.035em; line-height: 1.08; }
.acquisition-workspace-heading > p:last-child { color: var(--muted); }
.acquisition-form { margin: 0; padding: clamp(1rem, 3vw, 1.6rem); border: 1px solid var(--line); border-radius: var(--radius-lg); background: var(--surface); box-shadow: var(--shadow); }
.acquisition-field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.acquisition-field-grid label { display: flex; min-width: 0; flex-direction: column; gap: .42rem; font-weight: 760; }
.acquisition-field-grid input, .acquisition-field-grid select { width: 100%; min-height: 3rem; padding: .7rem .8rem; border: 1px solid #adc7bd; border-radius: var(--radius-sm); color: var(--ink); background: #fff; }
.acquisition-field-grid input:focus-visible, .acquisition-field-grid select:focus-visible, .acquisition-save-panel button:focus-visible, .acquisition-related a:focus-visible, .acquisition-hub-grid a:focus-visible { outline: .2rem solid #f4c95f; outline-offset: .12rem; }
.acquisition-input-suffix { display: flex; align-items: center; gap: .5rem; }
.acquisition-result { margin-top: 1.25rem; padding: clamp(1.2rem, 4vw, 2rem); border: 1px solid var(--line); border-left: .4rem solid var(--blue); border-radius: var(--radius-lg); background: var(--blue-tint); }
.acquisition-result > p:not(.section-label) { color: #34566d; }
.acquisition-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; margin: 1.4rem 0; }
.acquisition-metrics div, .acquisition-result-columns > div { min-width: 0; padding: .85rem; border: 1px solid #bad7ec; border-radius: var(--radius-sm); background: #fff; }
.acquisition-metrics div { display: flex; flex-direction: column; }
.acquisition-metrics span { color: var(--muted); font-size: .78rem; font-weight: 740; }
.acquisition-metrics strong { margin-top: .2rem; font-size: 1.25rem; overflow-wrap: anywhere; }
.acquisition-result-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin-top: 1.4rem; }
.acquisition-result-columns h3 { margin: 0 0 .5rem; }
.acquisition-result-columns ul { margin: 0; padding-left: 1.2rem; }
.acquisition-save-panel { margin-top: 1.25rem; padding: clamp(1.3rem, 4vw, 2.2rem); border-radius: var(--radius-lg); background: var(--green-tint); }
.acquisition-object-preview { margin: 1.25rem 0; padding: 1rem; border: 1px solid #a9d9c7; border-radius: var(--radius-sm); background: #fff; }
.acquisition-object-preview dl { margin: 0; }
.acquisition-object-preview dl > div { display: grid; grid-template-columns: 7rem minmax(0, 1fr); gap: 1rem; padding: .55rem 0; border-bottom: 1px solid var(--line); }
.acquisition-object-preview dl > div:last-child { border-bottom: 0; }
.acquisition-object-preview dt { color: var(--muted); font-weight: 730; }
.acquisition-object-preview dd { margin: 0; font-weight: 760; overflow-wrap: anywhere; }
.acquisition-privacy { max-width: 48rem; color: var(--muted); font-size: .88rem; }
.acquisition-save-error { max-width: 48rem; margin: .75rem 0; color: #7a221d; font-weight: 700; }
.acquisition-urgent { margin-bottom: 1.2rem; padding: 1rem 1.1rem; border: 2px solid #a43a32; border-radius: var(--radius-md); color: #5f1d18; background: #fff0ee; }
.acquisition-urgent p { margin: .35rem 0 0; }
.acquisition-checklist { display: grid; gap: .55rem; margin: 1.25rem 0; padding: 0; list-style: none; }
.acquisition-checklist li { padding: .75rem .9rem .75rem 2.2rem; border: 1px solid #bad7ec; border-radius: var(--radius-sm); background: #fff; }
.acquisition-checklist li::before { margin-left: -1.35rem; margin-right: .65rem; content: '○'; }
.acquisition-checklist li.is-complete::before { color: var(--green); content: '✓'; }
.acquisition-stage { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .55rem; margin: 1.25rem 0; }
.acquisition-stage span { min-width: 0; padding: .7rem; border: 1px solid #bad7ec; border-radius: var(--radius-sm); background: #fff; font-size: .82rem; font-weight: 760; overflow-wrap: anywhere; }
.acquisition-stage span.is-active { border-color: var(--green); background: var(--green-tint); }
.acquisition-explainer, .acquisition-sources { padding: 2.5rem 0; border-top: 1px solid var(--line); }
.acquisition-explainer p, .acquisition-sources p { max-width: 50rem; color: var(--muted); }
.acquisition-sources ul { padding-left: 1.2rem; }
.acquisition-related { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; padding-top: 2rem; border-top: 1px solid var(--line); }
.acquisition-related a, .acquisition-hub-grid a { min-width: 0; padding: .9rem; border: 1px solid var(--line); border-radius: var(--radius-sm); background: #fff; font-weight: 760; text-decoration: none; overflow-wrap: anywhere; }
.acquisition-related a:hover, .acquisition-hub-grid a:hover { background: var(--green-tint); }
.acquisition-hub-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin: 2rem 0 4rem; }
.acquisition-hub-grid a { display: block; padding: 1.4rem; border-radius: var(--radius-md); box-shadow: 0 .35rem 1.2rem rgba(7,22,23,.04); }
.acquisition-hub-grid span { color: var(--green); font-size: .74rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.acquisition-hub-grid h2 { margin: .65rem 0 .45rem; font-size: 1.55rem; line-height: 1.15; }
.acquisition-hub-grid p { color: var(--muted); }
@media (max-width: 800px) { .header nav { display: none; } .acquisition-hero, .acquisition-field-grid, .acquisition-result-columns { grid-template-columns: 1fr; } .acquisition-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); } .acquisition-stage, .acquisition-related { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 700px) { .acquisition-hub-grid { grid-template-columns: 1fr; } }
@media (max-width: 520px) { .header { align-items: flex-start; } .header .account { margin-left: auto; } .acquisition-page { padding-inline: 1rem; } .acquisition-metrics, .acquisition-stage, .acquisition-related { grid-template-columns: 1fr; } .acquisition-object-preview dl > div { grid-template-columns: 1fr; gap: .15rem; } }
