/* Campaign article page; shares the header, footer and tokens from /styles.css. */
.event-main {background:var(--white)}
.event-container {max-width:1040px;padding-block:32px 84px}
.event-breadcrumb {font-size:.875rem;line-height:1.8;color:var(--muted)}
.event-breadcrumb ol {display:flex;flex-wrap:wrap;gap:12px;list-style:none;margin:0;padding:0}
.event-breadcrumb li+li::before {content:'/';margin-right:12px;color:#999}
.event-breadcrumb a {text-decoration:underline;text-underline-offset:4px}
.event-breadcrumb a:hover {color:var(--red)}
.event-page a[aria-current='page'] {text-decoration:underline;text-underline-offset:6px;text-decoration-color:var(--red)}

.event-heading {margin-top:44px;padding-bottom:30px;border-bottom:2px solid var(--black)}
.event-heading .eyebrow {font-size:.875rem;letter-spacing:.14em;margin-bottom:10px}
.event-heading h1 {font-size:clamp(1.875rem,3.6vw,2.75rem);font-weight:700;line-height:1.45;letter-spacing:.04em}
.event-date {display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin-top:20px;font-size:1rem;line-height:1.8}
.event-date-label {font-size:.8125rem;font-weight:700;letter-spacing:.08em;color:#fff;background:var(--black);padding:2px 10px}
.event-date time {font-family:var(--display);font-size:1.375rem;font-weight:800;letter-spacing:.02em}
.event-date small {font-size:.8125rem;color:var(--muted)}

.event-banner {margin:36px 0 0}
.event-banner img {display:block;width:100%;height:auto;border:1px solid var(--line)}

.event-section {margin-top:72px}
.event-section-head {padding-bottom:22px;border-bottom:1px solid var(--line)}
.event-label {font-family:var(--display);font-size:1rem;font-weight:800;letter-spacing:.14em;color:var(--red);margin:0 0 6px}
.event-section-head h2 {font-size:clamp(1.5rem,2.8vw,2rem);font-weight:700;line-height:1.5;letter-spacing:.04em;margin:0}
.event-lead {font-size:1rem;line-height:1.9;margin:12px 0 0}
.event-section p {font-size:1rem;line-height:2;margin:14px 0 0}
.event-note {font-size:.875rem!important;color:var(--muted)}

.event-steps {list-style:none;margin:0;padding:0}
.event-step {display:grid;grid-template-columns:96px minmax(0,1fr);gap:28px;padding:34px 0;border-bottom:1px solid var(--line)}
.event-step-number {font-family:var(--display);font-size:4rem!important;font-weight:800;line-height:.9!important;color:var(--red);margin:0!important;letter-spacing:-.02em}
.event-step-body h3 {font-size:clamp(1.25rem,2.2vw,1.5rem);font-weight:700;line-height:1.5;margin:0}
.event-step-body h4 {font-size:1rem;font-weight:700;line-height:1.8;margin:22px 0 0;padding-left:12px;border-left:3px solid var(--red)}
.event-prizes {list-style:none;margin:16px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.event-prizes li {font-size:.875rem;font-weight:700;line-height:1.6;padding:6px 12px;background:var(--paper);border:1px solid var(--line)}

.event-complete .event-section-head {border-bottom:0;padding-bottom:0}
.event-bonuses {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:28px}
.event-bonus {padding:28px 28px 30px;background:var(--paper);border-top:3px solid var(--black)}
.event-bonus-special {background:#111;color:#fff;border-top-color:var(--red)}
.event-bonus-special .event-note {color:#c9c9c9}
.event-bonus-tag {display:inline-block;font-size:.8125rem!important;font-weight:700;line-height:1.6!important;letter-spacing:.06em;margin:0!important;padding:3px 10px;border:1px solid currentColor}
.event-bonus h3 {font-size:1.25rem;font-weight:700;line-height:1.6;margin:16px 0 0}
.event-complete-note {margin-top:20px!important}

.event-apply {padding:36px 40px 40px;background:var(--paper);border:1px solid var(--line)}
.event-apply .event-section-head {border-bottom:0;padding-bottom:0}
.event-line-button {margin-top:26px;min-width:min(100%,360px)}
.event-line-button>span:nth-child(2) {white-space:nowrap}

.event-back {margin-top:48px;display:flex;justify-content:flex-end}

@media(max-width:760px) {
  .event-container {width:calc(100% - 48px);padding-block:24px 58px}
  .event-heading {margin-top:32px;padding-bottom:24px}
  .event-banner {margin-top:26px}
  .event-section {margin-top:52px}
  .event-step {grid-template-columns:1fr;gap:6px;padding:28px 0}
  .event-step-number {font-size:3rem!important}
  .event-bonuses {grid-template-columns:1fr;gap:16px}
  .event-bonus {padding:24px 22px 26px}
  .event-apply {padding:28px 22px 30px}
  .event-line-button {width:100%}
  .event-back {justify-content:flex-start;margin-top:36px}
}
@media(max-width:360px) {
  .event-container {width:calc(100% - 36px)}
}
