@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/fraunces-vietnamese-wght-normal.CnvboYUG.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/fraunces-latin-ext-wght-normal.Ca2vKHc0.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/fraunces-latin-wght-normal.ukD16Tqj.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/fraunces-vietnamese-wght-italic.BicUS2cM.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/fraunces-latin-ext-wght-italic.BfTTTDIL.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/fraunces-latin-wght-italic.Py8at3oI.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-cyrillic-ext-wght-normal.d45eAU9y.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-cyrillic-wght-normal.BAAhND-U.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-greek-wght-normal.CmyJS8uq.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-vietnamese-wght-normal.Dg1JeJN0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-latin-ext-wght-normal.CIII54If.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-latin-wght-normal.IvpUvPa2.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light;--canvas:#f4ebdd;--surface:#fffcf5;--ink:#19231d;--muted:#5f675f;--line:#d2cdbf;--forest:#24513e;--forest-dark:#173d2e;--orange:#df5a32;--orange-soft:#f1cbb8;--blue:#5a8fa8;--blue-soft:#dce8ee;--yellow:#d5a83d;--violet:#705b73;--focus:#b24a21;--sans:"IBM Plex Sans Variable", ui-sans-serif, system-ui, sans-serif;--serif:"Fraunces Variable", Iowan Old Style, Baskerville, serif;--step--1:clamp(.82rem, .79rem + .12vw, .9rem);--step-0:clamp(1rem, .96rem + .18vw, 1.1rem);--step-1:clamp(1.22rem, 1.08rem + .58vw, 1.55rem);--step-2:clamp(1.75rem, 1.4rem + 1.35vw, 2.55rem);--step-3:clamp(2.55rem, 1.85rem + 2.7vw, 4.5rem);--step-4:clamp(3.15rem, 2rem + 4.4vw, 6.2rem);--space-1:.5rem;--space-2:.75rem;--space-3:1rem;--space-4:1.5rem;--space-5:2rem;--space-6:3rem;--space-7:clamp(4rem, 7.5vw, 7rem);--radius-sm:.25rem;--radius-md:.45rem;--radius-lg:.75rem;--shadow:.5rem .65rem 0 #19231d14;--shell:74rem}*,:before,:after{box-sizing:border-box}html{background:var(--canvas);scroll-behavior:smooth}body{min-width:20rem;color:var(--ink);background:linear-gradient(90deg, transparent 49.85%, #24513e09 50%, transparent 50.15%) 0 0 / 2rem 2rem, var(--canvas);font-family:var(--sans);font-size:var(--step-0);text-rendering:optimizelegibility;margin:0;line-height:1.65}button,input,select{font:inherit}button{color:inherit}a{color:var(--forest-dark);text-underline-offset:.18em;text-decoration-thickness:.09em}a:hover{color:var(--orange)}:focus-visible{outline:.2rem solid var(--focus);outline-offset:.22rem;border-radius:.2rem}img,svg{max-width:100%;display:block}.site-frame{flex-direction:column;min-height:100vh;display:flex}main{flex:1}.shell{width:min(100% - 2rem, var(--shell));margin-inline:auto}.skip-link{z-index:50;border-radius:var(--radius-sm);background:var(--ink);color:#fff;padding:.7rem 1rem;position:fixed;top:1rem;left:1rem;transform:translateY(-200%)}.skip-link:focus{color:#fff;transform:translateY(0)}.site-header{z-index:10;border-top:.3rem solid var(--forest);border-bottom:1px solid var(--line);backdrop-filter:blur(14px);background:#f4ebddf0;position:relative}.header-inner{justify-content:space-between;align-items:center;gap:2rem;min-height:5rem;display:flex}.wordmark{color:var(--ink);flex:none;align-items:center;gap:.72rem;text-decoration:none;display:inline-flex}.wordmark-mark{background:var(--forest-dark);color:#fff;width:2.45rem;height:2.45rem;font-family:var(--serif);font-variation-settings:"SOFT" 80, "WONK" 1;border-radius:50%;place-items:center;font-size:1.38rem;font-style:italic;display:grid}.wordmark-copy{flex-direction:column;line-height:1;display:flex}.wordmark-copy strong{font-family:var(--serif);font-variation-settings:"SOFT" 45, "WONK" 1;letter-spacing:-.025em;font-size:1.12rem;font-weight:670}.wordmark-copy small{color:var(--muted);letter-spacing:.11em;text-transform:uppercase;margin-top:.25rem;font-size:.55rem;font-weight:780}.nav-list,.footer-links{align-items:center;gap:clamp(.8rem,2.2vw,1.75rem);margin:0;padding:0;list-style:none;display:flex}.nav-list a{color:var(--ink);letter-spacing:.07em;text-transform:uppercase;font-size:.72rem;font-weight:760;text-decoration:none}.nav-list a:hover{color:var(--orange)}.nav-list a[aria-current=page]{text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:.42rem;text-decoration-thickness:.13rem}.nav-list li:nth-child(2) a[aria-current=page]{color:var(--orange)}.nav-list li:nth-child(3) a[aria-current=page]{color:var(--blue);text-decoration-color:var(--blue)}.nav-list li:nth-child(4) a[aria-current=page]{color:var(--violet);text-decoration-color:var(--violet)}h1,h2,h3,p{overflow-wrap:break-word}h1,h2{font-family:var(--serif);font-variation-settings:"SOFT" 35, "WONK" 1;letter-spacing:-.045em;margin-block:0;font-weight:520;line-height:1.02}h1{max-width:14ch;font-size:var(--step-3)}h2{font-size:var(--step-2)}h3{margin:0;font-size:1.22rem;line-height:1.25}.eyebrow{color:var(--forest-dark);letter-spacing:.14em;text-transform:uppercase;align-items:center;margin:0 0 1rem;font-size:.7rem;font-weight:800;display:flex}.eyebrow:before{content:"";background:currentColor;width:1.6rem;height:.15rem;margin-right:.6rem}.lede{max-width:43rem;color:var(--muted);font-size:var(--step-1);margin:1.5rem 0 0;line-height:1.5}.card-label,.card-kicker{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:800}.button-link,.small-button{border:1px solid var(--forest-dark);background:var(--forest-dark);color:#fff;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;border-radius:.2rem;justify-content:center;align-items:center;min-height:2.9rem;padding:.72rem 1.25rem;font-size:.78rem;font-weight:790;text-decoration:none;display:inline-flex}.button-link:hover,.small-button:hover{background:var(--orange);color:#fff}.button-light{background:var(--surface);color:var(--forest-dark)}.button-light:hover{background:var(--yellow);color:var(--ink)}.text-link,.card-link{font-size:.93rem;font-weight:780;text-decoration:none}.button-row{flex-wrap:wrap;align-items:center;gap:1.25rem;margin-top:2rem;display:flex}.proof-list{color:var(--muted);font-size:var(--step--1);flex-wrap:wrap;gap:1.3rem;margin:1.7rem 0 0;padding:0;list-style:none;display:flex}.proof-list li{align-items:center;gap:.45rem;display:flex}.proof-list li:before{background:var(--orange);content:"";width:.48rem;height:.48rem;transform:rotate(45deg)}.hero{padding-block:clamp(4rem,8vw,8rem)}.hero-home{border-bottom:1px solid var(--line);background:radial-gradient(circle at 88% 0%, #d5e0c5e6, transparent 32rem), var(--canvas);position:relative;overflow:hidden}.hero-home:before{content:"";opacity:.27;pointer-events:none;background:url(/topographic.svg) 50%/cover no-repeat;width:min(52vw,48rem);height:100%;position:absolute;inset:0 0 auto auto}.hero-home-grid{z-index:1;grid-template-columns:minmax(0,1.02fr) minmax(24rem,.98fr);align-items:center;gap:clamp(3rem,7vw,7rem);display:grid;position:relative}.hero-home h1{max-width:12ch;font-size:var(--step-4)}.hero-home h1 em{color:var(--forest);font-variation-settings:"SOFT" 60, "WONK" 1;font-weight:inherit}.hero-photo-frame{border:1px solid var(--ink);background:var(--surface);box-shadow:var(--shadow);border-radius:.25rem;margin:0;position:relative;transform:rotate(.65deg)}.hero-photo{aspect-ratio:3/2;border-bottom:1px solid var(--ink);object-fit:cover;object-position:56% center;width:100%;height:auto}.hero-photo-caption{grid-template-columns:1fr auto;align-items:center;gap:1rem;padding:1rem 1.15rem;display:grid}.hero-photo-caption small{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;font-size:.62rem;font-weight:800;display:block}.hero-photo-caption strong{font-family:var(--serif);margin-top:.18rem;font-size:1.03rem;font-weight:560;line-height:1.25;display:block}.hero-photo-caption a{text-transform:uppercase;white-space:nowrap;font-size:.72rem;font-weight:800;text-decoration:none}.field-stamp{z-index:2;border:2px solid var(--orange);background:var(--canvas);width:4.5rem;height:4.5rem;color:var(--orange);letter-spacing:.08em;text-align:center;border-radius:50%;place-items:center;font-size:.58rem;font-weight:850;line-height:1.1;display:grid;position:absolute;top:-1.65rem;right:1.2rem;transform:rotate(8deg)}.section-block{padding-block:var(--space-7)}.section-tight{padding-top:0}.section-heading{max-width:48rem;margin-bottom:2.5rem}.section-heading:after{background:var(--line);content:"";width:100%;height:1px;margin-top:1.4rem;display:block}.split-heading{grid-template-columns:1fr minmax(16rem,25rem);align-items:end;gap:2rem;max-width:none;display:grid}.split-heading>p{color:var(--muted);margin:0}.split-heading>.text-link{justify-self:end}.tool-grid{grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}.tool-card{border:1px solid var(--ink);border-top:.35rem solid var(--forest);background:var(--surface);min-height:22rem;color:var(--ink);border-radius:.2rem;flex-direction:column;padding:1.5rem;text-decoration:none;transition:transform .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.tool-card:hover{color:var(--ink);box-shadow:var(--shadow);transform:translateY(-.3rem)}.tool-card:after{content:"";opacity:.18;background:url(/topographic.svg) 50%/cover no-repeat;width:11rem;height:11rem;position:absolute;bottom:-2.5rem;right:-3rem;transform:rotate(-12deg)}.tool-card-dress{border-top-color:var(--blue)}.tool-card-fit{border-top-color:var(--violet)}.tool-card-pace{border-top-color:var(--yellow)}.tool-number{color:var(--muted);font-size:.75rem;font-weight:800}.tool-icon{background:var(--canvas);width:3.2rem;height:3.2rem;color:var(--forest);border:1px solid;border-radius:50%;place-items:center;margin-block:2.5rem 1.2rem;font-size:1.7rem;display:grid}.tool-card h3{font-family:var(--serif);font-size:1.7rem;font-weight:500}.tool-card p{color:var(--muted);margin:.8rem 0 2rem;font-size:.94rem}.tool-card .card-link{z-index:1;margin-top:auto;position:relative}.fuel-feature{border-block:.3rem solid var(--orange);background:var(--forest-dark);color:#fff;position:relative;overflow:hidden}.fuel-feature:after{content:"";opacity:.12;pointer-events:none;background:url(/topographic.svg) 50%/cover no-repeat;width:31rem;height:24rem;position:absolute;bottom:-8rem;right:-5rem}.fuel-feature-inner{z-index:1;position:relative}.fuel-feature-heading{grid-template-columns:.9fr 1.1fr;align-items:end;gap:clamp(2rem,6vw,6rem);margin-bottom:2.5rem;display:grid}.fuel-feature .eyebrow{color:#b8d9c7}.fuel-feature h2{max-width:12ch;font-size:var(--step-3)}.fuel-intro{justify-self:end;max-width:34rem}.fuel-intro p{color:#dce9e1;margin:0 0 1.5rem}.recipe-photo-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.recipe-photo-card{background:var(--surface);min-width:0;color:var(--ink);border:1px solid #ffffff4d;border-radius:.2rem;flex-direction:column;text-decoration:none;transition:box-shadow .2s,transform .2s;display:flex;overflow:hidden}.recipe-photo-card:hover{color:var(--ink);transform:translateY(-.3rem);box-shadow:.55rem .65rem #00000029}.recipe-photo-wrap{aspect-ratio:4/3;border-bottom:1px solid var(--ink);display:block;position:relative;overflow:hidden}.recipe-photo-wrap img{object-fit:cover;width:100%;height:100%;transition:transform .35s}.recipe-photo-card:hover .recipe-photo-wrap img{transform:scale(1.025)}.recipe-photo-card .recipe-index{border:1px solid var(--ink);background:var(--canvas);width:2.45rem;height:2.45rem;color:var(--forest-dark);font-family:var(--serif);border-radius:50%;place-items:center;font-size:.86rem;font-weight:650;display:grid;position:absolute;bottom:.75rem;right:.75rem}.recipe-photo-copy{flex-direction:column;height:100%;padding:1.3rem;display:flex}.recipe-photo-copy small{color:var(--orange);letter-spacing:.08em;text-transform:uppercase;font-size:.66rem;font-weight:820}.recipe-photo-copy strong{font-family:var(--serif);margin-top:.55rem;font-size:1.45rem;font-weight:550;line-height:1.15;display:block}.recipe-photo-copy>span{color:var(--muted);margin-top:.75rem;font-size:.88rem;line-height:1.55}.recipe-photo-copy b{color:var(--forest-dark);letter-spacing:.04em;text-transform:uppercase;margin-top:auto;padding-top:1.2rem;font-size:.74rem}.editorial-grid,.recipe-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.editorial-card,.recipe-card{border:1px solid var(--line);border-top:.25rem solid var(--forest);background:#fffcf5b8;border-radius:.15rem;padding:1.6rem;position:relative}.editorial-card:before,.recipe-card:before{color:var(--line);font-family:var(--serif);content:"✦";font-size:2.8rem;line-height:1;position:absolute;top:.55rem;right:.65rem}.editorial-card:nth-child(2){border-top-color:var(--blue)}.editorial-card:nth-child(3){border-top-color:var(--orange)}.editorial-card h3,.recipe-card h3{font-family:var(--serif);margin-top:1rem;font-size:1.5rem;font-weight:500}.editorial-card h3 a,.recipe-card h3 a,.recipe-card h2 a{color:var(--ink);text-decoration:none}.editorial-card h3 a:hover,.recipe-card h3 a:hover,.recipe-card h2 a:hover{color:var(--orange)}.editorial-card>p:last-child,.recipe-card>p{color:var(--muted);font-size:.94rem}.closing-callout{border-block:1px solid var(--line);background:var(--yellow);text-align:center;position:relative;overflow:hidden}.closing-callout:before{content:"";opacity:.13;background:url(/topographic.svg) 50%/cover;position:absolute;inset:0}.closing-inner{z-index:1;flex-direction:column;align-items:center;display:flex;position:relative}.closing-inner h2{font-size:var(--step-3)}.closing-inner>p:not(.eyebrow){color:#3d413a;max-width:40rem;margin:1.2rem 0 2rem}.page-intro,.page-hero,.tool-hero,.article-hero{padding-block:var(--space-7)}.compact-intro{padding-bottom:3rem}.intro-grid,.page-hero-grid,.tool-hero-inner{grid-template-columns:1.2fr .8fr;align-items:end;gap:3rem;display:grid}.page-note{border-radius:var(--radius-md);background:#ffffff2b;border:1px solid #fff6;padding:1.5rem}.page-note p:last-child{margin-bottom:0}.page-hero-fuel{border-bottom:.3rem solid var(--orange);background:var(--orange-soft)}.soft-section{border-block:1px solid var(--line);background:#eae2d4}.explanatory-grid{grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,6vw,7rem);display:grid}.explanatory-grid p{color:var(--muted);margin-top:0}.explanatory-grid h2{max-width:11ch}.recipe-grid{grid-template-columns:repeat(2,1fr)}.recipe-card{border-top-color:var(--orange);padding:2rem}.recipe-card h2{margin:1rem 0;font-size:1.75rem}.recipe-card-large{min-height:24rem}.tag-list{flex-wrap:wrap;gap:.45rem;margin:1.5rem 0 0;padding:0;list-style:none;display:flex}.tag-list li{color:var(--forest-dark);letter-spacing:.03em;text-transform:uppercase;background:#e7eadf;border:1px solid #bfc7b8;border-radius:.15rem;padding:.28rem .62rem;font-size:.64rem;font-weight:760}.mini-facts{gap:2rem;margin:1.5rem 0 0;display:flex}.mini-facts div{display:grid}.mini-facts dt{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:800}.mini-facts dd{margin:.2rem 0 0;font-size:.88rem;font-weight:700}.recipe-hero{padding-block:var(--space-7);border-bottom:.3rem solid var(--orange);background:var(--forest-dark);color:#fff;position:relative;overflow:hidden}.recipe-hero:after{content:"";opacity:.15;background:url(/topographic.svg) 50%/cover;width:50%;position:absolute;inset:0 0 0 auto}.recipe-hero .eyebrow{color:#b8d9c7}.recipe-hero .lede{color:#dce9e1}.recipe-hero-grid{z-index:1;grid-template-columns:1.2fr .8fr;align-items:end;gap:3rem;display:grid;position:relative}.recipe-facts{border:1px solid #ffffff52;border-radius:.15rem;grid-template-columns:repeat(3,1fr);margin:0;display:grid;overflow:hidden}.recipe-facts div{border-right:1px solid #ffffff38;padding:1.2rem}.recipe-facts div:last-child{border-right:0}.recipe-facts dt{color:#b8d9c7;text-transform:uppercase;font-size:.7rem;font-weight:800}.recipe-facts dd{margin:.3rem 0 0;font-weight:700}.light-tags li{color:#fff;background:#ffffff1f;border-color:#ffffff40}.recipe-body{padding-block:var(--space-7);grid-template-columns:minmax(16rem,.72fr) minmax(0,1.28fr);align-items:start;gap:clamp(2rem,6vw,6rem);display:grid}.ingredient-panel{border:1px solid var(--ink);border-top:.35rem solid var(--orange);background:var(--surface);box-shadow:var(--shadow);border-radius:.15rem;padding:2rem;position:sticky;top:2rem}.ingredient-panel h2{font-size:1.8rem}.ingredient-list{margin:1.6rem 0 0;padding:0;list-style:none}.ingredient-list li{border-bottom:1px solid var(--line);color:var(--muted);padding:.8rem 0 .8rem 1.2rem}.ingredient-list li:before{float:left;background:var(--orange);content:"";width:.42rem;height:.42rem;margin:.6rem 0 0 -1.1rem;transform:rotate(45deg)}.method-column>section+section{margin-top:4rem}.method-column h2{margin-bottom:1.5rem}.step-list{counter-reset:recipe-step;margin:0;padding:0;list-style:none}.step-list li{min-height:3rem;color:var(--muted);counter-increment:recipe-step;padding:.25rem 0 1.5rem 3.7rem;position:relative}.step-list li:before{border:1px solid var(--orange);background:var(--canvas);width:2.6rem;height:2.6rem;color:var(--forest-dark);font-family:var(--serif);content:counter(recipe-step);border-radius:50%;place-items:center;font-size:1.25rem;display:grid;position:absolute;top:0;left:0}.recipe-notes{grid-template-columns:repeat(2,1fr);gap:.45rem;display:grid}.recipe-notes>h2{grid-column:1/-1}.recipe-notes>div{border:1px solid var(--line);border-top:3px solid var(--forest);background:#eae2d4;padding:1.2rem}.recipe-notes h3{font-size:.9rem}.recipe-notes p{color:var(--muted);margin-bottom:0;font-size:.9rem}.caution-note,.fit-note,.weather-caution{border:1px solid #dbbcae;border-left:.35rem solid var(--orange);color:var(--muted);background:#f2e0d4;margin-top:2rem;padding:1.2rem 1.35rem}.caution-note strong,.fit-note strong,.weather-caution strong{color:var(--ink)}.weather-caution p,.fit-note p{margin:.35rem 0 0}.guide-list{gap:4rem;display:grid}.guide-group>.eyebrow{border-bottom:1px solid var(--line);padding-bottom:1rem}.guide-row-list{display:grid}.guide-row{border-bottom:1px solid var(--line);color:var(--ink);grid-template-columns:1fr auto;align-items:center;gap:2rem;padding:1.35rem 0;text-decoration:none;display:grid}.guide-row strong{font-family:var(--serif);font-size:1.35rem;font-weight:500;display:block}.guide-row small{color:var(--muted);margin-top:.35rem;font-size:.88rem;display:block}.guide-row>span:last-child{color:var(--forest);font-size:.82rem;font-weight:800}.guide-row:hover strong{color:var(--orange)}.article-hero{border-bottom:.3rem solid var(--forest);background:linear-gradient(145deg,#f8f1e4 50%,#e1e7d8);position:relative;overflow:hidden}.article-hero:after{content:"";opacity:.18;background:url(/topographic.svg) 50%/cover;width:48%;position:absolute;inset:0 0 0 auto}.article-heading{z-index:1;max-width:52rem;position:relative}.article-heading h1{max-width:15ch}.article-meta{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;margin:1.5rem 0 0;font-size:.7rem;font-weight:760}.article-body{max-width:48rem;padding-block:var(--space-7)}.article-body section+section{margin-top:3.5rem}.article-body h2{border-bottom:1px solid var(--line);font-family:var(--serif);font-variation-settings:"SOFT" 35, "WONK" 1;letter-spacing:-.025em;margin-bottom:1.25rem;padding-bottom:.55rem;font-size:1.55rem;font-weight:590}.article-body p,.article-body li{color:var(--muted)}.article-body ul{padding-left:1.3rem}.article-body li+li{margin-top:.75rem}.tool-hero{border-bottom:.3rem solid var(--forest);background:linear-gradient(140deg,#f0e7d6,#dce8dc);position:relative;overflow:hidden}.tool-hero:after{content:"";opacity:.2;background:url(/topographic.svg) 50%/cover;width:52%;position:absolute;inset:0 0 0 auto}.tool-hero-inner{z-index:1;position:relative}.weather-hero{border-bottom-color:var(--blue);background:linear-gradient(140deg,#e4ede7,#d6e5ed)}.pace-hero{border-bottom-color:var(--yellow);background:linear-gradient(140deg,#f1e5c8,#e4dce7)}.lacing-hero{border-bottom-color:var(--violet);background:linear-gradient(140deg,#e8dfe9,#eee1cf)}.tool-hero h1{max-width:13ch}.tool-hero .proof-list{justify-content:flex-end}.weather-mark,.pace-mark{border:1px solid var(--ink);background:#fffcf599;border-radius:.15rem;flex-direction:column;justify-self:end;align-items:center;min-width:12rem;padding:1.5rem;display:flex;box-shadow:.35rem .35rem #19231d17}.weather-mark span{font-size:2rem}.weather-mark strong,.pace-mark strong{font-family:var(--serif);font-size:3.5rem;line-height:1}.weather-mark small,.pace-mark small{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;font-size:.75rem;font-weight:800}.pace-mark span{color:var(--violet);font-size:.85rem;font-weight:800}.lace-mark{color:var(--violet);justify-self:end;font-size:8rem;line-height:.7;transform:rotate(-12deg)}.tool-workspace{padding-block:3rem var(--space-7)}.workspace-grid{grid-template-columns:minmax(18rem,.72fr) minmax(0,1.28fr);align-items:start;gap:1.5rem;display:grid}.control-panel,.result-panel{border:1px solid var(--ink);background:var(--surface);border-radius:.2rem}.control-panel{border-top:.35rem solid var(--forest);box-shadow:var(--shadow);padding:1.5rem;position:sticky;top:1.5rem}.panel-heading{border-bottom:1px solid var(--line);margin-bottom:1.5rem;padding-bottom:1rem}.panel-heading h2{font-size:1.7rem}.field{gap:.35rem;margin-top:1rem;display:grid}.field>span,.field-group legend{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:800}.field input,.field select{width:100%;min-height:2.85rem;color:var(--ink);background:#fffefb;border:1px solid #bdb9ac;border-radius:.12rem;padding:.55rem .7rem}.field-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.field-group{border:0;margin:1.2rem 0 0;padding:0}.field-group legend{margin-bottom:-.3rem}.time-fields{grid-template-columns:repeat(3,1fr);gap:.65rem;display:grid}.button-control{width:100%;margin-top:1.5rem}.form-help{color:var(--muted);margin:1rem 0 0;font-size:.78rem;line-height:1.5}.result-panel{min-height:30rem;padding:clamp(1.2rem,3vw,2rem)}.result-placeholder{min-height:28rem;color:var(--muted);text-align:center;align-content:center;place-items:center;display:grid}.result-placeholder>span{font-size:3.5rem}.result-placeholder h2{color:var(--ink);margin-top:1rem;font-size:1.8rem}.result-placeholder p{max-width:25rem}.result-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:1rem;display:flex}.result-heading h2{font-size:2rem}.result-heading p:not(.eyebrow){color:var(--muted);margin:.5rem 0 0}.result-actions{gap:.5rem;display:flex}.small-button{border-color:var(--line);min-height:2.35rem;color:var(--ink);background:#e4e7dc;padding:.45rem .8rem;font-size:.65rem}.small-button:hover{background:var(--forest)}.action-status{min-height:1.3rem;color:var(--forest);margin:.5rem 0;font-size:.78rem}.error-message{border-radius:var(--radius-sm);color:#702f1b;background:#f6dbcf;padding:1rem}.weather-hero+.tool-workspace .control-panel{border-top-color:var(--blue)}.pace-hero+.tool-workspace .control-panel{border-top-color:var(--yellow)}.plan-legend{color:var(--muted);flex-wrap:wrap;gap:1.2rem;margin-block:1.2rem;font-size:.73rem;display:flex}.training-weeks{gap:.8rem;display:grid}.training-week{border:1px solid var(--line);border-radius:var(--radius-sm);grid-template-columns:7.8rem 1fr;gap:.8rem;padding:.85rem;display:grid}.week-heading{flex-direction:column;display:flex}.week-heading>span{color:var(--forest);text-transform:uppercase;font-size:.7rem;font-weight:800}.week-heading strong{font-family:var(--serif);margin-top:.2rem;font-size:1rem;font-weight:500}.week-heading small{color:var(--muted);margin-top:auto;font-size:.68rem}.plan-days{grid-template-columns:repeat(7,1fr);display:grid}.plan-day{border-left:1px solid var(--line);flex-direction:column;align-items:center;min-width:0;padding:.35rem .2rem;display:flex}.plan-day span{color:var(--muted);text-transform:uppercase;font-size:.62rem;font-weight:800}.plan-day strong{font-family:var(--serif);font-weight:500}.plan-day small{color:var(--forest-dark);background:#e3e9de;border-radius:999px;padding:.05rem .22rem;font-size:.55rem}.plan-day.is-outside{opacity:.28}.plan-day.is-race{background:var(--orange);color:#fff;opacity:1;border-radius:.35rem}.plan-day.is-race span,.plan-day.is-race small{color:#fff}.plan-day.is-race small{background:0 0}.week-note{border-top:1px dashed var(--line);color:var(--muted);grid-column:1/-1;margin:0;padding-top:.65rem;font-size:.72rem}.outfit-visual{grid-template-columns:minmax(15rem,.75fr) 1.25fr;align-items:start;gap:clamp(1.5rem,4vw,3rem);margin-top:2rem;display:grid}.outfit-callouts{gap:.65rem;display:grid}.outfit-card{border-left:3px solid var(--blue);background:#edf2f3;padding:.85rem 1rem;display:grid}.outfit-card>span{color:var(--blue);text-transform:uppercase;font-size:.65rem;font-weight:800}.outfit-card strong{font-size:.9rem}.outfit-card small{color:var(--muted);font-size:.72rem}.chart-promo{background:var(--blue);color:#fff;padding-block:2.5rem}.chart-promo-inner{justify-content:space-between;align-items:center;gap:2rem;display:flex}.chart-promo .eyebrow{color:#dce8ee}.chart-promo h2{font-size:2rem}.chart-promo p:not(.eyebrow){color:#edf4f7;max-width:42rem;margin:.65rem 0 0;font-size:.9rem}.pace-summary{border:1px solid var(--line);border-radius:var(--radius-md);grid-template-columns:repeat(3,1fr);margin:2rem 0;display:grid;overflow:hidden}.pace-summary div{border-right:1px solid var(--line);text-align:center;padding:1.2rem}.pace-summary div:last-child{border-right:0}.pace-summary span{color:var(--muted);text-transform:uppercase;font-size:.7rem;font-weight:800;display:block}.pace-summary strong{color:var(--violet);font-family:var(--serif);margin-top:.3rem;font-size:1.9rem;font-weight:500;display:block}.split-table-wrap{overflow-x:auto}.split-table{border-collapse:collapse;width:100%}.split-table caption{color:var(--muted);text-align:left;text-transform:uppercase;margin-bottom:.8rem;font-size:.75rem;font-weight:800}.split-table th,.split-table td{border-bottom:1px solid var(--line);text-align:left;padding:.7rem;font-size:.86rem}.split-table thead th{color:var(--muted);text-transform:uppercase;font-size:.68rem}.lacing-workspace{padding-block:3rem var(--space-7)}.pattern-tabs{border:1px solid var(--ink);background:var(--surface);border-radius:.2rem;gap:.25rem;margin-bottom:1.2rem;padding:.35rem;display:flex;overflow-x:auto}.pattern-tabs button{white-space:nowrap;min-height:2.5rem;color:var(--muted);letter-spacing:.03em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-radius:.1rem;padding:.5rem .9rem;font-size:.7rem;font-weight:770}.pattern-tabs button[aria-selected=true]{background:var(--violet);color:#fff}.pattern-panel{border:1px solid var(--ink);border-top:.35rem solid var(--violet);background:var(--surface);box-shadow:var(--shadow);border-radius:.2rem;grid-template-columns:.82fr 1.18fr;align-items:center;gap:clamp(2rem,7vw,7rem);padding:clamp(1.4rem,4vw,3rem);display:grid}.pattern-panel[hidden]{display:none}.shoe-diagram-wrap{justify-self:center;max-width:23rem}.shoe-diagram{width:100%;max-height:34rem}.shoe-outline{fill:#eee9df;stroke:#acae9f;stroke-width:2px}.shoe-tongue,.toe-line{fill:none;stroke:#c7c7ba;stroke-width:2px}.eyelet{fill:var(--surface);stroke:#72786f;stroke-width:2px}.lace-shadow{fill:none;stroke:#fff;stroke-linecap:round;stroke-linejoin:round;stroke-width:8px}.lace-path{fill:none;stroke:var(--orange);stroke-linecap:round;stroke-linejoin:round;stroke-width:4px}.diagram-caption{color:var(--muted);text-align:center;margin:.5rem 0 0;font-size:.72rem}.pattern-copy h2{font-size:var(--step-2)}.pattern-summary{color:var(--muted);font-size:1.05rem}.compact-steps{margin-top:1.5rem}.compact-steps li{padding-bottom:1rem}.fit-note{border-color:var(--violet);background:#ebe5ed}.site-footer{border-top:.35rem solid var(--orange);background:var(--forest-dark);color:var(--canvas);position:relative;overflow:hidden}.site-footer:after{content:"";filter:brightness(4);opacity:.08;pointer-events:none;background:url(/topographic.svg) 50%/cover;width:34rem;height:26rem;position:absolute;bottom:-8rem;right:-8rem}.footer-inner,.footer-bottom{z-index:1;position:relative}.footer-inner{justify-content:space-between;align-items:flex-start;gap:3rem;min-height:12rem;padding-block:2.5rem;display:flex}.footer-wordmark{color:#fff;font-family:var(--serif);font-variation-settings:"SOFT" 50, "WONK" 1;font-size:1.85rem;font-weight:600;text-decoration:none}.footer-inner>div:first-child>p{color:#cbdacf;margin:.5rem 0 0;font-size:.85rem}.footer-edition{color:#9db9a7;letter-spacing:.1em;text-transform:uppercase;margin-top:1.25rem;font-size:.58rem;font-weight:780;display:block}.footer-nav-groups{gap:clamp(2rem,6vw,5rem);display:flex}.footer-label{color:#9db9a7;letter-spacing:.08em;text-transform:uppercase;margin:0 0 .7rem;font-size:.62rem;font-weight:800}.footer-links{flex-direction:column;align-items:flex-start;gap:.4rem}.footer-links a{color:#eef3ef;font-size:.78rem;font-weight:650;text-decoration:none}.footer-links a:hover{color:var(--yellow)}.footer-bottom{border-top:1px solid #ffffff29;justify-content:space-between;gap:1rem;padding-block:1rem;display:flex}.footer-bottom p{color:#9db9a7;margin:0;font-size:.66rem}.footer-coordinate{letter-spacing:.12em}@media (width<=62rem){.hero-home-grid{grid-template-columns:1fr}.hero-photo-frame{max-width:48rem}.tool-grid{grid-template-columns:repeat(2,1fr)}.workspace-grid{grid-template-columns:1fr}.control-panel{position:static}.pattern-panel{gap:2rem}}@media (width<=44rem){.header-inner{flex-direction:column;align-items:flex-start;gap:.7rem;padding-block:.8rem}.nav-list{gap:1.2rem;width:calc(100vw - 2rem);padding-bottom:.2rem;overflow-x:auto}.hero,.page-intro,.page-hero,.tool-hero,.article-hero{padding-block:3.8rem}.hero-home-grid,.intro-grid,.page-hero-grid,.tool-hero-inner,.split-heading,.fuel-feature-heading,.explanatory-grid,.recipe-hero-grid,.recipe-body,.pattern-panel{grid-template-columns:1fr}.hero-home-grid>*{min-width:0}.hero-photo-frame{width:100%;transform:none}.hero-photo-caption{grid-template-columns:1fr;align-items:start}.fuel-intro{justify-self:start}.tool-hero .proof-list{justify-content:flex-start}.weather-mark,.pace-mark,.lace-mark{display:none}.week-strip{overflow-x:auto}.week-day{min-width:3.8rem;min-height:7rem}.tool-grid,.editorial-grid,.recipe-grid,.recipe-photo-grid{grid-template-columns:1fr}.tool-card{min-height:18rem}.split-heading>.text-link{justify-self:start}.recipe-facts{grid-template-columns:1fr}.recipe-facts div{border-bottom:1px solid #ffffff38;border-right:0}.recipe-facts div:last-child{border-bottom:0}.ingredient-panel{position:static}.recipe-notes{grid-template-columns:1fr}.recipe-notes>h2{grid-column:auto}.guide-row{grid-template-columns:1fr;align-items:start;gap:.5rem}.result-heading{flex-direction:column;align-items:flex-start}.result-actions{width:100%}.result-actions>*{flex:1}.training-week{grid-template-columns:1fr}.week-heading small{margin-top:.2rem}.plan-days{overflow-x:auto}.plan-day{border-top:1px solid var(--line);min-width:2.8rem}.outfit-visual{grid-template-columns:1fr}.chart-promo-inner{flex-direction:column;align-items:flex-start}.pace-summary{grid-template-columns:1fr}.pace-summary div{border-right:0;border-bottom:1px solid var(--line)}.pace-summary div:last-child{border-bottom:0}.pattern-tabs{border-radius:var(--radius-md)}.pattern-panel{padding:1.2rem}.shoe-diagram-wrap{max-width:17rem}.footer-inner{flex-direction:column}.footer-nav-groups{justify-content:space-between;width:100%}}@media print{@page{margin:.45in}body{color:#000;background:#fff;font-size:10pt}.site-header,.site-footer,.tool-hero,.control-panel,.section-block,.result-actions,.action-status,.form-help,.skip-link{display:none!important}.tool-workspace,.lacing-workspace{padding:0}.shell{width:100%}.workspace-grid{display:block}.result-panel,.pattern-panel{box-shadow:none;border:0;padding:0}.training-weeks{gap:.3rem}.training-week{break-inside:avoid;padding:.35rem}.plan-day{padding:.12rem}.outfit-visual{grid-template-columns:.45fr 1.55fr}.outfit-card{break-inside:avoid}.split-table th,.split-table td{padding:.35rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
