/* =========================================================================
   Homepage "paper and bench" layer, 2026-10-14.
   Loaded after homepage-v4.css and theme-paper.css on index.html only
   (body.paper.home-paper). Same tokens and fonts as the .biz paper pages:
   warm paper, Fraunces headings, Plex Mono labels, hairlines, square corners.
   ========================================================================= */

body.home-paper{background:var(--p-paper);color:var(--p-ink)}
body.home-paper p{color:var(--p-ink-2)}
body.home-paper h1,body.home-paper h2{font-family:var(--p-display);font-weight:560;letter-spacing:-.022em;color:var(--p-ink)}
body.home-paper h3{color:var(--p-ink);letter-spacing:-.01em}
body.home-paper .eyebrow{font-family:var(--p-mono);font-weight:500;font-size:12px;letter-spacing:.08em;color:var(--p-accent)}
body.home-paper .icon{color:var(--p-ink-2)}
body.home-paper .text-link{color:var(--p-accent);text-decoration:underline;text-underline-offset:3px}

/* Buttons: solid ink, ink outline */
body.home-paper .button{background:var(--p-ink);color:var(--p-paper);border:1px solid var(--p-ink);border-radius:0;font-weight:600;gap:18px}
body.home-paper .button:hover{background:#2c2823;transform:none}
body.home-paper .button.secondary{background:transparent;color:var(--p-ink);border-color:var(--p-ink)}
body.home-paper .button.secondary:hover{background:var(--p-paper-deep)}

/* ---------- Hero ---------- */
body.home-paper .ph-hero{background:var(--p-paper);color:var(--p-ink);padding:52px 0 44px;border-bottom:1px solid var(--p-line)}
body.home-paper .ph-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:start}
body.home-paper .ph-eyebrow{font-family:var(--p-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--p-accent);margin-bottom:18px}
body.home-paper .ph-hero h1{font-size:clamp(36px,4vw,54px);line-height:1.06;color:var(--p-ink)}
body.home-paper .ph-hero h1 .ph-accent{color:var(--p-accent)}
body.home-paper .ph-hero .lede{font-size:17px;line-height:1.6;max-width:50ch;margin:22px 0 26px;color:var(--p-ink-2)}
body.home-paper .ph-hero .actions{gap:12px}
body.home-paper .ph-assure{list-style:none;padding:0;margin:22px 0 0;display:flex;flex-wrap:wrap;gap:6px 14px;font-family:var(--p-mono);font-size:12.5px;color:var(--p-mut)}
body.home-paper .ph-assure li{display:inline-flex;align-items:center;gap:8px}body.home-paper .ph-assure li::before{content:'';width:6px;height:6px;background:var(--p-accent);flex:none}
body.home-paper .ph-proof{display:inline-flex;align-items:center;gap:10px;margin-top:18px;min-height:44px;color:var(--p-ink);font-size:14px;text-decoration:none;border-bottom:1px solid var(--p-line)}
body.home-paper .ph-proof:hover{border-bottom-color:var(--p-ink)}
body.home-paper .ph-proof .ph-stars{color:#8a5a06;letter-spacing:1px}
body.home-paper .ph-proof b{font-family:var(--p-mono);font-weight:500}
body.home-paper .ph-proof span:last-child{color:var(--p-mut)}

body.home-paper .ph-figure{margin:0;position:relative}
body.home-paper .ph-figure img{display:block;width:100%;height:auto;aspect-ratio:1400/908;object-fit:cover;border:1px solid var(--p-ink)}
body.home-paper .ph-figure figcaption{display:flex;justify-content:space-between;gap:16px;padding:9px 0 0;font-family:var(--p-mono);font-size:11.5px;color:var(--p-mut);border-top:0}
body.home-paper .ph-quote{margin:18px 0 0;padding:18px 20px;background:var(--p-white);border:1px solid var(--p-line);border-left:3px solid var(--p-ink)}
body.home-paper .ph-quote .ph-quote-stars{color:#8a5a06;font-size:14px;letter-spacing:1px}
body.home-paper .ph-quote p{margin:6px 0 10px;font-family:var(--p-display);font-size:19px;line-height:1.4;color:var(--p-ink)}
body.home-paper .ph-quote cite{font-style:normal;font-size:13px;color:var(--p-mut)}
body.home-paper .ph-quote cite strong{color:var(--p-ink)}
body.home-paper .ph-quote cite a{color:var(--p-ink-2);text-decoration:underline;text-underline-offset:3px}

/* Hero contact row on paper */
body.home-paper .hero-contact{border-top:1px solid var(--p-line);margin-top:26px;padding-top:18px}
body.home-paper .hero-contact-label{color:var(--p-mut)}
body.home-paper .hero-contact a{background:transparent;border:1px solid var(--p-line);border-radius:0;color:var(--p-ink)}
body.home-paper .hero-contact a:hover{background:var(--p-paper-deep);border-color:var(--p-ink)}
body.home-paper .hero-contact .hc-icon{border-radius:0;background:var(--p-paper-deep);color:var(--p-ink)}
body.home-paper .hero-contact .hc-wa .hc-icon{background:var(--p-green);color:#fff}
body.home-paper .hero-contact .hc-print .hc-icon{background:var(--p-paper-deep);color:var(--p-accent)}

/* ---------- Route ledger + trust row ---------- */
body.home-paper .routes{background:var(--p-paper);padding:0;color:var(--p-ink)}
body.home-paper .route-grid{gap:0;border-bottom:1px solid var(--p-line)}
body.home-paper .route{border:0;border-radius:0;border-left:1px solid var(--p-line);padding:26px 24px;background:transparent;color:var(--p-ink)}
body.home-paper .route:first-child{border-left:0;padding-left:0}
body.home-paper .route:hover{background:var(--p-paper-deep);border-color:var(--p-line)}
body.home-paper .route h3{font-family:var(--p-display);font-weight:560;font-size:22px}
body.home-paper .route p{color:var(--p-mut)}
body.home-paper .route .icon{color:var(--p-accent)}
body.home-paper .route .arrow{color:var(--p-ink)}
body.home-paper .trust{padding:20px 0 26px}
body.home-paper .trust>div{border-right:1px solid var(--p-line);color:var(--p-ink)}
body.home-paper .trust>div:last-child{border-right:0}
body.home-paper .trust small{color:var(--p-mut)}
body.home-paper .trust .icon{color:var(--p-ink-2)}
body.home-paper .trust-review-link b{color:var(--p-ink)}

/* ---------- Reviews ---------- */
body.home-paper .reviews-section{background:var(--p-white);border-top:1px solid var(--p-line);border-bottom:1px solid var(--p-line);padding:40px 0}
body.home-paper .heading-row h2{font-size:clamp(26px,2.6vw,34px)}
body.home-paper .reviews-summary{color:var(--p-mut);font-family:var(--p-mono);font-size:13px}
body.home-paper .reviews-summary strong{color:var(--p-ink)}
body.home-paper .stars{color:#8a5a06}
body.home-paper .reviews{gap:0;border-top:1px solid var(--p-ink)}
body.home-paper .review{border:0;border-radius:0;border-left:1px solid var(--p-line);padding:22px 24px 6px;background:transparent}
body.home-paper .review:first-child{border-left:0;padding-left:0}
body.home-paper .review .stars{font-size:15px}
body.home-paper .review blockquote{font-family:var(--p-display);font-size:18px;line-height:1.45;color:var(--p-ink)}
body.home-paper .review-who strong{color:var(--p-ink)}
body.home-paper .review-who span{font-family:var(--p-mono);font-size:11.5px;color:var(--p-mut)}
body.home-paper .review .review-source{color:var(--p-ink-2)}

/* ---------- Broken part ---------- */
body.home-paper .broken-part{background:var(--p-paper);border:0;border-bottom:1px solid var(--p-line);padding:44px 0}
body.home-paper .section{padding:44px 0}
body.home-paper .section-head h2{font-size:clamp(26px,2.8vw,36px)}
body.home-paper .bp-steps{gap:0;border-top:1px solid var(--p-ink)}
body.home-paper .bp-steps li{border:0;border-left:1px solid var(--p-line);border-radius:0;background:transparent;padding:20px 22px}
body.home-paper .bp-steps li:first-child{border-left:0;padding-left:0}
body.home-paper .bp-num{border-radius:0;background:transparent;border:1px solid var(--p-ink);color:var(--p-ink);font-family:var(--p-mono);font-weight:500}
body.home-paper .bp-steps a,body.home-paper .bp-nofile a{color:var(--p-accent)}
body.home-paper .bp-search input{border-radius:0;border-color:var(--p-ink-2);background:var(--p-white)}
body.home-paper .bp-search button{border-radius:0;background:var(--p-ink)}
body.home-paper .bp-chips span{color:var(--p-mut)}
body.home-paper .bp-chips a{border-radius:0;border-color:var(--p-line);background:var(--p-white);color:var(--p-ink)}
body.home-paper .bp-chips a:hover{border-color:var(--p-ink)}
body.home-paper .bp-chips a.bp-all{border-color:var(--p-ink);color:var(--p-ink)}

/* ---------- 3D printing block ---------- */
body.home-paper .photo-card{border:1px solid var(--p-line);border-radius:0;background:var(--p-white)}
body.home-paper .photo-card:hover{border-color:var(--p-ink)}
body.home-paper .card-caption .arrow{color:var(--p-ink)}
body.home-paper .card-caption p{color:var(--p-mut)}
body.home-paper .manifesto{background:var(--p-ink);border-radius:0;color:var(--p-paper)}
body.home-paper .manifesto .statement{font-family:var(--p-display);letter-spacing:0;font-size:24px;line-height:1.25;color:var(--p-paper)}
body.home-paper .orange-rule{background:var(--p-accent)}
body.home-paper .manifesto small{font-family:var(--p-mono);color:#cfc7b8;letter-spacing:.06em}
body.home-paper .batch{background:var(--p-paper-deep);border:1px solid var(--p-line);border-radius:0}
body.home-paper .batch>img{border-radius:0}
body.home-paper .quantity-card{background:var(--p-white);border:1px solid var(--p-line);border-radius:0}
body.home-paper .quantities span{border-radius:0;background:var(--p-paper);border-color:var(--p-line);font-family:var(--p-mono);font-weight:500}
body.home-paper .quantity-card small{color:var(--p-mut)}
body.home-paper .trade-callout{background:var(--p-white);border:1px solid var(--p-line);border-left:3px solid var(--p-ink);border-radius:0}

/* ---------- Process (was a dark band) ---------- */
body.home-paper .process.dark{background:var(--p-paper-deep);color:var(--p-ink);border-top:1px solid var(--p-line);border-bottom:1px solid var(--p-line);padding:44px 0}
body.home-paper .process h2{color:var(--p-ink)}
body.home-paper .process-card{border:0;border-top:1px solid var(--p-ink);border-radius:0;padding:20px 0 0}
body.home-paper .process-card .eyebrow{color:#9a3508}
body.home-paper .step-num{border-radius:0;background:var(--p-ink);color:var(--p-paper);font-family:var(--p-mono);font-weight:500}
body.home-paper .steps .icon{color:var(--p-ink-2)}
body.home-paper .steps small{color:var(--p-mut)}

/* ---------- Job proof, recent work, repairs ---------- */
body.home-paper .job-card{background:var(--p-white);border:1px solid var(--p-line);border-radius:0}
body.home-paper .job-card figure{background:var(--p-paper-deep)}
body.home-paper .job-card figcaption{font-family:var(--p-mono);color:var(--p-mut)}
body.home-paper .job-copy blockquote{font-family:var(--p-display);font-style:normal;font-size:17px;color:var(--p-ink)}
body.home-paper .job-source{color:var(--p-accent)}
body.home-paper .job-context{color:var(--p-mut)}
body.home-paper .recent-work .photo-card,body.home-paper .recent-work a{border-radius:0}
body.home-paper .repair-card{background:var(--p-white);border:1px solid var(--p-line);border-radius:0}
body.home-paper .repair-card:hover{border-color:var(--p-ink)}
body.home-paper .repair-card img{border-radius:0}
body.home-paper .repair-card b{font-family:var(--p-mono);font-weight:500;color:var(--p-ink)}
body.home-paper .repair-card span{color:var(--p-accent)}
body.home-paper .service-note{color:var(--p-mut)}

/* ---------- FAQ ---------- */
body.home-paper .faq details{background:transparent;border:0;border-top:1px solid var(--p-line);border-radius:0}
body.home-paper .faq summary{padding:14px 2px;font-size:14px;color:var(--p-ink)}
body.home-paper .faq details p{padding:0 2px 14px}

/* ---------- Closing band: ink ---------- */
body.home-paper .closing{background:var(--p-ink);border-bottom:1px solid #2c2823}
body.home-paper .closing h2{color:var(--p-paper)}
body.home-paper .closing p{color:#cfc7b8}
body.home-paper .closing .button{background:var(--p-paper);color:var(--p-ink);border-color:var(--p-paper)}
body.home-paper .closing .button:hover{background:#fff}
body.home-paper .closing .button.secondary{background:transparent;color:var(--p-paper);border-color:#8f877a}
body.home-paper .closing .button.secondary:hover{background:#2c2823}

/* ---------- Responsive ---------- */
@media(max-width:900px){
  body.home-paper .ph-grid{grid-template-columns:1fr;gap:30px}
  body.home-paper .ph-hero{padding:34px 0 30px}
  body.home-paper .ph-hero h1{max-width:none}
}
@media(max-width:850px){
  body.home-paper .route{padding:20px 14px}
  body.home-paper .review{padding:20px 16px 6px}
}
@media(max-width:560px){
  body.home-paper .ph-hero h1{font-size:36px}
  body.home-paper .ph-hero .lede{font-size:15px;margin:16px 0 20px}
  body.home-paper .ph-hero .actions .button{flex:1 1 100%;justify-content:space-between}
  body.home-paper .ph-assure{flex-direction:column;gap:4px}
  body.home-paper .ph-figure figcaption{flex-direction:column;gap:2px}
  body.home-paper .ph-quote p{font-size:17px}
  body.home-paper .route,body.home-paper .route:first-child{border-left:0;border-top:1px solid var(--p-line);padding:16px 0}
  body.home-paper .route:first-child{border-top:0}
  body.home-paper .trust>div{border-right:0}
  body.home-paper .reviews,body.home-paper .bp-steps{border-top:1px solid var(--p-ink)}
  body.home-paper .review,body.home-paper .review:first-child,body.home-paper .bp-steps li,body.home-paper .bp-steps li:first-child{border-left:0;border-top:1px solid var(--p-line);padding:18px 0}
  body.home-paper .review:first-child,body.home-paper .bp-steps li:first-child{border-top:0}
  body.home-paper .heading-row .text-link{border-radius:0;border-color:var(--p-ink);background:transparent}
}

/* ---------- Nav: homepage-v4-navigation.css uses #site-header, so match it ---------- */
body.home-paper #site-header,body.home-paper #site-header.scrolled{background:var(--p-paper);color:var(--p-ink);border-bottom:1px solid var(--p-line);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
body.home-paper #site-header .nav-logo,body.home-paper #site-header .nav-logo:hover{color:var(--p-ink);font-family:var(--p-display);font-weight:600;letter-spacing:-.02em}
body.home-paper #site-header .nav-logo-accent{color:var(--p-ink)}
body.home-paper #site-header .nav-logo .logo-mark{border:0}
body.home-paper #site-header .nav-trust,body.home-paper #site-header .nav-trust:hover,body.home-paper #site-header .nav-trust:focus-visible{background:transparent;border:1px solid var(--p-line);border-radius:0;color:var(--p-mut)}
body.home-paper #site-header .nav-trust:hover{border-color:var(--p-ink)}
body.home-paper #site-header .nav-trust-stars{color:#8a5a06}
body.home-paper #site-header .nav-trust-rating{color:var(--p-ink)}
body.home-paper #site-header .nav-trust-tag,body.home-paper #site-header .nav-trust-count{color:var(--p-mut);border-left-color:var(--p-line)}
body.home-paper #site-header .nav-links>li>a,body.home-paper #site-header .nav-links a{color:var(--p-ink-2);border-radius:0;box-shadow:none}
body.home-paper #site-header .nav-links>li>a:hover,body.home-paper #site-header .nav-links>li>a:focus-visible,body.home-paper #site-header .nav-links a:hover{color:var(--p-ink);background:var(--p-paper-deep);border-color:transparent;box-shadow:none}
body.home-paper #site-header .nav-links>.nav-account>a{color:var(--p-ink)}
body.home-paper #site-header .nav-links>.nav-account{border-left-color:var(--p-line)}
body.home-paper #site-header .nav-dropdown-menu{background:var(--p-white);border:1px solid var(--p-line);border-radius:0;box-shadow:0 18px 40px rgba(23,21,18,.12)}
body.home-paper #site-header .nav-dropdown-menu a{color:var(--p-ink-2)}
body.home-paper #site-header .nav-dropdown-menu a:hover,body.home-paper #site-header .nav-dropdown-menu a:focus-visible{color:var(--p-ink);background:var(--p-paper-deep);box-shadow:none}
body.home-paper #site-header .nav-cta a.nav-track-btn,body.home-paper #site-header .nav-utility-track a.nav-track-btn{background:transparent;border:1px solid var(--p-ink);border-radius:0;color:var(--p-ink)!important;box-shadow:none}
body.home-paper #site-header .nav-cta a.nav-track-btn:hover,body.home-paper #site-header .nav-utility-track a.nav-track-btn:hover{background:var(--p-paper-deep)}
body.home-paper #site-header .nav-cta a.nav-quote-btn,body.home-paper #site-header .nav-cta a.nav-quote-btn:hover,body.home-paper #site-header .nav-cta a.nav-quote-btn:focus-visible{background:var(--p-ink);border:1px solid var(--p-ink);border-radius:0;box-shadow:none;color:var(--p-paper)!important}
body.home-paper #site-header .nav-cta a.nav-quote-btn:hover{background:#2c2823}
body.home-paper #site-header .nav-toggle{color:var(--p-ink);border:1px solid var(--p-ink);border-radius:0}
body.home-paper #site-header .nav-toggle-line{background:var(--p-ink)}
body.home-paper #site-header .nav-dropdown>a::after{border-color:currentColor}
@media(max-width:1080px){
  body.home-paper #site-header .nav-links,body.home-paper #site-header .nav-links.open{background:var(--p-paper);box-shadow:0 20px 45px rgba(23,21,18,.16)}
  body.home-paper #site-header .nav-links>li{border-bottom:1px solid var(--p-line)}
  body.home-paper #site-header .nav-sub-toggle{border-left:1px solid var(--p-line);background:transparent}
  body.home-paper #site-header .nav-sub-toggle::before{border-color:var(--p-ink)}
  body.home-paper #site-header .nav-dropdown.open>a,body.home-paper #site-header .nav-dropdown.open>.nav-sub-toggle{background:var(--p-paper-deep)}
  body.home-paper #site-header .nav-dropdown-menu{background:var(--p-paper-deep);border:0;box-shadow:none}
  body.home-paper #site-header .nav-dropdown-menu a{color:var(--p-ink-2);border-bottom:1px solid var(--p-line)}
  body.home-paper #site-header .nav-mobile-intro{background:var(--p-paper-deep);border-bottom:1px solid var(--p-line)!important}
  body.home-paper #site-header .nav-mobile-kicker{color:var(--p-mut)}
  body.home-paper #site-header .nav-mobile-actions .nav-mobile-primary{background:var(--p-ink)!important;border-color:var(--p-ink)!important;color:var(--p-paper)!important;border-radius:0}
  body.home-paper #site-header .nav-mobile-actions .nav-mobile-secondary{background:transparent!important;border-color:var(--p-ink)!important;color:var(--p-ink)!important;border-radius:0}
  body.home-paper #site-header .nav-cta a.nav-quote-btn{border-bottom:1px solid var(--p-ink)!important}
}

/* ---------- Footer stays dark: undo the paper text colours inside it ---------- */
body.home-paper .footer p{color:#8e9ba4}
body.home-paper .footer h3{color:#fff}
body.home-paper .footer .nav-logo,body.home-paper .footer .nav-logo:hover{color:#fff;font-family:var(--p-display);font-weight:600}
body.home-paper .footer .nav-logo-accent{color:#e8dcc6}
body.home-paper .footer a{color:#c0c9cf}
body.home-paper .footer a:hover{color:#fff}
body.home-paper .footer .footer-bottom,body.home-paper .footer .footer-bottom span{color:#80909b}

/* Phones: show the workshop photo + review before the contact buttons */
@media(max-width:900px){
  body.home-paper .ph-grid{display:flex;flex-direction:column;align-items:stretch;gap:0}
  body.home-paper .ph-copy>.ph-proof,body.home-paper .ph-copy>.ph-eyebrow{align-self:flex-start}
  body.home-paper .ph-copy{display:contents}
  body.home-paper .ph-copy>*{order:1}
  body.home-paper .ph-figure{order:2;margin-top:26px}
  body.home-paper .ph-copy>.hero-contact{order:3}
}

/* ---------- Hero contact panel (2026-10-14): one aligned, boxed block ---------- */
body.home-paper .hero-contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px;max-width:560px;margin-top:26px;padding:16px;background:var(--p-white);border:1px solid var(--p-ink);border-top:1px solid var(--p-ink)}
body.home-paper .hero-contact-label{grid-column:1/-1;margin:0 0 2px;font-family:var(--p-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--p-ink)}
body.home-paper .hero-contact a{display:flex;align-items:center;gap:12px;min-height:56px;padding:8px 14px 8px 8px;border:1px solid var(--p-line);border-radius:0;background:var(--p-paper);color:var(--p-ink);font-size:14px;font-weight:600;min-width:0}
body.home-paper .hero-contact a:hover,body.home-paper .hero-contact a:focus-visible{border-color:var(--p-ink);background:var(--p-paper-deep)}
body.home-paper .hero-contact .hc-icon{width:36px;height:36px;flex:0 0 36px}
body.home-paper .hero-contact .hc-icon svg{width:18px;height:18px}
body.home-paper .hero-contact .hc-text{display:flex;flex-direction:column;min-width:0;line-height:1.3;overflow-wrap:anywhere}
body.home-paper .hero-contact .hc-text small{font-family:var(--p-mono);font-size:11px;font-weight:400;letter-spacing:.03em;color:var(--p-mut)}
body.home-paper .hero-contact a.hc-wa{grid-column:1/-1;background:var(--p-green);border-color:var(--p-green);color:#fff;font-size:16px}
body.home-paper .hero-contact a.hc-wa:hover,body.home-paper .hero-contact a.hc-wa:focus-visible{background:#185a34;border-color:#185a34}
body.home-paper .hero-contact a.hc-wa .hc-icon{background:#fff;color:var(--p-green)}
body.home-paper .hero-contact a.hc-wa .hc-text small{color:#d9eadf}
body.home-paper .hero-contact a.hc-wa::after{content:'→';margin-left:auto;font-size:18px}
@media(max-width:560px){
  body.home-paper .hero-contact{grid-template-columns:1fr;padding:14px}
  body.home-paper .hero-contact a{min-height:56px;font-size:15px}
}

/* Hero photo pair (2026-10-14): print head + electronics bench, replaces the A1 shot */
body.home-paper .ph-duo{display:grid;grid-template-columns:1fr 1fr;gap:8px}
body.home-paper .ph-shot{position:relative;display:block;border:1px solid var(--p-ink);overflow:hidden;background:var(--p-ink)}
body.home-paper .ph-figure .ph-shot img{aspect-ratio:4/5;width:100%;height:auto;object-fit:cover;border:0}
body.home-paper .ph-shot:first-child img{object-position:80% 40%}
body.home-paper .ph-shot:last-child img{object-position:45% 60%}
body.home-paper .ph-shot-label{position:absolute;left:0;bottom:0;padding:6px 10px;background:var(--p-ink);color:var(--p-paper);font-family:var(--p-mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase}
@media(max-width:560px){body.home-paper .ph-figure .ph-shot img{aspect-ratio:3/4}}

body.home-paper .hero-contact .hc-text{white-space:normal}
