:root{--ink:#25211d;--muted:#665c52;--paper:#fffdf8;--cream:#fff7eb;--warm:#ffefd9;--tomato:#c34122;--coral:#c34122;--leaf:#236b4b;--leaf-dark:#174c37;--line:#e6d8c8;--focus:#0a66c2;--space-1:.375rem;--space-2:.75rem;--space-3:1rem;--space-4:1.5rem;--space-5:2.25rem;--space-6:3.5rem;--radius-sm:.65rem;--radius-md:1rem;--radius-lg:1.5rem;--shadow-card:0 .8rem 2.5rem rgba(42,33,27,.09);--display-font:"Segoe Print","Bradley Hand","Comic Sans MS",cursive;color-scheme:light}
*{box-sizing:border-box}html{font-size:100%;scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:1rem;line-height:1.65}
:where(header,main,footer,section,article,aside,nav,form,figure,details){min-width:0}img{max-width:100%}input,select,textarea,button{max-width:100%}
a{color:var(--leaf);text-underline-offset:.2em}.skip{position:absolute;left:1rem;top:-5rem;background:#fff;color:#111;padding:.75rem 1rem;z-index:20}.skip:focus{top:1rem}header,main,footer{width:min(72rem,calc(100% - 2rem));margin-inline:auto}body>header{min-height:4.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line)}.brand{font-size:1.35rem;font-weight:850;color:var(--tomato);text-decoration:none}nav{display:flex;gap:1rem}.crumbs{margin-block:1.25rem;flex-wrap:wrap;color:var(--muted);font-size:.92rem}.recipe-head{width:100%;margin:0}.eyebrow{color:var(--tomato);font-weight:800;text-transform:uppercase;letter-spacing:.1em}.recipe-head h1{font-family:Georgia,serif;font-size:clamp(2.4rem,7vw,5rem);line-height:1.02;margin:.2rem 0 1rem;max-width:14ch}.dek{font-size:1.15rem;max-width:46rem;color:var(--muted)}.facts{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.5rem 0}.facts div{min-width:7rem;background:var(--warm);padding:.75rem 1rem;border-radius:.75rem}.facts dt{font-size:.75rem;text-transform:uppercase;font-weight:800;color:var(--muted)}.facts dd{margin:0;font-weight:800}.byline{font-size:.9rem;color:var(--muted)}figure{margin:1.5rem 0}figure img{display:block;width:100%;height:auto;border-radius:1rem}figcaption{font-size:.8rem;color:var(--muted)}.recipe-grid{display:grid;grid-template-columns:minmax(16rem,22rem) minmax(0,1fr);gap:clamp(2rem,6vw,5rem);margin-block:2rem 5rem}.recipe-grid aside{align-self:start;background:var(--warm);padding:1.4rem;border-radius:1rem}.ingredients{padding-left:1.2rem}.ingredients li{margin-bottom:.65rem}.ingredients .amount{font-weight:800}.ingredients small{display:block;color:var(--muted)}button{border:0;border-radius:.65rem;background:var(--leaf);color:#fff;padding:.8rem 1rem;font:inherit;font-weight:800;cursor:pointer}.method h2,.recipe-grid aside h2{font-family:Georgia,serif;font-size:1.8rem}.steps{list-style:none;padding:0;counter-reset:step}.steps li{display:grid;grid-template-columns:2.25rem 1fr;gap:.8rem;margin-bottom:1rem}.steps li>span{display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:var(--tomato);color:#fff;font-weight:850}.steps p{margin:0}.safety{border-left:.3rem solid var(--tomato);border-radius:0!important;background:#fff3ef!important;margin-top:2rem}body>footer{display:flex;gap:1.25rem;flex-wrap:wrap;border-top:1px solid var(--line);padding-block:1.5rem 3rem}:where(a,button,input,select,textarea,summary):focus-visible{outline:.2rem solid var(--focus);outline-offset:.2rem}
.policy{max-width:52rem;margin-block:0 5rem}.policy article>h1{font-family:Georgia,serif;font-size:clamp(2.35rem,7vw,4.5rem);line-height:1.05;margin:.2rem 0 1rem;max-width:15ch}.policy .lede{font-size:1.16rem;color:var(--muted);max-width:44rem}.policy h2{font-family:Georgia,serif;font-size:1.65rem;line-height:1.2;margin-top:2.2rem}.policy li{margin-block:.6rem}.policy code{background:var(--warm);padding:.1rem .3rem;border-radius:.25rem}.contact-form{display:grid;gap:1.15rem;margin-top:2rem;padding:clamp(1rem,4vw,2rem);background:var(--warm);border-radius:1rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.contact-form label{display:grid;gap:.35rem;font-weight:750}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid #bba99b;border-radius:.55rem;background:#fff;color:var(--ink);padding:.75rem;font:inherit}.contact-form textarea{resize:vertical;min-height:10rem}.contact-form input:focus-visible,.contact-form select:focus-visible,.contact-form textarea:focus-visible{outline:.2rem solid var(--focus);outline-offset:.1rem}.contact-form button{justify-self:start}.contact-form button:disabled{opacity:.62;cursor:wait}.form-note{margin:0;color:var(--muted);font-size:.9rem}.form-result{padding:.8rem 1rem;border-radius:.5rem;font-weight:750}.form-result[data-state="success"]{background:#e5f4e9;color:#154d31}.form-result[data-state="error"]{background:#fff0ed;color:#8b2e1b}.contact-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:700px){body>header{align-items:flex-start;padding-block:1rem}body>header nav{flex-direction:column;gap:.35rem}.recipe-grid{grid-template-columns:1fr}.recipe-grid aside{position:static}.facts div{flex:1 1 7rem}.form-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{body>header,.skip,.crumbs,body>footer,button,figure,.byline{display:none!important}body{font-size:11pt;background:#fff}.recipe-grid{display:block;margin:0}.recipe-grid aside{background:#fff;padding:0}.recipe-head h1{font-size:26pt}.steps li{break-inside:avoid}.safety{border:1px solid #999!important}}

.recipe-browser{margin-bottom:5rem}.browser-intro{max-width:52rem;margin-block:1rem 2rem}.browser-intro h1{font-family:Georgia,serif;font-size:clamp(2.5rem,7vw,5rem);line-height:1.02;margin:.2rem 0 1rem;max-width:14ch}.browser-intro .lede{font-size:1.12rem;color:var(--muted);max-width:46rem}.recipe-filters{display:grid;grid-template-columns:minmax(15rem,2fr) repeat(2,minmax(10rem,1fr)) auto;gap:.85rem;align-items:end;padding:1rem;background:var(--warm);border:1px solid var(--line);border-radius:1rem}.recipe-filters label{display:grid;gap:.35rem;font-weight:750}.recipe-filters input,.recipe-filters select{width:100%;min-height:3rem;border:1px solid #a99282;border-radius:.55rem;background:#fff;color:var(--ink);padding:.7rem .8rem;font:inherit}.recipe-filters input:focus-visible,.recipe-filters select:focus-visible{outline:.2rem solid var(--focus);outline-offset:.1rem}.filter-clear{min-height:3rem;white-space:nowrap}.recipe-results-head{display:flex;justify-content:space-between;align-items:center;margin-block:1.4rem .75rem;color:var(--muted);font-weight:750}.recipe-results-head p{margin:0}.recipe-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.recipe-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:1rem;padding:1.25rem;background:#fff}.recipe-card[hidden],[hidden]{display:none!important}.recipe-card h2{font-family:Georgia,serif;font-size:1.45rem;line-height:1.2;margin:.25rem 0 .65rem}.recipe-card h2 a{text-decoration-thickness:.08em}.recipe-card p{color:var(--muted);margin:.25rem 0 1rem}.recipe-card .card-kicker{color:var(--tomato);font-size:.76rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em;margin:0}.recipe-card .card-link{margin-top:auto;font-weight:800}.empty-results{border:1px dashed #bba99b;border-radius:1rem;padding:clamp(1.25rem,4vw,2.5rem);text-align:center;background:var(--warm)}.empty-results h2{font-family:Georgia,serif;margin-top:0}.noscript-note{padding:.85rem 1rem;border-left:.25rem solid var(--tomato);background:var(--warm)}
@media(max-width:900px){.recipe-filters{grid-template-columns:1fr 1fr}.recipe-filters .search-field{grid-column:1/-1}.recipe-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.recipe-filters{grid-template-columns:1fr}.recipe-filters .search-field{grid-column:auto}.recipe-card-grid{grid-template-columns:1fr}.filter-clear{width:100%}}
@media print{.recipe-filters,.recipe-results-head,.empty-results,.noscript-note{display:none!important}.recipe-card-grid{display:block}.recipe-card{break-inside:avoid;margin-bottom:.75rem}}

.recipe-home{margin-bottom:5rem}.home-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(18rem,.85fr);gap:clamp(1.5rem,5vw,4rem);align-items:center;padding:clamp(2rem,7vw,5rem) 0 3rem}.home-hero h1{font-family:Georgia,serif;font-size:clamp(2.8rem,8vw,5.8rem);line-height:.98;letter-spacing:-.035em;margin:.2rem 0 1rem;max-width:11ch}.home-hero .lede{max-width:38rem;color:var(--muted);font-size:1.15rem}.home-search{display:grid;gap:.55rem;padding:clamp(1rem,3vw,1.5rem);background:var(--warm);border:1px solid var(--line);border-radius:1rem}.home-search label{font-weight:800}.home-search div{display:flex;gap:.6rem}.home-search input{min-width:0;flex:1;border:1px solid #a99282;border-radius:.55rem;background:#fff;color:var(--ink);padding:.8rem;font:inherit}.home-search input:focus-visible{outline:.2rem solid var(--focus);outline-offset:.1rem}.primary-link{justify-self:start;font-weight:850}.home-section{margin-block:2rem 4rem}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1rem}.section-heading h2,.standards-callout h2{font-family:Georgia,serif;font-size:clamp(1.8rem,4vw,2.6rem);line-height:1.1;margin:.15rem 0}.home-recipe-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.home-recipe-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:1rem;padding:1.25rem;background:#fff}.home-recipe-card h3{font-family:Georgia,serif;font-size:1.45rem;line-height:1.2;margin:.25rem 0 .65rem}.home-recipe-card p{color:var(--muted);margin:.25rem 0 1rem}.home-recipe-card .card-kicker{color:var(--tomato);font-size:.76rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em;margin:0}.home-recipe-card .card-link{margin-top:auto;font-weight:800}.category-panel{padding:clamp(1.25rem,4vw,2.25rem);background:var(--warm);border:1px solid var(--line);border-radius:1rem}.category-columns{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1rem,5vw,4rem)}.category-columns h3{font-family:Georgia,serif;font-size:1.4rem}.category-columns ul{display:grid;gap:.55rem;padding-left:1.25rem}.standards-callout{display:flex;justify-content:space-between;align-items:center;gap:clamp(1rem,5vw,4rem);border-left:.35rem solid var(--tomato);padding:clamp(1.25rem,4vw,2.25rem);background:#fff3ef}.standards-callout p{max-width:48rem;color:var(--muted)}.standards-callout>a{flex:0 0 auto;font-weight:850}
@media(max-width:850px){.home-hero{grid-template-columns:1fr}.home-recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.standards-callout{align-items:flex-start;flex-direction:column}.standards-callout>a{flex:auto}}
@media(max-width:600px){.home-search div{align-items:stretch;flex-direction:column}.home-search button{width:100%}.section-heading{align-items:flex-start;flex-direction:column}.home-recipe-grid,.category-columns{grid-template-columns:1fr}}
@media print{.home-search,.primary-link{display:none!important}.home-recipe-grid{display:block}.home-recipe-card{break-inside:avoid;margin-bottom:.75rem}.category-panel,.standards-callout{background:#fff}}


.consent-panel{position:fixed;z-index:50;left:1rem;right:1rem;bottom:1rem;width:min(66rem,calc(100% - 2rem));margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:1rem 1.2rem;border:1px solid #bba99b;border-radius:1rem;background:#fff;box-shadow:0 .8rem 2.5rem rgba(42,33,27,.18)}
.consent-panel strong{font-size:1.05rem}.consent-panel p{margin:.25rem 0;color:var(--muted);font-size:.9rem}.consent-actions{display:flex;gap:.6rem;flex:0 0 auto}.consent-actions button:first-child{background:#fff;color:var(--leaf);border:1px solid var(--leaf)}
@media(max-width:700px){.consent-panel{align-items:stretch;flex-direction:column}.consent-actions{display:grid;grid-template-columns:1fr 1fr}.consent-actions button{min-height:3rem}}
@media(max-width:420px){.consent-actions{grid-template-columns:1fr}}
@media print{.consent-panel{display:none!important}}

/* Phase 2B shared visual system: production-safe system fonts, stable image ratios and reusable surfaces. */
.site-header{padding-block:.8rem}.brand-lockup{display:flex;align-items:center;gap:.65rem}.brand-lockup>span:last-child{display:grid;line-height:1.15}.brand-lockup strong{font-size:1.28rem;color:var(--leaf-dark)}.brand-lockup small{font-size:.7rem;font-weight:650;color:var(--muted)}.brand-mark{display:grid;place-items:center;width:2.35rem;height:2.35rem;border-radius:50%;background:var(--leaf);color:#fff;font-size:1rem}.nav-menu>summary{display:none}.nav-menu:not([open])>nav{display:flex}.nav-menu nav{align-items:center;gap:1.15rem}.nav-menu nav a{color:var(--ink);font-size:.92rem;font-weight:750;text-decoration:none}.nav-menu nav a:hover{text-decoration:underline;text-decoration-color:var(--coral);text-decoration-thickness:.15rem}.nav-menu nav a:last-child{border:1px solid var(--leaf);border-radius:999px;padding:.45rem .8rem;color:var(--leaf-dark)}
.home-page{background:linear-gradient(180deg,var(--cream) 0, var(--paper) 34rem)}.recipe-home{width:min(76rem,calc(100% - 2rem))}.home-hero{grid-template-columns:minmax(0,1.02fr) minmax(20rem,.98fr);gap:clamp(2rem,6vw,5rem);min-height:38rem;padding:clamp(2.5rem,7vw,5.5rem) 0}.home-hero h1{font-family:var(--display-font);font-size:clamp(3rem,7vw,5.7rem);font-weight:700;letter-spacing:-.06em;line-height:1.03;max-width:10ch;color:var(--leaf-dark)}.home-hero .lede{max-width:35rem;font-size:clamp(1.05rem,2vw,1.22rem)}.hero-copy{min-width:0}.home-search{margin-block:1.5rem 1rem;padding:.55rem;background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}.home-search label{padding:.25rem .35rem 0;color:var(--leaf-dark);font-size:.84rem}.home-search input{min-height:3.35rem;border:0;border-radius:var(--radius-sm);padding-inline:1rem}.home-search button{min-height:3.35rem;border-radius:var(--radius-sm);padding-inline:1.25rem}.quick-filters,.filter-chip-list{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem;list-style:none;padding:0;margin:0 0 1rem}.quick-filters>li>span{font-size:.82rem;font-weight:750;color:var(--muted)}.filter-chip{display:inline-flex;align-items:center;min-height:2.45rem;padding:.35rem .75rem;border:1px solid #cbb9a7;border-radius:999px;background:#fff;color:var(--leaf-dark);font-size:.84rem;font-weight:750;text-decoration:none}.filter-chip:hover{border-color:var(--coral);background:var(--warm)}.primary-link{display:inline-flex;align-items:center;gap:.35rem;margin-top:.35rem;color:var(--leaf-dark)}
.hero-feature{position:relative;margin:0;border-radius:var(--radius-lg);overflow:hidden;background:var(--warm);box-shadow:var(--shadow-card)}.hero-feature>a{display:block;aspect-ratio:3/2;overflow:hidden}.hero-feature img{width:100%;height:100%;object-fit:cover;border-radius:0}.hero-feature figcaption{display:grid;gap:.15rem;padding:1rem 1.15rem;background:#fff;color:var(--ink)}.hero-feature figcaption>span{color:var(--coral);font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.hero-feature figcaption>strong{font-family:Georgia,serif;font-size:1.3rem}.hero-feature figcaption>small{color:var(--muted);font-size:.72rem}
.home-section{margin-block:var(--space-5) var(--space-6)}.section-heading{margin-bottom:1.35rem}.section-heading h2,.standards-callout h2{color:var(--leaf-dark);font-family:var(--display-font);font-weight:700}.section-heading p{margin:.4rem 0 0;color:var(--muted)}.home-recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.home-recipe-card{overflow:hidden;padding:0;border-color:var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.home-card-image{display:block;aspect-ratio:3/2;overflow:hidden;background:var(--warm)}.home-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .2s ease}.home-card-image:hover img{transform:scale(1.02)}.home-card-copy{display:flex;flex:1;flex-direction:column;padding:1.25rem}.home-recipe-card h3{font-size:1.65rem}.recipe-meta{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin:.2rem 0 1rem}.recipe-meta li{padding:.25rem .55rem;border-radius:999px;background:var(--cream);color:var(--leaf-dark);font-size:.78rem;font-weight:800}.image-disclosure{font-size:.74rem!important;line-height:1.45}.category-panel{border-radius:var(--radius-lg);background:var(--cream)}.category-columns ul{padding:0}.trust-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-block:var(--space-5);overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--line);box-shadow:var(--shadow-card)}.trust-strip div{display:grid;gap:.2rem;padding:1.25rem;background:#fff}.trust-strip strong{color:var(--leaf-dark)}.trust-strip span{color:var(--muted);font-size:.84rem}.standards-callout{border:0;border-radius:var(--radius-lg);background:var(--leaf-dark);color:#fff}.standards-callout h2,.standards-callout .eyebrow,.standards-callout a{color:#fff}.standards-callout p{color:#f3eee8}
.site-footer{display:grid!important;grid-template-columns:minmax(12rem,.6fr) minmax(0,1.4fr);gap:2rem!important;align-items:start;padding-block:2.25rem 3.5rem!important}.footer-brand{display:grid;gap:.2rem}.footer-brand strong{font-family:var(--display-font);font-size:1.35rem;color:var(--leaf-dark)}.footer-brand span{color:var(--muted);font-size:.84rem}.site-footer nav{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:.65rem 1.1rem}.site-footer nav a{font-size:.86rem}
@media(max-width:850px){.home-hero{min-height:0}.hero-feature{max-width:42rem}.trust-strip{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr}.site-footer nav{justify-content:flex-start}}
@media(max-width:700px){.site-header{align-items:center!important;padding-block:.75rem!important}.brand-lockup small{display:none}.nav-menu{position:relative}.nav-menu>summary{display:list-item;min-height:2.75rem;padding:.55rem .8rem;border:1px solid var(--leaf);border-radius:var(--radius-sm);color:var(--leaf-dark);font-weight:800;cursor:pointer}.nav-menu:not([open])>nav{display:none}.nav-menu[open]>nav{position:absolute;z-index:30;top:calc(100% + .4rem);right:0;display:grid;min-width:12rem;padding:.75rem;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-card)}.nav-menu nav a{min-height:2.75rem;padding:.55rem}.home-hero{padding-top:2rem}.home-hero h1{font-size:clamp(2.75rem,14vw,4.2rem)}.home-recipe-grid{grid-template-columns:1fr}.trust-strip{box-shadow:none}}
@media(max-width:420px){.recipe-home{width:min(100% - 1.25rem,76rem)}.home-search{padding:.45rem}.quick-filters{gap:.4rem}.filter-chip{min-height:2.75rem}.home-card-copy{padding:1rem}.site-footer{width:calc(100% - 1.25rem)}}
@media(prefers-reduced-motion:reduce){.home-card-image img{transition:none}}
@media print{.nav-menu,.quick-filters,.hero-feature,.trust-strip{display:none!important}.home-page{background:#fff}.standards-callout{color:#111!important}.standards-callout h2,.standards-callout .eyebrow,.standards-callout a,.standards-callout p{color:#111!important}}

/* Phase 2B recipe-browse propagation: reuse the approved shell, surfaces and real recipe imagery. */
.browse-page{background:linear-gradient(180deg,var(--cream) 0,var(--paper) 27rem)}.browser-support{margin-top:2rem;padding:1rem 1.15rem;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--cream)}.recipe-browser{width:min(76rem,calc(100% - 2rem))}.browser-intro{margin-block:clamp(1.5rem,5vw,3.5rem) 2rem}.browser-intro h1{max-width:13ch;color:var(--leaf-dark);font-family:var(--display-font);font-weight:700;letter-spacing:-.04em}.browser-intro .lede{font-size:clamp(1.05rem,2vw,1.2rem)}.recipe-filters{padding:clamp(1rem,3vw,1.4rem);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-card)}.recipe-filters label{color:var(--leaf-dark);font-size:.86rem}.recipe-filters input,.recipe-filters select,.filter-clear{min-height:3.2rem;border-radius:var(--radius-sm)}.recipe-results-head{margin-block:1.65rem .9rem;color:var(--leaf-dark)}.recipe-card-grid{grid-template-columns:1fr;gap:1.5rem}.recipe-card{display:grid;grid-template-columns:minmax(15rem,.43fr) minmax(0,.57fr);overflow:hidden;padding:0;border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-card)}.recipe-card-image{display:block;min-height:100%;overflow:hidden;background:var(--warm)}.recipe-card-image img{display:block;width:100%;height:100%;min-height:18rem;object-fit:cover;border-radius:0;transition:transform .2s ease}.recipe-card-image:hover img{transform:scale(1.02)}.recipe-card-copy{display:flex;min-width:0;flex-direction:column;padding:clamp(1.15rem,3vw,1.75rem)}.recipe-card h2{color:var(--leaf-dark);font-size:clamp(1.55rem,3vw,2rem)}.recipe-card-copy>.image-disclosure{font-size:.74rem;line-height:1.45}.recipe-card .card-link{display:inline-flex;align-items:center;gap:.35rem;align-self:flex-start;min-height:2.75rem}.empty-results{border-radius:var(--radius-lg);background:var(--cream)}
@media(max-width:760px){.recipe-card{grid-template-columns:1fr}.recipe-card-image{aspect-ratio:3/2;min-height:0}.recipe-card-image img{min-height:0}.recipe-filters{grid-template-columns:1fr 1fr}.recipe-filters .search-field{grid-column:1/-1}}
@media(max-width:600px){.recipe-filters{grid-template-columns:1fr}.recipe-filters .search-field{grid-column:auto}.recipe-card-copy{padding:1rem}.recipe-card .card-link{min-height:3rem}}
@media(max-width:420px){.recipe-browser{width:min(100% - 1.25rem,76rem)}.recipe-filters{padding:.8rem}.recipe-card{box-shadow:none}}
@media(prefers-reduced-motion:reduce){.recipe-card-image img{transition:none}}
@media print{.browse-page{background:#fff}.recipe-card-image,.recipe-card .image-disclosure{display:none!important}.recipe-card{display:block;box-shadow:none}}

.related-recipes{margin:0 0 5rem;padding:clamp(1.25rem,4vw,2.25rem);border:1px solid var(--line);border-radius:1rem;background:var(--warm)}.related-recipes h2{font-family:Georgia,serif;font-size:clamp(1.8rem,4vw,2.5rem);line-height:1.1;margin:.15rem 0 1rem}.related-recipes ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;list-style:none;padding:0}.related-recipes li{padding:1rem;border:1px solid var(--line);border-radius:.75rem;background:#fff}.related-recipes h3{font-family:Georgia,serif;font-size:1.35rem;line-height:1.2;margin:0 0 .4rem}.related-recipes li p{margin:0;color:var(--muted)}.browse-recipes{font-weight:850}
@media(max-width:600px){.related-recipes ul{grid-template-columns:1fr}}
@media print{.related-recipes{display:none!important}}


/* Recipe detail: approved food-first design system */
.recipe-page{background:linear-gradient(180deg,var(--cream) 0,rgba(255,247,235,0) 30rem),var(--paper)}
.recipe-page .recipe-detail{width:min(76rem,calc(100% - 2rem));margin-inline:auto}
.recipe-page .recipe-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(20rem,.95fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:center;margin:0 0 var(--space-5);padding:clamp(1.25rem,4vw,3rem);border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(135deg,#fff 0,var(--cream) 100%);box-shadow:var(--shadow-card);overflow:hidden}
.recipe-page .recipe-hero-copy{min-width:0}.recipe-page .recipe-hero h1{max-width:13ch;margin:.2rem 0 1rem;font-family:var(--display-font);font-size:clamp(2.6rem,6vw,5.25rem);font-weight:800;line-height:1.02;letter-spacing:-.035em;color:var(--leaf-dark)}
.recipe-page .recipe-hero .dek{font-size:clamp(1.05rem,2vw,1.2rem);line-height:1.65}.recipe-page .facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem}.recipe-page .facts div{min-width:0;padding:.75rem .85rem;border:1px solid rgba(35,107,75,.16);border-radius:var(--radius-sm);background:#fff}.recipe-page .facts dd{overflow-wrap:anywhere}
.recipe-page .recipe-hero-figure{min-width:0;margin:0;border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-card);overflow:hidden}.recipe-page .recipe-hero-figure img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:0}.recipe-page .image-disclosure{padding:.75rem .9rem;background:#fff;font-size:.78rem;line-height:1.45;color:var(--muted)}
.recipe-page .recipe-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.25rem}.recipe-page .button-link,.recipe-page .print-button{display:inline-flex;min-height:3rem;align-items:center;justify-content:center;border:2px solid var(--leaf);border-radius:999px;padding:.65rem 1.05rem;font-weight:850;text-decoration:none}.recipe-page .button-link{background:var(--leaf);color:#fff}.recipe-page .print-button{background:#fff;color:var(--leaf)}
.recipe-page .recipe-grid{grid-template-columns:minmax(17rem,22rem) minmax(0,1fr);gap:clamp(1.5rem,5vw,4rem);margin-block:var(--space-5) var(--space-6)}.recipe-page .ingredients-card{position:sticky;top:1rem;align-self:start;padding:clamp(1.2rem,3vw,1.75rem);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--warm);box-shadow:var(--shadow-card)}.recipe-page .section-kicker{margin:0 0 .15rem;color:var(--tomato);font-size:.75rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.recipe-page .serving-note{margin:.15rem 0 1.15rem;color:var(--muted)}.recipe-page .ingredients{margin:0;padding-left:1.15rem}.recipe-page .ingredients li{padding-block:.2rem;border-bottom:1px solid rgba(102,92,82,.14)}.recipe-page .ingredients li:last-child{border-bottom:0}
.recipe-page .method{display:grid;min-width:0;gap:1rem}.recipe-page .recipe-section,.recipe-page .safety{min-width:0;padding:clamp(1.2rem,3vw,1.8rem);border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff}.recipe-page .method h2,.recipe-page .ingredients-card h2{margin:.15rem 0 1rem;font-family:Georgia,serif;font-size:clamp(1.65rem,3vw,2.1rem);line-height:1.15}.recipe-page .method ul{padding-left:1.2rem}.recipe-page .method li{margin-block:.55rem}.recipe-page .steps{margin:0}.recipe-page .steps li{grid-template-columns:2.5rem minmax(0,1fr);gap:.9rem;padding-block:.35rem;margin:0 0 1rem}.recipe-page .steps li>span{width:2.3rem;height:2.3rem;background:var(--coral)}.recipe-page .safety{margin-top:0!important;border-left:.35rem solid var(--coral);background:#fff3ef!important}.recipe-page .provenance{background:var(--cream)}.recipe-page .provenance a{overflow-wrap:anywhere}
.recipe-page .related-recipes{border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.recipe-page .related-recipes li{border-radius:var(--radius-md)}.recipe-page .browse-recipes{display:inline-flex;min-height:3rem;align-items:center}
@media(max-width:840px){.recipe-page .recipe-hero{grid-template-columns:1fr}.recipe-page .recipe-hero-figure{order:-1}.recipe-page .recipe-grid{grid-template-columns:1fr}.recipe-page .ingredients-card{position:static}.recipe-page .facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.recipe-page .recipe-detail{width:min(100% - 1.25rem,76rem)}.recipe-page .recipe-hero{padding:1rem}.recipe-page .recipe-hero h1{font-size:clamp(2.35rem,14vw,3.4rem)}.recipe-page .recipe-actions>*{width:100%}.recipe-page .method,.recipe-page .recipe-grid{gap:.8rem}.recipe-page .recipe-section,.recipe-page .safety,.recipe-page .ingredients-card{padding:1rem}.recipe-page .facts{gap:.45rem}}
@media(max-width:420px){.recipe-page .facts{grid-template-columns:1fr 1fr}.recipe-page .facts div{padding:.65rem}.recipe-page .recipe-hero{box-shadow:none}}
@media(prefers-reduced-motion:reduce){.recipe-page *{scroll-behavior:auto}}
@media print{.recipe-page{background:#fff}.recipe-page .recipe-detail{width:100%}.recipe-page .recipe-hero{display:block;margin:0;padding:0;border:0;box-shadow:none}.recipe-page .recipe-actions,.recipe-page .section-kicker{display:none!important}.recipe-page .recipe-grid{display:grid;grid-template-columns:16rem minmax(0,1fr);gap:1.25rem}.recipe-page .ingredients-card,.recipe-page .recipe-section,.recipe-page .safety{padding:.5rem;border:0;box-shadow:none}.recipe-page .method{gap:.5rem}.recipe-page .related-recipes{display:none!important}}

/* Phase 2B trust-page propagation: the approved warm shell with policy-first readability. */
.trust-page{background:linear-gradient(180deg,var(--cream) 0,rgba(255,247,235,0) 28rem),var(--paper)}
.trust-page .site-header,.trust-main,.trust-page .site-footer{width:min(76rem,calc(100% - 2rem))}
.trust-main{max-width:none;margin-block:0 var(--space-6)}
.trust-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(15rem,19rem);gap:clamp(1.25rem,4vw,3rem);align-items:start;min-width:0}
.policy-card{min-width:0;padding:clamp(1.25rem,4vw,3rem);border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-card)}
.policy-card>h1{max-width:16ch!important;margin:.2rem 0 1rem!important;color:var(--leaf-dark);font-family:var(--display-font)!important;font-size:clamp(2.55rem,6vw,4.8rem)!important;font-weight:750;letter-spacing:-.045em}
.policy-card .lede{margin-bottom:2rem;font-size:clamp(1.05rem,2vw,1.2rem)}
.policy-card h2{margin-top:2.35rem;color:var(--leaf-dark);font-family:Georgia,serif;font-size:clamp(1.45rem,3vw,1.8rem)}
.policy-card h2::before{display:block;width:2.75rem;height:.22rem;margin-bottom:.75rem;border-radius:999px;background:var(--coral);content:""}
.policy-card p,.policy-card li{max-width:68ch}.policy-card ol,.policy-card ul{padding-left:1.35rem}.policy-card li::marker{color:var(--coral);font-weight:850}.policy-card a{font-weight:700}.policy-card code{overflow-wrap:anywhere}
.trust-directory{position:sticky;top:1rem;padding:1.25rem;border:1px solid rgba(35,107,75,.16);border-radius:var(--radius-lg);background:var(--warm);box-shadow:var(--shadow-card)}
.trust-directory-kicker{margin:0;color:var(--coral);font-size:.72rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.trust-directory h2{margin:.25rem 0 .9rem;color:var(--leaf-dark);font-family:var(--display-font);font-size:1.55rem;line-height:1.2}.trust-directory nav{display:grid;gap:.3rem}.trust-directory nav a{display:flex;min-height:2.75rem;align-items:center;padding:.48rem .65rem;border-radius:var(--radius-sm);font-size:.9rem;font-weight:750;text-decoration:none}.trust-directory nav a:hover{background:#fff}.trust-directory nav a[aria-current="page"]{background:var(--leaf);color:#fff}.trust-directory>p:last-child{margin:1rem 0 0;padding-top:1rem;border-top:1px solid rgba(35,107,75,.18);color:var(--muted);font-size:.82rem}
.trust-page .contact-form{padding:clamp(1rem,3vw,1.6rem);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--cream)}.trust-page .contact-form input,.trust-page .contact-form select{min-height:3rem}.trust-page .contact-form textarea{min-height:11rem}.trust-page .contact-form button{min-height:3rem;border-radius:999px;padding-inline:1.25rem}.trust-page .form-result{border-radius:var(--radius-sm)}
@media(max-width:900px){.trust-layout{grid-template-columns:1fr}.trust-directory{position:static}.trust-directory nav{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.trust-main{margin-bottom:var(--space-5)}.policy-card{padding:1rem}.policy-card>h1{font-size:clamp(2.35rem,13vw,3.5rem)!important}.trust-directory nav{grid-template-columns:1fr}.trust-page .contact-form button{width:100%}}
@media(max-width:420px){.trust-page .site-header,.trust-main,.trust-page .site-footer{width:min(100% - 1.25rem,76rem)}.policy-card,.trust-directory{border-radius:var(--radius-md);box-shadow:none}.policy-card ol,.policy-card ul{padding-left:1.15rem}}
@media(prefers-reduced-motion:reduce){.trust-page *{scroll-behavior:auto}}
@media print{.trust-page{background:#fff}.trust-main{width:100%;margin:0}.trust-layout{display:block}.policy-card{padding:0;border:0;box-shadow:none}.trust-directory{display:none!important}.policy-card h2::before{display:none}.trust-page .contact-form{padding:0;border:0;background:#fff}}


/* Phase 4 ingredient-replacement helper: source-backed, context-aware and mobile-first. */
.helpful-tools-panel{padding:clamp(1.25rem,3vw,2rem);border:1px solid rgba(35,107,75,.16);border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--warm),#fff);box-shadow:var(--shadow-card)}
.helper-feature-card{display:flex;min-width:0;gap:1.25rem;align-items:center;justify-content:space-between;padding:clamp(1rem,3vw,1.5rem);border:1px solid var(--line);border-radius:var(--radius-md);background:#fff}
.helper-feature-card>div{min-width:0}.helper-feature-card h3{margin:.15rem 0 .55rem;color:var(--leaf-dark);font-family:var(--display-font);font-size:clamp(1.55rem,3vw,2rem)}.helper-feature-card p{max-width:56rem}.helper-feature-card .primary-link{flex:0 0 auto;min-height:3rem}
.helper-page{background:linear-gradient(180deg,var(--cream) 0,rgba(255,247,235,0) 30rem),var(--paper)}
.helper-main{width:min(76rem,calc(100% - 2rem));margin:0 auto;padding:0 0 var(--space-6)}
.helper-main .crumbs{display:flex;gap:.45rem;align-items:center}
.helper-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(16rem,.75fr);gap:clamp(1.5rem,5vw,4rem);align-items:end;margin:clamp(1.5rem,5vw,4rem) 0 var(--space-5)}
.helper-hero h1{max-width:12ch;margin:.15rem 0 .8rem;color:var(--leaf-dark);font-family:var(--display-font);font-size:clamp(2.7rem,7vw,5.35rem);font-weight:750;letter-spacing:-.045em;line-height:1.02}
.helper-hero .lede{max-width:48rem;font-size:clamp(1.05rem,2vw,1.2rem)}
.helper-trust{display:grid;gap:.35rem;padding:1.1rem;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-card)}.helper-trust strong{color:var(--leaf-dark)}.helper-trust span{color:var(--muted);font-size:.88rem;line-height:1.55}
.replacement-workspace{position:relative;margin-bottom:var(--space-5);padding:clamp(1.2rem,4vw,2.25rem);overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-card)}
.replacement-workspace::before{position:absolute;inset:0 auto 0 0;width:.35rem;background:var(--coral);content:""}
.replacement-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.replacement-fields label{display:grid;gap:.45rem;color:var(--leaf-dark);font-weight:800}.replacement-fields select{width:100%;min-height:3.1rem;border:1px solid #8f8174;border-radius:var(--radius-sm);background:#fff;color:var(--ink);font:inherit;padding:.65rem .8rem}
.replacement-results{display:grid;gap:1rem;margin-top:1.25rem}.replacement-results[data-state="caution"]{padding:1rem 1.1rem;border:1px solid #e2bd76;border-left:.35rem solid #9d6400;border-radius:var(--radius-md);background:#fff7e6}.replacement-results[data-state="caution"] strong{display:block;color:#7a4e00;font-size:1.15rem}.replacement-results[data-state="caution"] span{display:block;margin-top:.35rem;line-height:1.6}
.replacement-result-card{padding:clamp(1rem,3vw,1.45rem);border:1px solid #b9dcc8;border-left:.35rem solid var(--leaf);border-radius:var(--radius-md);background:#edf7f1}.replacement-result-card h2{margin:0 0 .9rem;color:var(--leaf-dark);font-family:var(--display-font);font-size:clamp(1.5rem,3vw,2rem)}.replacement-result-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin:0}.replacement-result-card dl div{min-width:0;padding:.8rem;border-radius:var(--radius-sm);background:#fff}.replacement-result-card dt{color:var(--coral);font-size:.72rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.replacement-result-card dd{margin:.25rem 0 0;line-height:1.55}.replacement-source{margin:.9rem 0 0;font-size:.88rem}
.helper-section{margin-top:var(--space-5);padding:clamp(1.2rem,4vw,2rem);border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff}.helper-section h2{margin:.2rem 0 .7rem;color:var(--leaf-dark);font-family:var(--display-font);font-size:clamp(1.75rem,4vw,2.5rem)}.helper-section p{max-width:68rem}.helper-coverage{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.7rem;list-style:none;margin:1rem 0 0;padding:0}.helper-coverage li{display:grid;gap:.2rem;min-width:0;padding:.85rem;border-radius:var(--radius-sm);background:var(--warm)}.helper-coverage strong{color:var(--leaf-dark)}.helper-coverage span{color:var(--muted);font-size:.8rem}.source-list{display:grid;gap:.55rem;padding-left:1.2rem}.source-list a{overflow-wrap:anywhere}.related-helper-links{background:var(--warm)}
.helper-page a:focus-visible,.helper-page select:focus-visible{outline:.2rem solid var(--focus);outline-offset:.2rem}
@media(max-width:900px){.helper-hero{grid-template-columns:1fr}.helper-trust{max-width:36rem}.helper-coverage{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.helper-feature-card{align-items:flex-start;flex-direction:column}.replacement-fields{grid-template-columns:1fr 1fr}.replacement-fields label:last-child{grid-column:1/-1}.replacement-result-card dl{grid-template-columns:1fr}}
@media(max-width:600px){.helper-main{width:min(100% - 1.25rem,76rem)}.helper-hero{margin-top:1rem}.helper-hero h1{font-size:clamp(2.5rem,13vw,4rem)}.replacement-fields{grid-template-columns:1fr}.replacement-fields label:last-child{grid-column:auto}.helper-coverage{grid-template-columns:1fr 1fr}.helper-feature-card .primary-link{width:100%;justify-content:center}}
@media(max-width:420px){.replacement-workspace,.helper-section{padding:1rem;border-radius:var(--radius-md)}.helper-coverage{grid-template-columns:1fr}.helper-trust,.replacement-workspace{box-shadow:none}}
@media(prefers-reduced-motion:reduce){.helper-page *{scroll-behavior:auto}}
@media print{.helper-page{background:#fff}.helper-page .site-header,.helper-page .site-footer,.helper-page .helper-trust,.helper-page .related-helper-links{display:none!important}.helper-main{width:100%;padding:0}.helper-hero{display:block;margin:0 0 1rem}.replacement-workspace,.helper-section,.replacement-result-card{border:1px solid #999;box-shadow:none}.replacement-result-card dl{grid-template-columns:1fr 1fr}}

.home-new-tools{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(18rem,.75fr);gap:1.25rem;align-items:center;margin:-1rem 0 var(--space-5);padding:clamp(1rem,3vw,1.5rem);border:1px solid rgba(35,107,75,.18);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-card)}
.home-new-tools h2{margin:.1rem 0 .5rem;color:var(--leaf-dark);font-family:var(--display-font);font-size:clamp(1.55rem,3vw,2.15rem)}
.home-new-tools p{margin:.25rem 0;color:var(--muted)}
.home-new-tool-links{display:grid;gap:.65rem}
.home-new-tool-links a{display:flex;justify-content:space-between;gap:.75rem;align-items:center;min-height:3rem;padding:.75rem .9rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--cream);color:var(--leaf-dark);font-weight:800;text-decoration:none}
.home-new-tool-links a:hover{border-color:var(--coral);background:var(--warm)}
@media(max-width:850px){.home-new-tools{grid-template-columns:1fr;margin-top:0}}
@media(max-width:600px){.home-new-tools{padding:1rem}.home-new-tool-links a{width:100%}}

.recipe-tool-link,.recipe-tool-links{margin:1rem 0 0;padding-top:.9rem;border-top:1px solid var(--line);font-size:.9rem}
.recipe-tool-link a,.recipe-tool-links a{font-weight:800;color:var(--leaf-dark)}
.recipe-tool-links{display:flex;flex-wrap:wrap;gap:.4rem}
