@font-face{font-family:Lato;src:url('fonts/Lato-Regular.ttf') format('truetype');font-display:swap;font-weight:400}@font-face{font-family:Lato;src:url('fonts/Lato-Bold.ttf') format('truetype');font-display:swap;font-weight:700}
:root{--red:#e52d35;--ink:#262626;--muted:#6c6c6c;--paper:#faf9f6;--line:#e3e1dc;--soft:#efeee9;--radius:15px}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.55 Lato,Arial,sans-serif}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}a{color:inherit;text-underline-offset:4px}button{border:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--red);outline-offset:4px}button{color:inherit}.red{color:var(--red)}[hidden]{display:none!important}.skip{position:absolute;left:10px;top:-100px;padding:12px;background:white;z-index:50}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.topbar{max-width:1360px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:23px 5vw;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:700;font-size:25px;letter-spacing:.6px;line-height:1.1}.brand small{display:block;font-weight:400;letter-spacing:1.5px;font-size:9px;margin-top:7px}.publisher{font-size:11px;font-weight:700;letter-spacing:2px;text-align:right;line-height:1.5;text-decoration:none}.topbar img{display:block}main{max-width:1240px;margin:auto;padding:0 4vw 40px}.hero{display:grid;grid-template-columns:1fr 1.13fr;gap:35px;align-items:center;padding:52px 0 54px}.hero h1{font-size:clamp(44px,4.8vw,66px);line-height:1.02;letter-spacing:-1.7px;margin:13px 0 22px}.hero h1 em{font-style:normal;color:var(--red)}.hero p:not(.eyebrow){max-width:390px;font-size:18px}.hero>img{width:100%;height:350px;object-fit:cover;border-radius:var(--radius);object-position:50% 56%}.eyebrow{font-size:11px;font-weight:700;letter-spacing:1.8px;color:var(--red);line-height:1.45}.primary,.outline{display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:12px 19px;border-radius:6px;min-height:46px;font-weight:700;text-decoration:none;font-size:15px}.primary{background:var(--red);color:white}.primary:hover{background:#c82129}.outline{border:1px solid var(--line);background:white}.outline:hover{border-color:var(--ink)}.text-button{background:transparent;font-size:14px;border-bottom:1px solid;padding:4px 0}.browse-head{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;padding:10px 0 22px}.browse-head h2{font-size:32px;letter-spacing:-.8px;margin:5px 0 0;line-height:1.15}.browse-head .eyebrow{margin:0}.filters{display:grid;grid-template-columns:minmax(180px,1fr) minmax(130px,.62fr) minmax(160px,.7fr);gap:12px;margin-bottom:28px}.filters label{min-width:0}.search{position:relative}.search svg{position:absolute;width:18px;height:18px;top:17px;left:15px;fill:none;stroke:currentColor;stroke-width:1.7}.filters input,.filters select{width:100%;height:52px;border:1px solid var(--line);background:white;border-radius:7px;padding:0 15px;color:var(--ink);font-size:15px}.filters input{padding-left:44px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px 22px}.card{min-width:0;position:relative;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:white;transition:transform .18s,box-shadow .18s}.card:hover{transform:translateY(-3px);box-shadow:0 10px 28px #2222220a}.card-open{padding:0 0 18px;display:block;text-align:left;background:transparent;width:100%}.card-photo{display:block;position:relative;overflow:hidden;aspect-ratio:16/9}.card-photo img{width:100%;height:100%;object-fit:cover;display:block}.page-tag{position:absolute;bottom:10px;left:12px;font-size:10px;letter-spacing:1px;padding:4px 7px;border-radius:3px;color:white;background:#222d}.card .eyebrow{display:block;margin:19px 18px 9px;font-size:10px;letter-spacing:1.1px}.card h3{font-size:22px;line-height:1.2;margin:0 18px 16px;letter-spacing:-.35px;min-height:53px}.card-meta{display:flex;gap:14px;margin:0 18px;font-size:12px;color:var(--muted)}.heart{position:absolute;right:11px;top:11px;display:grid;place-items:center;width:42px;height:42px;border:1px solid #fff7;background:#fffc;border-radius:50%;font-size:28px;line-height:1}.heart.saved{color:var(--red);background:white}.empty{padding:45px 15px;text-align:center;color:var(--muted);max-width:560px;margin:0 auto}.bottom-nav{display:flex;position:sticky;bottom:0;z-index:20;background:#222;justify-content:center;gap:16px;padding:9px max(12px,env(safe-area-inset-right)) calc(9px + env(safe-area-inset-bottom));box-shadow:0 -1px 12px #2221}.bottom-nav button{min-width:95px;padding:2px 14px;background:none;color:#c6c6c6;font-size:11px;line-height:1.4;border-radius:5px}.bottom-nav span{display:block;font-size:25px;line-height:1.15}.bottom-nav button.active{color:white;background:#ffffff11}.bottom-nav button.active:after{content:'';display:block;width:16px;height:2px;background:var(--red);margin:4px auto 0}.footer{display:flex;justify-content:space-between;max-width:1240px;padding:35px 4vw 30px;margin:auto;border-top:1px solid var(--line);font-size:11px;color:var(--muted);letter-spacing:.5px}.footer a{letter-spacing:0}.toast{position:fixed;z-index:50;left:50%;bottom:110px;transform:translate(-50%,12px);background:#222;color:white;border-radius:8px;max-width:90vw;width:max-content;padding:13px 20px;box-shadow:0 8px 25px #0002;opacity:0;pointer-events:none;transition:.2s;font-size:14px}.toast.show{opacity:1;transform:translate(-50%,0)}
.detail-wrap{padding-top:26px}.back{background:none;font-size:14px;padding:6px 0;margin-bottom:25px}.recipe-top{display:grid;grid-template-columns:1.05fr 1fr;gap:36px;align-items:center}.recipe-top img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius)}.recipe-top h1{font-size:40px;line-height:1.08;letter-spacing:-.9px;margin:14px 0 18px}.recipe-top p:not(.eyebrow){font-size:17px;margin:0}.recipe-tools{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px}.facts{display:grid;grid-template-columns:repeat(3,1fr);margin:32px 0 18px;background:var(--soft);border-radius:8px}.facts div{padding:16px 20px;border-right:1px solid var(--line)}.facts div:last-child{border:0}.facts small{display:block;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:1px;margin-bottom:5px}.facts b{font-size:16px}.mode{margin:0 0 26px;font-size:13px;color:var(--muted)}.mode button{background:none;color:var(--red);text-decoration:underline;padding:0}.recipe-columns{display:grid;grid-template-columns:.8fr 1.2fr;gap:45px}.recipe-columns h2{font-size:27px;letter-spacing:-.4px;margin:10px 0 15px}.recipe-columns h3{font-size:18px;margin:13px 0}.ingredient-list{list-style:none;padding:0;margin:0}.ingredient-list li{padding:9px 0;border-bottom:1px solid var(--line)}.ingredient-list label,.shopping-item{display:flex;gap:11px;align-items:flex-start}.ingredient-list input,.shopping-item input{width:20px;height:20px;flex:0 0 20px;margin:3px 0 0;accent-color:var(--red)}input:checked+span{text-decoration:line-through;color:var(--muted)}.steps{list-style:none;padding:0;margin:0}.step{display:grid;grid-template-columns:24px 1fr;gap:11px;padding:15px 0;border-bottom:1px solid var(--line)}.step-number{color:var(--red);font-size:22px;font-weight:700}.step-text{display:block}.planning{background:white;border:1px solid var(--line);border-radius:8px;padding:17px 18px;margin-top:23px}.planning label{font-weight:700;font-size:16px;display:block;margin-bottom:10px}.planning select{background:var(--paper);border:1px solid var(--line);padding:10px;border-radius:5px;width:100%;font-size:15px}.planning p,.plan-label{font-size:13px;color:var(--muted)}.planning ul{padding:0;list-style:none}.planning li{font-size:14px;padding:5px 0;border-bottom:1px solid var(--line)}.knowledge-inline{border:1px solid var(--line);padding:12px 15px;margin:0 0 24px;border-radius:6px}.knowledge-inline summary{cursor:pointer;font-weight:700;font-size:14px}.knowledge-inline table{margin:14px 0 10px}.nutrition{padding:16px 20px;background:var(--soft);border-radius:7px;margin:30px 0;font-size:13px}.nutrition p{margin:4px 0}.section-top{padding:44px 0 26px;max-width:740px}.section-top h1{font-size:43px;line-height:1.1;letter-spacing:-1px;margin:9px 0 18px}.section-top p:not(.eyebrow){margin:0;color:var(--muted)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.shopping-group{background:white;border:1px solid var(--line);padding:20px 24px;border-radius:var(--radius);margin-bottom:20px}.shopping-group header{display:flex;justify-content:space-between;gap:20px;align-items:center}.shopping-group h2{font-size:23px;margin:3px 0;line-height:1.2}.shopping-group .small{margin:8px 0 14px}.shopping-group ul{list-style:none;padding:0;margin:0}.shopping-item{padding:8px 0;border-top:1px solid var(--line)}.icon-button{font-size:24px;background:none;padding:6px 10px;min-width:44px;min-height:44px}.legal-columns{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-bottom:25px}.legal-columns h2{font-size:25px;margin-top:25px}.muted{color:var(--muted)}.small{font-size:12px;color:var(--muted)}.knowledge-item{margin:0 0 20px;border:1px solid var(--line);border-radius:10px;background:white;overflow:hidden}.knowledge-item>summary{cursor:pointer;padding:20px 24px;display:flex;justify-content:space-between;align-items:center;font-size:23px;font-weight:700;line-height:1.2}.knowledge-item>summary:after{content:'+';color:var(--red);font-size:25px;margin-left:20px}.knowledge-item[open]>summary:after{content:'−'}.knowledge-content{padding:0 24px 23px}.knowledge-content>img{width:100%;max-height:390px;object-fit:contain;background:var(--soft);display:block;border-radius:6px;margin:18px 0}.knowledge-content h3{font-size:18px;color:var(--red);margin:19px 0 8px}.knowledge-content p{margin:7px 0}.knowledge-content .small{font-size:12px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px;text-align:left}th,td{border:1px solid var(--line);padding:9px 10px;vertical-align:top}th{background:#303030;color:white;font-weight:700}td{background:var(--paper);white-space:pre-line}
@media(min-width:1450px){main{padding:0 0 40px}.footer{padding-left:0;padding-right:0}}@media(max-width:900px){.hero{gap:22px}.hero>img{height:310px}.hero h1{font-size:46px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.recipe-top{gap:24px}.recipe-top h1{font-size:32px}.recipe-columns{gap:27px;grid-template-columns:.88fr 1.12fr}.legal-columns{gap:35px}}@media(max-width:600px){body{font-size:16px}.topbar{padding:18px 5vw}.brand{font-size:23px}.brand small{font-size:8px}.publisher{font-size:9px;letter-spacing:1.6px}.brand img{width:34px;height:34px}main{padding-left:5vw;padding-right:5vw}.hero{display:flex;flex-direction:column;align-items:stretch;padding:28px 0 34px;gap:25px}.hero h1{font-size:49px;margin:9px 0 17px}.hero .eyebrow{font-size:10px}.hero p:not(.eyebrow){font-size:16px;max-width:340px}.hero>img{height:auto;aspect-ratio:1.72;object-position:50% 60%}.hero .primary{margin-top:4px}.browse-head{align-items:center;padding:0 0 19px}.browse-head h2{font-size:27px}.browse-head .eyebrow{font-size:9px}.text-button{font-size:11px;white-space:nowrap}.filters{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:20px}.filters .search{grid-column:1/-1}.filters input,.filters select{font-size:13px;height:47px}.search svg{top:15px}.filters select{padding:0 8px}.grid{gap:16px 12px}.card{border-radius:10px}.card .eyebrow{margin:13px 12px 7px;font-size:8px;letter-spacing:.7px}.card h3{font-size:17px;margin:0 12px 11px;min-height:61px;line-height:1.18}.card-meta{font-size:10px;margin:0 12px;gap:8px}.card-open{padding-bottom:14px}.page-tag{left:7px;bottom:7px;font-size:8px;padding:2px 5px}.heart{width:34px;height:34px;right:7px;top:7px;font-size:23px}.bottom-nav{justify-content:space-around;gap:1px;padding-top:9px}.bottom-nav button{min-width:0;flex:1;padding:2px 6px;font-size:10px}.bottom-nav span{font-size:24px}.footer{font-size:9px;display:block;line-height:2;padding:24px 5vw}.footer a{display:block}.recipe-top{grid-template-columns:1fr;gap:16px}.recipe-top h1{font-size:33px;margin:10px 0 14px}.recipe-top p:not(.eyebrow){font-size:16px}.recipe-top .eyebrow{font-size:9px}.recipe-tools{margin-top:18px;gap:8px}.recipe-tools button{padding:10px 14px;font-size:13px;flex:1}.facts{margin-top:24px}.facts div{padding:12px 10px}.facts small{font-size:8px;letter-spacing:.6px}.facts b{font-size:12px;line-height:1.4;display:block}.mode{font-size:12px}.recipe-columns{grid-template-columns:1fr;gap:25px}.recipe-columns h2{font-size:27px}.steps .step{padding:13px 0}.step-text{font-size:16px;line-height:1.6}.section-top{padding:30px 0 24px}.section-top h1{font-size:35px}.shopping-group{padding:17px 16px}.shopping-group h2{font-size:20px}.legal-columns{grid-template-columns:1fr;gap:5px}.knowledge-item>summary{font-size:20px;padding:18px 17px}.knowledge-content{padding:0 17px 20px}.knowledge-content p{font-size:15px}.knowledge-content>img{max-height:250px}.knowledge-content table{font-size:11px}th,td{padding:7px 7px}.toast{bottom:100px;font-size:13px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.copy-backdrop{position:fixed;inset:0;z-index:80;background:#0008;display:grid;place-items:center;padding:16px}.copy-panel{background:white;border-radius:12px;padding:22px;width:min(620px,100%);max-height:88vh;max-height:88dvh;overflow:auto}.copy-panel h2{margin:0;font-size:25px;line-height:1.2}.copy-panel p{font-size:14px}.copy-panel textarea{display:block;width:100%;resize:vertical;min-height:180px;border:1px solid var(--line);border-radius:6px;padding:12px;font:16px/1.5 Lato,Arial,sans-serif;color:var(--ink);background:var(--paper);-webkit-user-select:text;user-select:text}.copy-panel .actions{margin-top:15px}
