:root{--navy:#071f49;--teal:#087080;--gold:#f6c85f;--muted:#4e6176;--line:#d5e1e8;--paper:#f3f7f9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--navy);background:#fff;font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.wrap{width:min(1200px,calc(100% - 48px));margin-inline:auto}a{color:var(--teal);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}header{border-bottom:1px solid var(--line)}.nav{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-block:18px}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:21px;color:var(--navy);text-decoration:none}nav{display:flex;gap:24px;flex-wrap:wrap;font-size:14px;font-weight:650}.nav nav a{text-decoration:none}.hero{display:grid;grid-template-columns:1fr 270px;gap:60px;align-items:center;padding-block:60px 42px}.eyebrow{color:var(--teal);font-size:12px;font-weight:800;letter-spacing:.13em;margin:0 0 10px}h1{font-size:clamp(34px,4.5vw,54px);line-height:1.1;letter-spacing:-.045em;margin:0 0 18px}h2{font-size:clamp(24px,3vw,33px);line-height:1.2;letter-spacing:-.025em;margin:0 0 18px}h3{font-size:20px;line-height:1.35;margin:0 0 10px}p{margin:0 0 16px}.hero-line{font-size:25px;line-height:1.4;font-weight:650;letter-spacing:-.02em}.hero-line span{color:var(--teal)}.intro{max-width:690px;color:var(--muted)}.hero-note{border-left:3px solid var(--gold);padding:25px;background:var(--paper)}.hero-note p{font-size:22px;line-height:1.4;font-weight:700}.hero-note>span:last-child{font-size:13px;color:var(--muted)}.note-mark{display:block;font-size:10px;letter-spacing:.14em;margin-bottom:25px;color:var(--teal)}.calculator{border:1px solid var(--line);border-radius:20px;padding:30px;background:var(--paper);box-shadow:0 10px 40px #071f4909}.section-top{display:flex;justify-content:space-between;gap:24px;align-items:center}.actions{display:flex;gap:8px;flex-wrap:wrap}.actions button{font-size:12px;min-height:40px;padding:8px 12px}button,.button{border:1px solid #a8bdc9;border-radius:8px;background:#fff;color:var(--navy);font:650 14px/1.4 system-ui;padding:12px 18px;cursor:pointer;min-height:44px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}button:hover,.button:hover{background:#e5eef2}button:disabled{opacity:.5;cursor:not-allowed}.primary{background:var(--teal);color:#fff;border-color:var(--teal)}.primary:hover{background:#085866}input,select{font:inherit;color:var(--navy);width:100%;min-width:0;min-height:46px;border:1px solid #adc1cc;border-radius:6px;padding:9px 11px;background:#fff;line-height:1.3}input[type=number]{appearance:textfield}label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;min-width:0}input{font-weight:450}input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #075cf1;outline-offset:3px}.recipe-meta{display:grid;grid-template-columns:1.6fr 1fr 1.15fr 1fr;gap:16px;margin:24px 0 12px}.hint{font-size:13px;color:var(--muted)}.results{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#284565;border:1px solid var(--navy);border-radius:12px;overflow:hidden;margin-top:24px}.results>div{padding:22px;background:var(--navy)}.results span{display:block;font-size:12px;color:#cedeea}.results output{display:block;color:#fff;font-size:32px;line-height:1.2;font-weight:750;letter-spacing:-.035em;margin-top:10px}.results>div:last-child output{color:var(--gold)}#result-state{margin-top:8px}.error{padding:14px 16px;border:1px solid #bb593a;border-radius:8px;background:#fff3ed;color:#873a24}.ingredients-intro{margin:28px 0 20px}.ingredients-intro p{font-size:13px;max-width:850px;color:var(--muted)}.ingredient{margin:0 0 18px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:18px;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1fr 1fr 1fr;gap:12px;min-width:0}.ingredient legend{font-size:12px;font-weight:800;color:var(--teal);padding:0 8px}.ingredient input,.ingredient select{font-size:14px;padding-inline:8px}.ingredient-bottom{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:16px}.line-cost{font-size:13px;font-weight:650}.text-button{background:none;border:0;color:var(--muted);font-size:12px;padding:0 10px;min-height:32px}.extras{display:grid;grid-template-columns:270px 1fr;gap:24px;align-items:end;margin-block:28px}.extras p{color:var(--muted);font-size:13px;margin:0}.scenario{display:grid;grid-template-columns:1fr 220px;gap:32px;align-items:center;border-top:1px solid var(--line);padding-top:26px}.scenario p:not(.eyebrow){font-size:14px;color:var(--muted);margin:0}.privacy-note{font-size:12px;color:var(--muted);margin:24px 0 0;padding-top:16px;border-top:1px solid var(--line)}.explain,.faqs{padding-block:70px 25px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:30px}.steps article>span{color:var(--teal);font-weight:800;font-size:13px;display:block;margin-bottom:12px}.steps p{color:var(--muted);font-size:14px}.steps .formula{color:var(--navy);font-weight:650;background:var(--paper);padding:12px;border-radius:7px;font-size:13px}.example{display:grid;grid-template-columns:1.6fr 1fr;gap:50px;border-top:1px solid var(--line);padding-top:45px;margin-top:25px}.example p,.example ul{font-size:14px;color:var(--muted)}.example ul{padding-left:22px}.example li{margin-bottom:8px}.example aside{padding:28px;background:#fcf7e8;border-radius:12px;align-self:start}.faqs details{border-bottom:1px solid var(--line);padding:18px 0}.faqs summary{cursor:pointer;font-weight:650}.faqs details p{margin:14px 0 4px;color:var(--muted);font-size:14px;max-width:900px}.next-step{background:var(--navy);border-radius:16px;color:white;padding:36px;margin-top:50px;display:grid;grid-template-columns:1fr auto;gap:35px;align-items:center}.next-step .eyebrow{color:var(--gold)}.next-step p:last-child{color:#d1deeb;max-width:650px;margin-bottom:0}.next-actions{display:flex;flex-direction:column;gap:10px}.next-actions .primary{background:var(--gold);color:var(--navy);border-color:var(--gold)}footer{padding-block:45px 65px}footer p,footer small{color:var(--muted);font-size:12px}footer nav{margin-block:22px;font-size:13px}.skip{position:absolute;left:12px;top:-80px;background:#fff;padding:10px;z-index:3000}.skip:focus{top:10px}[hidden]{display:none!important}@media(max-width:1000px){.ingredient{grid-template-columns:repeat(3,1fr)}.ingredient>label:first-of-type{grid-column:1/-1}.section-top{align-items:start;flex-direction:column;gap:4px}.results output{font-size:27px}.nav{align-items:start}.hero{grid-template-columns:1fr}.hero-note{display:none}}@media(max-width:640px){.wrap{width:calc(100% - 28px)}.nav{flex-direction:column;gap:12px}.nav nav{font-size:12px;gap:14px}.hero{padding-block:34px 20px;gap:0}.hero-line{font-size:21px}.intro{font-size:14px}.calculator{padding:18px 14px;border-radius:14px}.section-top h2{font-size:24px}.recipe-meta{grid-template-columns:1fr 1fr;gap:14px}.recipe-title{grid-column:1/-1}.results{grid-template-columns:1fr 1fr}.results>div{padding:16px 12px}.results output{font-size:27px}.results span{font-size:11px}.ingredient{grid-template-columns:1fr 1fr;gap:14px;padding:14px}.ingredient>label:first-of-type{grid-column:1/-1}.ingredient>label:nth-of-type(4){grid-column:auto}.extras,.scenario,.steps,.example,.next-step{grid-template-columns:1fr;gap:22px}.scenario label{max-width:240px}.explain,.faqs{padding-top:45px}.steps{gap:20px}.example{margin-top:10px;padding-top:30px}.next-step{padding:25px}.next-actions{flex-direction:column}.privacy-note{font-size:11px}.actions button{font-size:11px}footer nav{gap:14px}}
@media print{body{font-size:10pt;color:#000;background:white}.wrap{width:100%}header,.hero,.actions,.explain,.example,.faqs,.next-step,footer,.privacy-note,.text-button,#add-ingredient,#icp-analytics-preferences,#icp-analytics-open,.skip,noscript{display:none!important}.calculator{padding:0;border:0;box-shadow:none}.results{background:white;border:1px solid #555;grid-template-columns:repeat(4,1fr)}.results>div{background:white;padding:10px}.results span,.results output,.results>div:last-child output{color:black}.results output{font-size:20px}.recipe-meta{grid-template-columns:repeat(4,1fr)}.ingredient{break-inside:avoid;grid-template-columns:repeat(4,1fr);padding:10px;margin-bottom:12px}.ingredient input,.ingredient select,input,select{border:0;padding:3px;min-height:22px}.ingredient>label:first-of-type{grid-column:1/-1}.scenario{break-inside:avoid}.section-top h2{font-size:22px}.hint{font-size:9pt}}
