/* V121 · one source record, two distinct institutional experiences. */
:root{--v121-navy:#102c47;--v121-blue:#215572;--v121-sub:#547188;--v121-gold:#ba9453;--v121-line:#dce6eb;--v121-soft:#f5f8fa;--v121-header-height:75px}
/* The section index remains in view beneath the main navigation. */
.v119-opportunity .v119-opp-nav,.v121-storefront .v121-store-nav{position:sticky!important;top:var(--v121-header-height,75px);z-index:88;display:flex;align-items:center;gap:32px;min-height:60px;padding:0 14px;margin:20px -14px 0;border-top:1px solid #e2e9ed;border-bottom:1px solid #dce6eb;background:rgba(255,255,255,.97);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);box-shadow:0 6px 15px rgba(16,47,70,.035);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;white-space:nowrap}
.v119-opportunity .v119-opp-nav::-webkit-scrollbar,.v121-storefront .v121-store-nav::-webkit-scrollbar{display:none}
.v119-opportunity .v119-opp-nav a,.v121-storefront .v121-store-nav a{align-self:stretch;display:inline-flex;align-items:center;flex:0 0 auto;min-height:58px;color:#526e82;font-size:13px;font-weight:750;border-bottom:3px solid transparent;padding:2px 3px 0;text-decoration:none!important;transition:color .15s,border-color .15s}
.v119-opportunity .v119-opp-nav a:hover,.v119-opportunity .v119-opp-nav a.is-active,.v121-storefront .v121-store-nav a:hover,.v121-storefront .v121-store-nav a.is-active{color:#153951;border-color:var(--v121-gold)}
.v119-opportunity .v119-opp-nav a:focus-visible,.v121-storefront .v121-store-nav a:focus-visible{outline:2px solid #a88038;outline-offset:-6px;border-radius:2px}
.v119-opportunity .v119-opp-section,.v119-opportunity #opportunity-activation,.v119-opportunity #opportunity-sources,.v121-storefront .v121-institution-section{scroll-margin-top:calc(var(--v121-header-height,75px) + 82px)!important}
/* A cleaner research + deployment storefront shared by every listed institution. */
.v121-storefront{max-width:1392px;color:var(--v121-navy);padding-bottom:40px}
body.campus-immersive .v121-storefront>.university-hero.campus-full-bleed-hero{height:clamp(250px,33vw,450px)!important;min-height:0!important}
.v121-storefront>.university-hero .campus-photo-backdrop{filter:blur(20px) brightness(.9)!important}
.v121-storefront>.university-hero .university-photo{object-fit:contain!important}
.v121-store-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;border-bottom:1px solid var(--v121-line);padding:25px 12px 22px}
.v121-identity{display:flex;align-items:center;gap:20px;min-width:0}
.v121-identity .school-badge,.v121-identity .school-initials{width:60px;height:60px;object-fit:contain;flex:0 0 60px;padding:6px;border:1px solid #edf0f2;background:#fff;border-radius:50%;box-shadow:0 3px 12px #00000009}
.v121-identity h1{font:normal clamp(23px,2.5vw,36px)/1.13 Georgia,serif;color:var(--v121-navy);margin:6px 0 5px;letter-spacing:-.035em}
.v121-identity p{font-size:12px;color:var(--v121-sub);margin:0}
.v121-eyebrow{display:block;font-size:10px;line-height:1.4;font-weight:850;letter-spacing:.12em;text-transform:uppercase;color:#9a752f}
.v121-store-numbers{text-align:right;min-width:92px}.v121-store-numbers b{display:block;font-size:24px;line-height:1.1;color:var(--v121-navy)}.v121-store-numbers span{display:block;font-size:11px;color:var(--v121-sub);margin-top:3px;max-width:100px}
.v121-store-breadcrumb{padding:12px 2px 4px;color:#70879a}
.v121-store-breadcrumb .bread{margin:0!important;padding:0!important;font-size:11px}
.v121-store-intro{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:17px 2px 20px}
.v121-store-intro>p{font-size:15px;line-height:1.65;color:#39566a;max-width:720px;margin:0}
.v121-store-badges{display:flex;flex-wrap:wrap;gap:7px;max-width:460px;justify-content:flex-end}
.v121-store-badges span{font-size:11px;color:#46687c;border-radius:999px;border:1px solid #dce7ec;background:#f7fafb;padding:8px 12px;font-weight:650}
.v121-institution-section{border-bottom:1px solid var(--v121-line);padding:43px 0 47px}
.v121-heading{margin-bottom:24px}.v121-heading h2{font:normal clamp(28px,2.55vw,39px)/1.2 Georgia,serif;color:var(--v121-navy);letter-spacing:-.025em;max-width:850px;margin:10px 0 12px}.v121-heading p{font-size:14px;line-height:1.7;color:#567084;max-width:900px;margin:0}
.v121-filterbar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;margin:28px 0 21px;padding:16px 0;border-top:1px solid #eef1f4;border-bottom:1px solid #eef1f4}
.v121-filterbar>div:first-child{width:min(320px,100%)}.v121-filterbar label{font-size:10px;color:#6c8597;font-weight:800;letter-spacing:.09em;text-transform:uppercase;display:block;margin:0 0 7px}.v121-filterbar input{width:100%;border:1px solid #dce5ea;border-radius:24px;background:white;padding:12px 15px;font-size:12px;color:var(--v121-navy);outline-offset:2px}
.v121-filterbar .kind-filters{align-self:flex-end;display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.v121-research>.section-header{margin:0 0 18px}.v121-research>.section-header h2{font:normal 22px Georgia,serif;color:#183850}.v121-research>.section-header p{font-size:12px}
.v121-storefront .opportunities-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 18px}
.v121-storefront .unified-card{min-width:0}
.v121-cross-section{background:linear-gradient(135deg,#f6f8f8,#fbfbfa);margin:0 -30px;padding:47px 30px 48px;border-radius:17px;border:1px solid #eaf0f2}
.v121-cross-section .v121-heading{margin-bottom:26px}
.v121-combinations{display:grid;gap:11px}
.v121-combo-row{border:1px solid #dfe9ed;background:white;border-radius:13px;padding:11px 18px 11px 11px;display:grid;align-items:center;grid-template-columns:150px minmax(0,1fr) 20px;gap:21px;min-width:0;transition:box-shadow .17s,transform .17s}
.v121-combo-row:hover{box-shadow:0 10px 24px #112b450d;transform:translateY(-2px)}.v121-combo-image{height:110px;border-radius:9px;overflow:hidden;background:#eaf0f3}.v121-combo-image img{width:100%;height:100%;object-fit:cover;display:block}
.v121-combo-row small{font-size:10px;letter-spacing:.07em;font-weight:750;color:#9b783b}.v121-combo-row h3{font-size:17px;color:#203f56;line-height:1.26;margin:6px 0 7px}.v121-combo-row p{color:#577385;line-height:1.5;font-size:12px;margin:0 0 7px}.v121-combo-row span{font-size:11px;color:#476a7e}.v121-combo-row>b{color:#a47d3e;font-size:21px}
.v121-relationship-empty{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.v121-relationship-empty>div{padding:24px;border:1px solid #e1e8ec;background:white;border-radius:12px}.v121-relationship-empty strong{display:block;font-size:17px;margin:10px 0 9px;color:#214159}.v121-relationship-empty p{font-size:12px;color:#637a8a;line-height:1.6;margin:0}.v121-relationship-empty>small{grid-column:1/-1;color:#718593;font-size:11px;margin-top:7px}.v121-step{font-size:10px;color:#96712d;letter-spacing:.07em;font-weight:800}
.v121-disclosure{font-size:11px;color:#7b909e;line-height:1.6;margin:14px 0 0}
/* University: separate authenticated delivery from public program references. */
.v121-program-lead{display:grid;grid-template-columns:1.8fr .7fr;gap:15px;margin:20px 0 36px}.v121-program-hero{border-radius:13px;background:#122f4a;padding:32px 34px;color:#fff;min-height:220px}.v121-program-hero>span{font-size:10px;color:#b1d1e2;letter-spacing:.12em;font-weight:850}.v121-program-hero h3{font:normal clamp(24px,2vw,30px)/1.2 Georgia,serif;margin:14px 0 9px;max-width:540px}.v121-program-hero p{font-size:13px;color:#cbdbe5;line-height:1.65;max-width:700px}.v121-program-hero a{display:inline-block;color:#fff;border-bottom:1px solid #d7e7f0;font-weight:750;font-size:12px;margin-top:8px;padding-bottom:4px}
.v121-program-stat{padding:28px;background:#f3f7f8;border-radius:13px;border:1px solid #e3ecf0;display:flex;flex-direction:column;justify-content:center}.v121-program-stat strong{font:normal 52px Georgia,serif;line-height:1;color:#173a54}.v121-program-stat span{font-weight:750;font-size:13px;color:#244b63;line-height:1.4;max-width:210px;margin-top:10px}.v121-program-stat small{font-size:11px;color:#71899b;line-height:1.5;margin-top:13px}
.v121-subheading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:26px 0 16px}.v121-subheading h3{font:normal 24px/1.25 Georgia,serif;color:#17364d;margin:0}.v121-subheading p{margin:7px 0 0;color:#637d8f;font-size:12px;line-height:1.55;max-width:820px}.v121-subheading>a{font-size:12px;color:#1b6486;font-weight:750;white-space:nowrap}
.v121-program-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.v121-program-card{border:1px solid #e1e9ec;border-radius:13px;background:#fff;padding:21px;display:flex;flex-direction:column;align-items:flex-start;gap:0;min-width:0;transition:box-shadow .15s}.v121-program-card:hover{box-shadow:0 9px 24px #19384a0e}.v121-program-type{font-size:9px;color:#96712d;font-weight:850;letter-spacing:.08em}.v121-program-card h3{font-size:16px;color:#1b3a51;margin:11px 0;line-height:1.33}.v121-program-card>p{font-size:12px;line-height:1.6;color:#577284;margin:0 0 16px}.v121-program-fit{background:#f4f8fa;border-radius:8px;padding:12px;margin-top:auto;width:100%}.v121-program-fit b{display:block;font-size:10px;color:#29607b;margin:0 0 4px}.v121-program-fit span{font-size:11px;line-height:1.5;color:#5c7484}.v121-program-card>small{font-size:10px;color:#78909e;line-height:1.45;margin-top:14px}.v121-program-card>strong{font-size:12px;color:#176b96;margin-top:12px}
.v121-unmapped{border:1px dashed #bdcfd8;background:#f8fafb;border-radius:12px;padding:24px 25px;display:flex;align-items:center;justify-content:space-between;gap:25px}.v121-unmapped b{font-size:15px}.v121-unmapped p{font-size:12px;color:#617b89;line-height:1.6;max-width:650px;margin:6px 0 0}.v121-unmapped a{font-size:12px;color:#176b96;font-weight:800;white-space:nowrap}
.v121-support-accordion{border-top:1px solid #e2ebee;border-bottom:1px solid #e2ebee;margin:24px 0}.v121-support-accordion>summary{list-style:none;display:flex;justify-content:space-between;gap:15px;align-items:center;cursor:pointer;padding:20px 0;color:#214258;font-size:13px;font-weight:750}.v121-support-accordion>summary::-webkit-details-marker{display:none}.v121-support-accordion>summary span{color:#66859a;font-size:11px}.v121-support-accordion>p{font-size:12px;color:#647b89}.v121-support-accordion .v121-program-grid{margin:12px 0 22px}
.v121-work-head{margin-top:38px}.v121-work-context{font-size:12px;color:#60798a;margin:0 0 17px}.v121-work-context a{color:#176d96;text-decoration:underline}.v121-assignment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.v121-assignment{border:1px solid #dfe8eb;background:#fafbfc;border-radius:13px;padding:22px;min-height:188px;display:flex;flex-direction:column}.v121-assignment small{font-size:9px;font-weight:850;color:#99783d;letter-spacing:.08em;line-height:1.5}.v121-assignment h3{font-size:17px;line-height:1.3;margin:15px 0 9px;color:#244760}.v121-assignment p{font-size:12px;line-height:1.6;color:#567080;margin:0}.v121-assignment span{font-size:11px;color:#1f6a8b;margin-top:auto;padding-top:20px;font-weight:750}
.v121-incoming-head{margin-top:44px}.v121-cardgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.v121-market-card{border:1px solid #e2e8eb;background:#fff;border-radius:14px;overflow:hidden;display:flex;flex-direction:column}.v121-market-image{height:155px;position:relative;background:#e7eef0}.v121-market-image img{width:100%;height:100%;object-fit:cover}.v121-market-image>span{position:absolute;left:11px;bottom:10px;padding:6px 9px;background:#fff;border-radius:6px;font-size:10px;font-weight:800;color:#31596f}.v121-market-body{padding:18px;display:flex;flex-direction:column;flex:1}.v121-market-body>small{font-size:10px;color:#9e7d44}.v121-market-body h3{font-size:17px;color:#1a3d56;line-height:1.3;margin:9px 0}.v121-market-body p{font-size:12px;color:#5b7789;line-height:1.6;margin:0 0 12px}.v121-market-body b{font-size:12px;color:#1d6485;margin-top:auto}
.v121-empty{border:1px solid #dce5eb;background:#f7fafb;border-radius:12px;padding:25px}.v121-empty p{font-size:12px;color:#6d8594;line-height:1.6}.v121-empty a{color:#176d96;font-weight:750}
/* Labs: no implied teaching courses or student placement. */
.v121-lab-feature{display:grid;grid-template-columns:1.2fr .9fr;gap:28px;border-radius:15px;background:#102b44;color:white;padding:35px 36px;margin:25px 0 35px}.v121-lab-feature>div:first-child>span{font-size:10px;color:#b6d4e2;letter-spacing:.1em;font-weight:800}.v121-lab-feature h3{font:normal 28px/1.2 Georgia,serif;color:white;margin:15px 0 12px}.v121-lab-feature p{font-size:13px;color:#d2e1e9;line-height:1.65;max-width:650px}.v121-lab-roles{display:grid;gap:8px}.v121-lab-roles>div{border-left:2px solid #a7c2d0;background:#ffffff0b;padding:11px 18px;display:flex;flex-direction:column;gap:4px}.v121-lab-roles b{font-size:12px;color:#f5f8fa}.v121-lab-roles span{font-size:11px;color:#b5cbd6;line-height:1.4}
.v121-lab-mechanisms{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.v121-lab-mechanisms>a{padding:21px;background:#f7fafb;border:1px solid #dee9ef;border-radius:12px;display:flex;flex-direction:column;min-height:225px}.v121-lab-mechanisms span{font-size:9px;color:#987637;font-weight:800;letter-spacing:.08em;line-height:1.5}.v121-lab-mechanisms h3{font-size:17px;color:#1a3e57;line-height:1.3;margin:15px 0 9px}.v121-lab-mechanisms p{font-size:12px;line-height:1.6;color:#5b7685;margin:0}.v121-lab-mechanisms b{font-size:11px;color:#226d8f;margin-top:auto;padding-top:16px}
.v121-cross-lab{margin-top:38px;padding-top:4px}.v121-lab-handoff{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:22px 0}.v121-lab-handoff>div{position:relative;border:1px solid #dfe8ee;background:#f5f9fa;border-radius:11px;padding:22px;display:flex;flex-direction:column;gap:9px}.v121-lab-handoff>div+div:before{content:'→';position:absolute;left:-21px;top:50%;font-size:15px;color:#7796a7}.v121-lab-handoff small{font-size:9px;color:#8e723e;font-weight:850}.v121-lab-handoff strong{font-size:18px;color:#1d3f57}.v121-lab-handoff span{font-size:12px;color:#5f7989;line-height:1.5}
.v121-receiving-sources{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.v121-receiving-sources a{border-radius:12px;border:1px solid #e0e9ef;background:white;padding:19px;display:flex;flex-direction:column;gap:9px}.v121-receiving-sources small{font-size:9px;letter-spacing:.06em;color:#9d7c42;font-weight:800}.v121-receiving-sources strong{font-size:14px;color:#1f445d;line-height:1.4}.v121-receiving-sources span{font-size:11px;color:#618093}
.v121-cta{border-radius:16px;background:#102c47;color:white;padding:37px 39px;display:flex;justify-content:space-between;align-items:center;gap:33px}.v121-cta h2{font:normal clamp(24px,2.2vw,32px)/1.22 Georgia,serif;color:white;margin:10px 0}.v121-cta p{font-size:13px;color:#c4dae6;line-height:1.6;max-width:770px;margin:0}.v121-cta .v119-button-primary{flex:0 0 auto;background:#fff;color:#10334d!important}.v121-cta .v121-eyebrow{color:#e1c68e}.v121-footer-note{font-size:10px;color:#8a9cab;line-height:1.6;margin:17px 0 0}
/* Directory distinguishes university, DOE laboratory and other federal sources. */
.v121-directory .directory-lead{margin-bottom:28px}.v121-directory-roles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:26px 0}.v121-directory-roles>div{border:1px solid #e2eaf0;border-radius:11px;padding:17px 19px;background:#f8fafb}.v121-directory-roles b{display:block;font-size:14px;color:#1e435d;margin-bottom:5px}.v121-directory-roles span{font-size:11px;color:#688394;line-height:1.5}.v121-directory-filters{display:flex;flex-wrap:wrap;gap:9px;margin:26px 0 12px}.v121-directory-count{font-size:11px;color:#71899a;margin-bottom:21px}.v121-billboard-type{font-size:9px!important;color:#956f35!important;letter-spacing:.07em;font-weight:850;text-transform:uppercase}
@media(max-width:980px){.v121-store-intro{align-items:flex-start;flex-direction:column;gap:15px}.v121-store-badges{justify-content:flex-start;max-width:none}.v121-program-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v121-lab-mechanisms{grid-template-columns:repeat(2,minmax(0,1fr))}.v121-cta{align-items:flex-start;flex-direction:column}.v121-research .opportunities-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){:root{--v121-header-height:64px}.v119-opportunity .v119-opp-nav,.v121-storefront .v121-store-nav{gap:21px;min-height:55px;top:var(--v121-header-height,64px);padding:0 16px;margin:12px -16px 0}.v119-opportunity .v119-opp-nav a,.v121-storefront .v121-store-nav a{min-height:54px;font-size:12px}.v121-storefront{padding-left:18px!important;padding-right:18px!important}.v121-storefront .v121-store-header{padding:21px 0 18px}.v121-identity{gap:12px}.v121-identity .school-badge,.v121-identity .school-initials{width:48px;height:48px;flex-basis:48px}.v121-identity h1{font-size:25px}.v121-identity .v121-eyebrow{font-size:8.5px}.v121-store-numbers{min-width:60px}.v121-store-numbers b{font-size:21px}.v121-store-numbers span{font-size:9px}.v121-store-intro{padding:15px 0 16px}.v121-store-intro>p{font-size:13px}.v121-store-badges span{font-size:10px;padding:7px 9px}.v121-institution-section{padding:33px 0 38px}.v121-heading h2{font-size:29px}.v121-heading p{font-size:13px}.v121-filterbar{flex-direction:column}.v121-research .opportunities-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.v121-cross-section{margin:0 -18px;padding:32px 18px;border-radius:0}.v121-relationship-empty{grid-template-columns:1fr}.v121-relationship-empty>small{grid-column:1}.v121-combo-row{grid-template-columns:95px minmax(0,1fr) 13px;gap:12px;padding:9px}.v121-combo-image{height:95px}.v121-combo-row h3{font-size:14px}.v121-combo-row p{font-size:11px}.v121-program-lead,.v121-lab-feature{grid-template-columns:1fr}.v121-program-hero{padding:26px;min-height:0}.v121-program-stat{padding:22px}.v121-subheading{align-items:flex-start;flex-direction:column;gap:8px}.v121-program-grid,.v121-assignment-grid,.v121-cardgrid,.v121-receiving-sources,.v121-lab-handoff{grid-template-columns:1fr}.v121-lab-feature{padding:26px}.v121-lab-mechanisms{grid-template-columns:1fr 1fr}.v121-unmapped{align-items:flex-start;flex-direction:column}.v121-lab-handoff>div+div:before{display:none}.v121-cta{padding:27px 23px}.v121-directory-roles{grid-template-columns:1fr}.v121-storefront .v121-market-card{max-width:none}}
@media(max-width:470px){body.campus-immersive .v121-storefront>.university-hero.campus-full-bleed-hero{height:240px!important;min-height:0!important}.v121-store-header{grid-template-columns:1fr auto}.v121-identity h1{font-size:21px}.v121-identity .school-badge,.v121-identity .school-initials{width:43px;height:43px;flex-basis:43px}.v121-store-numbers b{font-size:19px}.v121-research .opportunities-grid{grid-template-columns:1fr}.v121-lab-mechanisms{grid-template-columns:1fr}.v121-cardgrid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px}.v121-cardgrid .v121-market-card{flex:0 0 86%;scroll-snap-align:start}}
@media(prefers-reduced-motion:reduce){.v121-combo-row,.v121-market-card,.v121-program-card{transition:none}}
