/* V2 redesign pages (Home, Scorecard, Fast Start, Diagnostic, Build, Run). Source: Figma "Website" page, V201 to V206.
   Everything is scoped under body.pg-v2 so the older pages are untouched. Built by scripts/build-v2.py. */
body.pg-v2 {
  --v2-black: #0b0d10; --v2-white: #fff; --v2-g100: #f1f3f6; --v2-g200: #e0e4e9; --v2-g300: #bfc5ce; --v2-g500: #6b7380; --v2-g700: #3a4049;
  --v2-amber: #e6a43a; --v2-amber-deep: #c4871c; --v2-pine: #1e4034; --v2-midnight: #091a33;
  --v2-mono: "JetBrains Mono", ui-monospace, Menlo, monospace; --v2-sans: "Poppins", system-ui, sans-serif;
  background: var(--v2-white); color: var(--v2-black); font-family: var(--v2-sans);
}
.pg-v2 main { display: block; background: var(--v2-white); color: var(--v2-black); font-family: var(--v2-sans); }
.pg-v2 main :is(h1, h2, h3, h4, p, ul, ol, figure) { margin: 0; padding: 0; }
.pg-v2 main :is(ul, ol) { list-style: none; }
.pg-v2 .v2-wrap { width: 100%; max-width: 1140px; margin: 0 auto; padding: 0 24px; box-sizing: border-box; }
@media (min-width: 1190px) { .pg-v2 .v2-wrap { padding: 0; } }

/* Hero (dark) */
.pg-v2 .v2-hero { background: linear-gradient(to bottom, var(--v2-midnight), var(--v2-black) 85%); color: var(--v2-white); padding: 164px 0 72px; position: relative; overflow: hidden; }
.pg-v2 .v2-hero-row { display: flex; gap: 44px; align-items: center; }
.pg-v2 .v2-hero-copy { flex: 0 0 548px; max-width: 100%; display: flex; flex-direction: column; gap: 22px; align-items: flex-start; }
.pg-v2 .v2-hero-side { flex: 1 1 auto; min-width: 0; display: flex; justify-content: flex-end; }
.pg-v2 .v2-h1 { font: 600 58px/1.08 var(--v2-sans); letter-spacing: -1.45px; color: var(--v2-white); margin: 0; }
.pg-v2 .v2-sub { font: 400 20px/1.55 var(--v2-sans); color: var(--v2-g300); margin: 0; }
.pg-v2 .v2-cta-row { display: flex; gap: 26px; align-items: center; flex-wrap: wrap; }
@media (max-width: 1000px) {
  .pg-v2 .v2-hero-row { flex-direction: column; align-items: stretch; gap: 36px; }
  .pg-v2 .v2-hero-copy { flex: none; width: 100%; }
  .pg-v2 .v2-hero-side { justify-content: stretch; }
}
@media (max-width: 640px) {
  .pg-v2 .v2-hero { padding: 112px 0 48px; }
  .pg-v2 .v2-h1 { font-size: clamp(30px, 8.6vw, 40px); letter-spacing: -.9px; }
  .pg-v2 .v2-sub { font-size: 16.5px; }
  .pg-v2 .v2-cta-row { flex-direction: column; align-items: stretch; gap: 10px; }
}

/* Eyebrow */
.pg-v2 .v2-eb { display: flex; gap: 8px; align-items: center; font: 500 12px/normal var(--v2-mono); letter-spacing: 1.92px; text-transform: uppercase; color: var(--v2-amber-deep); margin: 0; }
.pg-v2 .v2-eb::before { content: ""; width: 22px; border-top: 2px solid var(--v2-amber); }
.pg-v2 .v2-hero .v2-eb, .pg-v2 .v2-dark .v2-eb { color: var(--v2-amber); }

/* Buttons and links */
.pg-v2 .v2-btn { display: inline-flex; gap: 14px; align-items: center; justify-content: center; background: var(--v2-amber); color: var(--v2-black); font: 600 15px/normal var(--v2-sans); padding: 8px 8px 8px 24px; border-radius: 999px; text-decoration: none; box-shadow: 0 6px 9px rgba(196, 135, 28, .55); white-space: nowrap; }
.pg-v2 .v2-btn i { font-style: normal; display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 999px; background: var(--v2-black); color: var(--v2-amber); font: 700 16px/1 var(--v2-sans); }
.pg-v2 .v2-btn:hover { background: #f0b04a; }
.pg-v2 .v2-btn:focus-visible, .pg-v2 .v2-link:focus-visible { outline: 3px solid var(--v2-amber-deep); outline-offset: 3px; }
.pg-v2 .v2-link { font: 400 15.5px/normal var(--v2-sans); color: var(--v2-g300); text-decoration: underline; text-underline-position: from-font; }
.pg-v2 .v2-link--amber { color: var(--v2-amber-deep); font-weight: 600; }
@media (max-width: 640px) { .pg-v2 .v2-btn { width: 100%; box-sizing: border-box; justify-content: center; padding-left: 24px; } }

/* Sections */
.pg-v2 .v2-sec { padding: 96px 0; background: var(--v2-white); }
.pg-v2 .v2-sec--gray { background: var(--v2-g100); }
.pg-v2 .v2-sec--amber { background: var(--v2-amber); }
.pg-v2 .v2-sec--dark { background: var(--v2-black); color: var(--v2-white); }
.pg-v2 .v2-head { display: flex; flex-direction: column; gap: 14px; align-items: flex-start; }
.pg-v2 .v2-h2 { font: 600 40px/1.12 var(--v2-sans); letter-spacing: -.8px; color: var(--v2-black); margin: 0; }
.pg-v2 .v2-lede { font: 400 17.5px/1.6 var(--v2-sans); color: var(--v2-g500); margin: 0; }
.pg-v2 .v2-dark .v2-h2, .pg-v2 .v2-sec--dark .v2-h2 { color: var(--v2-white); }
.pg-v2 .v2-split { display: flex; gap: 72px; align-items: center; }
.pg-v2 .v2-split > .v2-head { flex: 0 0 460px; max-width: 100%; }
.pg-v2 .v2-split > .v2-card { flex: 1 1 0; min-width: 0; }
@media (max-width: 1000px) {
  .pg-v2 .v2-split { flex-direction: column; align-items: stretch; gap: 32px; }
  .pg-v2 .v2-split > .v2-head { flex: none; }
}
@media (max-width: 640px) {
  .pg-v2 .v2-sec { padding: 48px 0; }
  .pg-v2 .v2-h2 { font-size: clamp(26px, 7.2vw, 32px); letter-spacing: -.5px; }
  .pg-v2 .v2-lede { font-size: 16px; }
}

/* Cards */
.pg-v2 .v2-card { background: var(--v2-white); border: 1px solid var(--v2-g200); border-radius: 18px; padding: 24px 26px 26px; box-sizing: border-box; display: flex; flex-direction: column; gap: 8px; align-items: flex-start; }
.pg-v2 .v2-card-n { font: 700 11px/normal var(--v2-mono); letter-spacing: 1.1px; color: var(--v2-amber-deep); }
.pg-v2 .v2-card h3 { font: 600 20px/1.2 var(--v2-sans); letter-spacing: -.16px; color: var(--v2-black); }
.pg-v2 .v2-card p { font: 400 15px/1.5 var(--v2-sans); color: var(--v2-g500); }
.pg-v2 .v2-grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 40px; align-items: start; }
@media (max-width: 800px) { .pg-v2 .v2-grid2 { grid-template-columns: 1fr; } }

/* Panel cards (owner view, activity log, bill) */
.pg-v2 .v2-panel { background: var(--v2-white); color: var(--v2-black); border: 1px solid var(--v2-g200); border-radius: 22px; padding: 26px 26px 24px; box-sizing: border-box; box-shadow: 0 28px 30px rgba(11, 13, 16, .28); width: 520px; max-width: 100%; display: flex; flex-direction: column; gap: 10px; }
.pg-v2 .v2-panel--flat { box-shadow: none; border-radius: 18px; width: auto; }
.pg-v2 .v2-ptop { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.pg-v2 .v2-cap { font: 700 10.5px/normal var(--v2-mono); letter-spacing: 1.26px; text-transform: uppercase; color: var(--v2-g500); margin: 0; }
.pg-v2 .v2-chip { font: 700 10.5px/normal var(--v2-mono); letter-spacing: 1.26px; text-transform: uppercase; color: var(--v2-amber-deep); border: 1px solid var(--v2-amber); border-radius: 999px; padding: 3px 9px; white-space: nowrap; }
.pg-v2 .v2-ptitle { font: 600 19px/normal var(--v2-sans); letter-spacing: -.095px; color: var(--v2-black); margin: 0; }
.pg-v2 .v2-rule { height: 1px; background: var(--v2-g200); border: 0; margin: 0; width: 100%; }
.pg-v2 .v2-prow { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 4px 0; }
.pg-v2 .v2-prow-t { min-width: 0; display: flex; flex-direction: column; gap: 1px; }
.pg-v2 .v2-prow-t b { font: 600 15px/normal var(--v2-sans); color: var(--v2-black); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pg-v2 .v2-prow-t span { font: 400 12.5px/normal var(--v2-sans); color: var(--v2-g500); }
.pg-v2 .v2-prow-t small { font: 500 9px/normal var(--v2-mono); letter-spacing: .72px; color: var(--v2-g500); }
.pg-v2 .v2-pill { font: 600 12.5px/normal var(--v2-sans); color: var(--v2-black); background: var(--v2-amber); border-radius: 999px; padding: 5px 14px; white-space: nowrap; }
.pg-v2 .v2-log-row { display: flex; flex-direction: column; gap: 2px; padding: 6px 0; }
.pg-v2 .v2-log-row small { font: 500 10px/normal var(--v2-mono); letter-spacing: 1px; color: var(--v2-amber-deep); }
.pg-v2 .v2-log-row b { font: 500 15.5px/normal var(--v2-sans); color: var(--v2-black); }
.pg-v2 .v2-fine { font: 500 9.5px/normal var(--v2-mono); letter-spacing: .76px; text-transform: uppercase; color: var(--v2-g500); margin: 0; }

/* Path strip */
.pg-v2 .v2-strip { background: var(--v2-g100); border-top: 1px solid var(--v2-g200); border-bottom: 1px solid var(--v2-g200); overflow-x: auto; scrollbar-width: none; }
.pg-v2 .v2-strip::-webkit-scrollbar { display: none; }
.pg-v2 .v2-strip-in { display: flex; gap: 34px; align-items: center; justify-content: center; height: 56px; width: 100%; min-width: max-content; padding: 0 24px; box-sizing: border-box; }
.pg-v2 .v2-strip-k { font: 500 11.5px/normal var(--v2-mono); letter-spacing: 1.61px; text-transform: uppercase; color: var(--v2-amber-deep); white-space: nowrap; }
.pg-v2 .v2-strip-d { width: 1px; height: 36px; background: var(--v2-g200); }
.pg-v2 .v2-step { display: flex; gap: 8px; align-items: center; height: 56px; box-sizing: border-box; text-decoration: none; color: var(--v2-black); white-space: nowrap; font: 500 14.5px/normal var(--v2-sans); border-bottom: 2px solid transparent; }
.pg-v2 .v2-step em { font: 500 11.5px/normal var(--v2-mono); letter-spacing: .92px; color: var(--v2-amber-deep); font-style: normal; }
.pg-v2 .v2-step small { font: 500 10.5px/normal var(--v2-mono); letter-spacing: 1.05px; color: var(--v2-g500); }
.pg-v2 .v2-step.is-here { border-bottom-color: var(--v2-amber); font-weight: 600; }
@media (max-width: 640px) { .pg-v2 .v2-strip-k, .pg-v2 .v2-strip-d { display: none; } .pg-v2 .v2-strip-in { gap: 26px; height: 40px; justify-content: flex-start; } .pg-v2 .v2-step { height: 40px; font-size: 14px; } }

/* Adoption route */
.pg-v2 .v2-adopt { position: relative; width: 620px; max-width: 100%; height: 104px; margin-top: 30px; font-family: var(--v2-mono); }
.pg-v2 .v2-adopt i, .pg-v2 .v2-adopt b { position: absolute; display: block; box-sizing: border-box; }
.pg-v2 .v2-adopt .l1 { left: 20px; right: 4px; top: 24px; border-top: 2px dashed var(--v2-amber); }
.pg-v2 .v2-adopt .l2 { left: 20px; right: 4px; top: 38px; border-top: 1px solid var(--v2-g700); }
.pg-v2 .v2-adopt .nd { width: 22px; height: 22px; border-radius: 999px; background: var(--v2-white); border: 2px solid var(--v2-amber); top: 13px; }
.pg-v2 .v2-adopt .gate { width: 20px; height: 20px; background: var(--v2-white); border: 2px solid var(--v2-amber); top: 14px; transform: rotate(45deg); }
.pg-v2 .v2-adopt .ok { width: 24px; height: 24px; border-radius: 999px; background: var(--v2-white); border: 2px solid var(--v2-pine); top: 12px; color: var(--v2-pine); font: 700 13px/20px var(--v2-sans); text-align: center; }
.pg-v2 .v2-adopt span { position: absolute; top: 56px; font: 500 11.5px/normal var(--v2-mono); letter-spacing: 1.61px; color: var(--v2-g700); white-space: nowrap; }
.pg-v2 .v2-adopt p { position: absolute; left: 0; top: 84px; font: 500 11.5px/normal var(--v2-mono); color: var(--v2-g700); white-space: nowrap; }
@media (max-width: 640px) { .pg-v2 .v2-adopt span { font-size: 9.5px; letter-spacing: 1px; } .pg-v2 .v2-adopt p { font-size: 9.5px; white-space: normal; } }

/* Bill */
.pg-v2 .v2-brow { display: flex; flex-direction: column; gap: 6px; padding: 10px 0; }
.pg-v2 .v2-brow b { font: 600 16px/normal var(--v2-sans); color: var(--v2-black); }
.pg-v2 .v2-brow span { font: 400 13.5px/1.4 var(--v2-sans); color: var(--v2-g500); }
.pg-v2 .v2-note { font: 400 15.5px/1.5 var(--v2-sans); color: var(--v2-g700); margin: 0; }

/* Closing band */
.pg-v2 .v2-close { background: var(--v2-amber); padding: 96px 0 104px; text-align: center; }
.pg-v2 .v2-close .v2-wrap { display: flex; flex-direction: column; gap: 18px; align-items: center; }
.pg-v2 .v2-close .v2-eb { justify-content: center; }
.pg-v2 .v2-close .v2-eb::before { display: none; }
.pg-v2 .v2-close .v2-eb { color: var(--v2-amber-deep); }
.pg-v2 .v2-close h2 { font: 600 48px/1.1 var(--v2-sans); letter-spacing: -1.2px; color: var(--v2-black); }
.pg-v2 .v2-close p.v2-lede { font-size: 18px; }
.pg-v2 .v2-close .v2-btn { background: var(--v2-black); color: var(--v2-white); box-shadow: none; }
@media (max-width: 640px) { .pg-v2 .v2-close { padding: 56px 0; } .pg-v2 .v2-close h2 { font-size: clamp(28px, 8vw, 34px); letter-spacing: -.7px; } }
.pg-v2 .v2-close .v2-btn i { background: var(--v2-amber); color: var(--v2-black); }
.pg-v2 .v2-close .v2-eb, .pg-v2 .v2-close .v2-fine { color: var(--v2-black); }
.pg-v2 .v2-close p.v2-lede { color: var(--v2-g700); }

/* New pages: no header Get started button, no floating button */
.pg-v2 header .nav-cta, .pg-v2 header .cl-mbtn, .pg-v2 .mn-ctas, .pg-v2 .nb-sticky { display: none !important; }

/* Phone: calls to action and the text under them are centered */
@media (max-width: 640px) {
  .pg-v2 .v2-cta-row, .pg-v2 .hm-actions, .pg-v2 .v2-close .v2-wrap { align-items: center; text-align: center; width: 100%; box-sizing: border-box; }
  .pg-v2 .v2-cta-row .v2-btn, .pg-v2 .hm-actions .v2-btn, .pg-v2 .v2-close .v2-btn { width: auto; }
  .pg-v2 .v2-cta-row .v2-link, .pg-v2 .hm-actions .v2-link, .pg-v2 .v2-close .v2-fine, .pg-v2 .hm-actions .hm-small, .pg-v2 .hm-closein .hm-small { text-align: center; justify-content: center; }
}

/* Phone: the adoption diagram uses percent positions so its labels stay inside the page */
@media (max-width: 640px) {
  .pg-v2 .v2-adopt > :nth-child(5) { left: calc(40% - 11px) !important; }
  .pg-v2 .v2-adopt > :nth-child(6) { left: calc(40% - 47px) !important; }
  .pg-v2 .v2-adopt > :nth-child(7) { left: calc(68% - 10px) !important; }
  .pg-v2 .v2-adopt > :nth-child(8) { left: calc(68% - 37px) !important; }
}

/* No drop shadow on buttons; the Scorecard hero note is centered on phones */
.pg-v2 .v2-btn { box-shadow: none; }
@media (max-width: 640px) { .pg-v2 .v2-hero-copy .v2-fine { text-align: center; align-self: center; } }
@media (max-width: 640px) { .pg-v2 .sc-ctas { align-self: center; align-items: center; text-align: center; } .pg-v2 .sc-ctas .v2-fine { text-align: center; } }
