:root{--paper:#f7f8f6;--white:#fff;--ink:#17201f;--cue:#1c5d5a;--rule:#596461;--font:"Trebuchet MS",Arial,sans-serif;--rail:70rem;--reading:60ch}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-padding-top:2rem}
body{margin:0;background:var(--paper);color:var(--ink);font:1.125rem/1.65 var(--font);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.22em}
a:hover{text-decoration-thickness:2px}
button,input,select,textarea{font:inherit}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--ink);outline-offset:5px}
button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}
p,h1,h2,h3,figure,blockquote{margin:0}p+p{margin-top:1rem}
h1,h2,h3{line-height:1.13;font-weight:700;letter-spacing:-.035em}
h1{font-size:clamp(2rem,3.2vw,2.7rem);max-width:24ch}
h2{font-size:clamp(1.5rem,2.4vw,1.9rem);max-width:28ch}
h3{font-size:1.45rem;letter-spacing:-.02em}
p,li{max-width:var(--reading)}ul,ol{padding-left:1.3rem}li+li{margin-top:.65rem}
.rail{width:min(var(--rail),calc(100% - 6rem));margin-inline:auto}
.skip-link{position:absolute;top:-5rem;left:1rem;background:var(--white);padding:.5rem 1rem;z-index:5}.skip-link:focus{top:1rem}
.site-header{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-block:1.5rem;border-bottom:1px solid var(--rule)}
.wordmark{display:inline-flex;align-items:center;min-height:44px;font-size:1.45rem;letter-spacing:-.045em;font-weight:bold;text-decoration:none;white-space:nowrap}
.site-nav{display:flex;gap:1.2rem;align-items:center;flex-wrap:wrap;font-size:1rem}
.site-nav a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}.site-nav a[aria-current="page"]{text-decoration:underline}
.nav-toggle{display:none;background:none;border:1px solid var(--rule);padding:.4rem .8rem;min-height:44px;color:var(--ink)}
.button{display:inline-flex;align-items:center;justify-content:center;background:var(--cue);border:2px solid var(--cue);color:var(--white);text-decoration:none;font-size:1rem;font-weight:700;padding:.8rem 1.3rem;min-height:48px;border-radius:2px}.button:hover{background:var(--ink);border-color:var(--ink)}
.actions{display:flex;align-items:center;gap:1.6rem;flex-wrap:wrap;margin-top:1.8rem}.actions>a:not(.button){display:inline-flex;align-items:center;min-height:44px;font-size:1rem}
.hero{padding-top:4rem}.hero .intro{margin-top:1.5rem;font-size:1.125rem;max-width:60ch}
.case-links{font-size:.95rem;margin-top:1.3rem}.case-links span{padding-inline:.5rem}
.cue{margin-top:3rem;background:var(--white);border:1px solid var(--rule)}
.cue-heading{padding:1.1rem 1.8rem;border-bottom:1px solid var(--rule);font-size:1rem;color:var(--ink)}
.cue-main{display:grid;grid-template-columns:minmax(0,1fr) 13rem}
.cue-evidence{padding:1.8rem}.cue-org{font-size:1rem;font-weight:700;line-height:1.4}
.cue-evidence blockquote{font-size:clamp(1.4rem,2.3vw,1.85rem);line-height:1.4;margin-block:1.2rem;max-width:42ch}
.source{font-size:.9rem;color:var(--rule)}
.runway{padding:1.8rem;border-left:1px solid var(--rule);display:flex;flex-direction:column;justify-content:center;color:var(--ink)}
.runway strong{font-size:1.125rem;line-height:1;letter-spacing:-.06em}.runway span{font-size:.95rem;margin-top:.7rem;max-width:13ch}
.cue-bottom{border-top:1px solid var(--rule);padding:1rem 1.8rem;display:flex;align-items:center;gap:1.5rem;justify-content:space-between}
.buyer{font-size:.95rem}.buyer span{display:block;color:var(--rule)}
.decisions{display:flex;gap:.5rem;animation:decisions-in .45s .3s both}
.decision{background:var(--white);border:1px solid var(--rule);padding:.5rem 1rem;color:var(--ink);min-height:44px}
.reset-link{background:none;border:0;color:var(--ink);text-decoration:underline;text-underline-offset:.22em;min-height:44px;padding:.5rem}
.cue-bottom.is-decided{padding-block:.35rem;display:flex;flex-wrap:nowrap}
#decision-summary{font-size:1rem;font-weight:700;margin:0;white-space:nowrap}
.demo-note{margin:0;padding:1rem 1.8rem 0;font-size:.95rem;max-width:72ch;color:var(--rule)}
.cue-case{padding:.7rem 1.8rem 1.2rem;font-size:.95rem}
.section{padding-block:4rem;max-width:var(--reading)}.section h2{margin-bottom:1.5rem}.section .button{margin-top:1.6rem}
.result{padding-block:2rem}.result+.result{margin-top:2rem}.result h3{margin:1.4rem 0 .8rem}
.result-number{color:var(--cue);font-size:clamp(2.4rem,4.5vw,3.5rem);font-weight:bold;line-height:1.05;letter-spacing:-.05em;margin-bottom:1.5rem}
.result-number small{display:block;font-size:1rem;line-height:1.5;letter-spacing:0;font-weight:400;margin-top:.65rem}
.chores ul{list-style:none;padding:0}.chores li{padding-block:.7rem;border-bottom:1px solid var(--rule);margin:0}
.page-head{padding-block:4rem 2.5rem}.page-head>p{font-size:1.2rem;margin-top:1.4rem}.page-body{padding-bottom:4rem}
.workflow{list-style:none;padding:0;counter-reset:steps;max-width:var(--reading)}
.workflow>li{counter-increment:steps;display:grid;grid-template-columns:2rem minmax(0,1fr);gap:1.5rem;padding-block:2rem;max-width:none}
.workflow>li::before{content:counter(steps);font-size:1.6rem;line-height:1.2;font-weight:bold}.workflow h2{font-size:1.8rem;margin-bottom:.8rem}
.footnote,.form-help{font-size:.95rem;color:var(--rule);margin-top:1.2rem}
.case-list{list-style:none;padding:0;max-width:var(--reading)}.case-list li{padding:2rem 0}.case-list h2{font-size:2rem;margin-bottom:1rem}.case-list>li>a{display:inline-block;margin-top:1rem}
.case-article{max-width:var(--reading)}.case-article h1{max-width:24ch;font-size:clamp(2rem,3.2vw,2.7rem)}.case-article h2{font-size:1.85rem;margin:2.8rem 0 1rem}.case-article h3{margin:1.6rem 0 .7rem}
.case-article table{width:100%;border-collapse:collapse;font-size:.95rem;margin:1.4rem 0}.case-article td,.case-article th{padding:.8rem .5rem;border-bottom:1px solid var(--rule);text-align:left;vertical-align:top;overflow-wrap:anywhere}
.case-article td:first-child,.case-article th:first-child{padding-left:0}.case-article .byline{font-size:1rem;color:var(--rule);margin-top:1.5rem}.case-article .provenance{border-left:3px solid var(--rule);padding-left:1.2rem;margin-top:2rem}
.case-article table:first-of-type th[scope="row"]{width:7rem;overflow-wrap:normal}
.form-layout{max-width:var(--reading)}.form-layout .intro{margin-top:1.4rem}
.site-form{display:grid;gap:1.25rem;align-content:start;margin-top:2.5rem;max-width:32rem}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.site-form label{display:grid;gap:.4rem;font-size:1rem;font-weight:700}
.site-form input,.site-form select,.site-form textarea{width:100%;max-width:100%;min-width:0;border:1px solid var(--rule);border-radius:1px;padding:.7rem;background:var(--white);color:var(--ink);font-weight:400;font-size:1rem;min-height:48px}.site-form textarea{resize:vertical}
.site-form .consent{display:flex;align-items:flex-start;gap:.7rem;font-size:.95rem;font-weight:400}.consent input{width:1.2rem;height:1.2rem;min-height:0;flex-shrink:0;margin:.2rem 0 0;accent-color:var(--ink)}.site-form .button{justify-self:start}
.form-message{font-size:1rem}.form-message.error{border-left:3px solid var(--ink);padding-left:.8rem}
.simple-page{max-width:var(--reading)}.simple-page h2{margin:2.3rem 0 .7rem}.back-link{display:inline-block;font-size:1rem;margin-bottom:1.5rem}
.catalog-group{margin-top:2.5rem;max-width:var(--reading)}.catalog-group>h2{margin-bottom:1.3rem}.catalog-group+.catalog-group{margin-top:5rem}
.catalog-list{list-style:none;padding:0;margin:1.2rem 0 0}.catalog-list>li{padding:2.5rem 0;max-width:none}.catalog-list h3{font-size:1.65rem;margin-bottom:1rem;max-width:30ch}.catalog-list .text-link{display:inline-block;margin-top:1.2rem;min-height:44px}
.team-outcome{margin-top:1rem}.service-detail>.intro{margin-top:1.5rem}.service-detail>.section{padding-block:2rem}
.site-footer{border-top:1px solid var(--rule);padding-block:2rem 3rem;display:flex;gap:2rem;justify-content:space-between;align-items:baseline}.footer-links{display:flex;gap:1.25rem;flex-wrap:wrap;font-size:.95rem}.footer-links a{min-height:44px}.site-footer .copyright{font-size:.9rem;color:var(--rule);margin-top:.5rem}.landing-footer{padding-block:1.5rem;font-size:.95rem}
@keyframes decisions-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.decisions{animation:none}}
@media(max-width:900px){.rail{width:calc(100% - 3rem)}.site-header{gap:1rem}.site-nav{gap:1rem}.cue-main{grid-template-columns:minmax(0,1fr) 11rem}.runway{padding:1.3rem}.site-footer{flex-wrap:wrap}}
@media(max-width:680px){
body{font-size:1.0625rem}.rail{width:calc(100% - 2.5rem)}.site-header{flex-wrap:wrap;padding-block:1.1rem}.wordmark{display:inline-flex;align-items:center;min-height:44px;font-size:1.35rem}.nav-toggle{display:block}
.site-nav{width:100%;gap:.2rem;flex-direction:column;align-items:stretch}.site-nav a{padding:.5rem 0}.js .site-nav[data-open="false"]{display:none}
.hero{padding-top:2.4rem}.hero .intro{font-size:1.0625rem;margin-top:1.25rem}.actions{gap:1rem;margin-top:1.5rem}.actions .button{width:100%}.case-links{line-height:1.8}
.cue{margin-top:2.4rem}.cue-heading{padding:1rem;font-size:.9rem}.cue-main{display:block}.cue-evidence{padding:1.15rem}.cue-org{font-size:1rem}.cue-evidence blockquote{font-size:1.4rem}
.runway{border-left:0;border-top:1px solid var(--rule);padding:1.1rem;flex-direction:row;align-items:center;justify-content:flex-start;gap:1.2rem}.runway strong{font-size:1.125rem}.runway span{margin:0}
.cue-bottom{padding:1.15rem;display:block}.decisions{margin-top:1rem}.decision{flex:1;padding:.5rem}.demo-note{padding:1rem 1.15rem 0}.cue-case{padding:.8rem 1.15rem 1.2rem}
.section{padding-block:2.8rem}.page-head{padding-block:2.5rem 1.8rem}.page-head>p{font-size:1.1rem}.page-body{padding-bottom:2.8rem}.workflow>li{grid-template-columns:1.5rem minmax(0,1fr);gap:.8rem}.workflow h2{font-size:1.5rem}
.form-pair{grid-template-columns:1fr}.site-form .button{width:100%}.site-footer{display:block}.footer-links{gap:.8rem 1.15rem;margin-top:1.5rem}.case-article table{font-size:.85rem}.case-article th[scope="row"]{width:28%;overflow-wrap:normal}.case-article td,.case-article th{padding:.6rem .3rem}.case-article h2{font-size:1.6rem}
.catalog-list>li{padding-block:1.8rem}.catalog-list h3{font-size:1.5rem}.catalog-group+.catalog-group{margin-top:3rem}
}

.plain-list{list-style:none;padding:0;margin:1.5rem 0;max-width:var(--reading)}
.plain-list>li{margin:0;padding:1rem 0;border:0;background:none;box-shadow:none}
.plain-list strong{font-size:inherit;display:inline;letter-spacing:0}
.steps-list>li{padding-block:1.4rem}
.proof>h3{margin-top:2.8rem}.proof-results>li{padding-block:2rem}
.proof-results .result-number{max-width:100%;overflow-wrap:normal}
.proof-results .result-number small{color:var(--ink)}
.questions .question{margin-top:2rem}.question h3{font-size:1.125rem;line-height:1.5;letter-spacing:0;margin-bottom:.7rem}
.owner-photo-slot{width:12rem;aspect-ratio:4/5;max-width:100%;background:#e3e6e2;display:flex;align-items:end;padding:1rem;margin:1.5rem 0;font-size:1rem}
.tagline{font-size:.95rem;max-width:32ch;margin-top:.5rem}
.ways{max-width:none}.ways-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem}
.ways-columns h3{font-size:1.125rem;line-height:1.5;letter-spacing:0;margin-bottom:.7rem}
.product-name{color:var(--cue)}
@media(max-width:680px){.ways-columns{grid-template-columns:1fr;gap:2rem}}

/* Home typography pass: preserve the existing type scale. */
.home-page{--reading:680px;max-width:900px;color:#454e4c}
.home-page h1,.home-page h2,.home-page h3,.home-page strong{color:var(--ink)}
.home-page .hero h1{max-width:900px;text-wrap:balance}
.home-page .hero .intro{max-width:680px;margin:48px auto 0}
.home-page .intro p+p{margin-top:16px}
.home-page .hero .actions{max-width:680px;margin-inline:auto}
.home-page>.section{max-width:680px;margin-inline:auto;padding:96px 0 0}
.home-page>.ways{max-width:900px}
.home-page>.questions{padding-bottom:96px}
.home-page>.section>.plain-list:last-child{margin-bottom:0}
.home-page .button{border-radius:6px;padding-inline:2rem}
.desktop-break{display:none}
@media(min-width:901px){.desktop-break{display:block}}
