/* Events: scoped editorial landing page. Location ordering is deliberately disabled. */
body.page-events #hero-container { background: #082e2a; padding-top: 0; min-height: 128px; }
.events-page { --event-ink:#082e2a; --event-lime:#daff75; --event-paper:#f5f3ed; color:var(--event-ink); background:var(--event-paper); }
.events-page *, .events-page *::before, .events-page *::after { box-sizing:border-box; }
.events-shell { width:min(1280px, calc(100% - 112px)); margin-inline:auto; }
.events-page a { color:inherit; }
.events-page a:focus-visible { outline:3px solid currentColor; outline-offset:6px; }
.events-page .events-eyebrow { font-family:'Stratos Medium',sans-serif; font-size:12px; line-height:1.5; letter-spacing:.13em; text-transform:uppercase; margin:0 0 28px; }
.events-page h1, .events-page h2, .events-page h3 { margin-top:0; letter-spacing:-.045em; }
.events-page h2 { font-size:clamp(40px,4.6vw,68px); line-height:1.06; margin-bottom:28px; }
.events-page h3 { font-size:28px; line-height:1.15; }
.events-page p { line-height:1.55; }
.events-hero { position:relative; isolation:isolate; background:var(--event-ink); color:white; padding:80px 0 28px; }
.events-hero-image { position:absolute; z-index:-2; inset:0; width:100%; height:100%; object-fit:cover; object-position:68% center; }
.events-hero::before { content:''; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,rgba(8,46,42,.98) 0%,rgba(8,46,42,.93) 29%,rgba(8,46,42,.55) 58%,rgba(8,46,42,.04) 100%); }
.events-hero .events-eyebrow { color:var(--event-lime); }
.events-page h1 { font-size:clamp(64px,7.8vw,116px); line-height:.96; margin:0 0 30px; max-width:800px; }
.events-page h1 span { color:var(--event-lime); }
.events-page .events-lead { font-size:clamp(23px,2.2vw,31px); line-height:1.25; margin:0 0 20px; }
.events-hero-copy { font-size:17px; max-width:430px; color:#e5eae5; margin-bottom:30px; }
.events-actions { display:flex; align-items:center; gap:28px; flex-wrap:wrap; }
.events-page .events-button { display:inline-flex; gap:28px; justify-content:space-between; align-items:center; background:var(--event-lime); color:var(--event-ink); padding:17px 24px; font-family:'Stratos Medium',sans-serif; font-size:15px; text-decoration:none; border:1px solid var(--event-lime); }
.events-page .events-button:hover { background:white; border-color:white; }
.events-page .events-text-link { display:inline-flex; align-items:center; gap:18px; font-size:16px; text-decoration:none; border-bottom:1px solid currentColor; padding-bottom:5px; }
.events-page .events-text-link:hover { text-decoration:underline; text-underline-offset:4px; }
.events-hero-foot { display:flex; justify-content:space-between; border-top:1px solid #ffffff45; padding-top:20px; margin-top:65px; font-size:12px; letter-spacing:.03em; }
.events-proof { background:var(--event-ink); color:white; border-top:1px solid #ffffff20; }
.events-proof-inner { display:flex; align-items:center; gap:55px; padding-block:34px; }
.events-proof p { flex:0 0 210px; margin:0; font-size:14px; color:#d0dbd2; }
.events-proof ul { padding:0; margin:0; list-style:none; display:flex; justify-content:space-between; gap:25px; width:100%; flex-wrap:wrap; font-size:18px; }
.events-section { padding:110px 0; scroll-margin-top:30px; }
.events-two-column { display:grid; grid-template-columns:1fr 1fr; gap:85px; }
.events-intro h2 span { color:#526959; }
.events-body { font-size:18px; }
.events-page .events-large-copy { font-size:26px; line-height:1.35; margin-bottom:24px; }
.events-service-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:42px; margin-top:60px; }
.events-service-grid article { border-top:1px solid #082e2a40; padding-top:22px; }
.events-number { display:block; font-family:'Stratos Medium',sans-serif; font-size:11px; line-height:1.5; text-transform:uppercase; letter-spacing:.08em; margin-bottom:28px; }
.events-service-grid p { font-size:16px; max-width:350px; }
.events-story { display:grid; grid-template-columns:1fr 1fr; background:#dce6d9; }
.events-story figure { position:relative; margin:0; min-height:560px; }
.events-story img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.events-story figcaption { position:absolute; bottom:20px; left:24px; background:var(--event-ink); color:white; font-size:11px; letter-spacing:.06em; padding:8px 12px; }
.events-story-copy { padding:85px clamp(36px,6vw,95px); }
.events-story-copy p:not(.events-eyebrow) { font-size:18px; }
.events-story-copy .events-text-link { margin-top:12px; }
.events-locations { background:var(--event-ink); color:white; }
.events-locations .events-eyebrow { color:var(--event-lime); }
.events-section-heading { display:flex; justify-content:space-between; gap:55px; align-items:end; margin-bottom:48px; }
.events-section-heading h2 { margin-bottom:0; }
.events-section-heading > p { max-width:350px; font-size:18px; margin:0 0 4px; }
.events-location-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.events-location { border:1px solid #ffffff55; padding:30px; display:flex; flex-direction:column; }
.events-page .events-location h3 { font-size:clamp(36px,4vw,58px); line-height:1.04; margin:24px 0 42px; }
.events-location:nth-child(2) { background:#ffffff08; }
.events-location:nth-child(3) { background:#b6e1fa; color:var(--event-ink); border-color:#b6e1fa; }
.events-location-button { display:flex; align-items:center; justify-content:space-between; gap:10px; width:100%; margin-top:auto; padding:16px 0 0; color:inherit; background:transparent; border:0; border-top:1px solid currentColor; font-family:'Stratos Regular',sans-serif; font-size:14px; text-align:left; }
.events-location-button:disabled { opacity:.6; cursor:not-allowed; }
.events-page .events-note { font-size:13px; color:#cedacf; margin:24px 0 22px; max-width:800px; }
.events-pricing { background:var(--event-lime); }
.events-price-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:42px; padding-block:32px; }
.events-price-grid article { padding-top:24px; border-top:1px solid #082e2a55; }
.events-price-grid .events-eyebrow { margin-bottom:24px; }
.events-price-grid h3 { font-size:clamp(48px,5.2vw,76px); line-height:1; white-space:nowrap; margin-bottom:22px; }
.events-price-grid h3 span { font-size:18px; letter-spacing:0; }
.events-price-grid h3.events-bespoke { font-size:clamp(40px,4.5vw,64px); }
.events-price-grid article > p:last-child { max-width:290px; font-size:16px; }
.events-price-detail { display:grid; grid-template-columns:1fr 1fr; gap:85px; border-top:1px solid #082e2a55; padding-top:24px; margin-top:12px; }
.events-price-detail p { font-size:14px; margin:0; }
.events-purpose h2 span { color:#526959; }
.events-purpose .events-text-link { margin-top:20px; }
.events-principles article { padding-block:26px; border-top:1px solid #082e2a40; }
.events-principles article:first-child { padding-top:0; border-top:0; }
.events-principles h3 { font-size:25px; }
.events-principles p { font-size:17px; margin-bottom:0; }
.events-cta { background:#b6e1fa; }
.events-cta h2 { font-size:clamp(44px,6.4vw,90px); max-width:1000px; }
.events-cta p:not(.events-eyebrow) { font-size:22px; }
.events-cta .events-actions { margin-top:32px; }
@media(min-width:971px) { body.page-events #hero-container > .container-fluid { height:128px; } }
@media(max-width:1000px) { .events-shell { width:calc(100% - 64px); } .events-two-column { gap:40px; } .events-proof-inner { gap:30px; } .events-proof ul { font-size:16px; justify-content:flex-start; } .events-location { padding:24px; } .events-price-grid { gap:24px; } .events-price-grid h3 { font-size:52px; } .events-price-grid h3.events-bespoke { font-size:45px; } }
@media(max-width:767px) {
 body.page-events { padding-top:110px; } body.page-events #hero-container { min-height:0; height:0; }
 .events-shell { width:calc(100% - 40px); } .events-hero { padding:60px 0 24px; } .events-hero-image { object-position:62% center; } .events-hero::before { background:linear-gradient(90deg,rgba(8,46,42,.96),rgba(8,46,42,.73) 65%,rgba(8,46,42,.45)); }
 .events-page h1 { font-size:clamp(54px,12vw,88px); } .events-hero-foot { margin-top:48px; gap:25px; font-size:11px; } .events-proof-inner { display:block; padding-block:28px; } .events-proof p { margin-bottom:22px; } .events-proof p br { display:none; } .events-proof ul { display:grid; grid-template-columns:1fr 1fr; gap:18px; font-size:15px; }
 .events-section { padding:64px 0; scroll-margin-top:125px; } .events-two-column, .events-story, .events-location-grid, .events-price-grid, .events-price-detail { grid-template-columns:1fr; gap:28px; }
 .events-service-grid { grid-template-columns:1fr; gap:28px; margin-top:36px; } .events-service-grid p { max-width:none; margin:0; } .events-number { margin-bottom:20px; }
 .events-story figure { min-height:340px; } .events-story-copy { padding:36px 20px 60px; } .events-story { gap:0; }
 .events-section-heading { display:block; margin-bottom:35px; } .events-section-heading > p { margin-top:24px; max-width:none; } .events-location { padding:26px; } .events-page .events-location h3 { font-size:48px; margin:10px 0 32px; }
 .events-price-grid { padding-block:0; } .events-price-grid h3 { font-size:64px; } .events-price-detail { gap:18px; margin-top:24px; } .events-page .events-large-copy { font-size:23px; }
 .events-cta p:not(.events-eyebrow) { font-size:19px; } .events-actions { gap:24px; }
}

.events-arrow::after { content:"\2197"; font-size:18px; }
.events-arrow-down::after { content:"\2193"; }

/* Official event marks retain their native artwork on a light, quiet strip. */
.events-proof { background:var(--event-paper); color:var(--event-ink); border-top:0; border-bottom:1px solid #082e2a20; }
.events-proof-inner { gap:40px; padding-block:40px; }
.events-proof p { color:var(--event-ink); flex-basis:170px; }
.events-proof ul { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:32px; align-items:center; }
.events-proof li { display:flex; justify-content:center; align-items:center; min-width:0; }
.events-proof img { display:block; width:100%; height:76px; max-width:205px; object-fit:contain; }
.events-proof img.events-logo-marathon { max-width:230px; }
.events-proof img.events-logo-escape { max-width:150px; }
@media(max-width:1000px) { .events-proof-inner { gap:24px; } .events-proof p { flex-basis:140px; } .events-proof ul { gap:20px; } }
@media(max-width:767px) { .events-proof-inner { padding-block:32px; } .events-proof p { margin-bottom:28px; } .events-proof ul { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 24px; } .events-proof img { height:64px; max-width:180px; } .events-proof img.events-logo-escape { max-width:130px; } }
.events-proof img[src$="events-on-the-beach.webp"] { filter:brightness(0); }
.events-proof img.events-logo-escape { max-width:180px; }
@media(max-width:767px) { .events-proof img.events-logo-escape { max-width:150px; } }
