/* Warm editorial food story, scoped away from all other page layouts. */
.meal-story{--meal-ink:#34372d;--meal-muted:#625e54;--meal-sage:#54684f;--meal-line:#dedbcd;background:#fcfaf5;color:var(--meal-ink)}
.meal-story *, .meal-equation *{box-sizing:border-box}
.meal-story section{max-width:1280px;margin:auto;padding:56px 32px;opacity:1;transform:none;min-width:0}
.meal-story h1,.meal-story h2,.meal-story h3,.meal-story p,.meal-story figure{margin:0;max-width:none}
.meal-story h1{font-size:clamp(38px,4.4vw,65px);line-height:1.06;letter-spacing:-.035em;text-wrap:balance}
.meal-story h2{font-size:clamp(30px,3vw,43px);line-height:1.15;letter-spacing:-.025em;text-wrap:balance}
.meal-story h3{font-family:var(--font-body,sans-serif);font-size:23px;font-weight:700;line-height:1.25}
.meal-story p{font-size:18px;line-height:1.65;color:var(--meal-muted)}
.meal-story .meal-label{display:block;font-size:13px;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:var(--meal-sage);margin-bottom:15px}
.meal-story img{display:block;width:100%;object-fit:cover;background:#eae4d9}
.meal-story figcaption{font-size:12px;line-height:1.5;color:var(--meal-muted);padding:10px 0}
.meal-story .meal-hero{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;padding-top:40px;padding-bottom:40px}
.meal-story .meal-hero p{margin-top:22px;max-width:48ch}
.meal-story .meal-hero img{aspect-ratio:3/2;border-radius:28px;object-fit:contain}
.meal-equation{display:flex;align-items:center;gap:18px;border-top:1px solid #d7d5c8;border-bottom:1px solid #d7d5c8;padding:22px 0;margin:24px 0;color:#34372d}
.meal-equation div{flex:1;min-width:0}.meal-equation strong{display:block;font-size:18px;line-height:1.35;font-weight:750}.meal-equation span{display:block;font-size:14px;line-height:1.5;margin-top:6px;color:#625e54}.meal-equation>b{font-size:26px;font-weight:400;color:#7e836c}
.meal-story .meal-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 22px;border-radius:40px;background:var(--meal-sage);color:#fff;text-decoration:none;font-size:16px;font-weight:700;line-height:1.4;transition:background .2s,transform .2s}
.meal-story .meal-button:hover{background:#3e523a;transform:translateY(-2px)}
.meal-story header{max-width:780px;margin-bottom:26px}.meal-story header p{margin-top:14px}
.meal-story .meal-rhythm{border-top:1px solid var(--meal-line);scroll-margin-top:110px}
.meal-main-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:28px}
.meal-main-grid article{background:#f0efe3;border:1px solid #dedfcf;border-radius:18px;padding:22px;position:relative;overflow:hidden}
.meal-story .meal-number{display:block;font-size:13px;font-weight:700;letter-spacing:.1em;color:#677458;margin-bottom:12px}
.meal-story .meal-main-grid p{font-size:16px;margin-top:8px}
.meal-story .meal-sessions{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;background:#f4e9dc;border-radius:24px;padding:24px}
.meal-story .meal-sessions img{aspect-ratio:3/2;border-radius:16px}.meal-story .meal-sessions h2{font-size:34px}.meal-story .meal-sessions p{margin-top:14px}
.meal-story .meal-sessions ul{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:18px 0 0;list-style:none}.meal-story .meal-sessions li{padding:7px 11px;border:1px solid #d6c4af;border-radius:30px;font-size:14px;color:#564b3d;background:#fcf7ee}
.meal-story .meal-small{font-size:14px;line-height:1.5}
.meal-story .meal-kitchen{padding-top:24px}.meal-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.meal-tabs button{font:inherit;font-size:16px;font-weight:650;border:1px solid #b6bba7;background:transparent;color:var(--meal-ink);border-radius:40px;padding:12px 22px;min-height:48px;cursor:pointer}.meal-tabs button[aria-selected=true]{background:var(--meal-sage);color:white;border-color:var(--meal-sage)}
.meal-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;animation:meal-appear .28s ease-out}.meal-photo-grid[hidden]{display:none!important}.meal-story .meal-photo-grid figure{min-width:0}.meal-story .meal-photo-grid img{aspect-ratio:1/1;object-fit:contain;border-radius:18px;transition:transform .3s ease}.meal-story .meal-photo-grid figure:hover img{transform:translateY(-4px)}.meal-story .meal-photo-grid figcaption{display:flex;justify-content:space-between;font-size:15px;font-weight:650}.meal-photo-grid figcaption span{font-size:13px;opacity:.7}
.meal-story .meal-needs{display:grid;grid-template-columns:.85fr 1.15fr;gap:50px;border-top:1px solid var(--meal-line)}
.meal-story details{border-bottom:1px solid var(--meal-line);padding:0 0 16px;margin-bottom:16px}.meal-story summary{font-size:18px;font-weight:700;line-height:1.5;min-height:44px;cursor:pointer;padding:6px 0}.meal-story details p{font-size:16px;margin:10px 0}.meal-story details a{color:var(--meal-sage);font-size:15px;text-decoration:underline}
.meal-story .meal-close{display:grid;grid-template-columns:1.3fr 1fr;gap:32px;align-items:center;background:#e9edde;border-radius:24px;margin-bottom:40px;padding:36px}.meal-story .meal-close h2{font-size:32px}.meal-story .meal-close p{margin-top:12px}.meal-close>div:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:16px}.meal-close a:not(.meal-button){font-size:16px;font-weight:650;color:#405239}
.meal-story :focus-visible{outline:3px solid #9d562f;outline-offset:5px}
@keyframes meal-appear{from{opacity:.5;transform:translateY(6px)}to{opacity:1;transform:none}}
.meal-story .meal-photo-grid img{aspect-ratio:3/2}
@media(max-width:850px){.meal-story .meal-hero{gap:24px}.meal-story section{padding:36px 24px}.meal-story .meal-hero h1{font-size:42px}.meal-equation{gap:10px}.meal-equation strong{font-size:16px}.meal-story .meal-sessions{gap:22px}.meal-story .meal-sessions h2{font-size:30px}.meal-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.meal-story .meal-needs{gap:24px}.meal-story .meal-close{margin:0 24px 32px}}
@media(max-width:600px){.meal-story section{padding:32px 20px}.meal-story .meal-hero,.meal-story .meal-sessions,.meal-story .meal-needs,.meal-story .meal-close{grid-template-columns:1fr}.meal-story .meal-hero{padding-top:30px;gap:22px}.meal-story .meal-hero h1{font-size:40px}.meal-story .meal-hero img{aspect-ratio:4/3}.meal-story .meal-hero p{font-size:18px}.meal-story .meal-sessions{padding:18px;gap:18px}.meal-main-grid{gap:8px}.meal-main-grid article{padding:15px 11px;border-radius:13px}.meal-story .meal-main-grid h3{font-size:17px;overflow-wrap:anywhere}.meal-story .meal-main-grid p{font-size:14px;line-height:1.5}.meal-tabs{gap:6px}.meal-tabs button{padding:10px 15px;font-size:15px}.meal-photo-grid{gap:12px}.meal-story .meal-close{margin:0 20px 28px;padding:24px}.meal-story .meal-close h2{font-size:30px}.meal-story .meal-needs{gap:6px}.meal-equation span{font-size:13px}}
@media(prefers-reduced-motion:reduce){.meal-story *, .meal-story *::before{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
