/* Shared Labs navigation, sized identically on the landing page and portal pages. */
[data-labs-header]{--lp-ink:#131517;--lp-muted:#59616a;--lp-line:#dbe0e3;font-family:LabsManrope,Arial,sans-serif;position:sticky;top:0;z-index:40;min-height:84px;padding:18px clamp(24px,5vw,96px)}
[data-labs-header] a{color:var(--lp-ink)}
[data-labs-header] nav{gap:30px}
[data-labs-header] summary{display:flex;align-items:center;gap:10px;cursor:pointer;list-style:none;padding:12px 0}
[data-labs-header] summary::-webkit-details-marker{display:none}
[data-labs-header] :focus-visible{outline:3px solid #326da3;outline-offset:4px}
.lp-residency{position:relative}
.lp-residency-chevron{display:block;width:16px;height:16px;flex:none;transform-origin:center}
.lp-residency[open] .lp-residency-chevron{transform:rotate(180deg)}
.lp-residency-links{position:absolute;top:100%;left:-20px;min-width:230px;background:white;border:1px solid #dbe0e3;border-radius:8px;padding:10px;box-shadow:0 15px 40px #17222b20;display:grid;gap:3px}
.lp-residency-links a{padding:12px;border-radius:4px;display:block}
.lp-residency-links a:hover,.lp-residency-links a:focus-visible{background:#f0f3f4}
[data-labs-header] [aria-current=page]{text-decoration:underline;text-underline-offset:5px}
.rk-labs .labs-apply-alternative{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:13px;line-height:1.5;min-height:44px;text-align:center}
.rk-labs .labs-apply-alternative svg{width:18px;height:18px;flex:none}
.labs-universities{padding-top:65px;padding-bottom:70px;border-top:1px solid #e1e4e5}
.rk-labs .labs-universities h2{font-size:clamp(32px,4vw,50px);margin-bottom:24px}
.labs-universities>p:not(.labs-label){max-width:850px;font-size:16px;line-height:1.8}
.rk-labs .labs-universities .labs-university-note{font-size:12px;color:#667078;margin-top:20px}
.labs-perks-preview{padding-top:80px;padding-bottom:80px;display:grid;grid-template-columns:1fr 1fr;gap:10%;background:#f5f7f7}
.labs-perks-preview>div>p:not(.labs-label){max-width:430px;margin:24px 0;line-height:1.8}
.labs-perks-types{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.labs-perks-types article{padding:28px 0;border-top:1px solid #cbd2d5}
.labs-perks-types article>span{font-size:30px;color:#c32722}
.labs-perks-types h3{font-size:21px;margin:20px 0 14px}
.rk-labs .labs-perks-types p{font-size:14px;line-height:1.7}
.rk-labs .labs-perks-types .labs-perks-fine{grid-column:1/-1;font-size:11px;color:#667078;margin:0}
.lp-page-hero.lp-motion-hero{position:relative;isolation:isolate;overflow:hidden;max-width:none;min-height:590px;background:#180e14;color:#fff;display:flex;align-items:center}
.lp-motion-poster,.lp-motion-hero .labs-hero-video,.lp-motion-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3}
.lp-motion-hero .labs-hero-video{opacity:0;transition:opacity .5s}
.lp-motion-hero .labs-hero-video.is-visible{opacity:1}
.lp-motion-shade{z-index:-1;background:linear-gradient(90deg,#130b11e8,#130b11a8 55%,#130b1122)}
.lp-motion-content{max-width:1250px;width:100%;margin:auto}
.lp-motion-hero .lp-kicker,.lp-motion-hero .lp-deck,.lp-motion-hero .lp-program-meta{color:#f2e6e9}
.lp-motion-hero .lp-deck{max-width:730px}
.lp-motion-hero .lp-button{background:#fff;color:#171317;border-color:#fff}
.lp-motion-hero .lp-secondary{background:transparent;color:#fff;border-color:#ffffff70}
.lp-motion-hero .labs-motion-toggle{position:absolute;right:188px;bottom:24px;z-index:2;margin:0;border:1px solid #ffffff70;border-radius:50%;background:#160e1260;color:#fff;padding:0;width:44px;height:44px;display:inline-grid;place-items:center;cursor:pointer}.lp-motion-hero .labs-motion-toggle svg{width:16px;height:16px}.lp-motion-hero .labs-motion-toggle>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.lp-motion-hero .labs-motion-toggle .labs-play-icon,.lp-motion-hero .labs-motion-toggle.is-paused .labs-pause-icon{display:none}.lp-motion-hero .labs-motion-toggle.is-paused .labs-play-icon{display:block}
.rk-labs-program .lp-page-hero .lp-perks-disclosure{font-size:11px;line-height:1.6;max-width:650px;margin-top:24px;color:#667078}
#resources{scroll-margin-top:90px}
.lp-summary dd a{overflow-wrap:anywhere;color:#255c8a}
.lp-contact-actions{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}
.lp-contact-actions a{font-size:13px;border:1px solid #c7d0d5;border-radius:5px;padding:10px 14px}
@media(max-width:900px){
 [data-labs-header]{min-height:72px;padding:14px 24px}
 [data-labs-header] .lp-menu{display:flex;gap:12px;align-items:center;background:none;border:0;padding:10px;color:#131517}
 [data-labs-header] nav{display:none;position:absolute;top:100%;left:0;right:0;padding:15px 24px 24px;background:#fff;box-shadow:0 16px 24px #17222b20;max-height:calc(100dvh - 72px);overflow-y:auto}
 [data-labs-header] nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}
 [data-labs-header] nav>a,[data-labs-header] summary{padding:15px 0;border-bottom:1px solid #dbe0e3}
 [data-labs-header] nav .lp-nav-apply{margin-top:16px;padding:14px 18px}
 .lp-residency-links{position:static;box-shadow:none;border:0;border-left:2px solid #c32722;border-radius:0;margin:4px 0 16px;padding:0 0 0 10px}
 .labs-perks-preview{grid-template-columns:1fr;gap:40px;padding-top:60px;padding-bottom:60px}
 .lp-page-hero.lp-motion-hero{min-height:590px;padding:54px 24px}
 .lp-motion-hero h1{font-size:clamp(42px,9vw,66px)}
 .lp-motion-hero .lp-deck{font-size:17px}
 .lp-motion-shade{background:linear-gradient(90deg,#130b11eb,#130b1199)}
}
@media(prefers-reduced-motion:reduce){.lp-motion-hero .labs-hero-video{transition:none}}
/* Existing portal buttons define their text color with !important. */
.lp-motion-hero .lp-button{color:#171317!important}
.lp-motion-hero .lp-button.lp-secondary{color:#fff!important}
.lp-program-hero .lp-actions .lp-button.lp-secondary{background:#fff;border-color:#fff;color:#171317!important}

/* Reserve a separate control area below the hero copy on every screen size. */
.lp-page-hero.lp-motion-hero{padding-bottom:100px}
.lp-motion-hero .labs-motion-toggle:focus-visible{outline:3px solid #fff;outline-offset:4px}
.lp-motion-hero .labs-motion-toggle[hidden]{display:none}

/* Leave the fixed chat launcher its own space in the lower-right controls area. */
@media(max-width:760px){.lp-motion-hero .labs-motion-toggle{right:88px}}

/* Match the research introduction to Our Focus, including wide-screen edges. */
.labs-discover{background:#eff2f3;max-width:none;padding-top:80px;padding-inline:max(var(--labs-gutter),calc((100% - 1512px)/2 + var(--labs-gutter)))}
@media(max-width:680px){.labs-discover{padding-top:55px}}

/* Public support and event proposals share the Labs editorial layout. */
.le-support,.le-formats{padding-top:72px;border-top:1px solid var(--lp-line)}
.le-section-heading{max-width:760px;margin-bottom:38px}
.le-section-heading>p:not(.lp-kicker),.le-form-intro>p:not(.lp-kicker),.le-calendar p{font-size:16px;line-height:1.8;color:var(--lp-muted)}
.le-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:35px 0 40px}
.le-cards article{border-top:2px solid #c90000;padding-top:24px}
.le-index{font:11px/1.5 monospace;letter-spacing:.08em;color:#9b1010}
.le-cards h3{font-size:25px;line-height:1.25;letter-spacing:-.6px;margin:22px 0 15px;font-weight:600}
.le-cards p{font-size:15px;line-height:1.8;color:var(--lp-muted)}
.le-contribute{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:70px;padding-top:65px;border-top:1px solid var(--lp-line);scroll-margin-top:110px}
.le-form-intro h2{margin-bottom:24px}.le-inline-link{display:inline-block;color:#a90000;font-size:14px;line-height:1.7;margin-top:12px}
.le-form{min-width:0;background:#eff2f3;padding:32px;border-radius:8px}
.le-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 20px}.le-wide{grid-column:1/-1}
.le-form label{min-width:0;font-size:13px;line-height:1.6;font-weight:600}.le-form label>span{font-weight:400;color:#5f666a}
.le-form input,.le-form select,.le-form textarea{display:block;width:100%;min-width:0;min-height:48px;margin-top:8px;padding:12px;border:1px solid #bac3c8;border-radius:4px;background:white;color:#1b2024;font-family:inherit;font-size:15px;line-height:1.5;box-sizing:border-box}
.le-form textarea{resize:vertical;line-height:1.6}.le-form select{text-overflow:ellipsis;padding-right:24px}.le-form [aria-invalid=true]{border-color:#a90000}
.le-form :is(input,select,textarea,button):focus-visible,.le-inline-link:focus-visible{outline:2px solid #a90000;outline-offset:3px}
.le-form-note{font-size:12px!important;line-height:1.8!important;color:#5b6267;margin:20px 0}.le-form-note a{color:inherit;text-decoration:underline}
.le-form .rk-form-status{margin-top:20px;overflow-wrap:anywhere}.le-form .lp-button:disabled{opacity:.6;cursor:wait}
.le-location{font:12px/1.5 monospace;letter-spacing:.05em;color:#9b1010;margin:28px 0}
.le-calendar{background:#eff2f3;padding:48px;display:grid;grid-template-columns:1fr 1.4fr;gap:60px;margin-bottom:60px;border-radius:8px}
.le-calendar-list article{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #cbd2d5;padding:28px 0}.le-calendar-list article:last-child{border-bottom:1px solid #cbd2d5}
.le-calendar h3{font-size:23px;font-weight:600;margin:0}.le-calendar-list p{font-size:13px;margin:8px 0 0}.le-coming{font:11px/1.5 monospace;color:#8d1111;white-space:nowrap;border:1px solid #d7b6b6;padding:7px 10px;border-radius:20px}
#support{scroll-margin-top:110px}
@media(max-width:1000px){.le-contribute{gap:35px}.le-form{padding:24px}.le-calendar{gap:30px;padding:32px}.le-calendar-list article{align-items:flex-start;flex-direction:column;gap:12px}}
@media(max-width:760px){.le-support,.le-formats{padding-top:42px}.le-cards{grid-template-columns:1fr;gap:22px}.le-cards h3{margin-top:16px}.le-contribute{grid-template-columns:1fr;padding-top:40px;gap:28px}.le-form{padding:24px 18px}.le-fields{grid-template-columns:1fr;gap:20px}.le-wide{grid-column:auto}.le-form :is(input,select,textarea){font-size:16px}.le-calendar{grid-template-columns:1fr;margin:0 24px 40px;padding:28px 22px;gap:20px}.le-form .lp-button{width:100%;justify-content:center}.le-events-hero .lp-actions{align-items:stretch}.le-events-hero .lp-button{justify-content:center}}
