/* Scoped GRTri Courses and Race Weekend layout, with Multisport colors. */
.grtri-courses-page,.grtri-weekend-page{--g-ink:#0d2850;--g-red:#bf2034;--g-line:#cedbe8;--g-muted:#435a75;--g-mist:#e9f1f9}
.grtri-courses-page .masthead,.grtri-weekend-page .masthead{position:relative;isolation:isolate;overflow:hidden;padding:clamp(50px,8vw,110px) 5vw 42px;background:#e9f1f9}
.grtri-courses-page .masthead::before,.grtri-weekend-page .masthead::before{content:"";position:absolute;inset:0;z-index:-2;background:url('assets/dropbox-swim-start.jpg') right center/cover no-repeat;opacity:.78}
.grtri-courses-page .masthead::after,.grtri-weekend-page .masthead::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(246,250,254,.96),rgba(246,250,254,.86) 37%,rgba(246,250,254,.48) 57%,rgba(246,250,254,.08) 76%,transparent)}
.grtri-courses-page .masthead h1,.grtri-weekend-page .masthead h1{max-width:960px;margin:0 0 22px;font-size:clamp(52px,8vw,112px);line-height:.86;letter-spacing:-.07em}
.grtri-courses-page .masthead .lead,.grtri-weekend-page .masthead .lead{max-width:760px;margin:0;font-size:clamp(18px,2vw,24px);line-height:1.35}
.grtri-courses-page .eyebrow,.grtri-weekend-page .eyebrow{margin:0 0 14px;color:var(--g-muted);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.grtri-courses-page .courses{padding:36px 5vw 82px}.grtri-courses-page .step-label{margin:0 0 12px;color:var(--g-muted);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.grtri-courses-page .tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:36px}.grtri-courses-page .tab{min-height:56px;padding:10px;border:1px solid var(--g-line);background:#fff;color:var(--g-ink);font:700 15px/1.2 Poppins,Arial,sans-serif;cursor:pointer}.grtri-courses-page .tab[aria-selected=true]{border-color:var(--g-ink);background:var(--g-ink);color:#fff}
.grtri-courses-page .course-layout{display:grid;grid-template-columns:minmax(210px,.42fr) minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:start;max-width:none}.grtri-courses-page .course-controls{display:grid;gap:8px}.grtri-courses-page .course-button{display:flex;align-items:center;min-height:54px;padding:12px 15px;border:1px solid var(--g-line);background:#fff;color:var(--g-ink);font:700 15px/1.2 Poppins,Arial,sans-serif;text-align:left;cursor:pointer}.grtri-courses-page .course-button[aria-selected=true]{border-color:#dceafa;background:#dceafa}
.grtri-courses-page .map-panel{min-height:430px;border:1px solid var(--g-line);background:var(--g-mist)}.grtri-courses-page .map-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:27px 28px 18px;background:#fff;border-bottom:1px solid var(--g-line)}.grtri-courses-page .map-top h2{margin:0;font-size:clamp(30px,4vw,50px);line-height:.98;letter-spacing:-.055em}.grtri-courses-page .map-top p{margin:7px 0 0;color:var(--g-muted)}
.grtri-courses-page .route-card{display:grid;place-items:center;min-height:255px;padding:28px;background:repeating-linear-gradient(135deg,#dce9f5 0 20px,#eef4fa 20px 40px);text-align:center}.grtri-courses-page .route-card p{max-width:360px;margin:0;padding:11px 14px;background:#fff;font-size:14px;font-weight:700}.grtri-courses-page .route-card iframe:not([hidden]){display:block;width:100%;min-height:340px;border:0}.grtri-courses-page .map-actions{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:18px 28px;background:#fff}.grtri-courses-page .map-actions p{margin:0;color:var(--g-muted);font-size:13px}.grtri-courses-page .map-actions a{display:inline-block;padding:12px 16px;background:var(--g-ink);color:#fff;font-size:13px;font-weight:700;text-decoration:none}.grtri-courses-page .map-actions a[hidden]{display:none}.grtri-courses-page #route-pending{font-size:13px;font-weight:700;color:var(--g-muted)}
.grtri-courses-page .note{margin-top:34px;padding:20px 24px;border-left:4px solid var(--g-red);background:#f5f8fc}.grtri-courses-page .note p{margin:0}.grtri-courses-page .courses-next{display:flex;justify-content:space-between;gap:18px;align-items:center;margin:34px -5vw -82px;padding:28px 5vw;background:var(--g-ink);color:#fff}.grtri-courses-page .courses-next h2{margin:0 0 6px;color:#fff;font-size:22px;line-height:1.1}.grtri-courses-page .courses-next span{color:#dceafa;font-size:14px}.grtri-courses-page .courses-next a{padding:12px 16px;background:var(--g-red);color:#fff;font-size:13px;font-weight:700;text-decoration:none}.grtri-courses-page .live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.grtri-weekend-page .content{padding:60px 5vw 84px}.grtri-weekend-page .jump{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:760px;margin-bottom:38px}.grtri-weekend-page .jump button{min-height:clamp(68px,7vw,86px);padding:clamp(17px,2vw,24px);border:1px solid var(--g-line);background:#fff;color:var(--g-ink);font:700 clamp(16px,1.7vw,21px)/1.16 Poppins,Arial,sans-serif;cursor:pointer}.grtri-weekend-page .jump button[aria-selected=true]{border-color:#dceafa;background:#dceafa}.grtri-weekend-page .schedule{display:block;border:0}.grtri-weekend-page .day{border:0}.grtri-weekend-page .day[hidden]{display:none}.grtri-weekend-page .day-head{display:block;padding:0 0 4px;background:transparent;border:0}.grtri-weekend-page .day-head h2{margin:0;font-size:clamp(30px,4vw,50px);line-height:.98;letter-spacing:-.055em}.grtri-weekend-page .day-head>p{max-width:720px;margin:13px 0 0;color:var(--g-muted);font-size:14px}
.grtri-weekend-page .timeline{display:block;position:relative;margin-top:36px}.grtri-weekend-page .timeline::before{content:"";position:absolute;top:28px;bottom:28px;left:calc(28px + 260px);width:1px;background:var(--g-line)}.grtri-weekend-page .entry{display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px;padding:19px 28px;border:0}.grtri-weekend-page .time{position:relative;z-index:1;padding-right:20px;background:#fff;color:var(--g-ink);font:500 clamp(21px,1.7vw,25px)/1 Oswald,Arial,sans-serif;letter-spacing:.025em;text-align:right;text-transform:uppercase;white-space:nowrap}.grtri-weekend-page .time::after{content:"";position:absolute;top:1px;right:-8px;width:16px;height:16px;border-radius:50%;background:var(--g-red);box-shadow:0 0 0 4px #fff,0 0 0 6px #dceafa}.grtri-weekend-page .entry h3{margin:0 0 5px;font-size:19px;line-height:1.12}.grtri-weekend-page .entry h3 a{text-decoration:none}.grtri-weekend-page .entry h3 a:hover{text-decoration:underline}.grtri-weekend-page .entry p{margin:0;color:var(--g-muted);font-size:14px}
.grtri-weekend-page .source-note{margin-top:34px;padding:20px 24px;border-left:4px solid var(--g-red);background:var(--g-mist)}.grtri-weekend-page .source-note p{margin:0;color:var(--g-muted);font-size:14px}.grtri-weekend-page .handoff{display:flex;justify-content:space-between;gap:18px;align-items:center;margin:34px -5vw -84px;padding:28px 5vw;background:var(--g-ink);color:#fff}.grtri-weekend-page .handoff h2{margin:0 0 6px;color:#fff;font-size:22px}.grtri-weekend-page .handoff p{margin:0;color:#dceafa;font-size:14px}.grtri-weekend-page .handoff a{padding:12px 16px;background:var(--g-red);color:#fff;font-size:13px;font-weight:700;text-decoration:none}
.grtri-courses-page .tab:focus-visible,.grtri-courses-page .course-button:focus-visible,.grtri-weekend-page .jump button:focus-visible{outline:3px solid #1682c5;outline-offset:3px}
@media(max-width:800px){.grtri-courses-page .masthead,.grtri-weekend-page .masthead{padding-inline:24px}.grtri-courses-page .masthead::before,.grtri-weekend-page .masthead::before{background-position:68% center;opacity:.58}.grtri-courses-page .masthead::after,.grtri-weekend-page .masthead::after{background:linear-gradient(90deg,rgba(246,250,254,.96),rgba(246,250,254,.78) 42%,rgba(246,250,254,.34) 68%,rgba(246,250,254,.08))}.grtri-courses-page .courses{padding-inline:24px}.grtri-courses-page .course-layout{grid-template-columns:1fr;gap:24px}.grtri-courses-page .map-panel{min-height:0}.grtri-courses-page .map-top{padding:22px}.grtri-courses-page .route-card{min-height:230px}.grtri-courses-page .map-actions{align-items:flex-start;flex-direction:column;padding:18px 22px}.grtri-courses-page .courses-next{align-items:flex-start;flex-direction:column;margin-right:-24px;margin-left:-24px}.grtri-weekend-page .content{padding:38px 24px 84px}.grtri-weekend-page .day-head{padding-bottom:2px}.grtri-weekend-page .day-head>p{margin-top:10px}.grtri-weekend-page .timeline{margin-top:28px}.grtri-weekend-page .timeline::before{top:27px;bottom:27px;left:22px}.grtri-weekend-page .entry{grid-template-columns:1fr;gap:7px;padding:19px 22px 19px 44px}.grtri-weekend-page .time{padding:0;font-size:21px;text-align:left}.grtri-weekend-page .time::after{display:none}.grtri-weekend-page .time::before{content:"";position:absolute;top:1px;left:-30px;width:16px;height:16px;border-radius:50%;background:var(--g-red);box-shadow:0 0 0 4px #fff}.grtri-weekend-page .handoff{align-items:flex-start;flex-direction:column;margin-right:-24px;margin-left:-24px}}
@media(max-width:760px){.grtri-courses-page .tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.grtri-courses-page .course-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.grtri-courses-page .course-button{width:100%;min-width:0;min-height:56px}}
@media(max-width:560px){.grtri-weekend-page .jump{grid-template-columns:1fr;gap:10px}.grtri-weekend-page .jump button{min-height:62px;padding:17px 18px;font-size:18px;text-align:left}}
/* GRTri Quick Answers accordion pattern. */
.grtri-answers-page .mast{padding:clamp(52px,8vw,110px) 5vw 42px;background:linear-gradient(120deg,#f2f6fb,#dceafa)}.grtri-answers-page .eyebrow{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#435a75}.grtri-answers-page h1{max-width:950px;margin:14px 0 20px;font-size:clamp(52px,8vw,112px);line-height:.86;letter-spacing:-.07em}.grtri-answers-page .lead{max-width:760px;font-size:21px}.grtri-answers-page .faq-wrap{padding:44px 5vw 84px;background:#f5f8fc}.grtri-answers-page .faq-wrap h2{margin:0 0 22px;color:#0d2850;font-size:clamp(32px,4vw,52px);line-height:1;letter-spacing:-.05em}.grtri-answers-page .faq{border:1px solid #cedbe8;background:#fff}.grtri-answers-page .faq-item{border-top:1px solid #cedbe8}.grtri-answers-page .faq-item:first-child{border-top:0}.grtri-answers-page .faq-trigger{display:flex;width:100%;align-items:center;justify-content:space-between;gap:18px;padding:17px 20px;border:0;background:transparent;color:#0d2850;text-align:left;font:700 18px/1.2 Poppins,Arial,sans-serif;cursor:pointer}.grtri-answers-page .faq-trigger:focus-visible{outline:3px solid #0d2850;outline-offset:2px}.grtri-answers-page .symbol{position:relative;flex:0 0 26px;width:26px;height:26px;border:1px solid #bf2034;border-radius:50%;font-size:0}.grtri-answers-page .symbol::before,.grtri-answers-page .symbol::after{content:"";position:absolute;top:50%;left:50%;width:10px;height:1.5px;background:#0d2850;transform:translate(-50%,-50%)}.grtri-answers-page .symbol::after{transform:translate(-50%,-50%) rotate(90deg)}.grtri-answers-page .panel{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .28s ease,opacity .22s ease}.grtri-answers-page .panel>div{overflow:hidden}.grtri-answers-page .panel p{margin:0;color:#435a75}.grtri-answers-page .faq-item.is-open .panel{grid-template-rows:1fr;opacity:1}.grtri-answers-page .faq-item.is-open .panel>div{margin:0 20px 18px;padding:8px 16px 16px;border-left:3px solid #bf2034;background:#f5f8fc}.grtri-answers-page .faq-item.is-open .symbol::after{opacity:0}.grtri-answers-page .next{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:28px 5vw;background:#0d2850;color:#fff}.grtri-answers-page .next h2{margin:0 0 6px;color:#fff}.grtri-answers-page .next p{margin:0;color:#dceafa}.grtri-answers-page .next a{padding:12px 16px;background:#bf2034;color:#fff;font-size:13px;font-weight:700;text-decoration:none}
@media(max-width:800px){.grtri-answers-page .mast,.grtri-answers-page .faq-wrap{padding-inline:24px}.grtri-answers-page .next{align-items:flex-start;flex-direction:column}}
.grtri-weekend-page .entry small{display:block;margin-top:7px;color:#526980;font-size:13px;line-height:1.45}
.grtri-courses-page .map-actions[hidden]{display:none}
/* Shared page ending and initialized GRTri footer, adapted to Multisport colors. */
main>.page-handoff{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 5vw!important;background:#0d2850;color:#fff;border:0}
.page-handoff h2{margin:0 0 6px;font:700 24px/1.1 Poppins,Arial,sans-serif;letter-spacing:-.03em;color:#fff}
.page-handoff p{margin:0;color:#dceafa;font:400 16px/1.4 Poppins,Arial,sans-serif}
.page-handoff>a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 18px;background:#bf2034;color:#fff;font:700 14px/1.2 Poppins,Arial,sans-serif;text-decoration:none;white-space:nowrap}
footer.grtri-site-footer{display:block!important;margin:0!important;padding:0!important;border-top:1px solid #cedbe8!important;background:#fff!important;color:#0d2850!important;font-family:Poppins,Arial,Helvetica,sans-serif!important}
footer.grtri-site-footer *{box-sizing:border-box}footer.grtri-site-footer a{color:inherit;text-decoration:none}footer.grtri-site-footer a:hover{text-decoration:underline}footer.grtri-site-footer a:focus-visible{outline:3px solid #1682c5;outline-offset:4px;border-radius:2px}
.grtri-footer-top{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 5vw;background:#bf2034;color:#fff}
.grtri-footer-title{font:500 clamp(17px,2vw,22px)/1.1 Oswald,Arial,Helvetica,sans-serif;letter-spacing:.055em;text-transform:uppercase}
.grtri-footer-register{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 14px;background:#0d2850!important;color:#fff!important;font:700 14px/1 Poppins,Arial,Helvetica,sans-serif}
.grtri-footer-register:hover{background:#1a477d!important;color:#fff!important;text-decoration:none!important}.grtri-footer-top a:focus-visible{outline-color:#fff}
footer.grtri-site-footer nav.grtri-footer-links{position:static!important;inset:auto!important;display:flex!important;width:100%!important;justify-content:flex-start!important;align-items:flex-start!important;gap:8px 20px!important;margin:0!important;padding:24px 5vw!important;background:#fff!important;border:0!important}
footer.grtri-site-footer nav.grtri-footer-links .grtri-footer-link{margin:0!important}.grtri-footer-link{display:inline-flex;align-items:center;min-height:44px;padding:10px 0!important;border:0!important;color:#0d2850!important;font:400 15px/1.35 Poppins,Arial,Helvetica,sans-serif!important}
.grtri-footer-bottom{display:flex;align-items:center;min-height:54px;padding:16px 5vw;border-top:1px solid #cedbe8}.grtri-footer-bottom p{margin:0!important;color:#435a75!important;font:400 12px/1.4 Poppins,Arial,Helvetica,sans-serif!important}
.faq-section+.faq-section{margin-top:48px}.grtri-answers-page .panel p+p{margin-top:16px}.grtri-answers-page .panel ul,.grtri-answers-page .panel ol{color:#435a75;padding-left:22px}.grtri-answers-page .panel a{color:#0d2850;text-decoration:underline}.grtri-answers-page .panel li+li{margin-top:6px}
@media(max-width:760px){main>.page-handoff{flex-direction:column;align-items:flex-start;padding:28px 24px!important}.grtri-footer-top{align-items:stretch;flex-direction:column;padding:22px}footer.grtri-site-footer nav.grtri-footer-links{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px!important;padding:22px!important}.grtri-footer-bottom{padding:16px 22px}.grtri-footer-register{width:100%}}
