/* Client refinement: keep the established typography, orange and real photography. */
.fse-site .hero-title{font-size:clamp(72px,9.1vw,150px);line-height:.9;max-width:1250px}
.fse-site .hero-copy{gap:30px}.fse-site .hero-copy p{max-width:320px}.fse-site .hero-content{padding-top:clamp(165px,24vh,240px)}
.fse-site .quick-filters{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}.fse-site .quick-filters a{border:1px solid var(--ink);padding:13px 22px;font-weight:700;min-height:48px}.fse-site .quick-filters a:hover,.fse-site .quick-filters a[aria-current="true"]{background:var(--ink);color:white}
.fse-site .event-filters{grid-template-columns:repeat(4,minmax(0,1fr)) auto}.fse-site .past-events-link{margin-top:30px;font-size:14px}.fse-site .past-events-link a{text-decoration:underline;text-underline-offset:4px}.fse-site .event-bottom{flex-wrap:wrap;gap:12px}.fse-site .event-bottom>span{line-height:1.6}
.fse-site .event-hero{height:auto;min-height:640px}.fse-site .event-hero .wrap{padding-top:165px;padding-bottom:46px}.fse-site .event-hero h1{font-size:clamp(60px,8vw,126px)}.fse-site .event-hero-info{align-items:end;justify-content:space-between;gap:28px}.fse-site .event-hero-info p{margin:6px 0}.fse-site .hero-entry{display:flex;flex-direction:column;gap:9px;align-items:flex-start}.fse-site .hero-entry .button{margin:0}.fse-site .entry-price{font-size:24px;line-height:1.2}.fse-site .hero-entry>span{font-size:13px}.fse-site .panel-price{font-weight:700;font-size:23px!important}
.fse-site .event-jump-links{display:flex;flex-wrap:wrap;gap:8px 28px;padding-block:20px;border-bottom:1px solid var(--line)}.fse-site .event-jump-links a{min-height:44px;display:flex;align-items:center;font-size:14px;text-decoration:underline;text-underline-offset:5px}
.fse-site .race-highlights{list-style:none;padding:0;margin:32px 0 55px;display:grid;gap:15px}.fse-site .race-highlights li{display:flex;gap:14px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}.fse-site .race-highlights svg{flex-shrink:0}
.fse-site .included-section,.fse-site .course-section,.fse-site .event-memories{margin-top:65px}.fse-site .included-section h2,.fse-site .course-section h2,.fse-site .event-memories h2{font-size:clamp(40px,4.2vw,66px)}.fse-site .included-grid{list-style:none;padding:0;margin:30px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 20px}.fse-site .included-grid li{border-top:2px solid var(--ink);padding-top:19px;display:flex;flex-direction:column;align-items:start;gap:12px}.fse-site .included-grid strong{font-size:16px}.fse-site .included-grid span{font-size:13px;color:var(--muted);line-height:1.6}.fse-site .included-grid svg{color:#b64c09}
.fse-site .route-preview{margin:24px 0;min-height:380px;background:#e9e6dd;border:1px solid var(--line);overflow:hidden}.fse-site .route-placeholder{min-height:380px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px;gap:16px}.fse-site .route-placeholder strong{font-size:23px}.fse-site .route-placeholder p{margin:0}.fse-site .route-placeholder small{font-size:12px}.fse-site .route-embed iframe{width:100%;min-height:480px;border:0;display:block}.fse-site .route-embed{min-height:400px}.fse-site .route-placeholder[hidden],.fse-site .route-embed[hidden]{display:none}
.fse-site .entry-panel{align-self:start}.fse-site .event-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start}.fse-site .event-story{min-width:0}.fse-site .event-story section,.fse-site .event-faq{scroll-margin-top:115px}
.fse-site .review-grid{display:grid;grid-template-columns:1fr 1fr;border-block:1px solid var(--line)}.fse-site .review-grid figure{margin:0;padding:42px 38px 42px 0}.fse-site .review-grid figure+figure{border-left:1px solid var(--line);padding-left:38px}.fse-site .review-grid blockquote{font-family:var(--display);font-size:clamp(28px,3vw,46px);line-height:1.2;margin:0 0 24px}.fse-site .review-grid figcaption{font-size:14px}.fse-site .review-grid figcaption a{display:block;font-size:12px;margin-top:8px;text-decoration:underline}
.fse-site .about-stats{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:24px;padding-bottom:50px}.fse-site .about-stats>div{border-top:2px solid var(--ink);padding-top:22px}.fse-site .about-stats strong{display:block;font:700 clamp(36px,5vw,72px)/1 var(--display)}.fse-site .about-stats span{display:block;font-size:14px;margin-top:12px}.fse-site .about-photo-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:70px}.fse-site .about-photo-strip figure{margin:0}.fse-site .about-photo-strip img{width:100%;aspect-ratio:1.15;object-fit:cover}.fse-site .about-photo-strip figcaption{margin-top:10px;font-size:15px}
.fse-site.page-runner-information .content-layout{grid-template-columns:1fr;max-width:1040px}.fse-site .help-topics{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:38px}.fse-site .help-topics a{padding:12px 16px;border:1px solid var(--ink);font-size:14px;min-height:44px}.fse-site .faq-group{margin-bottom:48px;scroll-margin-top:115px}.fse-site .content-prose .faq-group h2{font-size:36px;margin:0 0 16px}.fse-site .faq-group details{border-bottom:1px solid var(--line)}.fse-site .faq-group summary{padding:20px 28px 20px 0;cursor:pointer;font-weight:600;min-height:52px}.fse-site .faq-group details>div{padding:0 0 18px}.fse-site .faq-group details p{margin:0}
.fse-site .partner-opportunities{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-bottom:65px}.fse-site .partner-opportunities>div{border:1px solid var(--line);margin-left:-1px;margin-top:-1px;padding:24px;display:flex;flex-direction:column;gap:24px;font-weight:600;min-height:135px}.fse-site .opportunity-list{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.fse-site .opportunity-list li{border-bottom:1px solid var(--line);padding:15px 0}.fse-site.page-commercial-opportunities .content-image{position:sticky;top:120px;align-self:start}
.fse-site .photo-results{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;margin-bottom:60px}.fse-site .photo-results h2{font-size:clamp(44px,5vw,72px)}.fse-site .photo-results figure{margin:0}.fse-site .photo-results img{aspect-ratio:1.4;object-fit:cover;width:100%}.fse-site .photo-results figcaption,.fse-site .photo-credit{font-size:12px;margin-top:12px}.fse-site .past-result{border-top:1px solid var(--line);padding:30px 0}.fse-site .past-result h2{font-size:36px}.fse-site .past-result a{display:inline-flex;padding-block:12px;text-decoration:underline}
@media(max-width:1100px){.fse-site .primary-nav{gap:15px;font-size:12px}.fse-site .event-layout{grid-template-columns:minmax(0,1fr) 285px;gap:35px}.fse-site .event-filters{grid-template-columns:1fr 1fr}.fse-site .filter-submit{grid-column:1/-1}.fse-site .partner-opportunities{grid-template-columns:1fr 1fr}}
@media(max-width:850px){.fse-site .hero-stage{height:85svh;min-height:650px}.fse-site .hero-title{font-size:clamp(60px,10.5vw,92px)}.fse-site .hero-content{padding-top:175px}.fse-site .hero-copy{display:block}.fse-site .hero-copy .button{margin-top:18px}.fse-site .story-chapters{display:none}.fse-site .event-layout{display:flex;flex-direction:column}.fse-site .entry-panel{display:none}.fse-site .event-hero{min-height:0}.fse-site .event-hero .wrap{padding-top:125px}.fse-site .event-hero h1{font-size:clamp(56px,10vw,85px)}.fse-site .event-hero-info{align-items:start}.fse-site .race-sticky{transform:none;visibility:visible;opacity:1}.fse-site .event-story{width:100%}.fse-site .review-grid blockquote{font-size:32px}.fse-site .photo-results{gap:30px}.fse-site.page-commercial-opportunities .content-image{position:static}}
@media(max-width:600px){.fse-site .hero-title{font-size:clamp(48px,11.8vw,71px);line-height:.94}.fse-site .hero-content{padding-top:165px}.fse-site .hero-eyebrow{margin-bottom:20px}.fse-site .hero-copy p{max-width:270px}.fse-site .hero-stage{min-height:620px;height:85svh}.fse-site .hero-bottom{bottom:20px}.fse-site .hero-location{display:none}.fse-site .quick-filters{gap:8px}.fse-site .quick-filters a{padding:12px 14px;font-size:13px}.fse-site .event-filters{gap:15px}.fse-site .filter-field{padding:0;border:0}.fse-site .filter-submit{margin:0;width:100%}.fse-site .event-hero .wrap{padding-top:116px;padding-bottom:30px}.fse-site .event-breadcrumb{margin-bottom:20px}.fse-site .event-hero h1{font-size:clamp(52px,13.6vw,76px);line-height:.95}.fse-site .event-hero h1 span{font-size:32px;margin-top:8px}.fse-site .event-hero-info{display:block;margin-top:20px}.fse-site .event-hero-info p{font-size:13px}.fse-site .hero-entry{margin-top:19px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:9px 12px}.fse-site .entry-price{font-size:20px;grid-column:1/-1}.fse-site .hero-entry>.button{grid-column:1;grid-row:2;font-size:13px;min-height:48px}.fse-site .hero-entry>span{grid-column:2;grid-row:2;font-size:12px}.fse-site .event-jump-links{gap:4px 20px;padding-block:12px}.fse-site .event-jump-links a{font-size:12px}.fse-site .event-summary{padding-block:22px}.fse-site .included-grid{grid-template-columns:1fr 1fr}.fse-site .route-placeholder{min-height:340px;padding:20px}.fse-site .route-preview{min-height:340px}.fse-site .route-embed iframe{min-height:400px}.fse-site .course-section>.button{width:100%;font-size:12px}.fse-site .race-sticky .button{min-height:48px}.fse-site .race-sticky strong{font-size:20px}.fse-site .race-sticky span{font-size:11px}.fse-site .review-grid{grid-template-columns:1fr}.fse-site .review-grid figure,.fse-site .review-grid figure+figure{padding:28px 0;border-left:0}.fse-site .review-grid figure+figure{border-top:1px solid var(--line)}.fse-site .about-stats{grid-template-columns:1fr 1fr;gap:25px}.fse-site .about-stats>div:last-child{grid-column:1/-1}.fse-site .about-stats strong{font-size:46px}.fse-site .about-photo-strip{gap:12px;grid-template-columns:1fr 1fr}.fse-site .about-photo-strip figure:first-child{grid-column:1/-1}.fse-site .about-photo-strip figure:first-child img{aspect-ratio:1.7}.fse-site .partner-opportunities>div{padding:18px;min-height:125px;font-size:14px}.fse-site .opportunity-list{grid-template-columns:1fr}.fse-site .photo-results{grid-template-columns:1fr}.fse-site .photo-results h2{font-size:48px}.fse-site .content-prose .faq-group h2{font-size:31px}.fse-site .faq-group summary{font-size:15px}.fse-site.page-runner-information .page-intro h1{font-size:clamp(48px,12vw,68px)}}
/* Client-supplied race photography. Credit stays visible beside every Belfast image. */
.fse-site .hero-photo-credit{position:absolute;right:var(--gutter);bottom:10px;font-size:11px;color:white;background:#181b18d9;padding:4px 8px;max-width:calc(100% - 44px)}
.fse-site .card-photo-credit{position:absolute;left:10px;bottom:10px;background:#181b18e8;color:white;font-size:10px;padding:5px 8px;z-index:2}
.fse-site .event-photo-story{padding-bottom:90px}.fse-site .event-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.fse-site .event-photo-grid figure{margin:0;min-width:0}.fse-site .event-photo-grid img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}.fse-site .event-photo-grid figure:first-child img{object-position:55% center}.fse-site .event-photo-grid figcaption{font-size:14px;line-height:1.6;margin-top:14px}.fse-site .event-photo-grid small{display:block;font-size:11px;color:var(--muted)}
.fse-site .destination-belfast img{object-position:50% 50%}.fse-site .destination-belfast figcaption span:last-child{max-width:260px;line-height:1.5}
.fse-site.page-volunteers .content-image img{object-position:50% 40%}
@media(max-width:600px){.fse-site .event-photo-grid{grid-template-columns:1fr;gap:30px}.fse-site .event-photo-grid img{aspect-ratio:auto;max-height:660px;object-fit:contain}.fse-site .event-photo-story{padding-bottom:60px}.fse-site .hero-photo-credit{font-size:10px;bottom:6px}.fse-site .event-hero .wrap{padding-bottom:38px}.fse-site .destination-belfast figcaption{gap:12px}.fse-site .destination-belfast figcaption span:last-child{max-width:170px}.fse-site .is-list .card-photo-credit{left:3px;right:3px;bottom:3px;font-size:8px;padding:3px;line-height:1.3}}
