/* Faithful production bridge from launch-path-review-20261021/mocks/bridge-C.css.
   Loaded last only on the explicit public set, never root or derived PH.
   Reuse the retained full Latin Extended Archivo variable font and OFL/provenance. */
@font-face {
  font-family: Archivo;
  src: url("homepage-voices/fonts/archivo.woff2") format("woff2");
  font-style: normal; font-weight: 100 900; font-stretch: 62% 125%; font-display: swap;
}
/* Default-axis approximation supplied with the font. Final geometry waits for fonts. */
@font-face {
  font-family: "Archivo Fallback"; src: local("Arial");
  size-adjust: 101.435782%; ascent-override: 86.557227%;
  descent-override: 20.702754%; line-gap-override: 0%;
}
:root {
  --five: linear-gradient(90deg, #FF5B3A 0 20%, #FFC21A 20% 40%, #2FD38A 40% 60%, #4EA3FF 60% 80%, #FF77C8 80% 100%);
  --display: "Archivo", "Archivo Fallback", "Helvetica Neue", Arial, sans-serif;
  --mono: var(--display); --pixel: var(--display); --prose-size: 17px;
  --canvas: #FFFFFF; --panel: #F7F2EE; --raise: #EFE8E3; --line: #E7E0DB;
  --prose: #16110F; --ink: #16110F; --muted: #5B514B; --faint: #5B514B;
  --accent: #16110F; --accent-ink: #16110F; --accent-soft: rgba(22,17,15,.4);
  --btn-bg: #16110F; --btn-fg: #FFF7F0;
}
@media (prefers-color-scheme: dark) {
  :root {
    --canvas: #16110F; --panel: #231B17; --raise: #2E2520; --line: #3A2F29;
    --prose: #FFF7F0; --ink: #FFF7F0; --muted: #BFB2A9; --faint: #BFB2A9;
    --accent: #FFF7F0; --accent-ink: #FFF7F0; --accent-soft: rgba(255,247,240,.45);
    --btn-bg: #FFF7F0; --btn-fg: #16110F;
  }
}
body { background: var(--canvas); color: var(--prose); font-family: var(--display); line-height: 1.6; -webkit-font-smoothing: antialiased; }
h1, h2, .trust-copy h1 {
  font-family: var(--display); font-weight: 800; font-variation-settings: "wdth" 88;
  letter-spacing: -.02em; line-height: 1.06; color: var(--ink);
}
main h1, .trust-copy h1 { font-size: clamp(38px, 5.2vw, 60px); }
h2 { font-size: clamp(24px, 2.6vw, 32px); }
.trust-copy { font-family: var(--display); font-size: var(--prose-size); }
.primary, .plans-table .plan-actions .primary {
  min-height: 52px; padding: 0 26px 4px; border: 0; border-radius: 6px;
  background: var(--five) left bottom / 100% 5px no-repeat, var(--btn-bg);
  color: var(--btn-fg); font: 760 17px/1 var(--display); font-variation-settings: "wdth" 104;
  transition: background-size .35s cubic-bezier(.16,.84,.24,1);
}
.primary:hover:not(:disabled) { background-size: 100% 100%, auto; color: #16110F; }
:focus-visible, a:focus-visible { outline: 3px solid var(--ink); outline-offset: 3px; border-radius: 4px; }
.plans-table { font-size: 15px; }
.plans-table thead th { font: 800 22px/1.2 var(--display); color: var(--ink); }
.plans-table thead th:last-child { background: var(--five) top / 100% 5px no-repeat, var(--panel); }
.plans-table .price-row td[data-plan="Free"] { font: 800 40px/1.1 var(--display); letter-spacing: -.02em; }
.plans-table .premium-options span:first-child { font: 650 12px/1.4 var(--display); letter-spacing: .06em; text-transform: uppercase; color: var(--muted); }
.plans-table .premium-options span:nth-of-type(2) { font: 800 22px/1.25 var(--display); letter-spacing: -.01em; }

/* Same C header band/box; markup and account runtime are owned by the unchanged assembler. */
.public-site-header.public-site-header {
  --ink: #FFF7F0; --accent: transparent; --accent-ink: transparent; --faint: transparent; --header-blue: #FFF7F0;
  display: flex; align-items: center; justify-content: space-between;
  min-height: 84px; font: 600 16px/1.2 var(--display); font-variation-settings: "wdth" 100;
  width: 100%; max-width: 1440px; margin-inline: auto; padding-inline: clamp(20px,4.4vw,64px);
  background: #16110F; box-shadow: 0 0 0 100vmax #16110F; clip-path: inset(0 -100vmax);
}
.public-site-header .brand { display: inline-flex; align-items: center; color: var(--ink); background: var(--five) 0 27px / 110px 4px no-repeat; }
.public-site-header .brand svg { width: 110px; height: 33px; }
.public-site-header .public-header-beta { font: 600 12px/1 var(--display); color: #BFB2A9; }
.public-site-header .nav-try {
  min-height: 44px; padding: 0 16px 4px; border-radius: 6px; text-decoration: none;
  background: var(--five) left bottom / 100% 5px no-repeat, #FFF7F0;
  color: #16110F; font-weight: 760;
}
.public-site-header .nav-try:hover { color: #16110F; background-size: 100% 100%, auto; }
.public-site-header a:focus-visible { outline: 3px solid #FFF7F0; outline-offset: 3px; border-radius: 4px; }
@media (min-width: 1100px) {
  .public-site-header .brand svg { width: 120px; height: 36px; }
  .public-site-header .brand { background-position: 0 28px; background-size: 120px 4px; }
}
@media (max-width: 600px) {
  .public-site-header.public-site-header { min-height: 76px; width: 100%; gap: 8px; }
  .public-site-header nav { gap: 12px; font-size: 15px; }
  .public-site-header .brand svg { width: 100px; height: 30px; }
  .public-site-header .brand { background-position: 0 24px; background-size: 100px 4px; }
  .public-site-header .public-header-beta { display: none; }
}

/* Approved legal defects only; the opaque main/footer HTML stays byte exact. */
.trust-copy > p:first-of-type a, .trust-footer a {
  display: inline-flex; align-items: center; min-height: 44px; padding-block: 12px;
}
.public-design-skip {
  position: absolute; left: 12px; top: -100px; z-index: 100;
  padding: 10px 14px; background: var(--canvas); color: var(--ink); font-weight: 700;
}
.public-design-skip:focus { top: 12px; }
.public-trust-content:focus { outline: 3px solid var(--ink); outline-offset: -3px; }

/* Both error documents remain static, with their status/lang/head and local links. */
.public-design-not-found { font-family: var(--display); }
.public-design-not-found .brand { text-decoration: none; min-height: 44px; }
.public-design-not-found main nav a:first-child { padding-left: 0; color: var(--ink); }
.public-design-not-found main .write {
  min-height: 52px; padding: 0 26px 4px; border-radius: 6px;
  background: var(--five) left bottom / 100% 5px no-repeat, var(--btn-bg);
  color: var(--btn-fg); font-weight: 760; text-decoration: none;
}
.public-design-not-found main .write:hover { background-size: 100% 100%, auto; color: #16110F; }
@media (prefers-reduced-motion: reduce) { .primary, .plans-table .plan-actions .primary { transition: none; } }
