.distance-hero{min-height:500px;display:flex;align-items:center;color:#fff;background-size:cover;background-position:center;position:relative}.half-hero{background-image:linear-gradient(90deg,rgba(8,39,58,.62),rgba(8,39,58,.12)),url("https://www.cascais-lisboa.com/assets/images/banners/half-marathon.jpg")}.ten-hero{background-image:linear-gradient(90deg,rgba(8,39,58,.62),rgba(8,39,58,.12)),url("../../images/10k.jpg")}.distance-hero h1{font-family:"Barlow Condensed",sans-serif;font-size:clamp(4.5rem,9vw,8.8rem);line-height:.8;margin:0;text-transform:uppercase}.distance-hero h1 span,.distance-hero h1 strong{display:block}.distance-hero h1 strong{color:#ffca3a}.distance-hero p{max-width:720px;font-size:1.05rem;line-height:1.6}.race-page{padding:78px 0}.race-page .section-head{display:grid;grid-template-columns:1.3fr .7fr;gap:50px;align-items:end}.race-page h2,.panel h3,.support h3,.note h3{font-family:"Barlow Condensed",sans-serif;text-transform:uppercase;color:#173f57}.race-page h2{font-size:clamp(3rem,5vw,5rem);line-height:.9}.race-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:36px 0}.race-grid article{padding:25px;border:1px solid rgba(23,63,87,.12);border-radius:18px;background:#fff}.race-grid small,.section-eyebrow{font-weight:800;letter-spacing:.12em;color:#0784bd}.race-grid b,.race-grid span{display:block}.race-grid b{font:700 2rem/1 "Barlow Condensed",sans-serif;color:#173f57;margin:8px 0}.detail-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:18px}.panel,.note{padding:32px;border-radius:20px;background:#eef8fd}.panel h3,.support h3,.note h3{font-size:2.4rem;margin:8px 0 12px}.panel p,.note p{line-height:1.7}.support{margin-top:50px}.support-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.support-grid div{padding:20px;border-top:3px solid #0784bd}.support-grid b,.support-grid span{display:block}.note{margin-top:26px}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:20px}@media(max-width:900px){.race-page .section-head,.detail-grid{grid-template-columns:1fr}.race-grid,.support-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.race-grid,.support-grid{grid-template-columns:1fr}.cta-inner{flex-direction:column;align-items:flex-start}}