/* Paper theme for the public pages (/ and /hire). Loaded after devlog.css; owner views keep the dark HUD.
   Light, editorial and print-like: warm paper, ink type, one burnt-orange accent for the single primary action.
   Display: Instrument Serif. Text: Instrument Sans. Both self-hosted (SIL OFL, see /fonts/OFL-*.txt). */
@font-face{font-family:'Instrument Serif';src:url(/fonts/instrument-serif.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Instrument Serif';src:url(/fonts/instrument-serif-italic.woff2) format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'Instrument Sans';src:url(/fonts/instrument-sans.woff2) format('woff2');font-weight:400 700;font-style:normal;font-display:swap}
html.paper{--paper:#F4EFE6;--paper-2:#EBE4D7;--ink:#17140F;--ink-2:#4A4238;--rule:#17140F26;--accent:#B3401A;--accent-ink:#fff;--ok:#1F5F3F;--ok-bg:#DCEBDF;--warn:#7A4A06;--warn-bg:#F5E3C2;background:var(--paper)}
body.paper{font-family:'Instrument Sans',ui-sans-serif,system-ui,sans-serif;color:var(--ink);background:var(--paper);font-size:17px;line-height:1.5}
body.paper:before{display:none}
body.paper ::selection{background:#B3401A;color:#fff}
body.paper a{text-underline-offset:3px}
body.paper :focus-visible{outline:2px solid var(--ink);outline-offset:3px}
body.paper .wrap{max-width:1120px;padding:max(10px,env(safe-area-inset-top)) 20px 48px}

/* Header: one dominant action (Hire), Sign in as a plain link. Every target is at least 44px tall. */
body.paper .top{min-height:60px;border-bottom:1px solid var(--rule)}
body.paper .logo{font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-size:28px;letter-spacing:-.01em;line-height:1;display:inline-flex;align-items:center;min-height:44px}
body.paper .logo b{color:var(--accent);font-weight:400;font-style:italic}
body.paper .nav{gap:4px}
body.paper .pill{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:10px 16px;border-radius:10px;font-size:15px;font-weight:600;background:transparent;border:1px solid transparent;color:var(--ink)}
body.paper .pill.hire-btn{background:var(--ink);color:var(--paper);border-color:var(--ink)}
body.paper .pill.hire-btn.on{background:var(--ink);color:var(--paper)}
body.paper .pill.signin{text-decoration:underline;font-weight:500;padding:10px 12px}
body.paper .pill:hover{border-color:var(--rule)}
body.paper .pill.hire-btn:hover,body.paper .pill.open-ext:hover{filter:brightness(1.12)}
body.paper .pill.open-ext{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:650}
body.paper button.pill{font-size:15px}

/* Type: a real display moment, sentence-case headings, no eyebrows. */
body.paper .hire h1,body.paper .hire h2,body.paper .hire .client h2,body.paper .hire .client h3{font-family:'Instrument Serif',Georgia,serif;font-weight:400;text-transform:none;letter-spacing:-.015em;color:var(--ink)}
body.paper .hire h1{font-size:clamp(44px,9.5vw,96px);line-height:.98;margin:28px 0 0;max-width:17ch;text-wrap:balance}
body.paper .hire h2{font-size:clamp(34px,5.5vw,52px);line-height:1.05;margin:0 0 10px}
body.paper .hire h3{font-size:19px;font-weight:650}
body.paper .hire .lede{font-size:19px;line-height:1.5;color:var(--ink-2);max-width:38rem;margin:16px 0 0}
body.paper .hire p{color:var(--ink-2)}
body.paper .hire .promise,body.paper .hire .niche,body.paper .hire .optional{color:var(--ink-2);font-size:16px}
body.paper .hire .sec{margin:64px 0 0;padding-top:28px;border-top:1px solid var(--rule)}
body.paper .hire .cta{min-height:52px;padding:14px 22px;font-size:17px;border-radius:12px}
body.paper .mono{font-family:'Instrument Sans',ui-sans-serif,system-ui,sans-serif;font-variant-numeric:tabular-nums}

/* Home hero: offer, one sentence, the Hire action, the test promise. */
body.paper .home .hero{padding:0 0 8px}
body.paper .hero-act{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;margin:24px 0 0}
body.paper .textlink{display:inline-flex;align-items:center;min-height:44px;font-weight:600;text-decoration:underline;color:var(--ink)}
body.paper .home .hero .promise{margin:18px 0 0;max-width:34rem;font-size:15px;padding-left:0}
@media(max-width:699px){body.paper .hero-act .cta{width:100%}body.paper .hire h1{margin-top:20px}}

/* Client work: full-width case-study rows, not a 2-up card grid. */
body.paper .hire .grid.clients{display:block}
body.paper .hire .client{background:none;border:0;border-radius:0;box-shadow:none;padding:28px 0;border-bottom:1px solid var(--rule);display:grid;gap:20px}
body.paper .hire .client:last-child{border-bottom:0}
body.paper .hire .client h2,body.paper .hire .client h3{font-size:clamp(30px,4.2vw,44px);line-height:1.05}
body.paper .hire .client .st{font-size:17px;color:var(--ink-2);margin-top:6px}
body.paper .hire .shot{margin:0;border-radius:12px;overflow:hidden;border:1px solid var(--rule);background:#0d0d0d;box-shadow:0 18px 40px -24px #17140F66}
body.paper .hire .shot img{max-height:none;border-radius:0;aspect-ratio:16/10;object-fit:cover;object-position:top;width:100%}
@media(max-width:699px){body.paper .hire .shot img{aspect-ratio:3/4}}
body.paper .hire .feats{margin:16px 0 0;gap:12px}
body.paper .hire .feats li{font-size:16px}
body.paper .hire .feats p{font-size:15px;color:var(--ink-2)}
body.paper .hire .planned,body.paper .hire .footnote{font-size:15px;color:var(--ink-2)}
body.paper .hire .client .pill{margin-top:18px;border:1px solid var(--ink);border-radius:10px}
@media(min-width:900px){
  body.paper .hire .client{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:40px;align-items:start;padding:40px 0}
  body.paper .hire .client.no-shot{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
  body.paper .hire .client.no-shot .client-body{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);column-gap:40px;align-items:start}
  body.paper .hire .client.no-shot .client-body > :is(h2,h3){grid-column:1;grid-row:1}
  body.paper .hire .client.no-shot .client-body > .st{grid-column:1;grid-row:2}
  body.paper .hire .client.no-shot .client-body > .feats{grid-column:2;grid-row:1;margin-top:0}
  body.paper .hire .client.no-shot .client-body > .planned{grid-column:2;grid-row:2}
}

/* Status badges: readable size, sentence case, AA contrast. */
body.paper .b{font-size:13px;font-weight:650;letter-spacing:0;padding:3px 10px;border-radius:6px;border:0}
body.paper .b.LIVE{background:var(--ok-bg);color:var(--ok)}
body.paper .b.PROGRESS{background:var(--warn-bg);color:var(--warn)}
body.paper .b.NEXT,body.paper .b.SOON{background:var(--paper-2);color:var(--ink)}

/* /hire sections: flat surfaces with rules instead of glass cards and glowing planets. */
body.paper .hire .card,body.paper .hire .offer,body.paper .hire .values li,body.paper .hire .steps li,body.paper .hire .tier-card,body.paper .hire .faq details{background:#FBF8F2;border:1px solid var(--rule);border-radius:12px;box-shadow:none;color:var(--ink)}
body.paper .hire .card{padding:16px}
body.paper .hire .planet{display:none}
body.paper .hire .name{font-size:17px}
body.paper .hire .offer p,body.paper .hire .steps li span:last-child,body.paper .hire .tier-card dd,body.paper .hire .soon,body.paper .hire .tier-note{color:var(--ink-2)}
body.paper .hire .offer .outcome{color:var(--ink)}
body.paper .hire .tags li{background:var(--paper-2);border:0;color:var(--ink);font-size:13px;border-radius:6px}
body.paper .hire .step-n{color:var(--accent);font-family:'Instrument Serif',Georgia,serif;font-size:28px;line-height:1}
body.paper .hire .tier-card dt{text-transform:none;letter-spacing:0;font-size:14px;font-weight:650;color:var(--ink)}
body.paper .hire table.tiers th,body.paper .hire table.tiers td{border-bottom:1px solid var(--rule);font-size:15px}
body.paper .hire table.tiers thead th{color:var(--ink);font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-size:24px}
body.paper .hire .tier-price{color:var(--ink-2);font-family:'Instrument Sans',ui-sans-serif,system-ui,sans-serif;font-size:14px}
body.paper .hire .faq summary{min-height:44px;display:flex;align-items:center}
body.paper .skip{background:var(--ink);color:var(--paper);min-height:44px;display:inline-flex;align-items:center}
body.paper .foot{color:var(--ink-2);font-size:15px;border-top:1px solid var(--rule);padding-top:20px}
body.paper .foot a{color:var(--ink);text-decoration:underline;display:inline-flex;align-items:center;min-height:44px}
body.paper .foot span{display:inline-flex;align-items:center;min-height:44px}
body.paper .soon-home{margin:40px 0 0}
@media (prefers-reduced-motion:no-preference){body.paper .pill{transition:filter .15s ease-out,border-color .15s ease-out}}
@media(min-width:1000px){body.paper .home .hero h1{max-width:20ch;font-size:clamp(64px,8vw,104px)}}
