:root{--ink:#171714;--paper:#f4f0e8;--red:#e24a32;--lime:#cddd61;--line:#cbc5ba}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink)}body{margin:0;font-family:DM Sans,sans-serif}a{color:inherit}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:84px;padding:0 5vw;display:flex}.brand{letter-spacing:.12em;align-items:center;gap:12px;font-weight:800;text-decoration:none;display:flex}.brand-mark{background:var(--red);color:#fff;border-radius:50%;place-items:center;width:38px;height:38px;font-family:serif;font-size:23px;font-style:italic;display:grid}.daily-note,.eyebrow,.date{letter-spacing:.14em;font-size:12px;font-weight:700}.hero{border-bottom:1px solid var(--line);padding:8vw 5vw 7vw}.hero h1{letter-spacing:-.07em;max-width:1200px;margin:22px 0 36px;font:800 clamp(3.4rem,8vw,8.2rem)/.84 Libre Franklin,sans-serif}.hero h1 em{color:var(--red)}.hero-copy{max-width:650px;margin-left:auto;font-size:19px;line-height:1.65}.featured{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;min-height:580px;display:grid}.featured-art,.card-art{background:var(--lime);text-transform:uppercase;place-items:center;text-decoration:none;display:grid;overflow:hidden}.featured-art span{border:50px solid var(--ink);width:280px;height:280px;color:var(--red);background:var(--paper);border-radius:50%;place-items:center;font:800 5rem Libre Franklin;display:grid;transform:rotate(-8deg)}.featured-copy{flex-direction:column;justify-content:center;padding:7vw;display:flex}.featured h2,.section-heading h2,.recipe-hero h1{letter-spacing:-.055em;margin:15px 0;font:800 clamp(2.5rem,5vw,5.5rem)/.95 Libre Franklin}blockquote{color:var(--red);margin:16px 0 24px;font:italic 800 1.45rem/1.3 Libre Franklin}.featured-copy>p:not(.eyebrow){max-width:600px;line-height:1.7}.facts{flex-wrap:wrap;gap:8px;margin:24px 0;display:flex}.facts span,.tags a{text-transform:uppercase;letter-spacing:.06em;border:1px solid;border-radius:999px;padding:8px 13px;font-size:11px;font-weight:700;text-decoration:none}.button{background:var(--ink);color:#fff;align-self:flex-start;padding:16px 21px;font-weight:700;text-decoration:none}.archive{padding:7vw 5vw 10vw}.section-heading{justify-content:space-between;align-items:flex-end;margin-bottom:45px;display:flex}.section-heading h2{font-size:clamp(2.2rem,4vw,4.5rem)}.recipe-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.card{background:var(--paper)}.card-art{text-align:center;height:260px;padding:30px;font-size:clamp(1.2rem,2.4vw,2.2rem);font-weight:800}.card-1 .card-art{background:#ed7d55}.card-2 .card-art{background:#92b8c8}.card-3 .card-art{background:#e9c56d}.card-art span{border:2px solid;padding:18px;transform:rotate(-4deg)}.card-body{padding:27px}.card h3{margin:12px 0;font:800 1.6rem/1.1 Libre Franklin}.card h3 a{text-decoration:none}.slogan{color:#555;min-height:45px;font-style:italic}.tags{flex-wrap:wrap;gap:7px;margin-top:20px;display:flex}.tags a{text-transform:none;padding:6px 10px}.filter-bar,.empty-state{border:1px solid var(--line);justify-content:space-between;gap:15px;margin:30px 5vw 0;padding:22px;display:flex}.recipe-page{max-width:1180px;margin:auto;padding:50px 5vw 100px}.back-link{font-weight:700}.recipe-hero{max-width:950px;padding:100px 0 70px}.recipe-hero>p{max-width:680px;font-size:18px;line-height:1.7}.recipe-hero h1{font-size:clamp(3.2rem,7vw,7.5rem)}.facts-dark span{background:var(--ink);color:#fff}.recipe-content{border-top:1px solid var(--line);grid-template-columns:1fr 1.25fr;gap:9vw;padding-top:70px;display:grid}.recipe-content h2{font:800 2.8rem Libre Franklin}.ingredient-list,.method-list{padding:0;list-style:none}.ingredient-list li{border-bottom:1px solid var(--line);grid-template-columns:120px 1fr;gap:18px;padding:17px 0;display:grid}.method-list li{border-bottom:1px solid var(--line);grid-template-columns:50px 1fr;gap:20px;padding:16px 0;line-height:1.65;display:grid}.method-list li>span{color:var(--red);font-size:20px;font-weight:800}footer{background:var(--ink);color:#fff;justify-content:space-between;gap:30px;padding:45px 5vw;font-size:13px;display:flex}footer p{max-width:500px}.admin-shell{max-width:1180px;margin:auto;padding:70px 5vw 120px}.admin-topbar{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:50px;display:flex}.admin-topbar h1,.login-card h1{letter-spacing:-.06em;margin:12px 0 0;font:800 clamp(3rem,7vw,6.5rem)/.9 Libre Franklin}.admin-nav{align-items:center;gap:20px;font-weight:700;display:flex}.admin-nav form{margin:0}.text-button{font:inherit;cursor:pointer;background:0 0;border:0;text-decoration:underline}.success-banner{background:var(--lime);border:2px solid var(--ink);padding:16px 20px;font-weight:700}.admin-form{gap:16px;display:grid}.admin-panel{border:1px solid var(--ink);box-shadow:7px 7px 0 var(--ink);background:#fffaf1;grid-template-columns:70px 1fr;gap:25px;padding:35px;display:grid}.admin-panel.accent-panel{background:#ef7454}.admin-panel.lime-panel{background:var(--lime)}.panel-number{font:800 1.4rem Libre Franklin}.admin-panel label,.login-card label{margin-bottom:8px;font:800 1.25rem Libre Franklin;display:block}.field-help{color:#403e38;margin:0 0 16px;line-height:1.5}.admin-panel textarea,.admin-panel input,.login-card input{border:2px solid var(--ink);background:var(--paper);border-radius:0;width:100%;padding:14px 16px;font:500 1rem/1.5 DM Sans}.admin-grid-panel{grid-template-columns:70px 1fr 1.5fr}.admin-submit{justify-content:space-between;align-items:center;gap:30px;margin-top:20px;display:flex}.funky-button{border:2px solid var(--ink);box-shadow:5px 5px 0 var(--red);cursor:pointer;font:700 1rem DM Sans}.login-page{background:var(--lime);place-items:center;min-height:calc(100vh - 84px);padding:50px 5vw;display:grid}.login-card{background:var(--paper);border:2px solid var(--ink);width:min(620px,100%);box-shadow:12px 12px 0 var(--red);padding:45px}.login-card h1{font-size:clamp(2.8rem,6vw,5rem)}.login-card>p{line-height:1.6}.login-card form{gap:15px;margin-top:30px;display:grid}.login-card .button{margin-top:8px}.login-error{background:#ef7454;padding:12px;font-weight:700}@media (max-width:800px){.daily-note{display:none}.featured,.recipe-content{grid-template-columns:1fr}.featured-art{min-height:380px}.recipe-grid{grid-template-columns:1fr}.section-heading{display:block}.hero-copy{margin-left:0}.recipe-hero{padding:70px 0 40px}footer,.filter-bar{display:block}.filter-bar a{margin-top:10px;display:block}.admin-topbar,.admin-submit{display:block}.admin-nav{margin-top:25px}.admin-panel,.admin-grid-panel{grid-template-columns:1fr}.panel-number{color:var(--red)}}
