.homepage .brand-monogram{display:inline-grid;place-items:center;width:38px;height:38px;margin-right:7px;background:#82e6d5;color:#0b2636;border-radius:9px;font-size:27px;font-style:italic;font-weight:900;line-height:1}
.homepage .nav .wordmark{letter-spacing:.2px;font-size:17px}.homepage .wordmark strong{font-weight:800}.homepage .map-grid{gap:24px}.homepage .map-card{display:flex;flex-direction:column;box-shadow:0 8px 24px #17344709}.homepage .circuit-photo{position:relative;aspect-ratio:16/9;margin:0;overflow:hidden;background:#112e42}.homepage .circuit-photo img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .5s}.homepage .map-card:hover .circuit-photo img{transform:scale(1.035)}.homepage .circuit-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:end;padding:25px 22px;background:linear-gradient(transparent 35%,#051b30dd 100%);color:white;pointer-events:none}.homepage .circuit-overlay>span{font-size:12px;letter-spacing:2px;margin-bottom:6px;color:#c6f4ee}.homepage .circuit-overlay strong{font-size:24px;letter-spacing:.7px;line-height:1.1;max-width:240px;font-weight:900}.homepage .circuit-photo figcaption{position:absolute;top:12px;right:12px;font-size:12px;background:#081e32d9;color:#f2f9ff;border:1px solid #ffffff45;padding:4px 9px;border-radius:4px}.homepage .map-body{display:flex;flex-direction:column;flex:1}.homepage .map-body>p:not(.eyebrow){flex:1}.homepage .map-body .route{margin-top:12px;min-height:0;border-radius:8px;padding:0 14px 10px}.homepage .map-body .route svg{max-height:135px}.homepage .map-body .course-order summary{font-size:14px;line-height:1.6;padding:8px 0}.homepage .map-body>a{border-top:1px solid #dce6eb;padding-top:16px}.homepage .gallery-note{font-size:13px;color:#5b7384;line-height:1.7;margin:18px 0 0}.homepage .track-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.homepage .track-card{padding:0;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 4px 16px #102b3f05}.homepage .obstacle-art{width:100%;aspect-ratio:512 / var(--tile-height);flex:none;background-image:url('./gallery/obstacles.webp');background-size:200% var(--bg-height);background-position:var(--tile-x) var(--tile-y);background-repeat:no-repeat;background-color:#183447;position:relative}.homepage .obstacle-art>span{position:absolute;top:14px;left:14px;width:38px;height:38px;display:grid;place-items:center;border:1px solid #ffffff4a;background:#0b2438e8;color:#fff;border-radius:6px;font-size:17px;font-weight:700}.homepage .obstacle-copy{padding:22px;display:flex;flex-direction:column;flex:1}.homepage .track-top{justify-content:flex-start}.homepage .track-card h3{margin:12px 0 9px;font-size:21px}.homepage .track-card p{min-height:0;flex:1}.homepage .zones{margin-top:20px}.homepage .obstacle-copy .zones b{letter-spacing:.3px}.homepage #maps .section-head,.homepage #tracks .section-head{border-bottom:1px solid #d6e3ea;padding-bottom:24px}.homepage #maps .eyebrow,.homepage #tracks .eyebrow{margin-bottom:10px}
@media(max-width:1050px){.homepage .map-grid{gap:16px}.homepage .circuit-overlay{padding:18px}.homepage .circuit-overlay strong{font-size:20px}.homepage .track-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.homepage .map-grid{grid-template-columns:1fr}.homepage .map-card{display:grid;grid-template-columns:1fr 1fr}.homepage .circuit-photo{height:100%;aspect-ratio:auto;min-height:280px}.homepage .map-body{display:flex}.homepage .circuit-overlay strong{font-size:26px}}
@media(max-width:650px){.homepage .nav .wordmark{font-size:13px;gap:5px}.homepage .brand-monogram{width:29px;height:29px;font-size:22px;margin-right:3px}.homepage .language-picker select{width:112px}.homepage .map-card{display:flex}.homepage .circuit-photo{height:auto;aspect-ratio:16/9;min-height:0}.homepage .circuit-overlay strong{font-size:26px}.homepage .map-grid{gap:24px}.homepage .track-grid{grid-template-columns:1fr;gap:20px}.homepage .obstacle-copy{padding:22px}.homepage .track-card h3{font-size:22px}.homepage .gallery-note{font-size:13px}.homepage .nav nav{font-size:14px}}
@media(prefers-reduced-motion:reduce){.homepage .circuit-photo img{transition:none}.homepage .map-card:hover .circuit-photo img{transform:none}}

@media(min-width:851px){.homepage .map-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
