.bean-calendar{padding:100px 0;border-bottom:1px solid var(--line)}
.calendar-heading{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end;margin-bottom:45px}
.calendar-heading h2{margin-bottom:0}.calendar-heading>p{max-width:520px;color:color-mix(in srgb,var(--ink) 68%,var(--paper))}
.calendar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.calendar-card{border:1px solid var(--line);background:var(--card);transition:transform .2s,opacity .2s}
.calendar-card[data-state="current"]{border:2px solid var(--orange);transform:translateY(-6px);box-shadow:8px 8px 0 var(--green)}
.calendar-card[data-state="past"]{opacity:.55}
.calendar-date{display:flex;justify-content:space-between;gap:10px;padding:13px 16px;border-bottom:1px solid var(--line);font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.calendar-image{height:230px;background:var(--cream);position:relative;overflow:hidden}
.calendar-image img{width:100%;height:100%;object-fit:cover}.bean-placeholder{height:100%;display:grid;place-items:center;background:var(--cream);color:var(--ink)}
.calendar-badge{position:absolute;left:12px;bottom:12px;background:var(--green);color:#fff;padding:7px 10px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.calendar-card[data-state="current"] .calendar-badge{background:var(--orange)}.calendar-card[data-state="past"] .calendar-badge{background:#777}
.calendar-content{padding:22px}.calendar-content h3{font-size:28px}.calendar-meta{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:15px;margin-top:20px;font-weight:700}.calendar-meta a{color:var(--green)}
.calendar-note{font-size:12px;color:#746d62;margin-top:24px}.calendar-empty{grid-column:1/-1;padding:40px;background:var(--cream)}
.calendar-pause{padding:54px;border-block:1px solid var(--line);text-align:center;background:color-mix(in srgb,var(--cream) 32%,transparent)}.calendar-pause h3{font-size:var(--type-h3,25px)}.calendar-pause>p:last-child{margin:10px auto 0;max-width:480px;color:#68625a}.pause-icon{display:block;margin-bottom:16px;color:var(--green);font-size:18px}
.brew-filter{display:grid;gap:7px;margin-top:18px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.brew-filter select{width:100%;padding:13px 40px 13px 14px;border:1px solid var(--line);background:#fff;color:var(--ink);font:inherit;text-transform:none;letter-spacing:0}.brew-tag{display:inline-block;margin:10px 0 2px;padding:5px 9px;background:var(--cream);color:var(--green);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.calendar-card[hidden]{display:none}
.espresso-recipe{display:flex;justify-content:space-between;gap:18px;margin:20px 0;padding:16px;border-block:1px solid var(--line);color:var(--green)}
@media(max-width:760px){.bean-calendar{padding:65px 0}.calendar-heading,.calendar-grid{grid-template-columns:1fr;gap:24px}.calendar-card[data-state="current"]{transform:none;box-shadow:5px 5px 0 var(--green)}}
