.page-content:has(.promo-calendar) .page-header,.promo-calendar~.page-header,body:has(.promo-calendar) .page-title{display:none}.promo-calendar{background:#f8f9fa;padding:2rem 0 3rem}.promo-calendar-container{max-width:1200px;margin:0 auto;padding:0 1rem}.promo-calendar-header{display:flex;flex-direction:column;align-items:center;text-align:center;gap:1.5rem;padding:2rem;margin-bottom:2.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.06)}.promo-calendar-title{font-family:var(--font-heading);font-size:2rem;font-weight:700;color:var(--dark-grey);margin:0;letter-spacing:-.02em}.promo-calendar-subtitle{font-family:var(--font-display);font-size:1.0625rem;color:#6b7280;margin:0;max-width:400px}.promo-calendar-subscribe-btn{display:inline-flex;align-items:center;gap:.625rem;padding:.875rem 1.75rem;background-color:var(--rust);color:#fff;border:none;border-radius:8px;font-family:var(--font-display);font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s ease}.promo-calendar-subscribe-btn:hover{background-color:var(--dark-brown);transform:translateY(-2px);box-shadow:0 4px 12px rgba(152,72,41,.3);color:#fff}.promo-calendar-subscribe-btn:visited{color:#fff}.promo-calendar-subscribe-btn i{font-size:1.125rem}.promo-section{margin-bottom:2.5rem}.promo-section-title{font-family:var(--font-heading);font-size:1.375rem;font-weight:700;color:var(--dark-grey);margin:0 0 1.25rem 0;display:flex;align-items:center;gap:.5rem}.promo-section-icon{font-size:1.25rem}.promo-now-grid{display:grid;grid-template-columns:1fr;gap:1rem}.promo-now-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px rgba(0,0,0,.06);border-left:4px solid var(--rust);transition:all .3s ease}.promo-now-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.1);transform:translateY(-2px)}.promo-now-title{font-family:var(--font-heading);font-size:1.125rem;font-weight:600;color:var(--dark-grey);margin:.75rem 0 .5rem;line-height:1.3}.promo-now-desc{font-family:var(--font-display);font-size:.9375rem;color:#6b7280;margin:0 0 1rem;line-height:1.5}.promo-now-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem}.promo-now-ends{font-family:var(--font-display);font-size:.875rem;font-weight:500;color:var(--rust)}.promo-now-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background-color:var(--forest-green);color:#fff;border-radius:6px;font-family:var(--font-display);font-size:.875rem;font-weight:600;text-decoration:none;transition:all .3s ease}.promo-now-btn:hover{background-color:var(--dark-green-grey);color:#fff}.promo-now-btn:visited{color:#fff}.promo-upcoming-list{background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.06);overflow:hidden}.promo-upcoming-item{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid #f0f0f0;transition:background .2s ease}.promo-upcoming-item:last-child{border-bottom:none}.promo-upcoming-item:hover{background:#fafafa}.promo-upcoming-date{display:flex;flex-direction:column;align-items:center;min-width:48px;padding:.5rem;background:#f8f9fa;border-radius:8px}.promo-upcoming-month{font-family:var(--font-display);font-size:.6875rem;font-weight:600;color:var(--rust);text-transform:uppercase;letter-spacing:.05em}.promo-upcoming-day{font-family:var(--font-display);font-size:1.375rem;font-weight:700;color:var(--dark-grey);line-height:1}.promo-upcoming-info{min-width:0}.promo-upcoming-title{font-family:var(--font-heading);font-size:1rem;font-weight:600;color:var(--dark-grey);margin:0;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.promo-upcoming-desc{font-family:var(--font-display);font-size:.8125rem;color:#6b7280;margin:.25rem 0 0;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.promo-upcoming-actions{display:flex;gap:.5rem}.promo-type-badge{display:inline-block;padding:.25rem .625rem;font-family:var(--font-display);font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;border-radius:4px;white-space:nowrap}.promo-type-bogo{background:#fef3c7;color:#92400e}.promo-type-sale{background:#dcfce7;color:#166534}.promo-type-drop{background:#e0e7ff;color:#3730a3}.promo-type-freebie{background:#fce7f3;color:#9d174d}.promo-type-promo{background:#f3f4f6;color:#374151}.promo-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;padding:.5rem 1rem;border-radius:6px;font-family:var(--font-display);font-size:.8125rem;font-weight:600;text-decoration:none;transition:all .2s ease;white-space:nowrap}.promo-action-btn-sm,.promo-action-sm{padding:.375rem .75rem;font-size:.75rem}.promo-action-primary{background-color:var(--forest-green);color:#fff;border:1.5px solid var(--forest-green)}.promo-action-primary:hover{background-color:var(--dark-green-grey);border-color:var(--dark-green-grey);color:#fff}.promo-action-primary:visited{color:#fff}.promo-action-secondary{background-color:#fff;color:var(--dark-grey);border:1.5px solid #d1d5db}.promo-action-secondary:hover{border-color:var(--dark-grey);background:#f9fafb;color:var(--dark-grey)}.promo-action-secondary:visited{color:var(--dark-grey)}.promo-section-all{margin-bottom:0}.promo-all-toggle{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1rem;background:#fff;border:1.5px solid #e5e7eb;border-radius:8px;font-family:var(--font-display);font-size:.9375rem;font-weight:600;color:var(--dark-grey);cursor:pointer;transition:all .2s ease}.promo-all-toggle:hover{border-color:var(--dark-grey);background:#fafafa}.promo-all-toggle[aria-expanded=true]{border-radius:8px 8px 0 0;border-bottom-color:transparent}.promo-all-toggle-count{color:#6b7280;font-weight:500}.promo-all-toggle-icon{transition:transform .3s ease;color:#6b7280}.promo-all-toggle[aria-expanded=true] .promo-all-toggle-icon{transform:rotate(180deg)}.promo-all-table-wrapper{background:#fff;border:1.5px solid #e5e7eb;border-top:none;border-radius:0 0 8px 8px;overflow:hidden}.promo-all-table{width:100%;border-collapse:collapse}.promo-all-table thead{background:#f9fafb;border-bottom:1px solid #e5e7eb}.promo-all-table th{font-family:var(--font-display);font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;text-align:left;padding:.75rem 1rem}.promo-all-table th.promo-table-action{text-align:right}.promo-table-row{border-bottom:1px solid #f0f0f0;transition:background .2s ease}.promo-table-row:last-child{border-bottom:none}.promo-table-row:hover{background:#fafafa}.promo-all-table td{padding:.875rem 1rem;vertical-align:middle}.promo-table-date{width:70px}.promo-table-date-month{display:block;font-family:var(--font-display);font-size:.6875rem;font-weight:600;color:var(--rust);text-transform:uppercase;letter-spacing:.03em}.promo-table-date-day{display:block;font-family:var(--font-display);font-size:1.25rem;font-weight:700;color:var(--dark-grey);line-height:1}.promo-table-event{min-width:200px}.promo-table-event-title{display:block;font-family:var(--font-heading);font-size:.9375rem;font-weight:600;color:var(--dark-grey);line-height:1.3}.promo-table-event-desc{display:block;font-family:var(--font-display);font-size:.8125rem;color:#6b7280;margin-top:.125rem;line-height:1.4}.promo-table-type{width:90px}.promo-table-action{text-align:right;white-space:nowrap}.promo-table-action .promo-action-btn{margin-left:.375rem}.promo-loading{font-family:var(--font-display);font-size:.9375rem;color:#6b7280;text-align:center;padding:2rem}.promo-empty{font-family:var(--font-display);font-size:.9375rem;color:#6b7280;text-align:center;padding:2rem;margin:0}.promo-error{font-family:var(--font-display);font-size:.9375rem;color:#dc2626;text-align:center;padding:2rem;background:#fef2f2;border-radius:8px}@media (min-width:768px){.promo-calendar{padding:3rem 0 4rem}.promo-calendar-container{padding:0 1.5rem}.promo-calendar-header{flex-direction:row;justify-content:space-between;text-align:left;padding:2rem 2.5rem}.promo-calendar-title{font-size:2.25rem}.promo-section-title{font-size:1.5rem}.promo-now-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem}.promo-upcoming-item{padding:1.125rem 1.5rem}}@media (min-width:1024px){.promo-calendar-container{padding:0 2rem}.promo-now-grid{grid-template-columns:repeat(4,1fr)}.promo-calendar-title{font-size:2.5rem}}@media (max-width:767px){.promo-upcoming-item{grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:.75rem 1rem}.promo-upcoming-date{grid-row:span 2}.promo-upcoming-info{grid-column:2}.promo-type-badge{display:none}.promo-upcoming-actions{grid-column:2;justify-content:flex-start}.promo-all-table,.promo-all-table tbody,.promo-all-table td,.promo-all-table th,.promo-all-table thead,.promo-all-table tr{display:block}.promo-all-table thead{display:none}.promo-table-row{padding:1rem;display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.promo-all-table td{padding:0}.promo-table-date{width:auto;flex-shrink:0;background:#f8f9fa;padding:.5rem .75rem;border-radius:6px;text-align:center;min-width:50px}.promo-table-event{flex:1;min-width:0}.promo-table-event-desc,.promo-table-event-title{white-space:normal}.promo-table-type{display:none}.promo-table-action{width:100%;text-align:left;margin-top:.25rem}.promo-table-action .promo-action-btn{margin-left:0}}