.benefits-page .benefits-heading{padding:30px 0;align-items:center}
.benefits-page .benefits-heading .intro{max-width:650px}
.benefits-page .directory{padding-top:0}
.benefit-tabs{display:flex;gap:28px;border-bottom:1px solid var(--line);margin-bottom:24px}
.benefit-tabs button{display:flex;align-items:center;gap:9px;min-height:60px;padding:0 2px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font-size:15px;font-weight:600;white-space:nowrap}
.benefit-tabs button[aria-selected=true]{color:var(--brand);border-bottom-color:var(--brand)}
.benefit-tabs button:hover{color:var(--text)}
.benefit-tabs button>span{font-size:11px;font-weight:400;padding:1px 6px;border-radius:4px;background:var(--panel-2);color:var(--muted)}
.benefit-tabs button[aria-selected=true]>span{background:var(--soft);color:var(--brand)}
.benefit-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.benefit-panel-heading h2{font-size:20px}
.benefit-panel-heading p{font-size:13px;color:var(--muted);margin:6px 0 0}
.benefit-search-tools{display:flex;gap:10px;align-items:center;min-width:0}
.benefit-search-tools select{height:36px;border:1px solid var(--line);border-radius:6px;padding:0 28px 0 10px;background:var(--panel);color:var(--text);font:inherit;font-size:12px;max-width:100%}
.benefit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}
.benefit-grid .directory-empty{grid-column:1/-1}
.benefit-event{min-width:0;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:22px;display:flex;flex-direction:column;align-self:stretch}
.benefit-identity{display:flex;gap:10px;align-items:center;min-width:0}
.benefit-identity img,.benefit-logo-fallback{width:36px;height:36px;flex-shrink:0;border-radius:6px;object-fit:contain;background:#fff;padding:3px}
.benefit-logo-fallback{display:grid;place-items:center;background:var(--soft);color:var(--brand);font-weight:600;font-size:18px}
.benefit-identity h3{margin:0;font-size:15px;font-weight:600;overflow-wrap:anywhere;line-height:1.4}
.benefit-identity>div>span{font-size:11px;color:var(--muted)}
.benefit-event-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.event-state{font-size:11px;padding:3px 7px;border-radius:4px;white-space:nowrap;color:var(--muted);background:var(--panel-2)}
.event-state.active{background:var(--soft);color:var(--brand)}
.event-state.upcoming{background:#b082161c;color:#bd942f}
.benefit-event h4{font-size:17px;line-height:1.65;font-weight:600;margin:20px 0 10px;overflow-wrap:anywhere}
.benefit-summary{font-size:13px;color:var(--muted);line-height:1.8;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.benefit-event>.benefit-summary{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}
.benefit-dates{font-size:11px;line-height:1.8;color:var(--muted);margin:16px 0}
.benefit-dates>span{display:block;font-size:10px}
.benefit-details{border-top:1px solid var(--line);margin-top:auto}
.benefit-details summary{display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:46px;font-size:12px;list-style:none;cursor:pointer;color:var(--text)}
.benefit-details summary::-webkit-details-marker{display:none}
.benefit-details summary:hover{color:var(--brand)}
.benefit-details[open] summary svg{transform:rotate(180deg)}
.benefit-details h5{font-size:12px;color:var(--muted);margin:14px 0 5px}
.benefit-details p{font-size:13px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 10px}
.benefit-details a{color:var(--brand);font-size:12px}
.benefit-details>div{padding-bottom:16px}
.benefit-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:12px}
.benefit-actions a{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:36px;padding:8px 12px;border-radius:6px;font-size:12px;line-height:1.5}
.benefit-primary{background:var(--soft);color:var(--brand);border:1px solid var(--line)}
.benefit-primary:hover{border-color:var(--brand)}
.benefit-secondary{color:var(--muted)}
.benefit-secondary:hover{color:var(--brand);background:var(--panel-2)}
.benefit-grid.rebates-view{display:block;border-top:1px solid var(--line)}
.rebate-list-heading,.rebate-card{display:grid;grid-template-columns:minmax(140px,1fr) minmax(160px,1.4fr) minmax(160px,1.4fr) minmax(100px,.8fr) 110px;gap:24px;align-items:start;padding:18px 20px;border-bottom:1px solid var(--line)}
.rebate-list-heading{font-size:11px;color:var(--muted);background:var(--panel-2);padding-top:12px;padding-bottom:12px}
.rebate-card{background:var(--panel)}
.rebate-card:hover{background:var(--suite-panel)}
.rebate-card .benefit-actions{margin:0;gap:0;align-items:flex-start}
.rebate-cell{min-width:0;overflow-wrap:anywhere;font-size:12px;line-height:1.8}
.rebate-cell p{margin:0;white-space:pre-wrap}
.rebate-cell-label{display:none}
.rebate-code code{font:12px ui-monospace,monospace;white-space:pre-wrap;color:var(--brand)}
.rebate-empty{color:var(--muted)}
.benefits-page .contact{margin-top:36px}
.benefits-notice{font-size:12px;color:var(--muted);line-height:1.8;margin:20px 0 0}
@media(max-width:1100px){.benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rebate-list-heading,.rebate-card{grid-template-columns:minmax(100px,1fr) minmax(110px,1.2fr) minmax(110px,1.2fr) minmax(80px,.8fr) 92px;gap:14px;padding-left:16px;padding-right:16px}}
@media(max-width:700px){.benefit-grid{grid-template-columns:minmax(0,1fr)}.benefit-event{padding:18px}.benefit-tabs{gap:22px;margin-bottom:20px}.benefit-tabs button{font-size:14px;min-height:54px}.benefit-panel-heading h2{font-size:18px}.benefit-search-tools{width:100%;flex-wrap:wrap}.benefit-search-tools select{width:100%}.benefits-page .benefits-heading{align-items:flex-start;padding:24px 0 20px}.rebate-list-heading{display:none}.rebate-card{grid-template-columns:minmax(0,1fr);gap:16px;padding:18px 16px}.rebate-cell-label{display:block;font-size:11px;color:var(--muted);margin-bottom:5px}.rebate-card .benefit-actions{display:block}.benefit-event h4{font-size:16px}}
