:root{color:#2f251e;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f8f5ec;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}body{margin:0}a{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,Times New Roman,serif}.site-shell{min-height:100vh;overflow:hidden}.skip-link{z-index:20;color:#fffaf0;background:#2f251e;border-radius:8px;padding:.7rem 1rem;position:absolute;top:.6rem;left:.6rem;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.site-header,.hero,.builder,.library,.how-it-works,.site-footer{width:min(100% - 3rem,1200px);margin-inline:auto}.site-header{justify-content:space-between;align-items:center;gap:2rem;min-height:104px;display:flex}.brand{align-items:center;gap:.75rem;min-height:44px;text-decoration:none;display:inline-flex}.brand:focus-visible{outline-offset:5px;border-radius:3px;outline:3px solid #a3472b}.brand-mark{color:#fff8eb;background:#b84c2e;border-radius:50%;place-items:center;width:38px;height:38px;font:italic 700 25px Georgia,serif;display:grid;transform:rotate(-9deg)}.brand-name{letter-spacing:-.06em;font:700 23px Georgia,serif}.brand-name span{color:#b84c2e}.header-note{color:#766c5e;letter-spacing:.13em;text-transform:uppercase;font-size:.82rem}.hero{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(2rem,5vw,5rem);min-height:580px;padding-block:3.3rem 5rem;display:grid}.hero-copy{max-width:640px}.eyebrow,.section-label{color:#9b4129;letter-spacing:.18em;text-transform:uppercase;font-size:.8rem;font-weight:700}.eyebrow{align-items:center;gap:.7rem;display:flex}.eyebrow span{background:currentColor;width:26px;height:1px}h1{letter-spacing:-.055em;margin-bottom:1.7rem;font-size:clamp(3.2rem,5.35vw,5.75rem);font-weight:500;line-height:1.08}h1 em{color:#b84c2e;font-weight:400}.hero-description{color:#60564c;max-width:34rem;font-size:1.1rem;line-height:1.7}.status{color:#5c5145;border:1px solid #d9ceba;border-radius:999px;align-items:center;gap:.7rem;min-height:44px;margin:1rem 0 0;padding:.78rem 1rem;font-size:.84rem;font-weight:600;text-decoration:none;display:inline-flex}.status:hover{color:#a34127;border-color:#b84c2e}.status:focus-visible{outline-offset:4px;outline:3px solid #a3472b}.status-dot{background:#b84c2e;border-radius:50%;width:8px;height:8px}.hero-visual{isolation:isolate;place-items:center;min-height:470px;display:grid;position:relative}.hero-visual:before{z-index:-2;content:"";background:#eae1cc;border-radius:49% 51% 45% 55%/50% 45% 55% 50%;position:absolute;inset:2% 1% 3% 4%;transform:rotate(-8deg)}.visual-caption{z-index:2;color:#756949;letter-spacing:.19em;font-size:.7rem;font-weight:700;position:absolute}.visual-caption-top{top:10%;right:5%;transform:rotate(8deg)}.visual-caption-bottom{bottom:9%;left:2%;transform:rotate(-7deg)}.board{aspect-ratio:1;background:radial-gradient(circle at 35% 30%,#d8b88b,#bc9568 75%);border:2px solid #b8946a;border-radius:50%;place-items:center;width:min(75%,360px);display:grid;position:relative;transform:rotate(-13deg);box-shadow:18px 22px #d9cbb0,20px 25px 22px #a4937640}.board:before,.board:after{content:"";border:1px solid #a47d51aa;border-radius:50%;position:absolute;inset:12%}.board:after{border-color:#e8cba3aa;inset:20%}.bowl-shadow{aspect-ratio:1;filter:blur(14px);background:#6b432f44;border-radius:50%;width:67%;position:absolute;transform:translate(12px,16px)}.bowl{z-index:1;aspect-ratio:1;background:#e6d6b7;border:13px solid #f7efe0;border-radius:50%;place-items:center;width:64%;display:grid;box-shadow:inset 0 4px 9px #8e71584d,4px 8px 15px #64492e5c}.rub{aspect-ratio:1;background:radial-gradient(circle at 35% 32%,#d7854b 2%,#aa432a 60%,#81301e 100%);border-radius:50%;width:88%;box-shadow:inset 4px 5px 13px #6d2b1c66}.scatter{z-index:1;background:#913e29;border-radius:50%;width:5px;height:9px;position:absolute;transform:rotate(35deg)}.scatter-one{top:19%;left:19%;transform:rotate(72deg)}.scatter-two{top:71%;left:14%}.scatter-three{background:#e7bd78;top:75%;right:16%}.builder{padding-block:2.5rem 5rem;scroll-margin-top:1rem}.builder-heading{max-width:42rem}.builder-heading h2{margin-bottom:.75rem}.builder-heading>p:last-child{color:#60564c;margin-bottom:2rem;line-height:1.6}.builder-panel{background:#fffdf7;border:1px solid #e2d6c2;border-radius:24px;padding:clamp(1.3rem,3.2vw,2.5rem);box-shadow:0 18px 36px #5e3b2312}.control-title{margin-bottom:1rem;font:500 1.35rem Georgia,Times New Roman,serif;display:block}.food-options{grid-template-columns:repeat(5,minmax(0,1fr));gap:.7rem;display:grid}.food-option{color:#4d4035;cursor:pointer;background:#f8f5ec;border:1px solid #d9ceba;border-radius:13px;min-height:64px;padding:.8rem;font:700 .95rem Arial,Helvetica,sans-serif}.food-option:hover{border-color:#b84c2e}.food-option[aria-pressed=true]{color:#fffaf0;background:#b84c2e;border-color:#a94329}.food-option:focus-visible{outline-offset:3px;outline:3px solid #a3472b}.weight-input-group{border-top:1px solid #e7dece;margin-top:2.2rem;padding-top:2rem}.unit-options{flex-wrap:wrap;gap:.5rem;margin:-.1rem 0 1rem;display:flex}.unit-options button{color:#514438;cursor:pointer;background:#f8f5ec;border:1px solid #d1c0a8;border-radius:999px;min-height:44px;padding:.55rem .85rem;font:700 .83rem Arial,Helvetica,sans-serif}.unit-options button[aria-pressed=true]{color:#fffaf0;background:#b84c2e;border-color:#a94329}.unit-options button:focus-visible{outline-offset:3px;outline:3px solid #a3472b}.weight-field{background:#fff;border:1px solid #cbbda8;border-radius:13px;align-items:center;width:min(100%,320px);min-height:62px;display:flex}.weight-field:focus-within{outline-offset:3px;outline:3px solid #a3472b}.weight-field input{color:#2f251e;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:.9rem 1rem;font:1.15rem Arial,Helvetica,sans-serif}.weight-field input::placeholder{color:#8c8073}.weight-unit{color:#695b4d;padding-right:1.1rem;font-weight:700}.field-help{color:#706457;margin:.7rem 0 0;font-size:.88rem;line-height:1.45}.field-error{color:#a13722}.selection-summary{color:#5c5145;border-top:1px solid #e7dece;margin:2rem 0 0;padding-top:1.25rem;line-height:1.5}.library{padding-block:0 5rem}.library-heading{max-width:44rem;margin-bottom:2rem}.library-heading h2{margin-bottom:.75rem}.library-heading>p:last-child{color:#60564c;margin-bottom:0;line-height:1.6}.filter-bar{background:#fffdf7;border:1px solid #e2d6c2;border-radius:18px;margin-bottom:1.2rem;padding:1.4rem 1.6rem}.filter-heading{justify-content:space-between;align-items:center;gap:.5rem 1rem;margin-bottom:1rem;display:flex}.filter-heading h3{margin-bottom:0;font-size:1.3rem;font-weight:500}.filter-clear{color:#9b4129;cursor:pointer;background:0 0;border:0;align-items:center;min-height:44px;padding:0;font:700 .8rem Arial,Helvetica,sans-serif;text-decoration:underline;display:inline-flex}.filter-clear:disabled{color:#9b9082;cursor:default}.filter-clear:focus-visible{outline-offset:4px;outline:3px solid #a3472b}.filter-options{flex-wrap:wrap;gap:.55rem;display:flex}.filter-option{color:#514438;text-transform:capitalize;cursor:pointer;background:#f8f5ec;border:1px solid #d1c0a8;border-radius:999px;min-height:44px;padding:.65rem 1rem;font:700 .87rem Arial,Helvetica,sans-serif}.filter-option:hover{border-color:#b84c2e}.filter-option[aria-pressed=true]{color:#fffaf0;background:#b84c2e;border-color:#a94329}.filter-option:focus-visible{outline-offset:3px;outline:3px solid #a3472b}.filter-help{color:#776b5e;margin:.9rem 0 0;font-size:.82rem;line-height:1.45}.cupboard-filter{background:#fffdf7;border:1px solid #e2d6c2;border-radius:18px;margin-bottom:1.2rem;padding:1.4rem 1.6rem}.cupboard-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.cupboard-heading h3{margin-bottom:.35rem;font-size:1.3rem}.cupboard-heading p,.cupboard-footer p{color:#706457;margin:0;font-size:.87rem;line-height:1.45}.cupboard-mode{color:#973d26;cursor:pointer;background:0 0;border:1px solid #a94329;border-radius:999px;flex:none;min-height:44px;padding:.65rem 1rem;font:700 .83rem Arial,Helvetica,sans-serif}.cupboard-mode:hover{background:#f8e2d5}.cupboard-mode[aria-pressed=true]{color:#fffaf0;background:#b84c2e}.cupboard-options{border-top:1px solid #e7dece;flex-wrap:wrap;gap:.55rem;margin-top:1.3rem;padding-top:1.3rem;display:flex}.cupboard-option{color:#514438;cursor:pointer;background:#f8f5ec;border:1px solid #d1c0a8;border-radius:999px;min-height:44px;padding:.65rem 1rem;font:700 .87rem Arial,Helvetica,sans-serif}.cupboard-option:hover{border-color:#b84c2e}.cupboard-option[aria-pressed=true]{color:#fffaf0;background:#b84c2e;border-color:#a94329}.cupboard-mode:focus-visible,.cupboard-option:focus-visible,.cupboard-footer button:focus-visible{outline-offset:3px;outline:3px solid #a3472b}.cupboard-footer{justify-content:space-between;align-items:center;gap:.5rem 1rem;margin-top:1rem;display:flex}.cupboard-footer button{color:#9b4129;cursor:pointer;background:0 0;border:0;flex:none;min-height:44px;padding:0;font:700 .8rem Arial,Helvetica,sans-serif;text-decoration:underline}.cupboard-footer button:disabled{color:#9b9082;cursor:default}.library-count{color:#75685b;margin:0 0 1rem;font-size:.82rem}.rub-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.rub-card{background:#f2eadb;border:1px solid #d9cbb5;border-radius:22px;min-width:0;padding:clamp(1.35rem,2.5vw,2.2rem)}.rub-card-top{flex-wrap:wrap;justify-content:space-between;gap:.5rem 1rem;display:flex}.rub-card-kicker,.rub-card-food{color:#965039;letter-spacing:.1em;text-transform:uppercase;margin-bottom:1.1rem;font-size:.72rem;font-weight:700}.rub-card-food{color:#716354}.rub-card h3{letter-spacing:-.035em;margin-bottom:.55rem;font-size:clamp(1.65rem,2.2vw,2.2rem)}.rub-card-notes{color:#65584c;min-height:3rem;margin-bottom:1rem;line-height:1.55}.flavour-tags{flex-wrap:wrap;gap:.5rem;margin:0 0 1.8rem;padding:0;list-style:none;display:flex}.flavour-tags li{color:#725746;border:1px solid #d2bfa7;border-radius:999px;padding:.38rem .7rem;font-size:.77rem}.ingredient-heading{border-top:1px solid #d9cbb5;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.4rem 1rem;padding-top:1.4rem;display:flex}.ingredient-heading h4{margin:0;font:600 1.1rem Georgia,Times New Roman,serif}.ingredient-heading span{color:#75685b;font-size:.78rem}.ingredient-list{margin:1rem 0 0;padding:0;list-style:none}.ingredient-list li{color:#514438;border-bottom:1px solid #e2d6c3;justify-content:space-between;gap:1rem;padding-block:.55rem;font-size:.93rem;display:flex}.ingredient-list strong{color:#342820;flex:none;font-weight:700}.rest-time{color:#67594b;margin:1.3rem 0 0;font-size:.88rem;line-height:1.5}.rest-time strong{color:#342820;margin-right:.4rem}.rub-card-error{color:#a13722;margin:1rem 0 0}.unit-note{color:#67594b;margin:.8rem 0 0;font-size:.78rem;line-height:1.45}.rub-card-actions{flex-wrap:wrap;gap:.7rem;margin-top:1.4rem;display:flex}.recipe-view-open{color:#fffaf0;cursor:pointer;background:#b84c2e;border:1px solid #a94329;border-radius:999px;min-height:44px;padding:.75rem 1.1rem;font:700 .85rem Arial,Helvetica,sans-serif}.recipe-view-open:hover{background:#963d26}.recipe-view-open:disabled{opacity:.5;cursor:default}.recipe-view-open:focus-visible{outline-offset:3px;outline:3px solid #a3472b}.favourite-toggle{color:#6a4e3b;cursor:pointer;background:0 0;border:1px solid #c6ad90;border-radius:999px;min-height:44px;padding:.75rem 1.1rem;font:700 .85rem Arial,Helvetica,sans-serif}.favourite-toggle:hover,.favourite-toggle[aria-pressed=true]{color:#973d26;border-color:#a94329}.favourite-toggle[aria-pressed=true]{background:#f8e2d5}.favourite-toggle:focus-visible{outline-offset:3px;outline:3px solid #a3472b}.share-control{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.share-button{color:#6a4e3b;cursor:pointer;background:0 0;border:1px solid #c6ad90;border-radius:999px;min-height:44px;padding:.75rem 1.1rem;font:700 .85rem Arial,Helvetica,sans-serif}.share-button:hover{color:#973d26;border-color:#a94329}.share-button:disabled{opacity:.5;cursor:default}.share-button:focus-visible{outline-offset:3px;outline:3px solid #a3472b}.share-message{color:#6a4e3b;font-size:.8rem;line-height:1.35}.recipe-view{color:#2f251e;background:#fffdf7;border:0;border-radius:22px;width:min(100% - 2rem,760px);max-height:calc(100dvh - 2rem);padding:clamp(1.5rem,5vw,3rem);box-shadow:0 28px 80px #2f251e55}.recipe-view::backdrop{background:#241a13bd}.recipe-view-top{justify-content:space-between;align-items:start;gap:1rem;display:flex}.recipe-view-top .section-label{margin:.7rem 0 0}.recipe-view-close{color:#4d4035;cursor:pointer;background:#f8f5ec;border:1px solid #d1c0a8;border-radius:999px;flex:none;min-height:44px;padding:.7rem 1rem;font:700 .85rem Arial,Helvetica,sans-serif}.recipe-view-close:hover{border-color:#a94329}.recipe-view-close:focus-visible{outline-offset:3px;outline:3px solid #a3472b}.recipe-view h2{margin:1.2rem 0 .4rem;font-size:clamp(2.2rem,6vw,3.4rem)}.recipe-view-food{color:#725746;text-transform:capitalize;font-size:1rem}.recipe-view-weight{background:#f2eadb;border-radius:14px;margin:1.8rem 0 0;padding:1rem 1.2rem;font-size:clamp(1.05rem,3vw,1.3rem);line-height:1.5}.recipe-view-weight strong{color:#9b4129}.recipe-view h3{margin:2rem 0 .5rem;font-size:1.65rem}.recipe-view-ingredients{margin:0;padding:0;list-style:none}.recipe-view-ingredients li{border-bottom:1px solid #e2d6c3;justify-content:space-between;align-items:baseline;gap:.75rem 1.5rem;padding:1rem 0;font-size:clamp(1.05rem,3vw,1.3rem);line-height:1.35;display:flex}.recipe-view-ingredients strong{color:#9b4129;flex:none;font-size:1.15em}.recipe-view-hint,.recipe-view-notes{color:#67594b;margin:.8rem 0 0;line-height:1.5}.recipe-view-rest{gap:.5rem 1rem;margin:1.8rem 0 0;font-size:1.1rem;line-height:1.5;display:flex}.recipe-view-rest strong{color:#9b4129}.library-empty{background:#f6efdf;border:1px dashed #c7ad91;border-radius:20px;padding:2rem}.library-empty h3{margin-bottom:.5rem;font-size:1.6rem}.library-empty p{color:#64584c;margin-bottom:0;line-height:1.5}.how-it-works{border-top:1px solid #ddd4c3;padding-block:4rem 5rem}.section-label{margin-bottom:.3rem}h2{letter-spacing:-.04em;margin-bottom:2.5rem;font-size:clamp(2.2rem,3vw,3.2rem);font-weight:500}.steps{grid-template-columns:repeat(3,1fr);gap:2.5rem;margin:0;padding:0;list-style:none;display:grid}.steps li{border-top:2px solid #b84c2e;padding-top:1rem}.step-number{color:#a34a30;margin-bottom:1.5rem;font-size:.83rem;font-weight:700;display:block}h3{margin-bottom:.45rem;font-size:1.45rem;font-weight:500}.steps p{color:#6d6156;margin-bottom:0;line-height:1.55}.site-footer{color:#817569;border-top:1px solid #ddd4c3;justify-content:space-between;gap:1rem;padding-block:1.5rem 2rem;font-size:.8rem;display:flex}@media (width<=900px){.hero{grid-template-columns:1fr;gap:2.5rem;padding-top:2rem}.hero-visual{width:100%;max-width:560px;min-height:410px;margin-inline:auto}.rub-grid{grid-template-columns:1fr}}@media (width<=600px){.site-header,.hero,.builder,.library,.how-it-works,.site-footer{width:min(100% - 2.5rem,1200px)}.site-header{min-height:80px}.brand-mark{width:33px;height:33px;font-size:22px}.brand-name{font-size:20px}.header-note{display:none}.hero{gap:1rem;padding-block:2.3rem 3.2rem}h1{font-size:clamp(2.85rem,10.5vw,4rem)}.hero-description{font-size:1rem}.hero-visual{min-height:325px}.visual-caption{font-size:.55rem}.builder{padding-block:1.5rem 3.5rem}.food-options{grid-template-columns:repeat(2,minmax(0,1fr))}.food-option:last-child{grid-column:span 2}.library{padding-bottom:3.5rem}.filter-bar,.cupboard-filter{padding:1.2rem}.cupboard-heading,.cupboard-footer{flex-direction:column;align-items:flex-start}.recipe-view-top{flex-direction:column-reverse;align-items:flex-start;gap:.5rem}.recipe-view-close{align-self:flex-end}.recipe-view-top .section-label{margin-top:0}.how-it-works{padding-block:3rem 3.8rem}.steps{grid-template-columns:1fr;gap:1.8rem}.step-number{margin-bottom:.9rem}.site-footer{flex-direction:column}}@media (width<=360px){h1{font-size:clamp(2.2rem,11vw,2.85rem)}.eyebrow{letter-spacing:.12em;font-size:.7rem}.status{font-size:.76rem}}
