/* Six approved photo-led pages only. The existing compatibility renderer is separate. */
.vc2r-page { --vc2r-start:15,52,68; --vc2r-end:33,85,102; --vc2r-focus:50% 33%; --vc2r-detail-ratio:626/430; padding-bottom:0; }
.vc2r-page--community { --vc2r-start:21,63,76; --vc2r-end:39,97,106; --vc2r-focus:50% 50%; --vc2r-detail-ratio:572/560; }
.vc2r-page--coach { --vc2r-focus:50% 36%; --vc2r-detail-ratio:512/610; }
.vc2r-page--volunteer { --vc2r-start:32,62,56; --vc2r-end:59,93,67; --vc2r-focus:50% 18%; --vc2r-detail-ratio:542/510; }
.vc2r-page--sponsor { --vc2r-start:39,37,20; --vc2r-end:90,74,42; --vc2r-focus:50% 53%; --vc2r-detail-ratio:626/475; }
.vc2r-page--programs { --vc2r-start:28,56,54; --vc2r-end:61,84,61; --vc2r-focus:50% 50%; --vc2r-detail-ratio:594/380; }
.vc2r-page p { font-size:18px; line-height:1.6; }
.vc2r-page h2 { font-size:36px; line-height:1.15; margin:0 0 22px; }
.vc2r-page h3 { font-size:28px; line-height:1.2; margin:0 0 18px; }
.vc2r-page .eyebrow { font-size:12px; line-height:1.4; letter-spacing:.1em; margin:0 0 20px; }
.vc2r-page .text-link { font-size:17px; }
.vc2r-hero { position:relative; isolation:isolate; height:540px; padding:0; color:var(--color-text-invert); background:linear-gradient(115deg,rgb(var(--vc2r-start)),rgb(var(--vc2r-end))); }
.vc2r-hero__photo { position:absolute; inset:0 0 0 34%; overflow:hidden; z-index:-2; mask-image:linear-gradient(90deg,rgba(0,0,0,0) 0%,rgb(0,0,0) 22%); }
.vc2r-hero__photo picture,.vc2r-hero__photo img { display:block; width:100%; height:100%; }
.vc2r-hero__photo img { object-fit:cover; object-position:var(--vc2r-focus); }
.vc2r-page--join,.vc2r-page--coach { --vc2r-focus:50% 40%; }
@media(min-width:1120px) {
 .vc2r-page--join .vc2r-hero__photo,.vc2r-page--coach .vc2r-hero__photo,.vc2r-page--sponsor .vc2r-hero__photo { left:38%; }
}
.vc2r-hero::after { content:""; position:absolute; inset:0; z-index:-1; pointer-events:none; background:linear-gradient(90deg,rgba(var(--vc2r-start),1) 0%,rgba(var(--vc2r-end),1) 35%,rgba(var(--vc2r-end),.82) 45%,rgba(var(--vc2r-end),.18) 63%,rgba(var(--vc2r-end),0) 79%); }
.vc2r-hero__copy { position:relative; width:46%; padding:68px 0 40px 32px; }
.vc2r-page .vc2r-hero h1 { color:inherit; font:700 56px/1.06 var(--font-display); letter-spacing:-.02em; margin:22px 0 26px; }
.vc2r-hero .eyebrow { color:inherit; }
.vc2r-page .vc2r-hero__intro { font-size:26px; line-height:1.35; max-width:34ch; margin:0 0 34px; }
.vc2r-hero .btn { font-size:17px; }
.vc2r-hero a:focus-visible { outline-color:var(--color-text-invert); }
.vc2r-body { padding-block:0 60px; }
.vc2r-section { margin-top:64px; scroll-margin-top:24px; }
.vc2r-intro { max-width:76ch; margin-bottom:36px; }
.vc2r-route-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.vc2r-tint--sand { background:#f4eddb; }
.vc2r-tint--sage { background:#f0f1df; }
.vc2r-tint--peach { background:#faecd3; }
.vc2r-tint--mint { background:#eaf1eb; }
.vc2r-route-card { padding:34px 28px; border:1px solid var(--inner-line); border-top:3px solid #8e7039; display:flex; flex-direction:column; }
.vc2r-route-card.vc2r-tint--sage { border-top-color:#8f9a38; }
.vc2r-route-card.vc2r-tint--peach { border-top-color:#b98a45; }
.vc2r-card-kicker { display:flex; align-items:center; gap:20px; min-height:52px; margin-bottom:32px; }
.vc2r-card-kicker .eyebrow { margin:0; font-size:11px; letter-spacing:.05em; }
.vc2r-icon { display:inline-flex; color:var(--color-link); flex:none; }
.vc2r-icon svg { display:block; width:36px; height:36px; }
.vc2r-card-kicker .vc2r-icon svg { width:48px; height:48px; }
.vc2r-route-card > p { flex:1; margin-bottom:38px; }
.vc2r-route-card > .text-link { align-self:flex-start; }
.vc2r-photo-split { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.94fr); gap:64px; align-items:center; }
.vc2r-detail { margin:0; overflow:hidden; width:100%; aspect-ratio:var(--vc2r-detail-ratio); }
.vc2r-detail picture,.vc2r-detail img { display:block; width:100%; height:100%; }
.vc2r-detail img { object-fit:cover; object-position:50% 50%; }
.vc2r-page--coach .vc2r-detail img { object-position:50% 46%; }
.vc2r-links { display:flex; flex-wrap:wrap; gap:16px 28px; margin-top:28px; }
.vc2r-secondary { border-top:1px solid var(--inner-line); margin-top:30px; padding-top:28px; }
.vc2r-secondary h3 { font-size:26px; }
.vc2r-secondary .eyebrow { font-size:11px; margin-bottom:14px; }
.vc2r-page--community .vc2r-photo-split { grid-template-columns:minmax(0,.91fr) minmax(0,1fr); gap:74px; }
.vc2r-photo-split--right { grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr); gap:72px; }
.vc2r-photo-split--right .vc2r-detail { grid-column:2; grid-row:1; }
.vc2r-photo-split--right .vc2r-copy { grid-column:1; grid-row:1; }
.vc2r-page--coach .vc2r-copy h2 { max-width:22ch; }
.vc2r-moment { border-left:3px solid var(--btn-accent-bg); padding-left:24px; margin-top:34px; }
.vc2r-moment .eyebrow { margin-bottom:14px; font-size:11px; }
.vc2r-moment p:last-child { font:400 28px/1.35 var(--font-display); color:var(--color-text); margin-bottom:0; }
.vc2r-note { border-left:3px solid var(--btn-accent-bg); padding:24px 26px; margin-top:32px; }
.vc2r-note h3 { font-size:25px; margin-bottom:10px; }
.vc2r-note p { margin:0; font-size:17px; }
.vc2r-section--editorial_intro,.vc2r-section--next_step_grid,.vc2r-section--experience_split,.vc2r-section--respect_band,.vc2r-section--competition_band { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:64px; }
.vc2r-section--editorial_intro { border-bottom:1px solid var(--inner-line); padding-bottom:48px; }
.vc2r-section--participation_band,.vc2r-section--respect_band,.vc2r-section--competition_band { padding:38px; border:1px solid var(--inner-line); }
.vc2r-section--participation_band h2 { font-size:32px; }
.vc2r-items--columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:30px; }
.vc2r-items--columns .vc2r-item { padding:0 32px; border-left:1px solid var(--inner-line); }
.vc2r-items--columns .vc2r-item:first-child { padding-left:0; border:0; }
.vc2r-items--columns .vc2r-item:last-child { padding-right:0; }
.vc2r-item h3 { font-size:26px; }
.vc2r-items--columns .vc2r-icon { margin-bottom:22px; }
.vc2r-item p { margin:0; font-size:17px; }
.vc2r-section--next_step_grid { align-items:center; }
.vc2r-section--next_step_grid h2 { font-size:32px; }
.vc2r-next-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.vc2r-next-grid > div { padding:22px; background:#fff9ee; border:1px solid var(--inner-line); }
.vc2r-next-grid p { font-size:12px; margin:0 0 10px; }
.vc2r-next-grid a { display:flex; justify-content:space-between; gap:14px; }
.vc2r-section--experience_split { padding-top:44px; border-top:1px solid var(--inner-line); grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); }
.vc2r-items--rows .vc2r-item { display:grid; grid-template-columns:42px minmax(0,1fr); gap:24px; padding:24px 0; border-bottom:1px solid var(--inner-line); }
.vc2r-items--rows .vc2r-item:first-child { padding-top:0; }
.vc2r-items--rows h3 { font-size:24px; margin-bottom:10px; }
.vc2r-section--contact_panel { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(0,1fr); gap:56px; align-items:center; border:1px solid var(--inner-line); padding:42px; }
.vc2r-contact-card { background:var(--color-bg); border:1px solid var(--inner-line); padding:28px; }
.vc2r-contact-title { display:flex; align-items:center; gap:18px; }
.vc2r-contact-title h3 { font-size:25px; margin:0; }
.vc2r-contact-title svg { width:32px; height:32px; }
.vc2r-contact-card ul { padding:0 0 0 18px; margin:24px 0; list-style:disc; }
.vc2r-contact-card li { border-bottom:1px solid var(--inner-line); padding:12px 0; font-size:16px; line-height:1.5; }
.vc2r-contact-card li::marker { color:var(--btn-accent-bg); }
.vc2r-contact-card .btn { width:100%; padding-inline:12px; font-size:16px; }
.vc2r-email { display:block; margin-top:16px; font-size:16px; overflow-wrap:anywhere; }
.vc2r-support-layout { display:grid; grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr); gap:48px; }
.vc2r-items--support { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; }
.vc2r-items--support .vc2r-item { border-top:1px solid var(--inner-line); padding-top:26px; }
.vc2r-items--support .vc2r-icon { margin-bottom:22px; }
.vc2r-respect-icon { width:88px; height:88px; border:1px solid var(--color-link); border-radius:50%; display:flex; align-items:center; justify-content:center; margin-bottom:24px; }
.vc2r-respect-icon svg { width:48px; height:48px; }
.vc2r-section--respect_band h2 { font-size:32px; }
.vc2r-support-intro { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:64px; margin-bottom:36px; }
.vc2r-items--four { grid-template-columns:repeat(4,minmax(0,1fr)); }
.vc2r-items--four .vc2r-item { padding-inline:24px; }
.vc2r-section--cta_band { padding:36px 40px; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:48px; border:1px solid var(--inner-line); }
.vc2r-section--cta_band h2 { font-size:32px; margin-bottom:16px; }
.vc2r-section--cta_band p { margin:0; font-size:17px; }
.vc2r-cta-actions { display:flex; flex-direction:column; align-items:flex-start; gap:16px; }
.vc2r-section--pathnav_strip { margin-top:0; border-bottom:1px solid var(--inner-line); padding:26px 0; }
.vc2r-pathnav { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.vc2r-pathnav a { display:flex; justify-content:space-between; padding:0 28px; border-left:1px solid var(--inner-line); text-decoration:none; }
.vc2r-pathnav a:first-child { border:0; padding-left:0; }
.vc2r-path-label { display:flex; align-items:center; gap:20px; margin-bottom:28px; }
.vc2r-path-label .eyebrow { margin:0; }
.vc2r-robotics { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:center; gap:68px; }
.vc2r-robotics .btn { min-width:160px; justify-content:space-between; }
.vc2r-section--robotics_photo_split .vc2r-note { display:grid; grid-template-columns:auto minmax(0,1fr); gap:30px; }
.vc2r-section--robotics_photo_split .vc2r-note h3 { font:700 16px/1.6 var(--font-body); margin:0; }
.vc2r-tags { display:flex; flex-wrap:wrap; gap:10px; margin:26px 0 0; padding:0; list-style:none; }
.vc2r-tags li { border:1px solid #c5d8c3; padding:7px 13px; font-size:13px; color:#47604c; background:#f6f8ef; }
.vc2r-section--ai_explainer_split { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); gap:80px; align-items:center; }
.vc2r-explainer { border-left:1px solid var(--inner-line); padding-left:36px; }
.vc2r-explainer dl { margin:0; }
.vc2r-explainer dl > div { display:grid; grid-template-columns:110px minmax(0,1fr); gap:16px; padding:24px 0; align-items:center; border-bottom:1px solid var(--inner-line); }
.vc2r-explainer dt { font:400 28px/1.2 var(--font-display); color:#626731; }
.vc2r-explainer dd { font-size:15px; margin:0; }
.vc2r-explainer > p { font-size:14px; margin:20px 0 0; color:var(--color-text-muted); }
@media(min-width:1120px) and (max-width:1343px) {
 .vc2r-hero { height:clamp(480px,40.18vw,540px); }
 .vc2r-page .vc2r-hero h1 { font-size:48px; }
 .vc2r-hero__copy { padding-top:56px; }
}
@media(max-width:1119px) {
 .vc2r-hero { min-height:600px; height:auto; }
 .vc2r-hero__copy { width:100%; padding:38px 32px 380px; }
 .vc2r-hero__photo { inset:auto 0 0 auto; width:76%; height:440px; mask-image:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgb(0,0,0) 24%); }
 .vc2r-hero::after { background:linear-gradient(180deg,rgba(var(--vc2r-start),1) 0%,rgba(var(--vc2r-end),.98) 25%,rgba(var(--vc2r-end),.6) 42%,rgba(var(--vc2r-end),0) 76%),linear-gradient(90deg,rgba(var(--vc2r-start),.65),rgba(var(--vc2r-end),.04) 85%); }
 .vc2r-page .vc2r-hero h1 { font-size:48px; margin:18px 0 20px; }
 .vc2r-page .vc2r-hero__intro { max-width:30ch; font-size:24px; margin-bottom:24px; }
 .vc2r-photo-split,.vc2r-page--community .vc2r-photo-split,.vc2r-support-layout,.vc2r-robotics { gap:36px; }
 .vc2r-route-cards { gap:16px; }
 .vc2r-route-card { padding:24px 20px; }
 .vc2r-card-kicker { display:block; }
 .vc2r-card-kicker .eyebrow { margin-top:16px; }
 .vc2r-section--contact_panel { gap:28px; padding:28px; }
 .vc2r-section--editorial_intro,.vc2r-section--next_step_grid,.vc2r-section--experience_split,.vc2r-section--respect_band,.vc2r-section--competition_band,.vc2r-section--ai_explainer_split { gap:32px; }
 .vc2r-items--columns .vc2r-item { padding-inline:20px; }
 .vc2r-items--four { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 0; }
 .vc2r-items--four .vc2r-item:nth-child(3) { border-left:0; padding-left:0; }
 .vc2r-section--cta_band { gap:28px; padding:28px; grid-template-columns:minmax(0,1fr) minmax(0,.7fr); }
 .vc2r-section--cta_band .btn { font-size:16px; padding-inline:16px; }
}
@media(min-width:768px) and (max-width:1119px) {
 .vc2r-hero__photo {
  mask-image:linear-gradient(90deg,transparent,#000 26%),linear-gradient(180deg,transparent,#000 24%);
  mask-composite:intersect;
 }
}
@media(max-width:767px) {
 .vc2r-body { padding:0 24px 40px; }
 .vc2r-hero { min-height:590px; }
 .vc2r-hero__copy { padding:34px 24px 345px; }
 .vc2r-page--community .vc2r-hero { min-height:565px; }
 .vc2r-page--coach .vc2r-hero { min-height:625px; }
 .vc2r-page--volunteer .vc2r-hero { min-height:600px; }
 .vc2r-page--sponsor .vc2r-hero { min-height:580px; }
 .vc2r-page--programs .vc2r-hero { min-height:600px; }
 .vc2r-hero__photo { height:410px; width:100%; }
 .vc2r-hero__photo img { object-position:50% 48%; }
 .vc2r-page--community .vc2r-hero__photo img { object-position:62% 50%; }
 .vc2r-page--coach .vc2r-hero__photo img { object-position:50% 48%; }
 .vc2r-page .vc2r-hero h1 { font-size:40px; max-width:100%; margin:16px 0 20px; text-wrap:initial; }
 .vc2r-page--join .vc2r-hero h1 { max-width:none; }
 .vc2r-page .vc2r-hero__intro { font-size:22px; line-height:1.35; max-width:27ch; }
 .vc2r-hero .eyebrow { font-size:10px; letter-spacing:.08em; margin:0; }
 .vc2r-hero .btn { font-size:15px; padding:15px 18px; }
 .vc2r-page p { font-size:16px; }
 .vc2r-page h2 { font-size:28px; margin-bottom:20px; }
 .vc2r-page h3 { font-size:24px; }
 .vc2r-page--join .vc2r-section--cards h2 { font-size:26px; }
 .vc2r-page .eyebrow { font-size:10px; }
 .vc2r-section { margin-top:40px; }
 .vc2r-intro { margin-bottom:30px; }
 .vc2r-route-cards,.vc2r-photo-split,.vc2r-page--community .vc2r-photo-split,.vc2r-section--editorial_intro,.vc2r-section--next_step_grid,.vc2r-section--experience_split,.vc2r-section--respect_band,.vc2r-section--competition_band,.vc2r-section--ai_explainer_split,.vc2r-section--contact_panel,.vc2r-support-layout,.vc2r-support-intro,.vc2r-robotics,.vc2r-section--cta_band { display:grid; grid-template-columns:minmax(0,1fr); gap:28px; }
 .vc2r-route-cards { gap:16px; }
 .vc2r-route-card { padding:26px; }
 .vc2r-card-kicker { display:flex; gap:18px; margin-bottom:28px; }
 .vc2r-card-kicker .eyebrow { margin:0; font-size:9px; }
 .vc2r-card-kicker .vc2r-icon svg { width:42px; height:42px; }
 .vc2r-route-card > p { margin-bottom:24px; }
 .vc2r-page .text-link { font-size:16px; }
 .vc2r-photo-split--right .vc2r-detail,.vc2r-photo-split--right .vc2r-copy { grid-column:auto; grid-row:auto; }
 .vc2r-detail { aspect-ratio:1.18; }
 .vc2r-page--community .vc2r-detail,.vc2r-page--coach .vc2r-detail { aspect-ratio:.8; }
 .vc2r-secondary { margin-top:28px; padding-top:24px; }
 .vc2r-section--editorial_intro { padding-bottom:32px; gap:0; }
 .vc2r-section--participation_band,.vc2r-section--respect_band,.vc2r-section--competition_band,.vc2r-section--contact_panel,.vc2r-section--cta_band { padding:24px; }
 .vc2r-section--cta_band h2,.vc2r-section--respect_band h2,.vc2r-section--participation_band h2,.vc2r-section--next_step_grid h2,.vc2r-section--contact_panel h2 { font-size:26px; }
 .vc2r-items--columns,.vc2r-items--support { display:block; }
 .vc2r-items--columns .vc2r-item { padding:26px 0; border:0; border-top:1px solid var(--inner-line); }
 .vc2r-items--columns .vc2r-item:first-child { padding-top:0; border:0; }
 .vc2r-items--columns .vc2r-item:last-child { padding-bottom:0; }
 .vc2r-items--columns .vc2r-icon { margin-bottom:18px; }
 .vc2r-next-grid { grid-template-columns:1fr; gap:12px; }
 .vc2r-next-grid > div { padding:20px; }
 .vc2r-next-grid p { font-size:12px; }
 .vc2r-items--rows .vc2r-item,.vc2r-items--support .vc2r-item,.vc2r-items--four .vc2r-item { display:grid; grid-template-columns:32px minmax(0,1fr); gap:18px; padding:24px 0; }
 .vc2r-items--four .vc2r-item:first-child { border-top:1px solid var(--inner-line); padding-top:24px; }
 .vc2r-items--rows h3,.vc2r-items--support h3,.vc2r-items--four h3 { font-size:24px; margin-bottom:12px; }
 .vc2r-item p { font-size:16px; }
 .vc2r-icon svg { width:32px; height:32px; }
 .vc2r-support-intro { margin-bottom:0; gap:0; }
 .vc2r-contact-card { padding:22px 18px; }
 .vc2r-contact-title { gap:12px; }
 .vc2r-contact-title h3 { font-size:24px; }
 .vc2r-contact-card li { font-size:15px; }
 .vc2r-contact-card .btn { font-size:13px; gap:8px; padding-inline:10px; }
 .vc2r-email { font-size:14px; text-align:center; }
 .vc2r-moment p:last-child { font-size:23px; }
 .vc2r-respect-icon { width:72px; height:72px; }
 .vc2r-respect-icon svg { width:40px; height:40px; }
 .vc2r-note { padding:22px; }
 .vc2r-note p { font-size:16px; }
 .vc2r-cta-actions { align-items:stretch; }
 .vc2r-cta-actions .btn { width:100%; font-size:15px; padding-inline:12px; }
 .vc2r-cta-actions > .text-link { align-self:center; }
 .vc2r-section--pathnav_strip { margin-top:0; padding:12px 0; }
 .vc2r-pathnav { grid-template-columns:1fr; }
 .vc2r-pathnav a,.vc2r-pathnav a:first-child { padding:18px 0; border:0; border-bottom:1px solid var(--inner-line); font-size:14px; }
 .vc2r-pathnav a:last-child { border:0; }
 .vc2r-path-label { margin-bottom:24px; gap:18px; }
 .vc2r-robotics .vc2r-links { flex-wrap:nowrap; gap:14px; }
 .vc2r-robotics .btn { width:50%; min-width:0; padding:14px; font-size:15px; }
 .vc2r-section--robotics_photo_split .vc2r-note { display:block; }
 .vc2r-section--robotics_photo_split .vc2r-note h3 { margin-bottom:12px; }
 .vc2r-explainer { padding:0; border:0; }
 .vc2r-explainer dl > div { grid-template-columns:110px minmax(0,1fr); }
 .vc2r-explainer > p { font-size:14px; }
 .vc2r-tags { gap:8px; }
 .vc2r-tags li { padding:6px 9px; font-size:12px; }
}
