/* Spoon & Joy: warm editorial system */
:root{--ink:#183c36;--green:#183c36;--paper:#fbf8f1;--sage:#e8eee6;--line:#dce1d7;--muted:#59685f;--orange:#d76b40;--serif:Georgia,'Times New Roman',serif;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.055em;line-height:1.1}h1{font-size:clamp(42px,6vw,76px)}h2{font-size:clamp(32px,4vw,48px)}h3{font-size:25px}p{margin-bottom:20px}.wrap{max-width:1180px;width:calc(100% - 48px);margin-inline:auto}.top{background:var(--ink);color:#f6eddb;text-align:center;padding:8px 16px;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.top span{color:#efad76;margin-inline:13px}.header{position:sticky;top:0;z-index:30;background:#fbf8f1f5;backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;font:500 32px/1 var(--serif);letter-spacing:-.07em}.brand svg{width:28px;height:37px;flex-shrink:0}.brand em{font-style:italic;color:var(--orange)}.brand small{display:none}.links{display:flex;gap:27px;align-items:center;font-size:13px;font-weight:600}.links a{position:relative;padding:8px 0}.links a:after{content:'';position:absolute;bottom:1px;left:0;right:0;height:2px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .25s}.links a:hover:after,.links a[aria-current=page]:after{transform:scaleX(1)}.nav-saved{border:1px solid var(--line);border-radius:30px;padding:8px 15px!important}.menu{display:none;background:none;border:1px solid var(--line);padding:8px 12px;border-radius:8px;color:var(--ink)}.skip{position:absolute;top:-100px;left:12px;z-index:99;background:white;padding:12px}.skip:focus{top:10px}:focus-visible{outline:3px solid var(--orange);outline-offset:4px}a,button{-webkit-tap-highlight-color:transparent}button{color:var(--ink)}.eyebrow,.poy-eyebrow,.cat{font:700 10px/1.6 Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase;color:#526558}.eyebrow:before{content:'';color:var(--orange);font-size:14px;margin-right:9px}.btn,.recipe-cta{display:inline-flex;justify-content:center;align-items:center;gap:18px;border:1px solid var(--ink);border-radius:50px;background:var(--ink);color:white;padding:13px 22px;font:600 12px/1.5 Arial,sans-serif;text-transform:none;letter-spacing:.01em;transition:background .2s,transform .2s,box-shadow .2s}.btn:hover,.recipe-cta:hover{background:#28584c;transform:translateY(-2px);box-shadow:0 8px 20px #183c3612}.btn.alt,.recipe-cta.light{background:transparent;color:var(--ink)}.btn.alt:hover,.recipe-cta.light:hover{background:var(--sage)}.textlink,.poy-plain-link{font-size:12px;font-weight:700;border-bottom:1px solid var(--orange);padding-bottom:5px}.muted{color:var(--muted)}
.sj-hero{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:60px 0 65px}.sj-hero h1{font-size:clamp(54px,6.2vw,86px);margin:22px 0;line-height:1.01;max-width:550px}.sj-hero h1 em{color:var(--orange);font-weight:400}.sj-hero p{color:var(--muted);max-width:390px;font-size:17px;line-height:1.8}.hero-actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:30px}.sj-hero-visual{position:relative;padding:0 18px 30px 0}.sj-hero-photo{height:480px;border-radius:48% 48% 8px 8px;overflow:hidden;background:#e9e2d6}.sj-hero-photo img{transition:transform .8s;animation:photoIn 1.1s ease both}.sj-hero-visual:hover img{transform:scale(1.035)}.sj-sticker{position:absolute;right:-6px;top:34px;border-radius:50%;height:100px;width:100px;display:grid;place-content:center;text-align:center;background:#f5cd79;color:var(--ink);font:700 11px/1.4 Arial;letter-spacing:.08em;transform:rotate(12deg);box-shadow:0 4px 0 #183c360a}.sj-note{position:absolute;bottom:5px;left:-28px;width:260px;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:17px 20px;box-shadow:0 10px 30px #183c360b}.sj-note small{display:block;font-size:10px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.sj-note b{font:400 22px var(--serif)}.sj-note a{display:flex;justify-content:space-between;align-items:center;margin-top:5px}.sj-ribbon{display:flex;justify-content:space-between;gap:12px;border-block:1px solid var(--line);padding:20px 0;font-size:11px;letter-spacing:.09em;text-transform:uppercase}.sj-ribbon span:before{content:'';color:var(--orange);margin-right:12px}.sj-section{padding:75px 0}.sectionhead{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:30px}.sectionhead h2{margin:10px 0 0}.sj-categories{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.sj-category{display:grid;grid-template-columns:110px 1fr;gap:20px;align-items:center;background:#f2eee4;border:1px solid transparent;padding:17px;border-radius:14px;transition:transform .25s,border-color .25s}.sj-category:hover{transform:translateY(-4px);border-color:#b7c7b7}.sj-category img{height:110px;border-radius:50%}.sj-category h3{font-size:25px;margin:0 0 6px}.sj-category span{font-size:11px;color:var(--muted)}.sj-category:nth-child(2){background:#edf0e8}.sj-category:nth-child(3){background:#f6e9dd}.sj-finder{background:var(--sage);border-radius:var(--radius);padding:40px;display:grid;grid-template-columns:1fr 1.1fr;gap:45px;align-items:start}.sj-finder h2{margin:12px 0;font-size:43px}.sj-finder p{color:var(--muted);font-size:14px;max-width:350px}.finder-controls{display:flex;gap:10px;flex-wrap:wrap}.finder-controls label{font-size:11px;font-weight:700}.finder-controls select{display:block;margin-top:5px;background:var(--paper);border:1px solid #b7c4b7;border-radius:8px;padding:9px 12px;min-width:135px}.finder-results{margin-top:16px}.finder-result{display:flex;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid #cbd5c7}.finder-result img{width:64px;height:64px;border-radius:10px}.finder-result b{font:400 20px/1.2 var(--serif);display:block}.finder-result small{font-size:11px;color:var(--muted)}.finder-count{font-size:11px;margin:12px 0 0;color:var(--muted)}.recipe-index-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 24px}.recipe-index-image{aspect-ratio:1.18;overflow:hidden;border-radius:12px;margin-bottom:17px;background:var(--sage)}.recipe-index-image img{transition:transform .5s}.recipe-index-card:hover img{transform:scale(1.045)}.recipe-index-card h3{font-size:26px;line-height:1.2;margin:9px 0}.recipe-index-card p{font-size:13px;color:var(--muted);line-height:1.8;margin-bottom:0}.sj-editorial{display:grid;grid-template-columns:1fr 1fr;min-height:350px;border-radius:var(--radius);overflow:hidden;background:#eee9dd}.sj-editorial>div{padding:46px}.sj-editorial h2{margin:12px 0 20px}.sj-editorial img{min-height:350px;max-height:440px}.sj-editorial p{max-width:390px;font-size:14px;color:var(--muted)}.sj-footer-note{font-size:11px;max-width:480px;color:var(--muted)}.footer{padding:55px 0 25px;border-top:1px solid var(--line);background:#f0eee5}.footergrid{display:flex;justify-content:space-between;gap:30px}.footer .brand{font-size:31px}.footer .muted{font-size:12px;margin:12px 0}.footerlinks{display:flex;align-items:start;flex-wrap:wrap;gap:20px;font-size:12px}.legal{font-size:10px;color:var(--muted);border-top:1px solid #d8dcd1;padding-top:20px;margin-top:25px}.pagehead,.recipe-index-title{text-align:center;max-width:760px;margin:0 auto;padding:60px 0 35px}.pagehead h1,.recipe-index-title h1{font-size:clamp(40px,6vw,65px);margin:14px 0 20px}.pagehead p,.recipe-index-title p{font-size:16px;color:var(--muted)}.recipe-index{padding:0 0 85px}.recipe-filters{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#efeee5;padding:18px;border-radius:12px;margin:0 0 30px}.recipe-filters label{font-size:11px;font-weight:700}.recipe-filters input,.recipe-filters select{border:1px solid #c4cfbf;border-radius:8px;background:white;padding:11px 14px;max-width:100%;color:var(--ink)}.recipe-filters input{flex:1;min-width:180px}.collection-links{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:0 0 28px}.collection-links a{border:1px solid #cbd5c7;border-radius:30px;font-size:11px;padding:7px 14px}.collection-links a:hover{background:var(--sage)}#empty{display:none;padding:20px}.article{max-width:760px;padding:25px 0 70px;margin:auto}.article h2{font-size:32px;margin-top:40px}.article p,.article li{color:var(--muted)}.section{padding:65px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.shop-image{aspect-ratio:1.1;overflow:hidden;border-radius:16px}.price{font-size:24px}.notice,.recipe-note{padding:18px 22px;background:var(--sage);border-left:3px solid #6b8362;font-size:13px;line-height:1.7;color:#425547}.contact input,.contact textarea{width:100%;padding:12px;border:1px solid var(--line)}
.recipe-article{padding:30px 0 85px}.recipe-breadcrumb{font-size:11px;color:var(--muted);display:flex;gap:9px;align-items:center;flex-wrap:wrap}.recipe-breadcrumb a:hover{text-decoration:underline}.recipe-title{text-align:center;max-width:880px;margin:40px auto 30px}.recipe-title h1{font-size:clamp(40px,5.5vw,67px);margin:16px 0}.recipe-deck{font-size:17px;color:var(--muted);max-width:680px;margin:0 auto 18px}.recipe-meta{font-size:11px;color:var(--muted)}.recipe-meta span{margin-inline:8px;color:var(--orange)}.recipe-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:25px}.recipe-hero{margin:35px 0}.recipe-hero img{aspect-ratio:1.9;max-height:590px;border-radius:16px}.recipe-hero figcaption{text-align:center;font-size:10px;color:var(--muted);margin-top:9px}.recipe-body{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:65px}.recipe-content{max-width:760px;min-width:0}.recipe-content h2{font-size:32px;margin:35px 0 18px}.recipe-content h3{font-size:23px;margin:25px 0 12px}.recipe-content p,.recipe-content li{font-size:15px;line-height:1.9;color:#475c50}.recipe-text-list{padding-left:22px}.recipe-text-list li{padding-block:4px}.recipe-step{display:flex;gap:22px;border-bottom:1px solid var(--line);padding:14px 0}.recipe-step>span{color:var(--orange);font:400 25px var(--serif)}.recipe-step p{margin:0}.recipe-aside-box{padding:25px;background:var(--sage);border-radius:12px;margin-bottom:22px}.recipe-aside-box h3{font-size:25px;margin:12px 0}.recipe-aside-box p{font-size:13px;color:var(--muted)}.recipe-aside-plain{background:transparent;border:1px solid var(--line)}.recipe-related{display:flex;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line);font-size:12px;line-height:1.5}.recipe-related img{width:60px;height:60px;border-radius:8px}.recipe-print-card{border:1px solid #c2cebb;border-radius:16px;padding:30px;margin:40px 0;background:#f5f5ec;scroll-margin-top:110px}.recipe-print-card h2{margin-top:12px}.recipe-mini-meta{display:flex;gap:12px;flex-wrap:wrap;font-size:12px}.check-ingredients{list-style:none;padding:0}.check-ingredients label{display:flex;gap:11px;align-items:baseline;cursor:pointer}.check-ingredients input{accent-color:var(--ink);width:16px;height:16px}.check-ingredients input:checked+span{text-decoration:line-through;opacity:.5}.recipe-small{font-size:11px!important}.recipe-share{border-top:1px solid var(--line);padding-top:25px}.save-button[aria-pressed=true]{background:#e5eddf;color:var(--ink)}.cook-panel{margin:24px 0;background:var(--ink);color:var(--paper);border-radius:14px;padding:25px}.cook-panel[hidden]{display:none}.cook-panel p{color:#fff!important;font-size:18px!important;min-height:110px}.cook-panel .eyebrow{color:#dfc888}.cook-controls{display:flex;gap:10px;justify-content:space-between;align-items:center}.cook-controls button{border:1px solid #8da99e;border-radius:30px;padding:8px 15px;background:transparent;color:white;font-size:12px}.cook-panel progress{width:100%;height:5px;accent-color:#efad76}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:12px 22px;background:var(--ink);color:white;border-radius:40px;z-index:60;font-size:12px;box-shadow:0 8px 25px #0002}.reading-progress{position:fixed;left:0;top:0;width:100%;height:3px;transform:scaleX(0);transform-origin:left;background:var(--orange);z-index:55;pointer-events:none}.reveal{opacity:1}.js-motion .reveal{opacity:0;transform:translateY(22px);transition:opacity .65s,transform .65s}.js-motion .reveal.is-visible{opacity:1;transform:none}.sj-flower{display:inline-block;color:var(--orange);font-size:26px;animation:gentleTurn 18s linear infinite}@keyframes gentleTurn{to{transform:rotate(360deg)}}@keyframes photoIn{from{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}
@media(max-width:950px){.links{gap:16px}.sj-hero{gap:40px}.sj-hero-photo{height:430px}.sj-categories{gap:12px}.sj-category{grid-template-columns:75px 1fr;gap:12px;padding:12px}.sj-category img{height:75px}.sj-category h3{font-size:22px}.recipe-body{gap:30px;grid-template-columns:minmax(0,1fr) 220px}}@media(max-width:700px){.wrap{width:calc(100% - 36px)}.top{font-size:9px}.nav{min-height:73px}.brand{font-size:29px}.menu{display:block}.links{display:none;position:absolute;top:73px;left:0;right:0;padding:22px;background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:10px}.links.open{display:flex}.nav-saved{width:max-content}.sj-hero{grid-template-columns:1fr;padding:35px 0 45px;gap:30px}.sj-hero h1{font-size:60px;max-width:440px}.sj-hero p{font-size:16px}.sj-hero-photo{height:390px}.sj-hero-visual{max-width:500px;width:100%;margin-inline:auto;padding-left:15px}.sj-note{left:0}.sj-sticker{right:0}.sj-ribbon{flex-wrap:wrap;justify-content:center;font-size:9px;gap:12px 22px}.sj-section{padding:45px 0}.sectionhead{align-items:start}.sectionhead .textlink{flex-shrink:0;font-size:10px;margin-top:15px}.sj-categories{grid-template-columns:1fr;gap:12px}.sj-category{grid-template-columns:80px 1fr;padding:14px 18px}.sj-category img{height:80px}.sj-category h3{font-size:27px}.sj-finder{grid-template-columns:1fr;gap:15px;padding:26px}.sj-finder h2{font-size:36px}.finder-controls{gap:8px}.finder-controls select{min-width:110px}.recipe-index-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 15px}.recipe-index-card h3{font-size:21px}.recipe-index-card p{font-size:12px}.recipe-index-card .poy-eyebrow{font-size:8px}.sj-editorial{grid-template-columns:1fr}.sj-editorial>div{padding:30px}.sj-editorial img{min-height:240px;max-height:300px}.footergrid{flex-direction:column}.footerlinks{gap:16px}.pagehead,.recipe-index-title{padding:35px 0 25px}.recipe-filters{flex-direction:column;align-items:stretch}.recipe-filters input{width:100%;min-width:0}.recipe-body{grid-template-columns:1fr}.recipe-aside{display:none}.recipe-title{margin:30px auto}.recipe-title h1{font-size:43px}.recipe-deck{font-size:16px}.recipe-hero img{aspect-ratio:1.2}.recipe-print-card{padding:23px 18px}.recipe-content h2{font-size:29px}.split{grid-template-columns:1fr}.article{padding:20px 0 55px}.section{padding:45px 0}}@media(max-width:380px){.sj-hero h1{font-size:52px}.recipe-index-grid{grid-template-columns:1fr}.hero-actions{gap:16px}.sj-note{width:240px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal{opacity:1;transform:none}}@media print{.top,.header,.footer,.recipe-breadcrumb,.recipe-actions,.recipe-aside,.recipe-hero,.recipe-note,.recipe-share,.cook-panel,.toast,.reading-progress,.no-print{display:none!important}.recipe-content>*{display:none!important}.recipe-content>.recipe-print-card{display:block!important}.recipe-print-card button{display:none!important}.recipe-body{display:block}.recipe-title{margin:10px 0}.recipe-title h1{font-size:28px}.recipe-print-card{padding:0;border:0;margin:0}.recipe-article{padding:0}.recipe-print-card p,.recipe-print-card li{font-size:12px}}

/* Quiet editorial controls: no emoji arrows, decorative stars, or icon badges. */
.eyebrow:before,.sj-ribbon span:before{display:none}.sj-flower,.sj-sticker{display:none}.recipe-meta{display:flex;gap:16px;flex-wrap:wrap;justify-content:center}.recipe-meta span{display:inline-flex;gap:5px;margin:0}.recipe-meta b{font-weight:700}.recipe-byline{font-size:12px;color:var(--muted)}.recipe-byline a{text-decoration:underline;text-underline-offset:3px}.recipe-status{font-size:12px!important;color:var(--muted)!important;padding-bottom:15px;border-bottom:1px solid var(--line)}.recipe-faq{border-bottom:1px solid var(--line);padding:15px 0}.recipe-faq summary{font-size:15px;font-weight:600;cursor:pointer}.recipe-faq p{margin-top:12px}.download-actions{display:flex;gap:10px;flex-wrap:wrap}.filter-count{font-size:12px;color:var(--muted)}.contact-form label{display:block;font-size:13px;font-weight:600;margin:20px 0 7px}.contact-form label span{font-weight:400;color:var(--muted)}.contact-form input,.contact-form textarea,.contact-form select{display:block;width:100%;max-width:100%;border:1px solid #bdcbbd;border-radius:8px;background:white;padding:12px;color:var(--ink)}.contact-form textarea{resize:vertical}.contact-form .btn{margin-top:10px}.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#contact-status{font-size:14px;padding:15px 0}.ad-placement[hidden]{display:none!important}.ad-placement{margin:70px 0;padding:28px 0;border-block:1px solid var(--line);min-height:250px;text-align:center}.ad-placement>span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}@media(max-width:700px){.recipe-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.recipe-actions .recipe-cta{padding:11px 12px;font-size:11px}.recipe-meta{gap:9px 15px}.sj-note{width:245px}.recipe-faq summary{font-size:14px}}@media print{.recipe-status,.ad-placement,.recipe-byline{display:none!important}}

@media print{.recipe-title{display:none!important}}


/* Shared Spoon & Joy identity. */
.brand .brand-mark{width:60px;height:60px;object-fit:contain;flex-shrink:0;border-radius:50%}.footer .brand .brand-mark{width:64px;height:64px}@media(max-width:700px){.brand .brand-mark{width:48px;height:48px}.nav{gap:12px}}@media(max-width:380px){.header .brand{font-size:25px;gap:8px}.header .brand .brand-mark{width:42px;height:42px}}
