/* Shared typography and the current Lean testimonial treatment. */
@font-face{font-family:Montreal;src:url('assets/PPNeueMontreal-Italic.otf') format('opentype');font-style:italic;font-weight:400;font-display:swap}
:root{--font-heading:Freight,Georgia,serif;--font-body:Montreal,Arial,sans-serif;--leading-body:1.375;--space-paragraph:1em}
body{font-family:var(--font-body)}
h1,h2{font-family:var(--font-heading)}
.intro-copy,.offer-description,.letter-copy{line-height:var(--leading-body)}
.intro-copy p,.letter-copy p{margin-bottom:var(--space-paragraph)}
.intro-copy p:last-child,.letter-copy p:last-child{margin-bottom:0}
.testimonials{background:#f2f3e9}
.testimonial-track{--testimonial-card-width:400px;--testimonial-gap:32px}
.testimonial-set .testimonial{padding:40px;min-height:508px;border-radius:9px;background:#fff}
.testimonial .quote-mark{width:24px;height:24px;object-fit:contain;margin-bottom:16px}
.testimonial blockquote{margin:0 0 48px;font-family:var(--font-body);font-size:16px;line-height:1.375;letter-spacing:0;color:#7c7c7c}
.testimonial .quote-heading{font-family:var(--font-body);font-size:24px;font-weight:500;line-height:1.333;letter-spacing:-.02em;color:#191919;margin:0 0 20px}
.testimonial blockquote p{margin:0}
.testimonial figcaption{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:auto}
.testimonial figcaption>span:first-child{min-width:0}
.testimonial figcaption strong{font-size:16px;line-height:1.25;font-weight:500;margin:0 0 4px;color:#191919}
.testimonial figcaption small{font-size:16px;line-height:1.2;font-weight:400;font-style:italic;color:#191919}
.testimonial figcaption .testimonial-portrait,.testimonial-initials{width:56px;height:56px;border-radius:50%;flex:0 0 56px;object-fit:cover;margin:0}
.testimonial-initials{display:grid;place-items:center;background:#f2f3e9;color:#63665b;font-size:17px;font-weight:500}
@media(max-width:1024px){
 .testimonial-track{--testimonial-card-width:350px;--testimonial-gap:24px}
 .testimonial-set .testimonial{padding:32px;min-height:508px}
 .testimonial .quote-heading{font-size:23px;line-height:1.3}
 .testimonial blockquote{margin-bottom:32px}
 .testimonial figcaption .testimonial-portrait,.testimonial-initials{width:48px;height:48px;flex-basis:48px}
}
@media(max-width:640px){
 .testimonial-track{--testimonial-card-width:min(350px,calc(100vw - 48px));--testimonial-gap:20px}
 .testimonial-set .testimonial{padding:28px 24px;min-height:500px}
 .testimonial .quote-heading{font-size:22px}
 .testimonial blockquote{font-size:16px;line-height:1.4}
 .testimonial figcaption strong,.testimonial figcaption small{font-size:15px}
 .testimonial figcaption .testimonial-portrait,.testimonial-initials{width:44px;height:44px;flex-basis:44px}
}
/* Shared site measurements, inspected on the Method and Services pages. */
@font-face{font-family:FreightTextPro;font-style:normal;font-weight:600;font-display:swap;src:url('https://use.typekit.net/af/f39ce1/000000000000000077359fcb/30/l?subset_id=2&fvd=n6&v=3') format('woff2')}
:root{--site-edge:max(32px,calc((100vw - 1280px)/2 + 32px));--font-heading:FreightTextPro,Freight,Georgia,serif;--body:16px;--gutter:32px}
body{font-size:16px;line-height:1.375}
.hero-stage,.page-content{max-width:none}
.container{width:100%;max-width:1280px;margin-inline:auto;padding-inline:32px}
.hero h1{font-family:var(--font-heading);font-weight:600;font-size:50px;line-height:1.2;letter-spacing:0}
.intro-grid h2,.founder-intro h2,.offer h2,.portfolio .portfolio-intro h2,.testimonial-heading h2,.results h2,.call-to-action h2{font-family:var(--font-heading);font-size:40px;font-weight:600;line-height:1.2;letter-spacing:-1px}
.problem,.partnership,.intro-copy,.offer-description,.letter-copy,.founder-credit,.trusted>p,.clutch-rating,.call-to-action p,.primary-stats p,.result-card p{font-size:16px;line-height:1.375}
.intro-copy p,.letter-copy p{margin-bottom:16px}
.intro-copy p:last-child,.letter-copy p:last-child{margin-bottom:0}
.section:not(.founder){padding-block:64px}
.intro-grid{column-gap:64px;margin-bottom:64px}
.offers{gap:64px}
.offers .eyebrow{font-size:14px;line-height:1.375;margin-bottom:24px}
.offer-description{margin:24px 0 32px}
@media(min-width:768px){
 .opening{padding:56px 0 0 var(--site-edge);width:calc(var(--site-edge) + min(650px,55vw))}
 .partnership{left:auto;right:var(--site-edge);top:auto;bottom:72px;width:min(520px,40%)}
}
.lean-site-footer{padding:72px 0 0;font-size:16px;line-height:1.375}
.lean-site-footer .footer-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px}
.lean-site-footer .footer-grid>nav,.lean-site-footer .footer-grid>div{grid-column:span 2}
.lean-site-footer h2{font:500 16px/1.375 Montreal,Arial,sans-serif;letter-spacing:0;margin-bottom:16px}
.lean-site-footer .footer-menu{list-style:none;margin:0;padding:0}
.lean-site-footer .footer-menu li{margin:0;padding:0}
.lean-site-footer .footer-menu a{min-height:0;line-height:1.375;padding-block:4px}
.lean-site-footer address{font-size:16px;line-height:1.375}
.lean-site-footer .secondary-address{margin-top:40px}
.lean-site-footer .footer-grid>.socials{grid-column:span 6;display:flex;flex-direction:row;align-items:flex-start;justify-content:flex-end;gap:24px;padding-top:0}
.lean-site-footer .socials a{display:flex;align-items:center;justify-content:center;width:24px;height:24px;min-height:0;color:#d3d3d3}
.lean-site-footer .socials a:hover{color:#e2b0f4}
.lean-site-footer .socials svg{height:24px;width:auto;max-width:24px}
.lean-site-footer .socials svg path{fill:currentColor}
.lean-site-footer .copyright{justify-content:center;font-size:16px;gap:8px;margin-top:72px;padding-block:16px}
@media(max-width:1023px){
 .hero h1{font-size:34px;line-height:1.2}
 .intro-grid h2,.founder-intro h2,.offer h2,.portfolio .portfolio-intro h2,.testimonial-heading h2,.results h2,.call-to-action h2{font-size:32px;line-height:1.25;letter-spacing:0}
 .lean-site-footer{padding-top:48px}
 .lean-site-footer .footer-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
 .lean-site-footer .footer-grid>nav,.lean-site-footer .footer-grid>div,.lean-site-footer .footer-grid>.socials{grid-column:span 1}
 .lean-site-footer .copyright{margin-top:48px}
}
@media(max-width:767px){
 :root{--site-edge:16px;--gutter:16px;--body:14px}
 .container{padding-inline:16px}
 .hero{display:flex;flex-direction:column;min-height:0;padding:34px 16px 52px;gap:48px}
 .hero h1{font-size:34px;line-height:1.2}
 .problem,.partnership,.intro-copy,.offer-description,.letter-copy,.founder-credit,.trusted>p,.clutch-rating,.call-to-action p,.primary-stats p,.result-card p{font-size:14px;line-height:1.375}
 .partnership{position:relative;inset:auto;width:100%}
 .opening{padding:0;width:100%}
 .intro-grid{row-gap:24px;margin-bottom:48px}
 .section:not(.founder){padding-block:48px}
 .lean-site-footer,.lean-site-footer address{font-size:14px}
 .lean-site-footer .copyright{font-size:14px}
 .lean-site-footer .footer-grid{gap:32px}
 .lean-site-footer .footer-menu a{min-height:32px}
}
@media(max-width:639px){
 .lean-site-footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
 .lean-site-footer .footer-grid>nav{order:-2}
 .lean-site-footer .footer-grid>.socials{order:-1;gap:16px}
 .lean-site-footer .copyright{flex-wrap:wrap}
}

/* Founder artwork follows its column width, including on wide desktop screens. */
.founder-quote-break{display:inline}
.founder-intro h2{font-family:Freight,Georgia,serif;font-size:36px;font-weight:500;line-height:1.38;text-wrap:pretty}
@media(min-width:1025px){
 .founder-intro{min-height:0;min-width:0;container-type:inline-size}
 .founder-intro h2{font-size:min(36px,6.85cqw)}
 .founder-quote-break{display:block}
 .founder-credit{margin-top:24px}
 .founder-portrait{width:176px;height:176px;margin-top:28px;border-radius:12px}
 .founder .envelope-scene{min-height:0;padding:0}
 .founder .envelope-motion{min-height:0;padding-bottom:var(--envelope-bottom-room,80px)}
 .founder .envelope-art{top:var(--envelope-art-top,8px)}
 .founder .letter{min-height:0;aspect-ratio:656/769;padding:28px 28px 30px;border-radius:14px}
 .founder .letter .eyebrow{font-size:12px;line-height:1.2;padding-bottom:16px;margin-bottom:24px}
 .founder .letter-copy{font-size:16px;line-height:1.375}
 .founder .signature{height:30px;width:28%;margin-top:22px}
}
@media(max-width:1024px){.founder-intro h2{font-size:32px;line-height:1.25}}
