:root{--edt-black: #000000;--edt-white: #ffffff;--mist: #ede9e5;--dune: #c6baac;--clay: #625952;--yellow: #fdd32c;--orange: #ff6a14;--beige: #ded8ca;--font-sans: "IBM Plex Sans", -apple-system, sans-serif;--font-mono: "IBM Plex Mono", monospace}*{box-sizing:border-box}body{margin:0;background:linear-gradient(165deg,#f3efe8,#ede5d8 45%,#e2d5c2);background-attachment:fixed;color:var(--edt-black);font-family:var(--font-sans)}.page{position:relative;max-width:1160px;margin:0 auto;padding:48px 24px 100px}.eyebrow{font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:1.5px;color:var(--clay);text-transform:uppercase}.hero{max-width:680px;margin-bottom:36px}.hero h1{font-family:var(--font-sans);font-size:46px;font-weight:600;margin:10px 0 14px;line-height:1.05;letter-spacing:-.5px}.hero__sub{color:var(--clay);font-size:15.5px;line-height:1.6;margin-bottom:22px}.button{display:inline-block;background:var(--edt-black);color:var(--edt-white);border:none;border-radius:5px;padding:13px 22px;font-family:var(--font-mono);font-size:12.5px;font-weight:600;letter-spacing:.4px;text-decoration:none;cursor:pointer;transition:opacity .15s ease}.button:hover{opacity:.82}.download-all-row{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:48px}.muted.center{text-align:center;color:var(--clay);margin-top:60px;font-family:var(--font-sans)}.recipe-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.recipe-card{display:flex;flex-direction:column;height:9cm;background:var(--edt-white);color:var(--edt-black);border:1px solid rgba(98,89,82,.14);border-radius:8px;text-decoration:none;overflow:hidden;box-shadow:0 1px 2px #0000000a,0 6px 16px #281e1412;transition:transform .18s ease,box-shadow .18s ease}.recipe-card:hover{transform:translateY(-2px);box-shadow:0 2px 4px #0000000d,0 10px 22px #281e141c}.recipe-card__image{flex:1 1 auto;min-height:0;background:var(--beige);overflow:hidden}.recipe-card__image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}.recipe-card:hover .recipe-card__image img{transform:scale(1.045)}.recipe-card__image--placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:10px;color:var(--clay);text-transform:uppercase;letter-spacing:.5px}.recipe-card__body{height:84px;flex:0 0 84px;padding:12px 13px 11px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.recipe-card__title{font-family:var(--font-sans);font-size:16px;font-weight:600;line-height:1.25;margin:0;display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.recipe-card__nametag{font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.3px;color:var(--clay);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recipe-card__nametag:before{content:"photo — ";color:var(--dune)}@media (max-width: 860px){.recipe-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 560px){.recipe-grid{grid-template-columns:1fr}.hero h1{font-size:32px}}.back-link{color:var(--clay);text-decoration:none;font-family:var(--font-mono);font-size:12px;letter-spacing:.3px;display:inline-block;margin-bottom:24px}.recipe-detail{background:var(--edt-white);color:var(--edt-black);border-radius:8px;border:1px solid rgba(98,89,82,.14);padding:40px;max-width:760px;margin:0 auto}.recipe-detail__image{margin:-40px -40px 24px}.recipe-detail__image img{width:100%;max-height:420px;object-fit:cover;display:block;border-radius:8px 8px 0 0}.recipe-detail__tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.recipe-detail__tags .tag-chip{font-family:var(--font-mono);font-size:10px;letter-spacing:.3px;padding:4px 9px;border-radius:3px;background:var(--mist);color:var(--clay)}.recipe-detail h1{font-family:var(--font-sans);font-weight:600;font-size:36px;margin:0 0 10px;letter-spacing:-.5px}.recipe-detail__description{color:var(--clay);font-size:15px;margin-bottom:16px}.recipe-detail__meta{font-family:var(--font-mono);font-size:12px;color:var(--clay);display:flex;gap:16px;margin-bottom:20px}.recipe-detail__columns{display:grid;grid-template-columns:1fr 1.4fr;gap:40px}.recipe-detail__columns h2{font-family:var(--font-mono);font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--orange);margin-bottom:12px}.ingredient-list,.step-list{padding-left:20px;margin:0;line-height:1.9;font-family:var(--font-sans)}.step-list li{margin-bottom:10px;padding-left:4px}.nutrition-footer{margin-top:28px;padding-top:16px;border-top:1px solid var(--dune);font-family:var(--font-mono);font-size:11px;color:var(--clay)}.recipe-detail__source{margin-top:16px;font-family:var(--font-mono);font-size:11px;color:var(--clay)}@media (max-width: 640px){.recipe-detail{padding:24px}.recipe-detail__image{margin:-24px -24px 20px}.recipe-detail__columns{grid-template-columns:1fr}}
