/* ClientPulse "beta" (PR #8), shared by every page: the tokens and the pieces the public pages, the sign-in
   pages and the app's own public pages (terms, privacy, not found) reuse. Light and calm: paper background,
   white surfaces with soft shadows, rounded corners, Libre Franklin for headings and text, Newsreader only for
   what a client said, and the signal red only on the one main button and the agent's ring.
   The pieces are scoped to .public-clean, so the app's stylesheet can import this file for its tokens without
   restyling the workspace. Page layouts stay in style.css (public pages) and in the app's globals.css. */
@font-face{font-family:'Libre Franklin';src:url('/launch-assets/fonts/libre-franklin.woff2?v=52e605852c72') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:Newsreader;src:url('/launch-assets/fonts/newsreader-roman.woff2?v=6e4f2958c3a7') format('woff2');font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:Newsreader;src:url('/launch-assets/fonts/newsreader-italic.woff2?v=5dfcd10d24af') format('woff2');font-weight:200 800;font-style:italic;font-display:swap}

:root{
  color-scheme:light;
  /* Brand */
  --paper:#f3efe6;--ink:#1a1915;--muted:#5b574e;--line:#d5cfc2;--line-strong:#8b8577;--signal:#b8361c;
  /* Light surfaces */
  --signal-hover:#9f2d16;--surface:#fffdf9;--soft:#ece6da;--hairline:rgba(26,25,21,.09);
  --shadow-1:0 1px 2px rgba(26,25,21,.05),0 4px 14px rgba(26,25,21,.05);
  --shadow-2:0 2px 6px rgba(26,25,21,.06),0 14px 36px rgba(26,25,21,.09);
  --shadow-3:0 6px 16px rgba(26,25,21,.07),0 30px 80px rgba(26,25,21,.13);
  --radius-m:20px;--radius-l:28px;
  /* Outlines of quiet buttons and form fields; the field's is darker so its edge passes 3:1 on white and on paper. */
  --edge:rgba(26,25,21,.2);--edge-field:rgba(26,25,21,.5);--radius-field:14px;
  /* The selected item in a row of links or tabs, and the text on the red button. */
  --pressed:rgba(26,25,21,.06);--on-signal:#fff;
  --text:'Libre Franklin',system-ui,-apple-system,'Segoe UI',sans-serif;
  --quote:Newsreader,'Iowan Old Style',Georgia,serif;
  --display:var(--text); /* still named by the styles the server adds to the page */
}

/* Focus, skip link and text for screen readers */
.public-clean :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.public-clean .sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap}
.public-clean .skip-link{position:fixed;top:-100px;left:16px;z-index:100;padding:12px 18px;border-radius:999px;background:var(--ink);color:var(--paper);font-weight:600;text-decoration:none}
.public-clean .skip-link:focus{top:16px}

/* Frame: logo, two quiet links (the server adds Sign in), footer. No rules between them, only space. */
.public-clean .page-shell{max-width:1200px;margin:0 auto;padding:0 clamp(20px,5vw,56px)}
.public-clean .page-shell>*{min-width:0}
.public-clean .masthead{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:84px;padding-block:12px}
.public-clean .brand{display:inline-flex;align-items:center;flex-shrink:0;width:184px;min-height:44px}
.public-clean .brand picture,.public-clean .brand img{display:block;width:100%;height:auto}
.public-clean .public-nav{display:flex;flex-wrap:nowrap;align-items:center;gap:6px;min-width:0;font-size:.9375rem;font-weight:550}
.public-clean .public-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 14px;border-radius:999px;color:var(--ink);white-space:nowrap;text-decoration:none;transition:background-color .15s ease}
.public-clean .public-nav a:hover,.public-clean .public-nav a[aria-current="page"]{background:var(--pressed);text-decoration:none}
.public-clean .public-nav .access-link{order:2;gap:0;padding:0 18px;border:1px solid rgba(26,25,21,.18);background:var(--surface);font-size:.9375rem;font-weight:600}
.public-clean footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 24px;padding:24px 0 max(24px,env(safe-area-inset-bottom));color:var(--muted);font-size:.8125rem;line-height:1.5}
.public-clean .footer-links{display:flex;flex-wrap:wrap;align-items:center;gap:0 20px}
.public-clean .footer-links a,.public-clean .privacy-choices-button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;color:var(--ink)}
.public-clean .privacy-choices-button{padding:0;border:0;background:none;font:inherit;cursor:pointer}
.public-clean .privacy-choices-button:hover{text-decoration:underline;text-underline-offset:4px}

/* Buttons and links. The red button is the one main action; everything else is ink. */
.public-clean .cta,.public-clean .payment-cta{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 30px;border:1px solid var(--signal);border-radius:999px;background:var(--signal);color:var(--on-signal);font-size:1rem;font-weight:600;line-height:1.2;text-align:center;text-decoration:none;box-shadow:0 1px 2px rgba(26,25,21,.12),0 6px 16px rgba(26,25,21,.1);transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}
.public-clean .cta:hover,.public-clean .payment-cta:hover{background:var(--signal-hover);border-color:var(--signal-hover);text-decoration:none}
.public-clean .payment-cta-secondary{background:var(--surface);border-color:var(--edge);color:var(--ink);box-shadow:none}
.public-clean .payment-cta-secondary:hover{background:var(--surface);border-color:var(--ink)}
.public-clean .button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border:1px solid var(--edge);border-radius:999px;background:var(--surface);color:var(--ink);font-size:.9375rem;font-weight:600;line-height:1.2;text-align:center;text-decoration:none;transition:border-color .15s ease,background-color .15s ease}
.public-clean .button:hover{border-color:var(--ink);text-decoration:none}
.public-clean :is(.cta,.payment-cta,.button,.privacy-banner button):active:not(:disabled){transform:translateY(1px)}
.public-clean .text-link,.public-clean .inline-link{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:rgba(26,25,21,.35);text-underline-offset:5px;transition:text-decoration-color .15s ease}
.public-clean .text-link:hover,.public-clean .inline-link:hover{text-decoration-color:currentColor}
.public-clean .tag{display:inline-flex;align-items:center;min-height:22px;margin:0;padding:2px 10px;border-radius:999px;background:var(--soft);color:#3f3b34;font-size:.75rem;font-weight:600;line-height:1.3;white-space:nowrap}
.public-clean .tag-strong{background:var(--ink);color:var(--paper)}
.public-clean .quote{font-family:var(--quote);font-size:1.125em;line-height:1.35;letter-spacing:-.005em}
.public-clean .eyebrow{display:block;margin:0;color:var(--muted);font-size:.75rem;font-weight:600;letter-spacing:.02em;text-transform:none}

@media (max-width:640px){
  .public-clean .masthead{min-height:72px}
  .public-clean .brand{width:150px}
  .public-clean footer{flex-direction:column;align-items:flex-start;gap:4px}
  .public-clean .footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:0 16px}
  .public-clean .footer-links a,.public-clean .privacy-choices-button{justify-content:flex-start}
}
@media (max-width:380px){
  .public-clean .masthead{gap:8px}
  .public-clean .brand{width:116px}
  .public-clean .public-nav{gap:2px;font-size:.875rem}
  .public-clean .public-nav a{padding:0 8px}
  .public-clean .public-nav .access-link{padding:0 12px;font-size:.875rem}
}
@media (prefers-reduced-motion:reduce){
  .public-clean :is(.cta,.payment-cta,.button,.public-nav a,.text-link,.inline-link){transition:none}
}
@media (forced-colors:active){
  .public-clean .brand{forced-color-adjust:none}
  .public-clean :is(.cta,.payment-cta,.button,.tag,.public-nav .access-link){border:1px solid CanvasText}
}
/* With more contrast asked for: darker secondary text and lines (the workspace's values in the app's light.css),
   darker card hairlines, and quiet-button outlines as dark as a form field's edge. */
@media (prefers-contrast:more){
  :root{--muted:#3f3c35;--line:#a8a191;--hairline:rgba(26,25,21,.3);--edge:rgba(26,25,21,.5)}
}
