:root{--paper:#f9f6ee;--ink:#292f27;--muted:#6c7668;--line:#dcdccf;--red:#bd6445;--green:#42694f;--cream:#fffefa;--soft:#eef0e4}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 'Helvetica Neue',Helvetica,sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.5}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}em{font-family:Georgia,serif;font-weight:400;color:var(--red)}:focus-visible{outline:3px solid #d99f60;outline-offset:3px}
header{height:78px;max-width:1440px;margin:auto;padding:0 5%;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:22px}.logo{font:700 25px Georgia,serif;letter-spacing:-.06em}.logo-mark{display:inline-grid;place-items:center;border-radius:50%;width:36px;height:36px;background:var(--red);color:#fff;margin-right:8px}.header-center,.header-right,.eyebrow,.column-labels,.unit-form strong,footer{font:11px/1.4 monospace;letter-spacing:.1em}.header-center{color:#8b907d}.header-right{color:var(--green)}.hero,.workbench,.unit-tool,.faq{max-width:1320px;margin:auto}.hero{min-height:550px;padding:88px 5% 90px;display:grid;grid-template-columns:1fr .8fr;gap:7%;align-items:center}.eyebrow{color:var(--green);margin-bottom:23px}.hero h1{font:400 clamp(54px,6.5vw,98px)/1.06 Georgia,serif;letter-spacing:-.075em;margin-bottom:25px}.hero-description{font-size:18px;line-height:1.65;color:var(--muted);max-width:510px}.jump{display:inline-flex;gap:50px;align-items:center;background:var(--green);color:#fff;padding:14px 18px;font-weight:700;font-size:13px;margin-top:15px}.jump:hover,.primary:hover{background:#31513b}.hero-illustration{min-height:355px;position:relative}.circle{position:absolute;border-radius:50%}.circle-one{width:340px;height:340px;background:#d8e2d0;left:10%;top:0}.circle-two{width:260px;height:260px;background:#ebd9c0;left:26%;top:17%}.plate{position:absolute;left:30%;top:23%;width:210px;height:210px;background:#fffdf4;border:11px solid #f0eee3;border-radius:50%;box-shadow:0 15px 40px #41534826;display:flex;align-items:center;justify-content:center;font:italic 80px Georgia,serif;color:var(--red);transform:rotate(-16deg)}.plate i{width:2px;height:78px;background:#a4ba97;transform:rotate(25deg);margin:0 7px}.small-label{position:absolute;bottom:10px;left:2%;background:#bd6445;color:#fff;padding:13px 17px;transform:rotate(-8deg);font:11px/1.45 monospace;letter-spacing:.1em}
.workbench{background:var(--cream);border:1px solid var(--line);box-shadow:0 23px 60px #4e493b10;margin-bottom:110px}.work-head{display:flex;justify-content:space-between;align-items:end;gap:20px;padding:39px 44px 22px;border-bottom:1px solid var(--line)}h2{font:400 clamp(34px,3.5vw,52px)/1.1 Georgia,serif;letter-spacing:-.055em;margin:0}.sample{background:transparent;border:1px solid #aabda8;padding:11px 14px;color:var(--green);font-size:12px;font-weight:700}.sample:hover{background:#e9f0e5}.recipe-details{padding:30px 44px;display:flex;align-items:end;gap:17px;border-bottom:1px solid var(--line)}.recipe-details label{display:flex;flex-direction:column;gap:8px;color:#5a695a;font-size:12px;font-weight:700}.recipe-details label:first-child{flex:1}.recipe-details input{border:1px solid #bbc7b6;background:#fff;padding:12px;color:var(--ink);min-width:0;width:100%}.recipe-details label:not(:first-child){width:135px}.arrow{padding-bottom:13px;color:var(--red);font-size:23px}.ingredient-head{padding:28px 44px 16px;display:flex;justify-content:space-between;align-items:center;gap:20px}.ingredient-head h3{font:400 29px Georgia,serif;margin:0}.ingredient-head span{font-size:12px;color:var(--muted)}.column-labels,.ingredient-row{display:grid;grid-template-columns:130px 130px 1fr 35px;gap:12px;align-items:center;margin:0 44px}.column-labels{color:#758474;padding-bottom:8px}.ingredient-row{margin-bottom:10px}.ingredient-row input{min-width:0;width:100%;border:1px solid #cdd5c8;background:#fff;padding:12px;color:var(--ink)}.ingredient-row input:focus{border-color:var(--green)}.remove{border:0;background:#f3e9e2;color:#98543e;width:35px;height:43px;font-size:23px}.remove:hover{background:#f0d5c8}.actions{display:flex;justify-content:space-between;gap:20px;padding:18px 44px 25px}.add{border:1px dashed #8faa8e;background:#f7faf4;color:var(--green);padding:12px 15px;font-size:13px;font-weight:700}.primary{display:flex;justify-content:space-between;min-width:190px;gap:25px;background:var(--green);color:#fff;border:0;padding:14px 17px;font-size:13px;font-weight:700}.error{min-height:0;margin:0 44px 25px;color:#a94937;font-size:13px}.error:empty{display:none}.result{border-top:1px solid var(--line);padding:35px 44px 40px;background:#f3f6ed}.result-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.result h3{font:400 33px Georgia,serif;margin-bottom:0}.result-actions{display:flex;gap:8px}.result-actions button{border:1px solid #8fab8a;background:#fff;color:var(--green);padding:10px 13px;font-size:12px}.result-actions button:hover{background:#e4efde}.scale-note{margin:20px 0;color:var(--muted);font-size:13px}.result ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 24px}.result li{padding:11px 0;border-bottom:1px solid #d7e0d2;display:flex;gap:13px;align-items:start}.result li input{accent-color:var(--green);margin-top:4px}.result li:has(input:checked) span{text-decoration:line-through;color:#839283}.result-footnote{font-size:12px;color:#6e7d70;margin:24px 0 0;max-width:620px}
.unit-tool{padding:0 5%;display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;margin-bottom:110px}.unit-tool h2{margin-bottom:16px}.unit-tool>div:first-child>p:last-child{color:var(--muted);font-size:14px;max-width:470px;line-height:1.7}.unit-form{background:#e8ede0;border:1px solid #c8d5c2;padding:25px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;align-content:center}.unit-form label{display:flex;flex-direction:column;gap:9px;color:var(--green);font-size:12px;font-weight:700}.unit-form input,.unit-form select{width:100%;min-width:0;background:#fff;border:1px solid #abc0ab;padding:11px;color:var(--ink)}.unit-form strong{grid-column:1/-1;margin-top:11px;padding:15px;background:#fff;color:var(--green);font-size:14px;letter-spacing:0}.faq{padding:0 5%;display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;margin-bottom:110px}.faq>div:last-child{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line);padding:18px 0}.faq summary{list-style:none;cursor:pointer;font-weight:700;display:flex;justify-content:space-between;gap:18px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';color:var(--red);font-size:22px;line-height:1}.faq details[open] summary:after{content:'−'}.faq p{font-size:14px;color:var(--muted);line-height:1.7;margin:12px 35px 0 0}footer{border-top:1px solid var(--line);padding:30px 5%;display:flex;justify-content:space-between;gap:20px;color:#7c887b}footer .logo{font-size:20px;color:var(--ink)}
@media(max-width:900px){.hero{grid-template-columns:1fr;min-height:auto}.hero-illustration{display:none}.workbench{margin-left:4%;margin-right:4%}.unit-tool,.faq{grid-template-columns:1fr;gap:24px}}@media(max-width:640px){header{height:66px}.header-center{display:none}.hero{padding:65px 6% 70px}.hero h1{font-size:clamp(55px,13vw,74px)}.hero-description{font-size:16px}.work-head{padding:28px 21px 20px;align-items:start}.sample{font-size:11px}.recipe-details{padding:25px 21px;display:grid;grid-template-columns:1fr 20px 1fr}.recipe-details label:first-child{grid-column:1/-1}.recipe-details label:not(:first-child){width:auto}.recipe-details .arrow{grid-column:2;grid-row:2;align-self:end}.ingredient-head{padding:25px 21px 15px;display:block}.ingredient-head span{display:block;margin-top:5px}.column-labels,.ingredient-row{margin-left:21px;margin-right:21px;grid-template-columns:70px 70px 1fr 32px;gap:5px}.column-labels{font-size:9px}.ingredient-row input{padding:9px 6px;font-size:13px}.remove{width:32px;height:40px}.actions{padding:15px 21px 25px;flex-direction:column}.primary,.add{width:100%}.error{margin:0 21px 20px}.result{padding:25px 21px}.result-head{display:block}.result-actions{margin-top:18px}.result ul{grid-template-columns:1fr}.unit-form{grid-template-columns:1fr 1fr}.unit-form label:first-child{grid-column:1/-1}footer{flex-wrap:wrap}}
@media print{header,.hero,.workbench>.work-head,.recipe-details,.ingredient-head,.column-labels,.ingredients,.actions,.error,.unit-tool,.faq,footer,.result-actions{display:none!important}body{background:#fff}.workbench{border:0;box-shadow:none;margin:0}.result{display:block!important;border:0;background:#fff;padding:0}.result ul{grid-template-columns:1fr}.result li input{display:none}}
