.today-section{margin-top:40px;padding:32px;background:#eef1e7;border:1px solid #dfe5d7;border-radius:7px}.today-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:24px}.today-heading .eyebrow{font-size:8px;letter-spacing:1.8px;margin:0 0 11px}.today-heading h2{font-size:34px;letter-spacing:-1px;margin:0}.today-date-box{border-left:1px solid #d0d9c7;padding-left:25px;display:grid;gap:7px;flex-shrink:0}.today-date-box time{font-size:12px;font-weight:500;color:var(--green)}.today-date-box>span{font-size:10px;color:var(--muted)}.today-people{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:13px;padding:0;margin:0}.today-people li{min-width:0}.today-person{min-height:111px;height:100%;display:flex;gap:13px;align-items:center;text-decoration:none;border:1px solid #dbe2d2;border-radius:5px;background:#fffefa;padding:17px 14px;transition:border-color .2s,background .2s}.today-person:hover{border-color:#92a17f;background:#f8f9f2}.today-avatar{width:43px;height:56px;border-radius:4px;overflow:hidden;background:#e9ece2;flex-shrink:0}.today-avatar img{width:100%;height:100%;display:block;object-fit:cover;object-position:var(--portrait-position,50% 0%);transform:scale(var(--portrait-zoom,1));transform-origin:center}.today-person-content{display:grid;gap:4px;min-width:0}.today-person-content strong{font-family:var(--serif);font-size:18px;letter-spacing:-.3px;font-weight:400;line-height:1.3}.today-role{font-size:9px;color:var(--muted);line-height:1.6}.today-hours{font-size:10px;font-weight:500;color:#6a7a56;line-height:1.6;margin-top:3px}.today-person-arrow{color:#899877;margin-left:auto;align-self:flex-start;font-size:14px}.today-footer{display:flex;justify-content:space-between;gap:25px;align-items:flex-start;margin-top:21px}.today-footer p{font-size:10px;color:var(--muted);line-height:1.9;max-width:760px;margin:0}.today-footer p a{text-underline-offset:3px}.today-footer>.text-link{font-size:10px;white-space:nowrap}.today-empty{font-size:13px;line-height:1.8;margin:4px 0 20px;color:var(--muted);background:#fffefa;border:1px solid #dbe2d2;padding:20px 22px;border-radius:5px}.today-unknown{font-size:10px;color:var(--muted);margin:18px 0 0;line-height:1.8}.today-section [hidden]{display:none!important}
@media(max-width:1050px){.today-heading h2{font-size:31px}.today-section{padding:27px}.today-people{grid-template-columns:repeat(2,minmax(0,1fr))}.today-footer{flex-wrap:wrap;gap:14px}}
@media(max-width:600px){.today-section{margin-top:28px;padding:23px 20px}.today-heading{align-items:flex-start;flex-direction:column;gap:18px;margin-bottom:20px}.today-heading .eyebrow{font-size:7px;letter-spacing:1.5px;margin-bottom:9px}.today-heading h2{font-size:30px;line-height:1.17;max-width:260px}.today-date-box{border:0;border-top:1px solid #d0d9c7;width:100%;padding:13px 0 0;gap:5px}.today-date-box time{font-size:11px}.today-date-box>span{font-size:9px}.today-people{grid-template-columns:1fr;gap:10px}.today-person{min-height:92px;padding:13px;gap:13px}.today-avatar{width:42px;height:54px}.today-person-content strong{font-size:19px}.today-role{font-size:10px}.today-hours{font-size:10px;margin-top:1px}.today-footer{margin-top:18px;gap:15px}.today-footer p{font-size:9px}.today-empty{font-size:12px;padding:17px}.today-unknown{font-size:9px}}

.today-absent{font-size:11px;line-height:1.8;margin:18px 0 0;color:#846d4e}.today-special{font-size:12px;line-height:1.85;background:#f8f3e8;border:1px solid #e3d9c5;border-left:3px solid #a58e6b;border-radius:4px;padding:18px 21px;margin:0}.today-special a{text-underline-offset:3px}.today-footer strong{font-weight:500}
@media(max-width:600px){.today-absent{font-size:10px;margin-top:15px}.today-special{font-size:11px;padding:15px 16px}}

.today-closed{padding:24px 26px;border:1px solid #ddcdb6;border-left:4px solid #95795b;background:#f8f1e6;border-radius:5px}.today-closed>strong{font-family:var(--serif);font-size:25px;font-weight:400;line-height:1.35;display:block;margin-bottom:11px}.today-closed p{font-size:13px;line-height:1.9;margin:0;color:var(--muted)}.today-closed a{color:var(--green);font-weight:600;text-underline-offset:4px}
@media(max-width:600px){.today-closed{padding:20px 18px}.today-closed>strong{font-size:24px}.today-closed p{font-size:12px}}

.today-conditional{font-size:11px;line-height:1.8;margin:18px 0 0;padding:13px 16px;background:#f8f3e8;border-left:3px solid #b3a078;border-radius:3px;color:#746548}
@media(max-width:600px){.today-conditional{font-size:10px;padding:12px 14px}}
