/* Homepage only. Hero and bench retain the approved Repair Shop artwork. */
.home { background: var(--yellow); color: var(--ink); font-family: var(--body); }
.home *, .home *::before, .home *::after { box-sizing: border-box; }
.home .hero { display:grid;grid-template-columns:1.1fr 1fr;gap:36px;padding:55px 0 80px;min-height:743px;align-items:center }
.home .eyebrow { display:flex;gap:9px;align-items:center;font-size:11px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;margin:0 0 25px }
.home .eyebrow .bolt { font-size:23px;line-height:1 }
.home .hero h1 { font:800 clamp(70px,7.65vw,119px)/.89 var(--display);letter-spacing:-.068em;margin:0 0 25px;max-width:730px }
.home .hero h1 span { display:block }
.home .hero h1 .last { white-space:nowrap }
.home .hero h1 em { font-style:normal;position:relative;z-index:0 }
.home .hero h1 em:after { content:'';position:absolute;background:var(--coral);height:24%;bottom:6%;left:0;right:-2%;z-index:-1;transform:rotate(-2deg) }
.home .intro { max-width:430px;font-size:18px;line-height:1.55;margin:0 0 26px }
.home .big-button { border:var(--line);border-radius:9px;box-shadow:5px 5px 0 var(--ink);background:var(--coral);padding:18px 25px;font-weight:800;font-size:18px;display:inline-flex;gap:26px;align-items:center;transition:transform .15s,box-shadow .15s }
.home .big-button:hover { transform:translate(2px,2px);box-shadow:3px 3px 0 var(--ink) }
.home .big-button:active { transform:translate(5px,5px);box-shadow:none }
.home .big-button .arrow { font-size:28px;line-height:20px }
.home .small-note { font-size:12px;margin:18px 0 0;max-width:420px;line-height:1.5 }
.home .bench-scene { position:relative;padding:51px 16px 50px 17px;min-width:0;isolation:isolate }
.home .pegboard { position:absolute;inset:20px -8px 15px 18px;border-radius:210px 210px 32px 32px;background-color:#f0c53c;background-image:radial-gradient(#8f702a 1px,transparent 1.5px);background-size:19px 19px;z-index:-2;border:2px solid rgba(40,41,31,.18) }
.home .bench-label { position:absolute;top:0;left:15px;background:var(--paper);border:2px solid var(--ink);padding:12px 17px;transform:rotate(-7deg);font:800 15px var(--display);letter-spacing:.3px;box-shadow:3px 3px 0 var(--ink);z-index:2 }
.home .bench-label:before { content:'';width:48px;height:15px;background:rgba(254,240,174,.8);position:absolute;top:-9px;left:42%;transform:rotate(5deg) }
.home .wrench { position:absolute;right:3px;top:-23px;width:92px;height:125px;transform:rotate(22deg);z-index:-1 }
.home .bench { position:relative;border:var(--line);border-radius:22px;background:var(--coral);padding:18px;box-shadow:9px 10px 0 var(--ink);transform:rotate(2deg) }
.home .machine-header { display:flex;justify-content:space-between;align-items:center;padding:0 2px 15px;font:800 12px var(--display);letter-spacing:1.2px }
.home .machine-header .screw { height:12px;width:12px;border:2px solid var(--ink);border-radius:50%;position:relative }
.home .screw:after { content:'';position:absolute;width:8px;height:2px;background:var(--ink);transform:rotate(-40deg);top:3px;left:0 }
.home .machine-screen { background:var(--paper);border:var(--line);border-radius:9px;overflow:hidden }
.home .screen-top { display:flex;justify-content:space-between;border-bottom:2px solid var(--ink);padding:12px 15px;font-size:10px;font-weight:800;letter-spacing:1.2px }
.home .screen-dots { letter-spacing:4px }
.home .screen-content { min-height:240px;padding:24px 22px 17px;text-align:center }
.home .app-flow { display:flex;align-items:center;justify-content:center;gap:13px;margin:0 0 15px;height:73px }
.home .flow-box { border:2px solid var(--ink);border-radius:12px;background:#ffe17c;width:60px;height:60px;display:grid;place-items:center;box-shadow:3px 3px 0 var(--ink);transform:rotate(-6deg) }
.home .flow-box:last-child { transform:rotate(5deg);background:#ded5f0 }
.home .flow-box svg { height:32px;width:32px }
.home .flow-middle { position:relative;width:103px;height:55px;display:grid;place-items:center }
.home .flow-middle:before { content:'';border-top:3px dashed var(--ink);position:absolute;top:26px;left:0;width:100% }
.home .flow-indicator { background:var(--coral);border:2px solid var(--ink);border-radius:50%;position:relative;display:grid;place-items:center;width:37px;height:37px;font:800 24px/1 var(--display);transform:rotate(-10deg) }
.home .bench[data-fixed="true"] .flow-indicator { background:var(--green);color:var(--paper) }
.home .screen-content h2 { font:800 clamp(23px,2.1vw,33px)/1.04 var(--display);letter-spacing:-1.3px;margin:0 0 9px }
.home .screen-content p { font-size:13px;line-height:1.5;max-width:280px;margin:0 auto }
.home .screen-status { padding:9px 12px;background:#ffe0d6;border-top:2px solid var(--ink);display:flex;gap:7px;align-items:center;font-size:10px;font-weight:800;letter-spacing:.7px }
.home .status-dot { width:7px;height:7px;background:#ab311b;border-radius:50% }
.home .bench[data-fixed="true"] .screen-status { background:#e3ecce }
.home .bench[data-fixed="true"] .status-dot { background:var(--green) }
.home .case-switch { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:16px 0 12px }
.home .case-switch button { background:transparent;border:2px solid var(--ink);border-radius:5px;padding:10px 4px;font-size:11px;font-weight:800;box-shadow:0 2px 0 var(--ink) }
.home .case-switch button[aria-pressed="true"] { background:var(--paper);transform:translateY(2px);box-shadow:none }
.home .case-switch button:hover { background:#ffe0b1 }
.home .repair-toggle { background:var(--ink);color:var(--paper);width:100%;border:2px solid var(--ink);border-radius:7px;padding:15px;font:700 17px var(--display);display:flex;justify-content:space-between;align-items:center }
.home .repair-toggle:hover { background:#424436 }
.home .bench-foot { font-size:10px;font-weight:600;text-align:center;margin:10px 0 0 }
.home .idea-sticker { position:absolute;right:-30px;bottom:-44px;width:128px;height:128px;display:grid;place-items:center;text-align:center;background:var(--paper);clip-path:polygon(50% 0,59% 9%,72% 3%,77% 16%,92% 15%,91% 29%,100% 37%,92% 49%,100% 62%,88% 69%,90% 84%,75% 85%,70% 98%,57% 92%,47% 100%,38% 89%,24% 95%,21% 80%,7% 80%,10% 66%,0 57%,9% 46%,2% 33%,15% 26%,14% 12%,29% 14%,35% 2%,46% 10%);transform:rotate(12deg);font:800 23px/.91 var(--display);letter-spacing:-1px;filter:drop-shadow(2px 3px var(--ink)) }
.home .bench-caption { position:absolute;bottom:1px;left:29px;font:700 12px var(--display);transform:rotate(-3deg);display:flex;gap:8px;align-items:center }
.home .bench-caption svg { height:27px;width:49px }
.home .ribbon { background:var(--ink);color:var(--yellow);padding:20px 24px;display:flex;justify-content:center;align-items:center;gap:28px;overflow:hidden;font:800 clamp(17px,2.2vw,30px) var(--display);letter-spacing:-.5px;border-block:3px solid var(--ink) }
.home .ribbon span { white-space:nowrap }
.home .ribbon .asterisk { font-size:38px;color:var(--coral) }

/* Shared primitives remain owned by site.css; these rules apply only here. */
.home a { color: inherit; }
.home .big-button { text-decoration: none; }
.home button { font-family: inherit; color: inherit; cursor: pointer; }
.home .repair-toggle { color: var(--paper); font-family: var(--display); }
.home :is(a, button, summary):focus-visible { outline: 3px solid #2548ba; outline-offset: 5px; }
.home .home-pricing :is(a, button):focus-visible { outline-color: var(--yellow); }
.home .case-switch button { min-height: 44px; transition: background .15s, transform .15s, box-shadow .15s; }
.home .case-switch button:active { transform: translateY(2px); box-shadow: none; }
.home .repair-toggle { min-height: 54px; transition: background .15s, transform .15s; }
.home .repair-toggle:active { transform: translateY(2px); }
.home .repair-toggle[aria-pressed="true"] { background: var(--green); }
.home .repair-toggle[aria-pressed="true"]:hover { background: #24432e; }
.home .screen-content { min-height: 256px; }
.home .screen-status { min-height: 37px; line-height: 1.5; white-space: normal; }
.home #case-status { min-width: 0; overflow-wrap: anywhere; }
.home .status-dot { flex: 0 0 7px; }
.home .button { display: inline-flex; align-items: center; justify-content: space-between; gap: 24px; text-decoration: none; }
.home .button > span { font-size: 25px; line-height: 1; }
.home :is(section, #repair-bench) { scroll-margin-top: 32px; }
.home .home-heading { font: 800 clamp(40px, 4.6vw, 70px)/.99 var(--display); letter-spacing: -.05em; margin: 0; }
.home .home-heading em { font-style: normal; }
.home .home-item-label { margin: 0; font-size: 11px; font-weight: 800; letter-spacing: 1.3px; text-transform: uppercase; }
.home :is(.home-repairs, .home-process, .home-pricing, .home-evidence, .home-faq) { padding-block: 100px; }
.home .home-repairs { background: var(--paper); }
.home .home-repair-menu { display: grid; grid-template-columns: .9fr 1.3fr; gap: 90px; }
.home .home-menu-intro > p:not(.section-kicker) { max-width: 315px; font-size: 17px; line-height: 1.65; margin-block: 25px 0; }
.home .home-menu-intro .home-heading em { display: inline-block; background: var(--yellow); padding: 0 8px 5px; margin-left: -8px; transform: rotate(-2deg); }
.home .home-menu-intro .home-platform-note { font-size: 13px; color: var(--muted); max-width: 275px; }
.home .home-platform-note > span { font-size: 25px; margin-right: 5px; color: var(--ink); }
.home .home-repair-list { list-style: none; margin: 0; padding: 0; border-top: var(--line); }
.home .home-repair-list li { display: grid; grid-template-columns: 26px 1fr 62px; gap: 20px; padding-block: 30px 34px; border-bottom: 2px solid var(--ink); }
.home .home-item-no { font: 700 13px var(--display); padding-top: 1px; }
.home .home-repair-list h3 { font: 800 clamp(26px, 2.6vw, 39px)/1.05 var(--display); letter-spacing: -.035em; margin: 14px 0 12px; }
.home .home-repair-list p:not(.home-item-label) { max-width: 405px; margin: 0; font-size: 15px; line-height: 1.6; }
.home .home-repair-list .home-check-line { margin-top: 17px !important; font-size: 12px !important; }
.home .home-check-line span { font-weight: 800; }
.home .home-repair-symbol { width: 56px; height: 56px; border: 2px solid var(--ink); border-radius: 13px; display: grid; place-items: center; font: 800 36px/1 var(--display); background: var(--yellow); box-shadow: 3px 3px 0 var(--ink); transform: rotate(6deg); margin-top: 26px; }
.home .home-repair-list li:nth-child(2) .home-repair-symbol { background: var(--coral); transform: rotate(-6deg); }
.home .home-repair-list li:nth-child(3) .home-repair-symbol { background: #ded5f0; }
.home .home-scope { margin-top: 58px; padding: 29px 0 0; border-top: 2px solid var(--ink); display: grid; grid-template-columns: 1fr 1.15fr auto; gap: 40px; align-items: start; }
.home .home-scope p:not(.home-item-label) { font-size: 14px; line-height: 1.6; margin: 12px 0 0; max-width: 375px; }
.home .home-scope .text-link { font-weight: 800; text-underline-offset: 5px; align-self: center; padding-block: 12px; font-size: 14px; }
.home .home-process { background: #f3edda; border-block: var(--line); }
.home .home-section-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 48px; margin-bottom: 47px; }
.home .home-section-head > p { max-width: 330px; font-size: 17px; line-height: 1.6; margin: 0 0 4px; }
.home .home-ticket { display: grid; grid-template-columns: 285px 1fr; background: var(--paper); border: var(--line); box-shadow: 7px 7px 0 var(--ink); border-radius: 4px; position: relative; }
.home .home-ticket-stub { padding: 38px 30px; border-right: 2px dashed var(--ink); position: relative; background: var(--yellow); }
.home .home-ticket-stub > svg { position: absolute; width: 40px; height: 60px; right: 28px; top: 29px; transform: rotate(16deg); }
.home .home-ticket-brand { font: 800 37px/1 var(--display); letter-spacing: -2px; margin: 0 0 11px; }
.home .home-ticket-job { font: 800 31px/1.08 var(--display); letter-spacing: -1px; margin: 65px 0 20px; }
.home .home-ticket-small { font-size: 12px; line-height: 1.6; }
.home .home-ticket-tear { font-size: 9px; letter-spacing: 2px; font-weight: 800; position: absolute; bottom: 26px; left: 30px; }
.home .home-ticket-steps { list-style: none; margin: 0; padding: 10px 38px; }
.home .home-ticket-steps li { display: grid; grid-template-columns: 44px 1fr; gap: 22px; padding: 28px 0; }
.home .home-ticket-steps li + li { border-top: 1px solid #b7b7a4; }
.home .home-ticket-steps li > span { width: 40px; height: 40px; border: 2px solid var(--ink); border-radius: 50%; display: grid; place-items: center; font: 800 14px var(--display); }
.home .home-ticket-steps h3 { font: 800 27px/1.1 var(--display); letter-spacing: -.03em; margin: 4px 0 10px; }
.home .home-ticket-steps p { max-width: 660px; margin: 0; font-size: 15px; line-height: 1.65; }
.home .home-process-foot { text-align: right; font-size: 12px; margin: 24px 0 0; line-height: 1.6; }
.home .home-pricing { background: var(--ink); color: var(--paper); padding-block: 106px 112px; }
.home .home-pricing-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: 100px; align-items: center; }
.home .home-pricing .section-kicker { color: var(--yellow); }
.home .home-pricing .home-heading { color: var(--yellow); }
.home .home-pricing-intro { font-size: 18px; line-height: 1.65; max-width: 435px; margin: 27px 0 32px; }
.home .home-pricing .button { color: var(--ink); box-shadow: 5px 5px 0 var(--paper); }
.home .home-pricing .button:hover { box-shadow: 3px 3px 0 var(--paper); }
.home .home-pricing .button:active { box-shadow: none; }
.home .home-quote { background: var(--paper); color: var(--ink); padding: 30px 34px 28px; border: 3px solid var(--ink); box-shadow: 8px 9px 0 #626451; transform: rotate(2deg); position: relative; }
.home .home-quote::before { content: ''; width: 94px; height: 28px; background: #ffe796; position: absolute; top: -16px; left: 39%; transform: rotate(-5deg); opacity: .95; }
.home .home-quote-top { display: flex; justify-content: space-between; align-items: center; gap: 14px; border-bottom: 2px solid var(--ink); padding-bottom: 17px; font-size: 10px; letter-spacing: 1.3px; font-weight: 800; }
.home .home-quote-top > span:last-child { font-size: 29px; line-height: 1; }
.home .home-quote-title { font: 800 clamp(35px, 3.4vw, 49px)/1 var(--display); letter-spacing: -.05em; margin: 27px 0; }
.home .home-quote-title em { font-style: normal; background: var(--yellow); }
.home .home-quote dl { margin: 0; }
.home .home-quote dl > div { display: grid; grid-template-columns: 1fr 1.4fr; gap: 20px; padding-block: 13px; border-bottom: 1px dashed #888978; font-size: 12px; line-height: 1.5; }
.home .home-quote dt { color: var(--muted); }
.home .home-quote dd { margin: 0; font-weight: 700; text-align: right; }
.home .home-quote > p:last-child { font-size: 12px; line-height: 1.6; margin: 22px 0 0; }
.home .home-evidence { background: var(--paper); }
.home .home-evidence-grid { display: grid; grid-template-columns: 1fr 1.1fr; gap: 95px; align-items: center; }
.home .home-evidence-intro > p:not(.section-kicker) { max-width: 370px; font-size: 17px; line-height: 1.65; margin: 25px 0 0; }
.home .home-example { border-top: var(--line); border-bottom: var(--line); padding-block: 20px 21px; }
.home .home-example-top { display: flex; justify-content: space-between; align-items: center; gap: 14px; }
.home .home-example-flow { margin-top: 26px; display: grid; grid-template-columns: 1fr; gap: 10px; }
.home .home-example-flow > div { border-left: 3px solid var(--coral); padding: 13px 19px; background: #f9e7dc; }
.home .home-example-flow > div:last-child { background: #e8ecd7; border-color: var(--green); }
.home .home-example-flow p { font: 800 clamp(23px, 2.1vw, 30px)/1.2 var(--display); letter-spacing: -.035em; margin: 9px 0 0; }
.home .home-example-arrow { margin-left: 21px; font: 700 24px/1 var(--display); }
.home .home-example-cause { font-size: 14px; line-height: 1.65; margin: 23px 0; }
.home .home-checks-heading { margin-top: 24px; }
.home .home-proof-checks { list-style: none; padding: 0; margin: 12px 0 0; }
.home .home-proof-checks li { display: flex; gap: 14px; font-size: 14px; line-height: 1.6; padding-block: 9px; border-bottom: 1px solid #d4d1bf; }
.home .home-proof-checks span { font: 700 12px/1.9 var(--display); color: var(--muted); }
.home .home-example-note { font-size: 13px; line-height: 1.6; margin: 14px 0 0; color: var(--muted); }
.home .home-faq { background: var(--paper); padding-top: 0; }
.home .home-faq-grid { display: grid; grid-template-columns: 1fr 1.45fr; gap: 80px; border-top: var(--line); padding-top: 74px; }
.home .home-faq-aside { font-size: 15px; line-height: 1.65; max-width: 280px; margin-top: 25px; }
.home .home-questions details { border-bottom: 2px solid var(--ink); }
.home .home-questions details:first-child { border-top: 2px solid var(--ink); }
.home .home-questions summary { position: relative; cursor: pointer; list-style: none; padding: 24px 44px 24px 0; font: 700 20px/1.3 var(--display); letter-spacing: -.025em; }
.home .home-questions summary::-webkit-details-marker { display: none; }
.home .home-questions summary::after { content: '+'; position: absolute; right: 2px; top: 21px; width: 30px; height: 30px; display: grid; place-items: center; font-size: 28px; line-height: 1; }
.home .home-questions details[open] > summary::after { content: '−'; }
.home .home-questions summary:hover { text-decoration: underline; text-decoration-color: var(--coral); text-decoration-thickness: 3px; text-underline-offset: 5px; }
.home .home-questions details > p { margin: -3px 36px 25px 0; font-size: 15px; line-height: 1.75; max-width: 630px; }
.home .home-final { padding-block: 86px 98px; background: var(--coral); border-top: var(--line); }
.home .home-final-inner { display: flex; align-items: center; justify-content: space-between; gap: 70px; }
.home .home-final h2 { font: 800 clamp(47px, 6.6vw, 100px)/.98 var(--display); letter-spacing: -.065em; margin: 0; }
.home .home-final h2 span { text-decoration: line-through; text-decoration-thickness: 4px; text-decoration-color: var(--paper); }
.home .home-final p:not(.section-kicker) { font-size: 17px; line-height: 1.6; margin-block: 27px 29px; }
.home .home-final .button--ink { color: var(--paper); box-shadow: 5px 5px 0 var(--paper); }
.home .home-final .button--ink:hover { box-shadow: 3px 3px 0 var(--paper); }
.home .home-final .button--ink:active { box-shadow: none; }
.home .home-final-tag { background: var(--yellow); color: var(--ink); border: var(--line); padding: 48px 25px 26px; width: 253px; flex: 0 0 253px; transform: rotate(7deg); box-shadow: 6px 7px 0 var(--ink); position: relative; text-align: center; }
.home .home-final-tag::before { content: ''; position: absolute; border: 2px solid var(--ink); background: var(--coral); border-radius: 50%; width: 13px; height: 13px; top: 16px; left: calc(50% - 6px); }
.home .home-final-tag span { font-size: 9px; letter-spacing: 1.5px; font-weight: 800; }
.home .home-final-tag strong { display: block; font: 800 39px/.95 var(--display); letter-spacing: -2px; padding-block: 22px 25px; }

@media (min-width: 1500px) {
  .home .hero { gap: 72px; padding-bottom: 85px; min-height: 790px; }
  .home .bench-scene { max-width: 565px; }
  .home .screen-content { min-height: 270px; padding-top: 31px; }
  .home .hero h1 { font-size: 120px; }
}
@media (max-width: 1100px) {
  .home .hero { gap: 28px; min-height: 700px; }
  .home .hero h1 { font-size: clamp(64px, 7.7vw, 87px); }
  .home .intro { font-size: 16px; }
  .home .bench { padding: 13px; }
  .home .screen-content { padding-inline: 10px; min-height: 272px; }
  .home .bench-scene { padding-inline: 0; }
  .home .idea-sticker { right: -8px; width: 108px; height: 108px; font-size: 21px; }
  .home .bench-caption { left: 10px; }
  .home .screen-content h2 { font-size: 26px; }
  .home .home-repair-menu, .home .home-evidence-grid, .home .home-pricing-grid { gap: 50px; }
  .home .home-repair-list li { grid-template-columns: 22px 1fr 45px; gap: 13px; }
  .home .home-repair-symbol { width: 43px; height: 43px; font-size: 29px; }
  .home .home-scope { grid-template-columns: 1fr 1fr; gap: 25px; }
  .home .home-scope .text-link { grid-column: 1 / -1; justify-self: start; padding-block: 0; }
  .home .home-section-head > p { max-width: 285px; font-size: 15px; }
  .home .home-ticket { grid-template-columns: 225px 1fr; }
  .home .home-ticket-stub { padding-inline: 24px; }
  .home .home-ticket-stub > svg { right: 17px; width: 31px; }
  .home .home-ticket-steps { padding-inline: 26px; }
  .home .home-ticket-steps li { gap: 15px; }
  .home .home-quote { padding-inline: 25px; }
  .home .home-faq-grid { gap: 45px; }
  .home .home-final-tag { width: 210px; flex-basis: 210px; }
  .home .home-final-tag strong { font-size: 33px; }
}
@media (max-width: 800px) {
  .home .hero { grid-template-columns: 1fr; gap: 34px; padding: 37px 0 48px; min-height: auto; }
  .home .hero-copy { max-width: 630px; }
  .home .hero h1 { font-size: clamp(61px, 12.1vw, 96px); letter-spacing: -.065em; }
  .home .eyebrow { font-size: 10px; letter-spacing: 1px; margin-bottom: 22px; }
  .home .intro { font-size: 17px; max-width: 430px; }
  .home .big-button { padding: 17px 22px; }
  .home .bench-scene { max-width: 490px; width: 100%; justify-self: center; padding: 41px 13px 42px; margin: 0; }
  .home .pegboard { inset: 15px 1px 5px 8px; }
  .home .bench { transform: rotate(1deg); padding: 16px; }
  .home .bench-label { font-size: 13px; left: 13px; }
  .home .wrench { width: 75px; height: 102px; right: 17px; top: -22px; }
  .home .screen-content { min-height: 256px; padding-top: 20px; }
  .home .screen-content h2 { font-size: 28px; }
  .home .idea-sticker { bottom: -36px; right: -7px; width: 105px; height: 105px; font-size: 20px; }
  .home .bench-caption { bottom: -2px; left: 15px; font-size: 11px; }
  .home .ribbon { padding: 13px 12px; gap: 13px; }
  .home .ribbon .asterisk { font-size: 27px; }
  .home .ribbon .ribbon-end { display: none; }
  .home .ribbon span { white-space: normal; }
  .home :is(.home-repairs, .home-process, .home-pricing, .home-evidence, .home-faq) { padding-block: 64px; }
  .home .home-heading { font-size: clamp(40px, 6.8vw, 56px); }
  .home .home-repair-menu { grid-template-columns: 1fr; gap: 35px; }
  .home .home-menu-intro .home-heading br { display: none; }
  .home .home-menu-intro .home-heading { max-width: 520px; }
  .home .home-menu-intro > p:not(.section-kicker) { max-width: 460px; }
  .home .home-menu-intro .home-platform-note { margin-top: 13px; }
  .home .home-repair-list li { grid-template-columns: 26px 1fr 62px; gap: 20px; }
  .home .home-repair-list h3 { font-size: 32px; }
  .home .home-repair-list p:not(.home-item-label) { max-width: 470px; }
  .home .home-repair-symbol { width: 56px; height: 56px; font-size: 36px; }
  .home .home-scope { margin-top: 32px; }
  .home .home-section-head { display: block; margin-bottom: 33px; }
  .home .home-section-head > p { max-width: 470px; margin-top: 23px; font-size: 16px; }
  .home .home-ticket { grid-template-columns: 185px 1fr; }
  .home .home-ticket-stub { padding-inline: 22px; }
  .home .home-ticket-stub > svg { position: static; height: 65px; width: 44px; margin-bottom: 18px; }
  .home .home-ticket-job { font-size: 27px; margin-top: 35px; }
  .home .home-ticket-steps { padding-inline: 22px; }
  .home .home-ticket-steps li { grid-template-columns: 1fr; gap: 15px; }
  .home .home-ticket-steps h3 { font-size: 26px; }
  .home .home-ticket-steps p { font-size: 14px; }
  .home .home-pricing-grid { grid-template-columns: 1fr; gap: 55px; }
  .home .home-quote { max-width: 500px; width: calc(100% - 18px); justify-self: center; }
  .home .home-quote-title { font-size: 42px; }
  .home .home-evidence-grid { grid-template-columns: 1fr; gap: 35px; }
  .home .home-evidence-intro .home-heading br { display: none; }
  .home .home-evidence-intro > p:not(.section-kicker) { max-width: 530px; }
  .home .home-example-flow { grid-template-columns: 1fr auto 1fr; align-items: stretch; }
  .home .home-example-arrow { font-size: 24px; transform: rotate(-90deg); align-self: center; margin: 0; }
  .home .home-example-flow p { font-size: 25px; }
  .home .home-faq { padding-top: 0; }
  .home .home-faq-grid { grid-template-columns: 1fr; gap: 24px; padding-top: 54px; }
  .home .home-faq-aside { max-width: 460px; }
  .home .home-faq .home-heading br { display: none; }
  .home .home-final { padding-block: 64px 72px; }
  .home .home-final-inner { gap: 28px; }
  .home .home-final h2 { font-size: clamp(46px, 7vw, 63px); }
  .home .home-final p:not(.section-kicker) { font-size: 15px; }
  .home .home-final-tag { width: 170px; flex-basis: 170px; padding-inline: 15px; }
  .home .home-final-tag strong { font-size: 29px; }
  .home .home-final-tag span { font-size: 8px; letter-spacing: .7px; }
}
@media (max-width: 520px) {
  .home .hero h1 { font-size: clamp(54px, 13.8vw, 71px); }
  .home .hero .last { white-space: nowrap; }
  .home .hero-copy { min-width: 0; }
  .home .bench-scene { padding-inline: 5px 9px; padding-bottom: 51px; }
  .home .bench { padding: 12px; border-radius: 17px; box-shadow: 6px 7px 0 var(--ink); }
  .home .bench-label { left: 5px; font-size: 11px; padding: 12px; }
  .home .machine-header { font-size: 9px; letter-spacing: .7px; }
  .home .screen-top { font-size: 12px; padding-inline: 9px; letter-spacing: .3px; gap: 8px; flex-wrap: wrap; }
  .home .screen-content { min-height: 255px; padding-inline: 12px; }
  .home .screen-content h2 { font-size: 26px; }
  .home .screen-content p { font-size: 12px; }
  .home .app-flow { gap: 10px; }
  .home .flow-box { width: 47px; height: 49px; }
  .home .flow-middle { width: 70px; }
  .home .screen-status { font-size: 12px; letter-spacing: .2px; padding-inline: 9px; }
  .home .case-switch { gap: 5px; margin-top: 13px; }
  .home .case-switch button { font-size: 12px; line-height: 1.4; padding-inline: 4px; min-width: 0; white-space: normal; overflow-wrap: anywhere; }
  .home .repair-toggle { font-size: 15px; padding-inline: 13px; }
  .home .bench-foot { font-size: 12px; }
  .home .idea-sticker { width: 91px; height: 91px; right: -4px; bottom: -37px; font-size: 18px; }
  .home .bench-caption { bottom: 8px; left: 8px; font-size: 10px; gap: 4px; }
  .home .ribbon { font-size: 14px; gap: 10px; }
  .home .ribbon .asterisk { font-size: 24px; }
  .home .home-repair-list li { grid-template-columns: 21px 1fr; gap: 12px; padding-block: 24px 27px; position: relative; }
  .home .home-repair-list h3 { font-size: 28px; padding-right: 8px; margin-top: 19px; }
  .home .home-repair-symbol { position: absolute; top: 17px; right: 0; margin: 0; width: 28px; height: 28px; border-radius: 6px; font-size: 20px; box-shadow: 2px 2px 0 var(--ink); }
  .home .home-repair-list .home-item-label { font-size: 9px; letter-spacing: 1px; padding-right: 37px; }
  .home .home-repair-list p:not(.home-item-label) { font-size: 14px; }
  .home .home-scope { grid-template-columns: 1fr; gap: 25px; }
  .home .home-scope .text-link { min-height: 44px; display: flex; align-items: center; gap: 12px; }
  .home .home-ticket { grid-template-columns: 1fr; box-shadow: 5px 5px 0 var(--ink); }
  .home .home-ticket-stub { border-right: 0; border-bottom: 2px dashed var(--ink); padding: 23px; }
  .home .home-ticket-stub > svg { position: absolute; width: 38px; height: 55px; right: 21px; top: 20px; margin: 0; }
  .home .home-ticket-brand { font-size: 32px; }
  .home .home-ticket-job { margin: 23px 0 0; font-size: 27px; }
  .home .home-ticket-job br { display: none; }
  .home .home-ticket-small { margin-bottom: 0; }
  .home .home-ticket-small br { display: none; }
  .home .home-ticket-tear { display: none; }
  .home .home-ticket-steps { padding: 1px 20px; }
  .home .home-ticket-steps li { grid-template-columns: 29px 1fr; gap: 12px; padding-block: 25px; }
  .home .home-ticket-steps li > span { height: 29px; width: 29px; font-size: 10px; }
  .home .home-ticket-steps h3 { font-size: 25px; margin-top: 1px; }
  .home .home-process-foot { text-align: left; }
  .home .home-pricing-intro { font-size: 16px; }
  .home .home-quote { padding: 25px 21px; transform: rotate(1deg); }
  .home .home-quote-title { font-size: 39px; }
  .home .home-quote dl > div { gap: 12px; grid-template-columns: .85fr 1.2fr; }
  .home .home-example-flow { grid-template-columns: 1fr; }
  .home .home-example-arrow { transform: none; margin-left: 21px; }
  .home .home-example-top { gap: 8px; }
  .home .home-example-top .home-item-label { font-size: 10px; }
  .home .home-questions summary { font-size: 19px; padding-block: 21px; }
  .home .home-questions details > p { margin-right: 14px; font-size: 14px; }
  .home .home-final-inner { flex-direction: column; align-items: flex-start; gap: 45px; }
  .home .home-final h2 { font-size: clamp(44px, 10.7vw, 56px); }
  .home .home-final-tag { align-self: flex-end; width: 165px; flex-basis: auto; padding-block: 38px 19px; margin-right: 15px; }
  .home .home-final-tag strong { padding-block: 15px; font-size: 27px; }
}
@media (prefers-reduced-motion: reduce) {
  .home *, .home *::before, .home *::after { transition: none !important; animation: none !important; scroll-behavior: auto; }
}

/* The reveal distinguishes the example change from checks still to perform. */
.home .small-note { font-size: 13px; }
.home .screen-content .home-demo-check { border-top: 1px dashed #a6a693; padding-top: 9px; margin-top: 10px; }
.home .home-demo-intake { display: flex; justify-content: center; align-items: center; gap: 8px; min-height: 44px; margin-top: 4px; padding-block: 8px; font-size: 12px; line-height: 1.5; font-weight: 800; text-align: center; white-space: normal; text-underline-offset: 4px; }
.home .home-demo-intake:hover { text-decoration-thickness: 3px; }
.home .bench-foot { font-size: 12px; line-height: 1.5; margin-top: 3px; }
.home .screen-content { min-height: 291px; }
.home .home-note-review { border-top: 1px solid #d4d1bf; margin: 22px 0 0; padding-top: 6px; }
.home .home-note-review > div { display: grid; grid-template-columns: 100px 1fr; gap: 16px; padding-top: 13px; font-size: 12px; line-height: 1.65; }
.home .home-note-review dt { font-weight: 800; }
.home .home-note-review dd { margin: 0; }
@media (max-width: 1100px) and (min-width: 801px) {
  .home .screen-content { min-height: 309px; }
}
@media (max-width: 520px) {
  .home .screen-content { min-height: 285px; }
  .home .home-demo-intake { gap: 5px; }
  .home .home-note-review > div { grid-template-columns: 1fr; gap: 4px; }
}
