/* Hallmark · macrostructure: Marquee Hero · tone: sports editorial premium · anchor hue: Motion Cyan · theme: Motion Events locked design system · enrichment: E2 full-bleed owned video · nav/footer: existing N10 / Ft3 shell · honest/chrome/tokens: pass (56–58) · mobile: pass target (36, 59, 61–69) */
/* Hallmark · pre-emit critique: P5 H5 E5 S5 R5 V4 */
@import url("./tokens.css?v=ef457f4950a7");

html, body { overflow-x: clip; }
.home-page { background: var(--home-surface-light); color: var(--home-ink); font-family: var(--home-font-body); }
.home-page *, .home-page *::before, .home-page *::after { box-sizing: border-box; }
.home-page img { display: block; max-width: 100%; }
.home-frame { width: min(100%, var(--home-content)); margin-inline: auto; padding-inline: var(--home-gutter); }
.home-main { min-width: 0; }
.home-hero { isolation: isolate; min-height: min(52rem, 100svh); display: grid; align-items: end; position: relative; overflow: clip; background: var(--home-surface-ink); color: var(--home-ink-on-dark); }
.home-hero__poster, .home-hero__video, .home-hero__veil { position: absolute; inset: 0; width: 100%; height: 100%; }
.home-hero__poster, .home-hero__video { object-fit: cover; }
.home-hero__video { opacity: 0; transition: opacity var(--home-duration-standard) var(--home-ease-out); }
.home-hero__video.is-playing { opacity: 1; }
.home-hero__veil { z-index: 1; background: linear-gradient(90deg, var(--home-surface-ink) 0%, color-mix(in srgb, var(--home-surface-ink) 78%, transparent) 43%, color-mix(in srgb, var(--home-surface-ink) 26%, transparent) 100%); }
.home-hero__inner { width: min(100%, var(--home-wide)); margin-inline: auto; padding: calc(var(--me-shell-header-height) + var(--home-space-xl)) var(--home-gutter) calc(var(--home-space-2xl) + var(--home-space-lg)); position: relative; z-index: 2; }
.home-hero__kicker, .home-eyebrow, .home-featured-event__label { margin: 0 0 var(--home-space-sm); font-family: var(--home-font-display); font-size: var(--me-font-size-sm); font-weight: var(--me-weight-bold); letter-spacing: .1em; text-transform: uppercase; }
.home-hero h1, .home-page h2, .home-page h3 { font-family: var(--home-font-display); font-weight: var(--me-weight-bold); line-height: var(--me-line-tight); overflow-wrap: anywhere; }
.home-hero h1 { max-width: 12ch; margin: 0; font-size: var(--home-display); letter-spacing: -.03em; text-transform: uppercase; }
.home-hero__lede { max-width: 42rem; margin: var(--home-space-md) 0 0; font-size: var(--me-font-size-lg); line-height: var(--me-line-body); }
.home-hero__actions { display: flex; flex-wrap: wrap; gap: var(--home-space-sm); margin-top: var(--home-space-lg); }
.home-button { min-height: 2.75rem; display: inline-flex; align-items: center; justify-content: center; padding-inline: var(--home-space-md); border: 1px solid transparent; border-radius: var(--home-radius); font-family: var(--home-font-display); font-size: var(--me-font-size-sm); font-weight: var(--me-weight-bold); letter-spacing: .04em; text-decoration: none; text-transform: uppercase; white-space: nowrap; transition: transform var(--home-duration-fast) var(--home-ease-out), background-color var(--home-duration-fast) var(--home-ease-out), color var(--home-duration-fast) var(--home-ease-out), border-color var(--home-duration-fast) var(--home-ease-out); }
.home-button--primary { background: var(--home-accent); color: var(--home-accent-ink); border-color: var(--home-accent); }
.home-button--quiet { background: color-mix(in srgb, var(--home-surface-ink) 48%, transparent); color: var(--home-ink-on-dark); border-color: var(--home-rule-dark); }
.home-featured-event { width: min(100%, 26rem); margin-top: var(--home-space-xl); padding: var(--home-space-md); background: color-mix(in srgb, var(--home-surface-ink-raised) 88%, transparent); border-inline-start: .3rem solid var(--home-accent); }
.home-featured-event__date, .home-featured-event__distances { margin: 0; color: var(--home-ink-on-dark); font-size: var(--me-font-size-sm); }
.home-featured-event__title { margin: var(--home-space-xs) 0; font-size: var(--home-subtitle); text-transform: uppercase; }
.home-featured-event__cta { display: inline-flex; min-height: 2.75rem; align-items: center; margin-top: var(--home-space-sm); color: var(--home-ink-on-dark); font-weight: var(--me-weight-bold); white-space: nowrap; }
.home-quick { background: var(--home-surface-ink); color: var(--home-ink-on-dark); }
.home-quick__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); padding-block: var(--home-space-md); }
.home-quick a { min-height: 7rem; display: flex; flex-direction: column; justify-content: flex-end; gap: var(--home-space-xs); padding: var(--home-space-sm); color: inherit; border-block-start: 1px solid var(--home-rule-dark); font-family: var(--home-font-display); font-size: var(--me-font-size-xl); font-weight: var(--me-weight-bold); line-height: var(--me-line-tight); text-decoration: none; text-transform: uppercase; }
.home-quick a span { color: color-mix(in srgb, var(--home-ink-on-dark) 78%, transparent); font-family: var(--home-font-body); font-size: var(--me-font-size-sm); font-weight: var(--me-weight-regular); line-height: var(--me-line-body); text-transform: none; }
.home-section { padding-block: var(--home-space-2xl); }
.home-section-head { display: grid; gap: var(--home-space-md); align-items: end; margin-bottom: var(--home-space-lg); }
.home-section-head h2, .home-split__copy h2, .home-experience h2, .home-destination h2, .home-zero-waste h2, .home-final-cta h2 { max-width: 16ch; margin: 0; font-size: var(--home-title); letter-spacing: -.025em; text-transform: uppercase; }
.home-section-head__body { max-width: 38rem; margin: 0; color: var(--home-ink-muted); line-height: var(--me-line-body); }
.home-text-link { display: inline-flex; align-items: center; min-height: 2.75rem; width: fit-content; color: var(--home-ink); border-block-end: 2px solid var(--home-accent); font-weight: var(--me-weight-bold); line-height: 1.2; text-decoration: none; white-space: nowrap; }
.home-events { background: var(--home-surface-soft); }
.home-event-grid { display: grid; grid-template-columns: minmax(0, 1fr); border-block-start: 1px solid var(--home-rule); }
.home-event-card { min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--home-space-xs); padding: var(--home-space-md) 0; border-block-end: 1px solid var(--home-rule); }
.home-event-card__meta, .home-event-card__place, .home-event-card__distances { margin: 0; color: var(--home-ink-muted); font-size: var(--me-font-size-sm); }
.home-event-card__title { margin: 0; font-size: var(--home-subtitle); text-transform: uppercase; }
.home-empty-state { padding-block: var(--home-space-lg); }
.home-empty-state p { margin-top: 0; }
.home-split { display: grid; gap: var(--home-space-lg); }
.home-split__media { min-width: 0; }
.home-split__media img { width: 100%; aspect-ratio: 5 / 4; object-fit: cover; }
.home-split__copy { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; justify-content: center; }
.home-split__copy p:not(.home-eyebrow), .home-experience__copy p:not(.home-eyebrow), .home-destination__copy p:not(.home-eyebrow), .home-zero-waste p:not(.home-eyebrow) { max-width: 42rem; margin: var(--home-space-md) 0; font-size: var(--me-font-size-lg); line-height: var(--me-line-body); }
.home-services { background: var(--home-surface-ink); color: var(--home-ink-on-dark); }
.home-services .home-section-head__body { color: color-mix(in srgb, var(--home-ink-on-dark) 75%, transparent); }
.home-service-sheet { border-block-start: 1px solid var(--home-rule-dark); }
.home-service-sheet a { min-height: 4.25rem; display: flex; align-items: center; padding-block: var(--home-space-sm); color: inherit; border-block-end: 1px solid var(--home-rule-dark); font-family: var(--home-font-display); font-size: var(--home-subtitle); font-weight: var(--me-weight-bold); line-height: var(--me-line-tight); text-decoration: none; text-transform: uppercase; }
.home-experience { background: var(--home-surface-cyan); }
.home-experience .home-frame { display: grid; gap: var(--home-space-lg); }
.home-experience__copy { min-width: 0; align-self: center; }
.home-experience__image img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.home-destination { position: relative; min-height: 38rem; display: grid; align-items: end; overflow: clip; color: var(--home-ink-on-dark); background: var(--home-surface-ink); }
.home-destination__media { position: absolute; inset: 0; }
.home-destination__media::after { content: ""; position: absolute; inset: 0; background: color-mix(in srgb, var(--home-surface-ink) 62%, transparent); }
.home-destination__media img { width: 100%; height: 100%; object-fit: cover; }
.home-destination__copy { position: relative; padding-block: var(--home-space-2xl); }
.home-proof, .home-testimonials { background: var(--home-surface-light); }
.home-partner-wall { min-height: 1rem; display: flex; flex-wrap: wrap; align-items: center; gap: var(--home-space-lg); }
.home-partner-wall img { max-width: 11rem; max-height: 3rem; width: auto; height: auto; object-fit: contain; filter: grayscale(1); }
.home-testimonial-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--home-space-md); }
.home-testimonial { margin: 0; padding: var(--home-space-md) 0; border-block-start: 1px solid var(--home-rule); font-size: var(--me-font-size-lg); line-height: var(--me-line-body); }
.home-testimonial p, .home-testimonial footer { margin: 0; }
.home-testimonial footer { margin-top: var(--home-space-sm); color: var(--home-ink-muted); font-size: var(--me-font-size-sm); }
.home-zero-waste { background: var(--home-surface-soft); }
.home-zero-waste__grid { display: grid; gap: var(--home-space-lg); align-items: center; }
.home-zero-waste__grid img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-block-end: .45rem solid var(--home-accent); }
.home-blog-grid { display: grid; grid-template-columns: minmax(0, 1fr); border-block-start: 1px solid var(--home-rule); }
.home-blog-item { padding: var(--home-space-md) 0; border-block-end: 1px solid var(--home-rule); }
.home-blog-item h3 { margin: 0; font-size: var(--home-subtitle); text-transform: uppercase; }
.home-blog-item p { color: var(--home-ink-muted); line-height: var(--me-line-body); }
.home-final-cta { padding-block: var(--home-space-2xl); background: var(--home-surface-ink); color: var(--home-ink-on-dark); }
.home-final-cta h2 { max-width: 19ch; margin-bottom: var(--home-space-lg); }
.home-page a:focus-visible, .home-page button:focus-visible { outline: 3px solid var(--home-focus); outline-offset: 3px; }
@media (hover: hover) and (pointer: fine) { .home-button:hover { transform: translateY(-2px); } .home-button--primary:hover { background: var(--home-surface-light); border-color: var(--home-surface-light); color: var(--home-ink); } .home-button--quiet:hover { background: var(--home-surface-light); color: var(--home-ink); } .home-text-link:hover { color: var(--me-color-link); } .home-quick a:hover, .home-service-sheet a:hover { color: var(--home-accent); } .home-event-card:hover .home-event-card__title, .home-blog-item:hover h3 { color: var(--me-color-link); } }
.home-button:active { transform: translateY(1px); }
.home-button[aria-disabled="true"], .home-button:disabled, .home-page a[aria-disabled="true"] { opacity: .55; cursor: not-allowed; pointer-events: none; }
@media (max-width: 39.99rem) { .home-hero__inner { padding-bottom: calc(var(--home-space-2xl) + 4.75rem); } }
@media (min-width: 40rem) { .home-quick__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } .home-quick a:not(:first-child) { border-inline-start: 1px solid var(--home-rule-dark); } .home-event-grid, .home-blog-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } .home-event-card, .home-blog-item { min-height: 15rem; padding: var(--home-space-md); border-inline-end: 1px solid var(--home-rule); } .home-event-card:last-child, .home-blog-item:last-child { border-inline-end: 0; } .home-event-card .home-text-link, .home-blog-item .home-text-link { margin-top: auto; } .home-testimonial-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 60rem) { .home-section-head { grid-template-columns: minmax(0, 1fr) minmax(0, .75fr); } .home-split { grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); } .home-split__media { order: 2; } .home-experience .home-frame { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); } .home-zero-waste__grid { grid-template-columns: minmax(0, 1fr) minmax(0, .8fr); } }
@media (min-width: 90rem) { .home-hero { min-height: 54rem; } .home-section { padding-block: calc(var(--home-space-2xl) + var(--home-space-lg)); } .home-hero__lede { font-size: var(--home-subtitle); } }
@media (prefers-reduced-motion: reduce) { .home-hero__video { display: none; } .home-page *, .home-page *::before, .home-page *::after { scroll-behavior: auto !important; transition-duration: .15s !important; animation-duration: .15s !important; animation-iteration-count: 1 !important; } }
