
/* AMA home 2026 — time-limited weekly challenge and event-based monthly calendar. */
.ama-weekly-home-promo{position:relative;overflow:hidden;background:linear-gradient(108deg,#1b1b25 0%,#482435 55%,#8c253d 100%);color:#fff;border-bottom:1px solid rgba(255,255,255,.14)}
.ama-weekly-home-promo:after{content:'∑';position:absolute;right:6%;top:-110px;color:rgba(255,255,255,.045);font:260px/1 Georgia,serif;pointer-events:none}
.ama-weekly-promo-inner{position:relative;z-index:1;display:flex;align-items:center;gap:20px;min-height:112px;padding-top:19px;padding-bottom:19px}
.ama-weekly-promo-icon{width:57px;height:57px;border-radius:15px;background:rgba(255,255,255,.12);display:grid;place-items:center;font:38px Georgia,serif;flex-shrink:0}
.ama-weekly-promo-copy{display:grid;gap:4px;min-width:0;flex:1}
.ama-weekly-promo-eyebrow{font-size:10px;letter-spacing:.18em;color:#f4bfc9;font-weight:800}
.ama-weekly-promo-copy strong{font-size:clamp(18px,2.1vw,25px);line-height:1.2;color:#fff}
.ama-weekly-promo-copy>span:last-child{font-size:13px;line-height:1.55;color:#f2dbe1}
.ama-weekly-promo-link{display:inline-flex;gap:18px;align-items:center;justify-content:center;white-space:nowrap;border-radius:10px;background:#fff;color:#722337;text-decoration:none;padding:14px 20px;font-weight:800;font-size:13px;transition:transform .2s,background .2s}
.ama-weekly-promo-link:hover{transform:translateY(-2px);background:#fff0f3}
.ama-home-calendar-section{background:#f7f7f8;border-top:1px solid #eeeeef;border-bottom:1px solid #ececee}
.ama-calendar-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px}
.ama-calendar-heading h2{font-size:clamp(28px,3.5vw,40px);letter-spacing:-.04em;line-height:1.15;margin:5px 0 9px;color:#1c1d23}
.ama-calendar-heading p{font-size:14px;line-height:1.7;color:#777983;margin:0;max-width:670px}
.ama-calendar-all{flex-shrink:0;color:#a22741;font-size:13px;font-weight:800;text-decoration:none;border-bottom:1px solid #cd8c9b;padding-bottom:5px}
.ama-calendar-layout{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(265px,1fr);gap:21px;align-items:stretch}
.ama-calendar-card,.ama-calendar-agenda{min-width:0;background:#fff;border:1px solid #e8e8ec;border-radius:20px;box-shadow:0 14px 45px rgba(23,24,34,.045);overflow:hidden}
.ama-calendar-card{padding:24px}
.ama-calendar-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:23px}
.ama-calendar-caption{font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:#9999a3}
.ama-calendar-toolbar h3{color:#1f1f28;font-size:24px;margin:5px 0 0;line-height:1.2;letter-spacing:-.035em}
.ama-calendar-toolbar h3 span{color:#9797a0;font-weight:450}
.ama-calendar-navigation{display:flex;gap:8px}
.ama-calendar-navigation a{display:grid;place-items:center;width:39px;height:39px;border:1px solid #e3e3e7;color:#363640;background:#fafafb;border-radius:11px;text-decoration:none;font-size:25px;line-height:1}
.ama-calendar-navigation a:hover{background:#fdecef;border-color:#efcbd3;color:#a0213a}
.ama-calendar-weekdays,.ama-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}
.ama-calendar-weekdays{margin-bottom:9px}
.ama-calendar-weekdays span{text-align:center;color:#9999a2;font-size:11px;font-weight:800;letter-spacing:.05em;padding:3px 0}
.ama-calendar-day{position:relative;box-sizing:border-box;min-width:0;min-height:96px;border:1px solid #efeff1;background:#fff;border-radius:10px;padding:7px;transition:background .18s,border-color .18s}
.ama-calendar-day.has-events{background:#fffaf9;border-color:#efd9dd}
.ama-calendar-day.is-outside{background:#f9f9fa;opacity:.45}
.ama-calendar-day.is-today{border-color:#b32846;box-shadow:inset 0 0 0 1px #b32846}
.ama-calendar-day-number{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:50%;font-size:12px;font-weight:800;color:#393943;line-height:1}
.ama-calendar-day.is-today .ama-calendar-day-number{background:#b32846;color:#fff}
.ama-calendar-event-dot{display:inline-block;width:7px;height:7px;flex-shrink:0;border-radius:50%;background:#bf2948}
.ama-calendar-day>.ama-calendar-event-dot{position:absolute;top:16px;right:12px}
.ama-calendar-day-events{display:grid;gap:3px;margin-top:4px}
.ama-calendar-mini-event{display:block;padding:4px 5px;border-radius:4px;background:#ffe8ec;color:#802139;font-size:9px;font-weight:750;text-decoration:none;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.ama-calendar-mini-event:hover{background:#fbd6df}
.ama-calendar-more-events{font-size:10px;color:#ad2b49;font-weight:800;text-decoration:none}
.ama-calendar-legend{display:flex;align-items:center;gap:9px;color:#888994;font-size:12px;padding-top:17px}
.ama-calendar-agenda{display:flex;flex-direction:column}
.ama-calendar-agenda-head{padding:25px 24px 20px;border-bottom:1px solid #ececf0}
.ama-calendar-agenda-kicker{font-size:10px;letter-spacing:.16em;font-weight:800;color:#b4304b}
.ama-calendar-agenda-head h3{font-size:22px;color:#24242b;letter-spacing:-.035em;margin:6px 0 5px}
.ama-calendar-agenda-count{font-size:12px;color:#91919c}
.ama-calendar-agenda-list{padding:9px 15px 15px;overflow-y:auto;max-height:505px}
.ama-calendar-agenda-item{display:flex;gap:13px;align-items:center;padding:15px 8px;text-decoration:none;border-bottom:1px solid #efeff2;color:#22232d}
.ama-calendar-agenda-item:last-child{border-bottom:0}
.ama-calendar-agenda-item:hover{background:#fbf5f7}
.ama-calendar-agenda-date{display:grid;align-content:center;justify-items:center;flex-shrink:0;width:46px;height:51px;border-radius:10px;background:#f7edf0;color:#a52944}
.ama-calendar-agenda-date strong{font-size:20px;line-height:1.12}
.ama-calendar-agenda-date small{font-size:10px;text-transform:uppercase;font-weight:700}
.ama-calendar-agenda-info{display:grid;gap:5px;min-width:0;flex:1}
.ama-calendar-agenda-info strong{font-size:13px;line-height:1.4;overflow-wrap:anywhere}
.ama-calendar-agenda-info small{font-size:11px;color:#8d8d96;line-height:1.4}
.ama-calendar-agenda-arrow{font-size:17px;color:#bb5269}
.ama-calendar-no-events{padding:54px 18px;text-align:center;color:#777a85;display:grid;justify-items:center;gap:9px}
.ama-calendar-no-events>span{font-size:32px;color:#af5467}
.ama-calendar-no-events strong{font-size:15px;color:#363640}
.ama-calendar-no-events p{max-width:230px;margin:0;font-size:12px;line-height:1.65}
@media(max-width:970px){.ama-calendar-layout{grid-template-columns:minmax(0,1fr)}.ama-calendar-agenda-list{max-height:320px}.ama-calendar-day{min-height:100px}}
@media(max-width:620px){.ama-weekly-promo-inner{flex-wrap:wrap;gap:12px;padding-top:16px;padding-bottom:16px}.ama-weekly-promo-icon{width:45px;height:45px;font-size:30px}.ama-weekly-promo-copy{flex-basis:calc(100% - 60px)}.ama-weekly-promo-link{width:100%;box-sizing:border-box;padding:12px 15px}.ama-calendar-heading{align-items:flex-start;flex-wrap:wrap;gap:12px}.ama-calendar-card{padding:14px 9px}.ama-calendar-layout{gap:15px}.ama-calendar-toolbar{padding:0 6px}.ama-calendar-toolbar h3{font-size:21px}.ama-calendar-weekdays,.ama-calendar-grid{gap:3px}.ama-calendar-day{padding:4px;min-height:60px;border-radius:7px}.ama-calendar-day-number{width:21px;height:21px;font-size:11px}.ama-calendar-day>.ama-calendar-event-dot{top:10px;right:6px;width:5px;height:5px}.ama-calendar-day-events{margin-top:5px}.ama-calendar-mini-event{font-size:8px;line-height:1.2;padding:3px 1px;text-align:center;overflow:hidden}.ama-calendar-agenda-head{padding:21px 19px}.ama-calendar-agenda-list{padding:7px 11px 12px}}
@media(max-width:380px){.ama-calendar-mini-event{font-size:7px}.ama-calendar-day{min-height:56px}.ama-calendar-weekdays span{font-size:9px}}
@media(prefers-reduced-motion:reduce){.ama-weekly-promo-link,.ama-calendar-day{transition:none}}
