.legal-footer{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px 28px;width:100%;border-top:1px solid var(--line);padding-top:22px;margin-top:20px;font-size:12px}.legal-footer a{text-decoration:underline;text-underline-offset:4px}.booking-steps{list-style:none;padding:0!important}.booking-steps>li{padding:15px 0 15px 36px!important;position:relative;border-bottom:1px solid var(--line)}.booking-step-number{position:absolute;left:0;top:15px;color:var(--red);font-weight:700}.booking-steps p{margin:7px 0 0!important;line-height:1.7}.booking-status{margin:20px 0!important}.booking-link-line a,.policy-prose a{ text-decoration:underline;text-underline-offset:3px}.draft-inquiry-card{scroll-margin-top:110px}.policy-page,.event-detail{max-width:1200px;margin:auto}.policy-page h1,.event-detail h1{font-size:clamp(42px,6vw,76px);line-height:1.05;margin:25px 0}.policy-date{color:var(--muted);font-size:13px}.policy-prose{max-width:780px;font-size:16px;line-height:1.9;margin-top:40px}.policy-prose h2{font-size:32px;margin:35px 0 14px}.policy-prose p{margin:0 0 22px}.policy-prose h2,.venue-block{scroll-margin-top:100px}.venue-block{background:#e5e7df;display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.venue-block h2{font-size:clamp(36px,4vw,54px);line-height:1.05;margin:20px 0}.venue-block address{font-style:normal;font-weight:600;margin:20px 0}.venue-block p{font-size:14px;line-height:1.8;max-width:520px}.venue-map{min-width:0;min-height:330px;background:var(--paper);border:1px solid var(--line);display:grid;place-items:center}.map-placeholder{padding:28px;width:100%}.map-placeholder h3{font-size:30px;margin:20px 0}.map-placeholder p{font-size:12px}.map-placeholder a{text-decoration:underline}.venue-map iframe{width:100%;height:360px;border:0;display:block}.event-detail>p,.event-facts{max-width:800px;font-size:16px;line-height:1.8}.event-lead{font-size:20px!important}.event-facts{padding:20px 26px;background:white;border-left:3px solid var(--red);margin:28px 0}.event-facts p{margin:6px 0}.event-detail h2{font-size:38px;margin:35px 0 12px}.camp-schedule{width:100%;max-width:800px;border-collapse:collapse;margin:25px 0}.camp-schedule th,.camp-schedule td{padding:16px 18px;text-align:left;border-bottom:1px solid var(--line)}.camp-schedule thead{background:var(--ink);color:var(--paper)}.event-actions{margin:28px 0}.camp-detail-link{display:inline-block;font-size:12px;text-decoration:underline;text-underline-offset:3px;margin-top:7px}.camp-event-links{display:flex;flex-direction:column;gap:8px;font-size:12px;margin-top:18px}.camp-event-links a{text-decoration:underline;text-underline-offset:3px}.xmas-registration h2{font-size:clamp(36px,4vw,58px)}@media(max-width:750px){.venue-block{grid-template-columns:1fr;gap:28px}.legal-footer{gap:14px 20px}.policy-prose{font-size:15px}.camp-schedule th,.camp-schedule td{padding:12px 8px;font-size:13px}.policy-page,.event-detail{padding-left:7%;padding-right:7%}.event-detail h1{font-size:42px}.venue-map{min-height:300px}}
.development-video{margin:0;min-width:0}.development-video video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#0a1820}.development-video figcaption{font-size:12px;line-height:1.7;color:var(--muted);margin-top:12px}.approach-proof{display:grid;grid-template-columns:1.15fr 1fr;gap:48px;align-items:start;margin-top:48px}.approach-proof .pillars{display:block;margin:0;border:0}.approach-proof .pillars>li,.approach-proof .pillars>li+li{border:0;border-top:1px solid var(--line);padding:20px 0}.approach-proof .pillars h3{margin:10px 0}.approach-proof .pillars p{max-width:none;font-size:14px;line-height:1.8}.camp-session-preview{max-width:560px;margin:28px 0 32px}.camp-session-preview>.section-label{display:block;margin-bottom:14px}@media(max-width:900px){.approach-proof{grid-template-columns:1fr;gap:28px;margin-top:30px}.approach-proof .development-video{max-width:720px}.camp-session-preview{max-width:100%}}

.video-play-control{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;margin-top:12px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.video-play-control:focus-visible{outline:3px solid var(--red);outline-offset:4px}
