@charset "UTF-8";
:root{--paper:#f7f4ec;--white:#fffdf7;--ink:#203d32;--muted:#61655a;--green:#1c4537;--line:#d8d8c9;--sage:#e8eddf;--yellow:#ead88f;--clay:#a8442a;--serif:Georgia,'Times New Roman',serif;--sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input,select,summary,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-underline-offset:4px}a:hover{text-decoration-thickness:2px}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}img{max-width:100%;height:auto}svg{flex-shrink:0}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.1}h1{font-size:clamp(3.2rem,5.6vw,5.9rem);letter-spacing:-.055em}h2{font-size:clamp(2rem,3.3vw,3.25rem);letter-spacing:-.04em}h3{font-size:1.6rem;letter-spacing:-.025em}p{margin-block:1em}em{font-weight:400}button{color:inherit}::selection{background:var(--yellow);color:var(--ink)}:focus-visible{outline:3px solid #b34325;outline-offset:5px;border-radius:2px}.wrap{max-width:1280px;width:calc(100% - 96px);margin-inline:auto}.eyebrow,.card-kicker{font-size:11px;font-weight:700;line-height:1.5;letter-spacing:.13em;text-transform:uppercase}.eyebrow{margin:0 0 20px}.small-sun{font-size:22px;vertical-align:middle;margin-right:8px}.skip{position:fixed;z-index:50;left:16px;top:-100px;background:var(--ink);color:white;padding:12px 20px}.skip:focus{top:12px}.site-header{min-height:94px;max-width:1440px;width:calc(100% - 96px);margin:auto;display:flex;align-items:center;gap:32px;border-bottom:1px solid var(--line);position:relative;z-index:20}.wordmark{font:400 33px/1 var(--serif);letter-spacing:-1.8px;text-decoration:none;white-space:nowrap}.brand-dot{color:var(--clay)}.desktop-nav{display:flex;gap:25px;align-items:center;margin-left:auto}.desktop-nav a{font-size:14px;text-decoration:none;padding-block:12px}.desktop-nav a:hover,.desktop-nav a[aria-current]{text-decoration:underline;text-underline-offset:8px}.search-link{width:44px;height:44px;display:grid;place-items:center;border-left:1px solid var(--line)}.mobile-menu{display:none}.button{border:1px solid var(--green);background:var(--green);color:var(--white);display:inline-flex;align-items:center;justify-content:center;gap:26px;text-decoration:none;font-size:14px;font-weight:600;padding:15px 22px;border-radius:3px;min-height:49px;line-height:1.4}.button:hover{background:#2b5645}.button span{font-size:19px;font-weight:400}.button.secondary{background:transparent;color:var(--ink);border-color:#748274}.button.secondary:hover{background:var(--sage)}.button.light{background:var(--paper);border-color:var(--paper);color:var(--green)}.quiet-link{font-size:14px;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:3px}.text-button{background:none;border:0;padding:10px 4px;text-decoration:underline;text-underline-offset:4px;font-size:13px;min-height:44px}.line-icon{width:62px;height:62px}.hero{display:grid;grid-template-columns:.95fr 1.05fr;gap:50px;align-items:center;padding-block:70px 54px}.hero-copy>p:not(.eyebrow){font-size:17px;line-height:1.75;margin:25px 0 30px;color:#526052}.hero h1 em{color:#41634c}.hero-actions{display:flex;flex-wrap:wrap;gap:18px 26px;align-items:center}.hero-actions .quiet-link{font-size:13px}.hero-footnote{display:flex;align-items:center;gap:12px;font-size:11px;color:var(--muted);margin-top:35px}.tiny-rule{width:30px;height:1px;background:var(--muted)}.hero-art{position:relative;padding-bottom:27px}.hero-art img{display:block;width:100%;aspect-ratio:1.2;object-fit:cover;border-radius:3px}.hero-art figcaption{display:flex;justify-content:space-between;gap:16px;font-size:9px;letter-spacing:.09em;color:var(--muted);padding-top:12px}.hero-art figcaption span:last-child{font-style:italic;letter-spacing:0}.art-stamp{position:absolute;right:-19px;bottom:42px;display:block;background:var(--yellow);color:var(--green);padding:16px 20px;border:1px solid var(--ink);transform:rotate(9deg);font-size:12px;font-weight:700;line-height:1.5;letter-spacing:.13em;box-shadow:3px 3px 0 var(--paper)}.art-stamp span{font-size:26px;position:absolute;right:9px;bottom:6px}.start-strip{border-block:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);padding-block:22px}.start-strip>a{display:flex;gap:20px;text-decoration:none;padding:10px 28px;border-right:1px solid var(--line);align-items:center}.start-strip>a:first-child{padding-left:0}.start-strip>a:last-child{border:0;padding-right:0}.start-strip>a>span{font-size:12px;align-self:flex-start;padding-top:5px;color:var(--muted)}.start-strip h2{font-size:21px;letter-spacing:-.02em}.start-strip p{font-size:12px;margin:5px 0 0;color:var(--muted)}.start-strip b{font-weight:400;font-size:25px;margin-left:auto}.start-strip a:hover h2{text-decoration:underline}.section-heading{display:flex;gap:24px;justify-content:space-between;align-items:end;margin-bottom:32px}.section-heading .eyebrow{margin-bottom:12px}.section-heading .quiet-link{flex-shrink:0}.home-methods{padding-block:72px 78px}.method-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}.method-card{text-decoration:none;position:relative;min-width:0}.method-drawing{aspect-ratio:1.3;display:grid;place-items:center;background:#e8ebdf;border:1px solid #d9dfcf;border-radius:3px;margin-bottom:16px}.method-card:nth-child(2n) .method-drawing{background:#eee5d5;border-color:#e3d9c8}.method-card:nth-child(3n) .method-drawing{background:#edeccf;border-color:#e1dfc1}.method-drawing .line-icon{width:75px;height:75px;transition:transform .2s}.method-card:hover .line-icon{transform:translateY(-4px)}.method-card h3{font-size:21px}.method-card p{font-size:12px;color:var(--muted);margin:7px 18px 0 0;line-height:1.5}.method-card>span{position:absolute;right:0;bottom:0;font-size:21px}.bench-section{background:var(--green);color:var(--paper)}.bench-inner{display:grid;grid-template-columns:1fr 1.25fr;gap:100px;padding-block:64px;align-items:center}.bench-copy h2{font-size:53px}.bench-copy p:not(.eyebrow){font-size:15px;line-height:1.8;max-width:350px;margin:25px 0}.bench-card{background:var(--paper);color:var(--ink);border-radius:4px;padding:38px}.bench-equation{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:30px 0}.bench-equation>div{display:flex;flex-direction:column}.bench-equation strong{font:400 48px/1.15 var(--serif);letter-spacing:-.03em}.bench-equation strong span{font:400 23px/1 var(--serif)}.bench-equation small{font-size:9px;letter-spacing:.1em;margin-top:9px}.equation-times{font-size:22px;color:#778173}.bench-card>p{font-size:12px;color:var(--muted);line-height:1.7}.bench-link{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:22px;margin-top:25px;font-size:14px;text-decoration:none}.bench-link span{font-size:23px}.editorial-section{padding-block:72px}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.article-card{position:relative;border-top:1px solid var(--line);padding:22px 30px 35px 0;text-decoration:none}.card-kicker{color:var(--muted);display:block;margin-bottom:16px;font-size:10px}.article-card h3{line-height:1.18;font-size:28px}.article-card p{font-size:14px;color:var(--muted);line-height:1.7;margin:15px 0}.card-arrow{position:absolute;right:4px;bottom:14px;font-size:24px}.article-card:hover h3{text-decoration:underline;text-decoration-thickness:1px}.topic-ribbon{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;border-block:1px solid var(--line);padding-block:22px;margin-top:24px;font-size:13px}.topic-ribbon a{text-decoration:none}.approach{display:grid;grid-template-columns:1fr 3fr;gap:65px;padding:45px 6% 80px;align-items:center}.approach-symbol{font-size:155px;line-height:1;color:#547052}.approach h2{font-size:37px}.approach p:not(.eyebrow){font-size:16px;line-height:1.8;color:var(--muted);max-width:660px}.site-footer{background:#e9ecdf;border-top:1px solid #cbd3c2;padding:58px 48px 20px}.footer-top{max-width:1280px;margin:auto;display:grid;grid-template-columns:1.2fr 1fr 1fr 1.3fr;gap:48px}.footer-top .wordmark{font-size:31px}.footer-top p{font-size:14px;line-height:1.7}.footer-top nav{display:flex;flex-direction:column;gap:10px;font-size:13px}.footer-top nav strong{font-size:12px;margin-bottom:6px}.footer-top nav a{text-decoration:none}.footer-top nav a:hover{text-decoration:underline}.footer-note{border-left:1px solid #bdc9b7;padding-left:32px}.footer-note .eyebrow{font-size:10px}.footer-note>a{font-size:13px}.footer-bottom{max-width:1280px;margin:38px auto 0;border-top:1px solid #c2cbb9;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#53634e}.breadcrumbs{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;padding-top:32px;color:var(--muted)}.breadcrumbs a{text-decoration:none}.article-heading{padding:45px 0 36px;border-bottom:1px solid var(--line);max-width:1100px}.article-heading h1{font-size:clamp(42px,5vw,72px);max-width:980px;line-height:1.05}.dek{font-size:20px;line-height:1.65;color:#576454;max-width:830px;margin-top:24px}.byline{display:flex;gap:12px 24px;align-items:center;font-size:11px;color:var(--muted);margin-top:22px;flex-wrap:wrap}.byline .text-button{margin-left:auto;font-size:11px}.article-layout{display:grid;grid-template-columns:245px minmax(0,760px);gap:70px;margin-top:48px}.article-aside nav{display:flex;flex-direction:column;gap:10px;font-size:12px;border-bottom:1px solid var(--line);padding-bottom:25px}.article-aside .eyebrow{margin-bottom:4px}.article-aside nav a{text-decoration:none;line-height:1.45;padding:4px 0}.article-aside nav a:hover{text-decoration:underline}.aside-note{margin-top:30px;background:var(--sage);padding:24px;font-size:13px}.aside-note .line-icon{display:block;width:43px;height:43px;margin-bottom:18px}.aside-note p{font-size:12px;line-height:1.7}.aside-note a{font-size:12px}.prose{min-width:0;font-size:17px;line-height:1.82}.prose h2{font-size:34px;line-height:1.2;margin:0 0 22px}.prose h3{font-size:25px}.prose section{margin-bottom:48px;scroll-margin-top:25px}.prose p{margin:0 0 22px}.prose ul,.prose ol{padding-left:24px;margin:18px 0 24px}.prose li{margin-block:10px}.prose a{color:#315b43}.prose strong{font-weight:650}.section-sources{font-size:11px!important;line-height:1.7!important;color:var(--muted);border-left:2px solid #bbc5b0;padding-left:13px;margin-top:24px!important}.section-sources a{display:inline}.article-sources{border-top:1px solid var(--line);padding-top:35px;font-size:14px}.article-sources li{font-size:12px}.table-scroll{overflow-x:auto;border:1px solid var(--line);margin:24px 0;border-radius:3px;max-width:100%}table{border-collapse:collapse;width:100%;font-size:13px;line-height:1.7}th,td{padding:14px 16px;text-align:left;vertical-align:top;min-width:115px;border-bottom:1px solid var(--line)}th{font-weight:600;background:#edf0e4}th[scope=row]{background:#f0f1e8}tr:last-child>*{border-bottom:0}.method-steps{list-style:none;padding:0!important;counter-reset:steps}.method-steps li{display:grid;grid-template-columns:40px 1fr;gap:18px;border-top:1px solid var(--line);padding-top:20px;margin-top:22px}.step-number{font-size:12px;line-height:32px;color:var(--muted)}.recipe-invitation{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:25px;background:var(--sage);margin-bottom:38px;border:1px solid #d4dcc9}.recipe-invitation .eyebrow{font-size:10px;margin-bottom:10px}.recipe-invitation p{font-size:14px;line-height:1.6;margin:0}.recipe-invitation .button{flex-shrink:0;font-size:12px;padding:13px;gap:8px}.related{padding-block:50px 70px;border-top:1px solid var(--line);margin-top:30px}.related .section-heading{display:block}.related h2{font-size:36px}.collection-heading{padding:62px 0 40px}.collection-heading h1{max-width:900px}.collection-heading p:not(.eyebrow){max-width:710px;font-size:19px;color:var(--muted)}.collection-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding-bottom:60px}.collection-grid .article-card{min-height:240px}.collection-controls{display:flex;align-items:end;flex-wrap:wrap;gap:18px;padding:24px;background:var(--sage);margin-bottom:40px}.collection-controls .field{min-width:200px;flex:1}.collection-controls .field small{display:none}.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding-bottom:70px}.tool-card{display:block;padding:26px;border:1px solid var(--line);position:relative;text-decoration:none;min-width:0;background:var(--white)}.tool-card h3{font-size:27px}.tool-card>p{font-size:14px;color:var(--muted);line-height:1.7;padding-bottom:10px}.tool-icon{margin-bottom:25px}.tool-icon .line-icon{width:45px;height:45px}.tool-card .card-arrow{right:20px;bottom:13px}.tool-card:hover{border-color:#73866c;background:#f0f2e7}.tool-page{max-width:1080px}.tool-heading{padding:50px 0 35px}.tool-heading h1{font-size:clamp(42px,4.6vw,67px)}.tool-heading .dek{font-size:19px;max-width:800px}.tool-workspace{background:var(--white);padding:35px;border:1px solid #ccd4c3;border-radius:4px}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:28px}.field{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:600;min-width:0}.field small{font-size:11px;line-height:1.55;font-weight:400;color:var(--muted)}input,select,textarea{width:100%;border:1px solid #7b8377;border-radius:2px;background:#fffef9;color:var(--ink);padding:12px 13px;min-height:48px;font-size:16px;line-height:1.4}select{padding-right:25px}input[aria-invalid=true],select[aria-invalid=true]{border:2px solid #a13625}textarea{resize:vertical}.span-2{grid-column:1/-1}.form-error{padding:14px 17px;background:#f8e6dc;border-left:3px solid #a13625;color:#702411;font-size:14px}.tool-result{margin-top:30px}.result-lead{background:var(--sage);padding:26px}.result-lead>p{font-size:14px;margin:15px 0 0}.result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.result-metric strong{font:400 37px/1.2 var(--serif);letter-spacing:-.025em;display:block;overflow-wrap:anywhere}.result-metric small{display:block;font-size:11px;line-height:1.5;margin-top:7px}.result-detail{font-size:14px;margin:25px 0;line-height:1.8}.result-detail p{margin:12px 0}.result-detail h2{font-size:27px;margin:0 0 14px}.result-detail h3{font-size:22px;margin:22px 0 12px}.result-detail ul,.result-detail ol{padding-left:22px}.result-actions,.button-row{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center}.result-actions{border-top:1px solid var(--line);margin-top:28px;padding-top:10px}.status{font-size:12px;color:#31533c;min-height:1.2em}.timer{padding:24px;margin-top:25px;background:#f2ecd7;border:1px solid #d9cfac}.timer>div:first-child{display:flex;align-items:center;justify-content:space-between}.timer .eyebrow{margin:0}.timer output{font:400 43px/1.1 var(--serif);font-variant-numeric:tabular-nums}.timer>p{font-size:14px}.timer .button{font-size:12px;padding:12px}.muted{font-size:12px;color:var(--muted);line-height:1.7}.tool-explanation{padding:48px 0 65px;max-width:820px;margin:auto;font-size:16px}.tool-explanation h2{margin-top:32px}.tool-explanation h2:first-child{margin-top:0}.note{padding:22px 25px;border-left:3px solid #617f53;background:var(--sage);font-size:14px;line-height:1.8;margin:26px 0}.sources-inline{font-size:12px!important}.result-table th,.result-table td{min-width:90px}.journal-controls{display:flex;gap:15px;flex-wrap:wrap;margin:25px 0}.import-label{position:relative;cursor:pointer;overflow:hidden}.import-label input{position:absolute;opacity:0;inset:0;cursor:pointer}.import-label:focus-within{outline:3px solid #b34325;outline-offset:4px}.journal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.journal-entry{border:1px solid var(--line);padding:22px;overflow-wrap:anywhere}.journal-entry h3{font-size:25px}.journal-entry p{font-size:13px}.journal-entry .saved-date{font-size:10px;color:var(--muted)}.search-form{max-width:800px;display:flex;gap:12px;margin:30px 0}.search-form input{flex:1;min-width:0}.search-summary{font-size:13px;margin-bottom:25px}.empty-state{padding:35px;background:var(--sage);grid-column:1/-1}.empty-state h2{font-size:30px}.simple-page{max-width:840px;padding-bottom:65px}.simple-page h1{font-size:clamp(42px,5vw,65px)}.simple-page .prose{padding-top:30px;font-size:16px}.source-index{list-style:none;padding:0}.source-index li{padding-block:17px;border-bottom:1px solid var(--line)}.source-index span{display:block;font-size:12px;color:var(--muted);margin-top:5px}.error-page{padding-block:90px 110px;text-align:center}.error-page .eyebrow{color:var(--clay)}.error-page h1{max-width:750px;margin:auto}.error-page p{margin:28px auto;max-width:520px}.error-page .button-row{justify-content:center}[hidden]{display:none!important}
@media(min-width:1100px){.article-aside nav{position:sticky;top:24px;max-height:calc(100vh - 48px);overflow:auto}.article-aside{align-self:stretch}.aside-note{margin-top:40px}}
@media(max-width:1100px){.wrap,.site-header{width:calc(100% - 64px)}.site-header{gap:18px}.desktop-nav{gap:17px}.hero{gap:35px;padding-top:50px}.hero-actions{display:block}.hero-actions .quiet-link{display:inline-block;margin-top:18px}.hero-footnote{margin-top:25px}.art-stamp{right:-12px}.start-strip>a{padding-inline:18px;gap:13px}.start-strip h2{font-size:18px}.start-strip p{font-size:11px}.method-grid{grid-template-columns:repeat(3,1fr);gap:30px}.method-drawing{aspect-ratio:1.6}.bench-inner{gap:50px}.bench-card{padding:26px}.bench-equation strong{font-size:38px}.article-layout{grid-template-columns:200px minmax(0,1fr);gap:35px}.footer-top{gap:30px}.site-footer{padding-inline:32px}.tool-grid{grid-template-columns:repeat(2,1fr)}.collection-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.site-header{min-height:79px}.wordmark{font-size:29px}.desktop-nav{gap:13px}.desktop-nav a{font-size:12px}.site-header .search-link{margin-left:auto}.desktop-nav{display:none}.mobile-menu{display:block}.mobile-menu summary{font-size:12px;cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px;list-style:none}.mobile-menu summary:after{content:'+';font-size:23px;font-weight:300}.mobile-menu[open] summary:after{content:'−'}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{position:absolute;right:0;left:0;top:78px;background:var(--paper);padding:20px;box-shadow:0 12px 20px #203d3220;display:grid;grid-template-columns:repeat(2,1fr);border:1px solid var(--line)}.mobile-menu nav a{padding:12px;text-decoration:none}.hero{gap:27px}.hero h1{font-size:clamp(41px,6.4vw,54px)}.hero-copy>p:not(.eyebrow){font-size:14px}.hero .eyebrow{font-size:9px}.hero-art img{aspect-ratio:.9}.hero-art figcaption{font-size:8px;display:block}.hero-art figcaption span:last-child{display:none}.art-stamp{font-size:10px;padding:12px 18px}.hero-footnote{font-size:9px}.start-strip{padding-block:14px}.start-strip>a{padding-inline:15px}.start-strip>a>span{display:none}.start-strip h2{font-size:17px}.start-strip p{font-size:10px}.start-strip b{font-size:19px}.bench-inner{gap:35px}.bench-copy h2{font-size:42px}.bench-copy p:not(.eyebrow){font-size:13px}.bench-equation strong{font-size:33px}.bench-equation strong span{font-size:18px}.bench-card{padding:23px}.bench-card .eyebrow{font-size:9px}.bench-equation{gap:9px}.bench-equation small{font-size:8px}.article-grid{gap:22px}.article-card h3{font-size:25px}.article-card p{font-size:13px}.approach{gap:30px;padding-inline:0}.approach-symbol{font-size:110px}.approach h2{font-size:33px}.footer-top{grid-template-columns:repeat(3,1fr)}.footer-note{grid-column:1/-1;border:0;border-top:1px solid #bdc9b7;padding:25px 0 0;display:grid;grid-template-columns:1fr 2fr;column-gap:20px}.footer-note p{margin:0}.footer-note>a{grid-column:2}.footer-bottom{flex-wrap:wrap}.article-layout{display:flex;flex-direction:column;gap:35px}.article-aside nav{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 20px}.article-aside nav .eyebrow{grid-column:1/-1}.aside-note{display:none}.article-heading h1{font-size:53px}.prose{font-size:16px}.prose h2{font-size:31px}.byline .text-button{margin-left:0}.collection-heading{padding-top:45px}.tool-workspace{padding:27px}.fields{gap:20px}.result-grid{gap:15px}.result-metric strong{font-size:32px}}
@media(max-width:600px){.wrap,.site-header{width:calc(100% - 40px)}.site-header{gap:16px;min-height:76px}.wordmark{font-size:30px}.search-link{border:0}.hero{display:flex;flex-direction:column;gap:31px;padding:39px 0 27px;align-items:stretch}.hero h1{font-size:56px}.hero .eyebrow{font-size:9px;margin-bottom:22px}.small-sun{font-size:20px}.hero-copy>p:not(.eyebrow){font-size:16px;margin:22px 0 25px;line-height:1.7}.hero-actions{display:flex;gap:15px}.hero-actions .button{width:100%;justify-content:space-between;padding:16px 20px}.hero-actions .quiet-link{margin:0;font-size:13px}.hero-footnote{font-size:9px;margin-top:23px}.hero-art{padding-bottom:23px;margin-right:6px}.hero-art img{aspect-ratio:1.36}.hero-art figcaption{display:flex;font-size:8px}.art-stamp{right:-8px;bottom:41px;font-size:10px;padding:12px 17px}.start-strip{display:block;padding-block:0}.start-strip>a{border-right:0;border-bottom:1px solid var(--line);padding:20px 0;gap:16px}.start-strip>a:last-child{padding:20px 0}.start-strip>a>span{display:block;padding-top:1px;font-size:10px}.start-strip h2{font-size:21px}.start-strip p{font-size:12px}.start-strip b{font-size:24px}.home-methods{padding:46px 0 49px}.section-heading{display:block;margin-bottom:27px}.section-heading h2{font-size:34px}.section-heading .quiet-link{display:inline-block;margin-top:18px;font-size:12px}.section-heading .eyebrow{font-size:9px}.method-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 16px}.method-drawing{aspect-ratio:1.27}.method-drawing .line-icon{width:66px;height:66px}.method-card h3{font-size:22px}.method-card p{font-size:11px}.method-card>span{font-size:20px}.bench-inner{display:block;padding-block:42px}.bench-copy h2{font-size:45px}.bench-copy p:not(.eyebrow){font-size:14px;max-width:none;margin:22px 0}.bench-copy .button{margin-bottom:28px}.bench-card{padding:24px 20px}.bench-equation strong{font-size:38px}.bench-equation small{font-size:8px}.bench-card>p{font-size:12px}.editorial-section{padding:46px 0}.article-grid{grid-template-columns:1fr;gap:8px}.article-card{padding:23px 35px 32px 0}.article-card h3{font-size:29px}.article-card p{font-size:14px}.topic-ribbon{display:grid;grid-template-columns:1fr;font-size:13px;gap:19px}.approach{display:block;padding:10px 0 48px}.approach-symbol{font-size:75px;margin-bottom:20px}.approach .eyebrow{font-size:9px}.approach h2{font-size:34px}.approach p:not(.eyebrow){font-size:15px}.site-footer{padding:37px 20px 20px}.footer-top{grid-template-columns:1fr 1fr;gap:30px 20px}.footer-top>div:first-child{grid-column:1/-1}.footer-top>div:first-child p{font-size:13px}.footer-top nav{font-size:12px}.footer-note{display:block;padding-top:20px}.footer-note p{margin:12px 0}.footer-note .eyebrow{margin-bottom:14px}.footer-bottom{font-size:9px;gap:12px;margin-top:25px}.footer-bottom span:last-child{width:100%}.article-heading{padding-top:31px}.article-heading .eyebrow{font-size:9px}.article-heading h1{font-size:43px;line-height:1.08}.dek{font-size:18px;line-height:1.6;margin-top:22px}.byline{font-size:10px;gap:3px 20px}.breadcrumbs{padding-top:23px;font-size:11px}.article-layout{margin-top:28px;gap:28px}.article-aside nav{gap:6px 16px;font-size:11px}.article-aside nav a{padding:6px 0}.prose{font-size:16px;line-height:1.8}.prose h2{font-size:29px;margin-bottom:19px}.prose section{margin-bottom:36px}.recipe-invitation{display:block;padding:20px}.recipe-invitation .button{margin-top:18px;min-height:47px}.recipe-invitation p{font-size:14px}.method-steps li{gap:10px;grid-template-columns:30px 1fr}.table-scroll{margin-inline:0}th,td{padding:12px;font-size:12px;min-width:130px}.section-sources{font-size:10px!important}.related{padding-block:35px 45px}.collection-heading{padding:37px 0 24px}.collection-heading h1{font-size:43px}.collection-heading p:not(.eyebrow){font-size:17px}.collection-grid{grid-template-columns:1fr;gap:0;padding-bottom:35px}.collection-grid .article-card{min-height:0}.collection-controls{padding:20px;gap:20px;margin-bottom:27px}.collection-controls .field{min-width:100%}.tool-grid{grid-template-columns:1fr;gap:17px;padding-bottom:40px}.tool-card{padding:23px}.tool-icon{float:right;margin:0 0 15px 20px}.tool-card h3{font-size:28px}.tool-card .card-kicker{margin-top:7px}.tool-card>p{font-size:14px}.tool-heading{padding:34px 0 27px}.tool-heading h1{font-size:43px}.tool-heading .dek{font-size:17px}.tool-workspace{padding:21px 17px;margin-inline:-1px}.fields{grid-template-columns:1fr;gap:20px;margin-bottom:24px}.field{font-size:13px}.field small{font-size:11px}.span-2{grid-column:auto}.tool-workspace form>.button{width:100%;justify-content:space-between}.result-lead{padding:20px}.result-grid{grid-template-columns:1fr;gap:18px}.result-metric{border-bottom:1px solid #c8d2bd;padding-bottom:15px}.result-metric:last-child{border:0;padding-bottom:0}.result-metric strong{font-size:36px}.result-metric small{font-size:11px;margin-top:4px}.result-detail{font-size:13px}.result-detail h2{font-size:25px}.result-actions{gap:0 20px}.result-actions .text-button{font-size:11px}.timer{padding:18px}.timer output{font-size:36px}.timer .button-row{gap:10px}.timer .button{font-size:12px}.tool-explanation{padding:35px 0 42px;font-size:15px}.tool-explanation h2{font-size:29px}.note{padding:18px;font-size:13px}.journal-grid{grid-template-columns:1fr}.journal-controls{gap:10px}.journal-controls .button{font-size:12px}.search-form{gap:8px}.search-form .button{padding:13px;gap:0}.search-form input{padding-inline:10px}.simple-page{padding-bottom:40px}.error-page{padding-block:60px}.error-page h1{font-size:43px}.error-page p{font-size:15px}.sources-inline{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{body{background:white;color:black;font-size:11pt}.print-controls,[data-taste-edit],[data-taste-reset],.site-header,.site-footer,.article-aside,.breadcrumbs,.byline button,.related,.result-actions,.timer button,.journal-controls,.hero,.skip,.collection-controls,.recipe-invitation,.tool-workspace form{display:none!important}.wrap{width:100%;max-width:none}.article-heading,.tool-heading{padding:0 0 20px}.article-heading h1,.tool-heading h1{font-size:30pt}.article-layout{display:block;margin:20px 0}.prose{font-size:11pt;line-height:1.6;max-width:none}.prose h2{font-size:20pt}.prose section{break-inside:auto;margin-bottom:20px}.prose li,tr,.result-metric,.journal-entry{break-inside:avoid}.tool-workspace{border:0;padding:0}.tool-explanation{max-width:none;padding:25px 0}.tool-result{margin:0}.result-grid{grid-template-columns:repeat(3,1fr)}.result-metric strong{font-size:25pt}.table-scroll{overflow:visible}th,td{min-width:0;font-size:9pt;padding:8px}.section-sources,.article-sources{font-size:8pt}.button{display:none}.journal-grid{display:block}.journal-entry{margin-bottom:20px}.timer{background:white;border:1px solid black}.tool-result:empty:after{content:'Use the worked examples below or calculate a recipe before printing.'}}

/* Readable controls in long-form guides and saved exports. */
.prose a.button{color:var(--white)}.prose a.button.secondary{color:var(--ink)}.saved-recipe{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:13px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.method-comparison{max-width:none;margin-bottom:38px}.method-comparison>p{max-width:860px}.method-comparison h2{font-size:32px}.method-comparison details{border-block:1px solid var(--line);padding:16px 0}.method-comparison summary{cursor:pointer;font-weight:600;padding:8px 0}.drink-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:25px 0}.drink-grid figure{padding:18px;background:var(--sage);border:1px solid var(--line)}.drink-grid figcaption strong{font:26px var(--serif)}.drink-grid figcaption p{font-size:14px;line-height:1.6}.drink-cup{width:100%;max-width:150px;height:135px;display:block;margin:0 auto 15px}@media(max-width:600px){.drink-grid{grid-template-columns:repeat(2,1fr);gap:10px}.drink-grid figure{padding:12px}.drink-grid figcaption strong{font-size:21px}.drink-grid figcaption p{font-size:12px}.method-comparison h2{font-size:29px}}

@page{size:A4;margin:18mm}.print-controls{padding:16px;background:var(--sage);display:flex;gap:15px;align-items:center;flex-wrap:wrap;margin-bottom:25px}.print-controls[hidden]{display:none}.print-controls p{margin:0;width:100%;font:16px var(--sans)}

/* Keep long imported or entered text inside its result and journal columns. */
.tool-result,.journal-entry{min-width:0;overflow-wrap:anywhere}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}

[hidden]{display:none!important}.taste-measurements{border:1px solid var(--line);padding:18px;margin:0;min-width:0}.taste-measurements legend{font-weight:600;padding-inline:6px}

/* Instructional figures retain readable captions at mobile widths. */
.instruction-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px;margin:24px 0}.instruction-grid figure{margin:0;min-width:0}.instruction-grid img{width:100%;height:auto;border:1px solid var(--line);display:block}.instruction-grid figcaption{font-size:14px;line-height:1.6;margin-top:12px;color:var(--ink)}.related .tool-card{min-width:0}.collection-topic{margin-bottom:38px}.collection-topic h2{font-size:34px}.collection-topic>p{max-width:850px}.evidence-matrix td,.evidence-matrix th{font-size:13px}.constraint-fields{border:1px solid var(--line);padding:18px;margin:0 0 20px}.constraint-fields summary{cursor:pointer;font-weight:600;padding:8px 0}.constraint-fields .fields{margin-top:16px}.gear-exclusions{font-size:14px}.journal-grid .journal-entry{overflow-wrap:anywhere}

/* A quieter reading and decision surface; complete controls remain in disclosures. */
:root{--muted:#566052;--line:#d5d9cc;--white:#fffef9}
body{line-height:1.65}button:disabled{cursor:not-allowed}
.button{border-radius:7px;font-size:15px;gap:16px}.text-button{font-size:14px}
.eyebrow,.card-kicker{font-size:13px;letter-spacing:.1em}
.hero-art figcaption,.hero-footnote,.footer-bottom,.bench-equation small{font-size:13px;letter-spacing:.02em}
.hero-art figcaption{line-height:1.5}.hero h1{line-height:1.04}.hero-copy>p:not(.eyebrow){max-width:440px}
.method-card p,.start-strip p,.footer-top nav,.footer-top nav strong,.footer-note .eyebrow,.footer-note>a{font-size:14px}
.tool-page{max-width:1120px}.tool-heading{padding:36px 0 26px}
.tool-heading h1{font-size:clamp(38px,4vw,58px);max-width:900px}
.tool-heading .dek{font-size:18px;line-height:1.65;max-width:720px;margin-top:18px}
.tool-workspace{padding:32px;border-radius:14px;border-color:#d5d9cc;box-shadow:0 6px 30px #203d3205}
.field{font-size:15px;font-weight:600;gap:9px}.field small{font-size:13px;line-height:1.65}
input,select,textarea{border-color:#7c8876;border-radius:6px;min-height:50px;background:#fffefb}
input:focus,select:focus,textarea:focus{border-color:var(--green)}.fields{gap:24px}
.form-intro{margin:0 0 24px;max-width:650px;color:var(--muted);font-size:15px}
summary{cursor:pointer;min-height:48px;padding:12px 0;font-weight:600;line-height:1.6}
details>p{font-size:15px;line-height:1.75}
.progressive-fields{margin-top:26px;border-top:1px solid var(--line)}
.progressive-fields>details{border-bottom:1px solid var(--line);padding:5px 0}
.progressive-fields>details>summary{font-size:15px}
.progressive-fields>details>summary span{font-size:13px;font-weight:400;color:var(--muted);display:block;padding-left:18px}
.progressive-fields details .fields{padding-top:12px}
.result-lead{border-radius:10px;background:#edf1e5;padding:24px}
.result-metric small,.status,.muted,.sources-inline{font-size:14px!important;line-height:1.65}
.result-metric strong{font-size:35px}.result-detail{font-size:16px;line-height:1.75}
.result-detail h2{font-size:32px}.result-detail h3{font-size:27px;margin-top:24px}
.result-detail h4{font:600 16px/1.65 var(--sans);margin:20px 0 10px}
table,.result-table th,.result-table td,th,td{font-size:14px;line-height:1.7}
th,td{padding:14px;min-width:110px}.table-scroll{border-radius:7px}
.result-actions .text-button{font-size:14px}.note{border-radius:0 8px 8px 0;font-size:15px}
.timer{border-radius:10px;padding:24px}.timer .button{font-size:14px;min-height:48px}.timer>p{font-size:16px}
.article-heading{max-width:none;padding:36px 0 28px}
.article-heading h1{max-width:960px;font-size:clamp(38px,4.5vw,66px);line-height:1.1}
.article-heading .dek{font-size:20px;line-height:1.65;max-width:770px}
.byline,.byline .text-button,.breadcrumbs{font-size:13px}
.article-layout{grid-template-columns:210px minmax(0,760px);gap:56px;margin-top:32px}
.article-contents{border-bottom:1px solid var(--line)}.article-contents>summary{font-size:15px}
.article-aside nav{border:0;padding:12px 0 24px;font-size:14px}.article-aside nav a{padding:6px 0}
.aside-note{background:none;border-top:1px solid var(--line);padding:24px 0}.aside-note .line-icon{display:none}
.aside-note p,.aside-note a{font-size:14px}.prose{font-size:18px;line-height:1.85}
.prose h2{font-size:34px;margin-bottom:20px;letter-spacing:-.035em}.prose p{margin-bottom:24px}
.section-sources,.article-sources li{font-size:14px!important;line-height:1.7!important}
.section-sources{border:0;padding:0;color:var(--muted)}
.quick-recipe{padding:24px 28px;margin-top:28px;background:#edf1e5;border-radius:12px;max-width:1026px}
.quick-recipe .eyebrow{margin-bottom:12px}.recipe-facts{display:flex;flex-wrap:wrap;gap:9px 30px;align-items:baseline}
.recipe-facts strong{font:400 26px/1.3 var(--serif)}.recipe-facts>span{font-size:15px}
.quick-actions{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:18px;font-size:15px;font-weight:600}
.quick-actions>a{min-height:44px;display:flex;align-items:center}.quick-recipe>.muted{margin:8px 0 0}
.gear-shortlist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:24px 0}
.gear-card{min-width:0;border-top:2px solid #9caf94;padding:20px 0 0;font-size:15px;line-height:1.75}
.gear-card h3{font-size:27px;margin:0 0 12px}.gear-card .eyebrow{font-size:13px;margin:0 0 12px}
.gear-card>p{margin:12px 0}.gear-card .offer-price{font:400 25px/1.4 var(--serif)}
.gear-card>details{border-top:1px solid var(--line);margin-top:16px}.gear-card>details>summary{font-size:14px}
.verification{color:#714527}.pair-workspace{padding:24px 0;margin-top:24px;border-top:1px solid var(--line)}
.pair-workspace>.fields{margin-top:20px}.comparison-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.comparison-columns>div{min-width:0}.comparison-columns>div+div{border-left:1px solid var(--line);padding-left:28px}
.reference-finder{margin:28px 0 0;padding:24px 28px;background:#edf1e5;border-radius:12px;max-width:1026px}
.reference-finder>.field{max-width:620px}.reference-finder>p{font-size:14px;margin:12px 0}
.reference-compare{border-top:1px solid #c8d1bc;margin-top:16px}.reference-compare .fields{margin-top:20px}
.directory-entry{border-top:1px solid var(--line);scroll-margin-top:24px}
.directory-entry>summary{font:400 25px/1.4 var(--serif);padding:20px 0;letter-spacing:-.02em}
.reference-body{padding:8px 0 22px}.listening-lab{border-block:1px solid var(--line);padding:24px 0;margin:24px 0 32px}
.listening-lab h3{font-size:29px}.listening-options{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}
.listening-options .button{font-size:14px}.listening-options .button[aria-pressed=true]{background:var(--green);color:var(--white)}
.listening-lab audio{width:100%;margin:12px 0}.listening-lab [data-audio-player]>a{font-size:15px}
.listening-lab>details{margin-top:24px}.journal-entry .saved-date,.saved-recipe{font-size:14px}
.journal-entry p{font-size:15px}.journal-entry{border-radius:9px;padding:24px}.journal-controls{padding-top:20px;border-top:1px solid var(--line)}
@media(max-width:800px){
 .article-layout{display:flex;gap:24px}.article-aside nav{display:flex;font-size:14px}.article-aside{width:100%}
 .gear-shortlist{grid-template-columns:1fr}.gear-card{padding-top:20px}.tool-workspace{padding:26px}
}
@media(max-width:600px){
 .hero .eyebrow,.hero-footnote,.hero-art figcaption,.section-heading .eyebrow,.approach .eyebrow,.card-kicker,.footer-bottom{font-size:13px}
 .hero h1{font-size:52px}.hero-actions .quiet-link{font-size:15px}.hero-art figcaption span:last-child{display:none}
 .bench-equation small{font-size:13px;letter-spacing:0}.bench-equation strong{font-size:32px}.bench-card .eyebrow{font-size:13px}
 .method-card p{font-size:14px}.start-strip p{font-size:14px}.footer-top nav,.footer-note>a{font-size:14px}
 .article-heading{padding:26px 0 22px}.article-heading h1{font-size:38px}.article-heading .eyebrow{font-size:13px}
 .article-heading .dek{font-size:18px}.byline{font-size:13px;gap:8px 20px}.byline .text-button{font-size:13px}
 .breadcrumbs{font-size:13px}.article-layout{margin-top:20px}.article-aside nav{font-size:14px}
 .quick-recipe,.reference-finder{padding:20px;margin-top:22px}.recipe-facts{display:grid;gap:9px}.recipe-facts strong{font-size:25px}
 .quick-actions{gap:4px 20px;font-size:15px}.quick-recipe>.muted{font-size:13px!important}
 .prose{font-size:17px;line-height:1.85}.prose h2{font-size:30px}.section-sources{font-size:14px!important}
 .tool-heading{padding:26px 0 22px}.tool-heading h1{font-size:37px}.tool-heading .dek{font-size:17px;margin-top:16px}
 .tool-workspace{padding:22px 20px;border-radius:12px}.field{font-size:15px}.field small{font-size:13px}
 .result-detail{font-size:16px}.result-detail h2{font-size:29px}.result-detail h3{font-size:26px}
 .result-metric small,.result-actions .text-button{font-size:14px}.result-grid{gap:18px}.result-metric strong{font-size:34px}
 .timer .button{font-size:14px}.muted,.status{font-size:14px}.note{font-size:15px}
 th,td,.result-table th,.result-table td{font-size:14px;min-width:110px;padding:12px}
 .comparison-columns{grid-template-columns:1fr;gap:24px}.comparison-columns>div+div{border-left:0;border-top:1px solid var(--line);padding:24px 0 0}
 .journal-controls .button{font-size:14px}.directory-entry>summary{font-size:24px}
}
@media print{
 .reference-finder,.quick-actions,.article-contents,.listening-options,[data-audio-player],.gear-card>button{display:none!important}
 .gear-shortlist,.comparison-columns{display:block}.gear-card{break-inside:avoid}
 details::details-content{content-visibility:visible!important}details>*{display:block!important}
}
.coffee-offers{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;margin:24px 0}
.offer-card{min-width:0;border-top:2px solid #9caf94;padding:18px 0;font-size:15px;line-height:1.75}
.offer-card h4{font:400 25px/1.35 var(--serif);margin:0 0 16px}.offer-card>p{margin:14px 0}.offer-card details>summary{font-size:14px}
.sensory-fields{border-block:1px solid var(--line);padding:4px 0 18px}.sensory-fields .fields{padding-top:14px}
[data-journal-list]>h2{font-size:32px;margin-top:40px}.saved-recipe{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:600px){.coffee-offers{grid-template-columns:1fr}.offer-card h4{font-size:25px}}
.reference-hits{display:flex;flex-wrap:wrap;gap:8px 18px;margin:12px 0 20px}
.reference-hits a{font-size:15px;font-weight:600;min-height:44px;display:flex;align-items:center}
.mobile-menu summary,.drink-grid figcaption p{font-size:14px}.source-index span{font-size:13px}

@media screen{body.print-preview{width:210mm;max-width:100%;margin:20px auto;padding:18mm;background:white;box-shadow:0 0 0 1px #ddd}body.print-preview{background:white;color:black;font-size:11pt}body.print-preview .print-controls,body.print-preview [data-taste-edit],body.print-preview [data-taste-reset],body.print-preview .site-header,body.print-preview .site-footer,body.print-preview .article-aside,body.print-preview .breadcrumbs,body.print-preview .byline button,body.print-preview .related,body.print-preview .result-actions,body.print-preview .timer button,body.print-preview .journal-controls,body.print-preview .hero,body.print-preview .skip,body.print-preview .collection-controls,body.print-preview .recipe-invitation,body.print-preview .tool-workspace form{display:none!important}body.print-preview .wrap{width:100%;max-width:none}body.print-preview .article-heading,body.print-preview .tool-heading{padding:0 0 20px}body.print-preview .article-heading h1,body.print-preview .tool-heading h1{font-size:30pt}body.print-preview .article-layout{display:block;margin:20px 0}body.print-preview .prose{font-size:11pt;line-height:1.6;max-width:none}body.print-preview .prose h2{font-size:20pt}body.print-preview .prose section{break-inside:auto;margin-bottom:20px}body.print-preview .prose li,body.print-preview tr,body.print-preview .result-metric,body.print-preview .journal-entry{break-inside:avoid}body.print-preview .tool-workspace{border:0;padding:0}body.print-preview .tool-explanation{max-width:none;padding:25px 0}body.print-preview .tool-result{margin:0}body.print-preview .result-grid{grid-template-columns:repeat(3,1fr)}body.print-preview .result-metric strong{font-size:25pt}body.print-preview .table-scroll{overflow:visible}body.print-preview th,body.print-preview td{min-width:0;font-size:9pt;padding:8px}body.print-preview .section-sources,body.print-preview .article-sources{font-size:8pt}body.print-preview .button{display:none}body.print-preview .journal-grid{display:block}body.print-preview .journal-entry{margin-bottom:20px}body.print-preview .timer{background:white;border:1px solid black}body.print-preview .tool-result:empty:after{content:'Use the worked examples below or calculate a recipe before printing.'}body.print-preview .reference-finder,body.print-preview .quick-actions,body.print-preview .article-contents,body.print-preview .listening-options,body.print-preview [data-audio-player],body.print-preview .gear-card>button{display:none!important}body.print-preview .gear-shortlist,body.print-preview .comparison-columns{display:block}body.print-preview .gear-card{break-inside:avoid}body.print-preview details::details-content{content-visibility:visible!important}body.print-preview details>*{display:block!important}
body.print-preview .print-controls{display:flex!important}body.print-preview .print-controls .button{display:inline-flex!important}}
