/* Approved Option B: scoped exclusively to event cards. */
#cards .postcard.warm-event,.day-postcards .postcard.warm-event{display:flex;flex-direction:column;align-self:stretch;height:auto!important;min-height:0;padding:0;background:#f8f5ec;border:1px solid #e8e8d9;border-radius:21px;box-shadow:none;overflow:hidden;gap:0}
.warm-event .warm-visual{position:relative;height:300px;flex:0 0 300px;width:100%;overflow:hidden}.warm-event .warm-visual img{display:block;position:static;opacity:1;width:100%;height:100%;max-height:none;object-fit:cover}.warm-event .warm-art img{object-fit:cover}.warm-event .warm-date{position:absolute;top:15px;left:15px;display:flex;align-items:baseline;gap:8px;padding:9px 15px;border-radius:13px;background:#faf7f0f5;color:#244638;box-shadow:0 2px 8px #172e2110}.warm-event .warm-date span{font:600 11px/1.5 Montserrat,sans-serif;letter-spacing:.07em;text-transform:uppercase}.warm-event .warm-date b{font:400 28px/1 'Playfair Display',Georgia,serif}
.warm-event .warm-body{display:flex;flex-direction:column;flex:1;min-height:0;padding:19px 20px 11px;gap:8px;border-bottom:4px solid var(--warm-accent);background:#f8f5ec}.warm-event h3.warm-title{font:400 29px/1.12 'Playfair Display',Georgia,serif;letter-spacing:-.025em;color:#244638;margin:0;max-width:none}.warm-event .warm-time{font:600 13px/1.45 Montserrat,sans-serif;color:#244638;margin:0}.warm-event .warm-location{font:400 13px/1.45 Montserrat,sans-serif;color:#5b685c;margin:0}.warm-event .warm-sentence{font:400 14px/1.5 Montserrat,sans-serif;color:#244638;margin:2px 0 0}.warm-event .warm-action{display:flex;align-items:center;gap:9px;align-self:flex-start;font:600 14px/1.5 Montserrat,sans-serif;color:#244638;margin-top:auto;padding:12px 0 0;min-height:40px;text-decoration:underline;text-decoration-color:var(--warm-accent);text-decoration-thickness:3px;text-underline-offset:6px;border:0;background:none;border-radius:0}.warm-event .warm-action:focus-visible{outline:3px solid #c18b40;outline-offset:4px}.warm-event .warm-visual:has(img[src*="drumming"] ) img{object-position:center 80%}.warm-event .warm-visual:has(img[src*="farm."]) img{object-position:center 55%}
@media(min-width:1800px){.warm-event .warm-visual{height:340px;flex-basis:340px}}@media(max-width:600px){.warm-event .warm-visual{height:292px;flex-basis:292px}.warm-event .warm-body{padding:17px 17px 10px;gap:8px}.warm-event h3.warm-title{font-size:27px}.warm-event .warm-time,.warm-event .warm-location{font-size:12px}.warm-event .warm-sentence{font-size:13px}.warm-event .warm-action{min-height:44px;font-size:14px}}
/* Override inherited legacy heading rules only inside the approved event component. */
.warm-event h3.warm-title{font-size:29px!important;line-height:1.12!important;font-weight:400!important}
@media(max-width:600px){.warm-event h3.warm-title{font-size:27px!important}}
