:root{
  --navy:#052b59;
  --navy-deep:#031d3e;
  --navy-2:#0b407a;
  --blue:#1367cf;
  --cyan:#24a7e9;
  --gold:#d59b20;
  --green:#2f9d68;
  --red:#c74747;
  --purple:#7654b9;
  --ink:#10233f;
  --muted:#60728b;
  --line:#c8d6e8;
  --line-dark:#9eb5d1;
  --paper:#f7fbff;
  --panel:#fff;
  --panel-blue:#edf5fd;
  --shadow:0 10px 30px rgba(15,43,80,.08);
  --radius:8px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#f4f8fc;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.45}
a{color:#145ebd;text-decoration:none}a:hover{text-decoration:underline}
img{max-width:100%;display:block}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
.skip-link{position:fixed;left:10px;top:-50px;z-index:9999;background:#fff;color:#000;padding:8px 12px}.skip-link:focus{top:10px}
.topbar{height:56px;background:linear-gradient(90deg,var(--navy-deep),var(--navy));color:#fff;display:flex;align-items:center;padding:0 30px;gap:24px;position:sticky;top:0;z-index:1000;border-bottom:1px solid rgba(255,255,255,.12)}
.brand{display:flex;align-items:center;color:#fff;gap:10px;min-width:310px}.brand:hover{text-decoration:none}.brand-mark{width:36px;height:36px;border:1px solid rgba(255,255,255,.35);display:grid;place-items:center;font-size:28px;transform:rotate(45deg);line-height:1}.brand-mark::first-letter{transform:rotate(-45deg)}.brand-copy{display:flex;flex-direction:column;letter-spacing:2.5px}.brand-copy strong{font-family:Georgia,serif;font-size:18px;font-weight:500}.brand-copy small{font-size:9px;letter-spacing:3px}
.primary-nav{display:flex;align-items:stretch;height:100%;gap:8px;flex:1;justify-content:center}.primary-nav a{color:#fff;font-size:12px;text-transform:uppercase;letter-spacing:.45px;padding:20px 14px 16px;border-bottom:3px solid transparent}.primary-nav a.active,.primary-nav a:hover{border-bottom-color:#4db5ff;text-decoration:none;background:rgba(255,255,255,.04)}
.top-actions{display:flex;align-items:center;gap:8px}.icon-button{border:0;background:transparent;color:#fff;font-size:22px;padding:8px}.site-pill{color:#d6e8ff;border:1px solid rgba(255,255,255,.22);padding:7px 10px;border-radius:16px;font-size:11px;max-width:190px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.site-pill:hover{text-decoration:none;background:rgba(255,255,255,.08)}
.mobile-nav-wrap{display:none}.shell{max-width:1500px;margin:0 auto;padding:0 30px}.shell-wide{width:100%;padding:0 32px}.section{padding-top:56px;padding-bottom:56px}.section.compact{padding-top:20px}
h1,h2,h3{margin-top:0;color:#092754}h1{font-family:Georgia,'Times New Roman',serif;font-size:48px;line-height:1.02;font-weight:500;letter-spacing:-1px}h2{font-size:15px;text-transform:uppercase;letter-spacing:.45px;margin-bottom:12px}h3{font-size:17px}.lead,.hero-subhead{font-size:19px;color:#125dc0;line-height:1.35}.eyebrow,.breadcrumbs{font-size:12px;text-transform:uppercase;color:#1462c1;font-weight:700;letter-spacing:.7px}.muted{color:var(--muted)}
.button-row{display:flex;gap:14px;flex-wrap:wrap;margin:22px 0}.button{display:inline-flex;align-items:center;justify-content:center;padding:11px 18px;border-radius:3px;border:1px solid var(--blue);font-weight:700;text-transform:uppercase;font-size:12px;letter-spacing:.3px}.button.primary{background:linear-gradient(#176dcc,#0c4e9a);color:#fff}.button.secondary{background:#fff;color:#0b4b95}.button:hover{text-decoration:none;filter:brightness(1.05)}.small-button{border:1px solid var(--line);background:#fff;color:#0b4d99;padding:6px 10px;border-radius:4px;font-size:12px}.text-button{border:0;background:transparent;color:#135fbd;font-weight:700}
.panel{background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:var(--radius);padding:16px;box-shadow:0 2px 9px rgba(18,55,100,.04);min-width:0}.panel p:last-child{margin-bottom:0}.panel-number{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:4px;color:#0b4b95;font-weight:800;font-size:12px;margin-right:7px}.numbered>h2{display:inline-block}.panel-title-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.panel-title-row h2{margin-bottom:0}
.status-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#8b9aab;margin-right:7px}.status-dot.blue{background:#2388e8}.status-dot.gold{background:#e3a318}.status-dot.green{background:#35a56e}.status-dot.gray{background:#b8c0c8}.blue-text{color:#1464c5!important}.green-text{color:#278e5d!important}.gold-text{color:#c68712!important}.red-text{color:#bd3030!important}.gold-rule{width:42px;height:3px;background:var(--gold);margin:15px 0}
.progress{height:5px;background:#dbe6f2;border-radius:4px;overflow:hidden}.progress b{display:block;height:100%;background:linear-gradient(90deg,#1e6fd3,#35a8f2)}
.core-badge{padding:6px 10px;border-radius:15px;background:#e9f7ef;color:#237f53;font-size:12px}.core-badge.cached{background:#fff6df;color:#986508}.core-badge.offline{background:#ffe8e8;color:#a12b2b}.core-notice{background:#fff3cd;border-bottom:1px solid #ead28d;color:#704f00;padding:8px 30px;text-align:center;font-size:12px}
.program-hero{background:linear-gradient(120deg,#fff 0 42%,#dceafa 42% 100%);padding:50px 0}.program-hero-grid{display:grid;grid-template-columns:.85fr 1.3fr;align-items:center;gap:45px}.program-hero h1{font-size:56px}.portfolio-hero-visual{position:relative;border-radius:12px;overflow:hidden;box-shadow:var(--shadow)}.portfolio-hero-visual img{height:430px;width:100%;object-fit:cover}.floating-label{position:absolute;right:18px;bottom:18px;background:rgba(3,29,62,.88);color:#fff;padding:10px 14px;border:1px solid rgba(255,255,255,.3);font-size:12px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px}.section-heading h2{font-family:Georgia,serif;text-transform:none;font-size:34px;font-weight:500}.site-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.site-card{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:var(--shadow)}.site-card>img{height:225px;width:100%;object-fit:cover}.site-card-body{padding:18px}.site-card h3{font-family:Georgia,serif;font-size:26px;font-weight:500}.site-meta{display:flex;justify-content:space-between;font-size:11px;text-transform:uppercase;color:#55718f;margin-bottom:10px}.site-card-footer{display:flex;align-items:center;gap:6px;border-top:1px solid #e1e8f0;padding-top:12px;font-size:12px}.site-card-footer a{margin-left:auto}.new-site-card{display:flex;min-height:390px;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:35px;border-style:dashed;background:#f8fbfe}.new-site-icon{font-size:48px;color:#1f6fd1}.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.project-hero{display:grid;grid-template-columns:34% 66%;min-height:328px;background:#fff;border-bottom:1px solid var(--line)}.hero-copy{padding:22px 36px 28px 48px}.hero-copy h1{font-size:51px}.hero-copy p:not(.eyebrow):not(.hero-subhead){max-width:650px}.powered-by{font-size:11px;color:#7a8796;text-transform:uppercase;letter-spacing:.4px}.powered-by strong{color:#303a45;margin-left:12px;font-size:14px}.hero-image{position:relative;background-size:cover;background-position:center}.hero-image:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff 0,rgba(255,255,255,.2) 12%,transparent 35%)}.project-status{position:absolute;right:38px;top:20px;background:rgba(4,36,75,.88);color:#fff;padding:16px 20px;min-width:230px;border:1px solid rgba(255,255,255,.28)}.project-status h3{color:#fff;font-size:12px;text-transform:uppercase;letter-spacing:1px}.project-status div{font-size:12px;margin:12px 0}.spatial-tag{position:absolute;color:#e7f6ff;border:1px solid rgba(210,242,255,.45);background:rgba(24,72,95,.25);padding:6px 9px;font-size:9px}.tag-one{left:36%;top:32px}.tag-two{right:28%;top:20px}.tag-three{left:55%;bottom:45px}
.dashboard-shell{padding:0 32px 18px;background:linear-gradient(#edf5fc,#f8fbfe)}.dashboard-row{display:grid;gap:10px;padding-top:10px}.dashboard-row-top{grid-template-columns:.68fr 1.55fr 1.2fr}.pilot-grid{display:grid;grid-template-columns:1.4fr .55fr .6fr;gap:12px}.pilot-grid img{height:140px;width:100%;object-fit:cover;border-radius:4px}.pilot-grid ol{list-style:none;padding:0;margin:0}.pilot-grid li{font-size:11px;margin:7px 0}.pilot-grid li span{background:#0b4d99;color:#fff;border-radius:50%;display:inline-grid;place-items:center;width:17px;height:17px;margin-right:6px}.metric-stack{display:grid;gap:6px}.metric-stack div{background:#f6f9fc;border:1px solid #d7e3ef;padding:7px}.metric-stack strong{display:block;color:#18396b}.metric-stack small{font-size:9px;color:#63748a}.mini-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.mini-grid a{display:flex;align-items:center;gap:8px;border:1px solid #d5e0ed;padding:10px;font-size:11px;color:#173963}.mini-grid a:hover{text-decoration:none;background:#f0f7fd}.mini-icon{font-size:22px;color:#145ebd}.feature-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.feature-card{border:1px solid #cbd9e8;background:#fff;border-radius:5px;overflow:hidden;color:var(--ink)}.feature-card:hover{text-decoration:none;box-shadow:var(--shadow)}.feature-card img{height:82px;width:100%;object-fit:cover}.feature-card>div{padding:7px}.feature-card strong{display:block;font-size:11px}.feature-card span{font-size:9px;color:#2b9561}.feature-card span i{display:inline-block;width:6px;height:6px;background:#36a96f;border-radius:50%;margin-right:4px}.feature-card small{display:block;font-size:8px;margin:5px 0}.add-card{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-style:dashed;padding:20px}.add-card span{font-size:30px;color:#0b5ebd}.lower-dashboard{grid-template-columns:1.1fr .9fr 1fr 1.45fr .9fr}.systems-card img{height:68px;width:auto;margin:4px auto}.systems-card ul,.check-list{padding:0;list-style:none}.systems-card li,.check-list li{font-size:11px;margin:7px 0}.check-list li:before{content:"✓";color:#2f9d68;border:1px solid #55b889;border-radius:50%;font-size:8px;padding:1px 3px;margin-right:6px}.mini-bars{height:75px;display:flex;align-items:end;gap:8px;margin:10px 0}.mini-bars b{width:19px;background:linear-gradient(#43b276,#1b6bcb)}.document-teaser{display:flex;gap:10px}.doc-cover{background:#e9eef5;border:1px solid #cad5e2;color:#d13b3b;font-weight:800;width:60px;height:75px;display:grid;place-items:center}.document-teaser div:last-child{display:flex;flex-direction:column;gap:5px}.document-teaser small{font-size:9px}.comment{display:flex;gap:9px;border-bottom:1px solid #e1e8ef;padding:8px 0}.comment strong,.comment small{display:inline;margin-right:5px}.comment small{color:#678}.comment p{font-size:10px;margin:3px 0}.avatar{width:28px;height:28px;border-radius:50%;background:#d6e7f8;color:#0d4e99;display:grid;place-items:center;flex:0 0 auto;font-weight:700}.link-list,.count-list,.status-list,.schedule-list{list-style:none;padding:0;margin:0}.link-list li,.count-list li,.status-list li{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid #e2e9f0;padding:7px 0;font-size:11px}.link-list li:last-child,.count-list li:last-child,.status-list li:last-child{border-bottom:0}
.workspace-header{display:grid;grid-template-columns:.42fr 1fr;gap:35px;background:#fff;padding-top:18px;padding-bottom:15px}.workspace-header h1{font-size:43px}.workspace-header p{max-width:700px}.metric-ribbon{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:10px;align-items:stretch}.metric-ribbon>div{border:1px solid var(--line);border-radius:6px;background:#f8fbfe;padding:15px;display:flex;flex-direction:column;justify-content:center}.metric-ribbon span{font-size:9px;text-transform:uppercase;color:#3264a2;font-weight:700}.metric-ribbon strong{font-size:23px;color:#123a75;margin:5px 0}.metric-ribbon small{font-size:9px;color:#73839a}.workbench-grid{display:grid;grid-template-columns:22% 1fr 25%;gap:10px;padding-top:10px}.workbench-side{display:grid;gap:10px;align-content:start}.compact-panel{padding:12px}.count-list b{color:#456}.workbench-main{display:grid;gap:10px;align-content:start}.map-wrap{position:relative}.map-wrap>img{height:315px;width:100%;object-fit:cover;border:1px solid #7c94ac;border-radius:4px}.map-controls{position:absolute;left:10px;top:10px;display:grid}.map-controls button{width:28px;height:28px;background:#fff;border:1px solid #b4c4d5}.map-marker{position:absolute;background:#073c78;color:#fff;border-radius:13px;padding:4px 8px;font-size:9px;white-space:nowrap}.map-marker b{display:inline-grid;place-items:center;background:#fff;color:#073c78;width:16px;height:16px;border-radius:50%;margin-right:4px}.marker-1{left:45%;top:30%}.marker-2{left:16%;top:22%}.marker-3{left:12%;top:62%}.marker-4{left:39%;top:72%}.marker-5{right:16%;top:60%}.marker-6{right:4%;top:30%}.marker-7{right:20%;top:8%}.zone-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.zone-card{border:1px solid #cad8e7;border-radius:4px;padding:5px}.zone-card img{height:65px;width:100%;object-fit:cover}.zone-card strong,.zone-card small{display:block;font-size:9px;margin:4px 0}.zone-metrics{display:flex;justify-content:space-between;font-size:8px}.schedule-list li{display:grid;grid-template-columns:58px 1fr;border-bottom:1px solid #e0e7ef;padding:7px 0;font-size:10px}.schedule-list time{color:#1561bc;font-weight:700}.schedule-list strong{display:block}.workbench-bottom{display:grid;grid-template-columns:.8fr .8fr 1.35fr 1.5fr;gap:10px;padding-top:10px;padding-bottom:18px}.span-two{grid-column:span 2}.systems-inline{display:flex;gap:12px;align-items:center}.systems-inline img{width:120px}.comment-inline{display:flex;gap:8px;margin:7px 0;font-size:10px}.comment-inline p{margin:0}table{width:100%;border-collapse:collapse;font-size:10px}th{text-align:left;color:#345c8e;text-transform:uppercase;font-size:8px;border-bottom:1px solid #bfcfe0;padding:6px}td{border-bottom:1px solid #e2e9f0;padding:7px}
.split-hero{display:grid;grid-template-columns:38% 1fr 18%;align-items:stretch;background:#fff;padding-top:0;padding-right:0}.split-hero>div:first-child{padding:25px 20px 22px 8px}.split-hero h1{font-size:42px}.split-hero>img{height:210px;width:100%;object-fit:cover}.technology-credit{margin:16px;background:#f5f9fd;border:1px solid var(--line);padding:15px}.technology-credit strong{display:block;color:#0b3d7a}.technology-credit small{display:block;color:#1464c5;text-transform:uppercase;margin-top:15px}.workstreams-layout{display:grid;grid-template-columns:1.8fr .75fr;gap:10px;padding-top:10px}.workstreams-table table{font-size:9px}.table-number{display:inline-grid;place-items:center;background:#063b78;color:#fff;width:19px;height:19px;border-radius:3px;margin-right:5px}.composition-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;text-align:center}.composition-metrics strong{display:block;font-size:20px}.composition-metrics small{font-size:7px}.donut{width:110px;height:110px;border-radius:50%;background:conic-gradient(var(--blue) 0 30%,var(--cyan) 30% 73%,var(--gold) 73% 89%,var(--green) 89%);position:relative;margin:15px auto}.donut:after{content:"";position:absolute;inset:25%;background:#fff;border-radius:50%}.donut strong{position:absolute;inset:0;z-index:2;display:grid;place-items:center}.legend{list-style:none;padding:0;font-size:10px}.legend li{margin:7px 0}.legend i{display:inline-block;width:9px;height:9px;margin-right:6px}.legend i.blue{background:var(--blue)}.legend i.cyan{background:var(--cyan)}.legend i.gold{background:var(--gold)}.legend i.green{background:var(--green)}.workstream-lower{display:grid;grid-template-columns:1.2fr .9fr .65fr 1fr;gap:10px;padding-top:10px;padding-bottom:18px}.kanban{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.kanban section{background:#f8fafc;border:1px solid #dce5ee;padding:8px}.kanban h3{font-size:9px;text-transform:uppercase}.kanban h3 span{float:right;background:#dce9f8;border-radius:10px;padding:2px 6px}.kanban p{font-size:9px;border-bottom:1px solid #e2e9ef;padding-bottom:5px}.dependency-map{display:grid;grid-template-columns:1fr 1.2fr 1fr;grid-template-rows:repeat(3,auto);gap:5px;align-items:center;text-align:center}.dependency-map span{border:1px solid #cbd8e7;padding:7px;font-size:9px}.dependency-map strong{grid-column:2;grid-row:1/4;background:#082f66;color:#fff;padding:18px 6px;font-size:10px}
.student-hero{grid-template-columns:39% 1fr 18%}.learning-pill-row{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin-top:15px}.learning-pill-row span{border:1px solid var(--line);padding:7px;font-size:9px}.students-grid{display:grid;grid-template-columns:2fr .85fr .85fr .85fr .75fr;gap:10px;padding-top:10px}.roles-panel{grid-row:span 2}.roles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.roles-grid article{border:1px solid #d3deea;padding:9px}.roles-grid h3{font-size:12px}.roles-grid p,.roles-grid strong,.roles-grid small{font-size:8px;display:block}.role-icon{font-size:21px;color:#1d65c4}.students-lower{display:grid;grid-template-columns:1.4fr 1fr .85fr .9fr;gap:10px;padding-top:10px;padding-bottom:18px}.pipeline{display:flex;align-items:center;gap:8px;justify-content:center;flex-wrap:wrap}.pipeline span{border:1px solid #cbd9e8;border-radius:4px;padding:10px;font-size:9px;text-align:center}.pipeline b{color:#1c65bd}.small-feature-image{height:80px;width:100%;object-fit:cover;border-radius:4px}.metric-row{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:8px;text-align:center}.metric-row strong,.metric-row small{display:block}.metric-row strong{font-size:17px}.metric-row small{font-size:7px}.deliverables{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.deliverables span{border:1px solid #d1ddea;background:#f6f9fc;padding:12px 5px;text-align:center;font-size:9px}
.lab-hero{display:grid;grid-template-columns:38% 1fr;background:#fff;min-height:200px;padding-top:0;padding-right:0}.lab-hero-copy{padding:18px 24px 18px 8px}.lab-hero h1{font-size:42px}.lab-principles{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}.lab-principles span{font-size:9px;color:#155bb0;border-bottom:2px solid #2874d0;padding-bottom:3px}.lab-hero-image{position:relative}.lab-hero-image>img{height:205px;width:100%;object-fit:cover}.lab-status-card{position:absolute;right:28px;top:18px;background:rgba(255,255,255,.88);border:1px solid #cbd8e7;padding:12px;min-width:220px}.lab-status-card strong,.lab-status-card small,.lab-status-card span{display:block;margin:4px}.lab-metrics{padding-top:10px;padding-bottom:10px}.lab-layout{display:grid;grid-template-columns:21% 1fr 25%;gap:10px}.lab-sidebar{display:grid;gap:10px;align-content:start}.lab-main{display:grid;gap:10px;align-content:start}.lab-workspace>img{width:100%;height:315px;object-fit:contain;background:#edf3f8;border:1px solid #d0dce8}.workspace-toolbar{display:flex;justify-content:center;gap:10px;margin-top:8px}.workspace-toolbar span{border:1px solid #ccd8e5;padding:6px 9px;font-size:9px}.layer-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.layer-grid article{border:1px solid #cedbe7;padding:8px}.layer-grid h3{font-size:10px}.layer-number{background:#0c4c97;color:#fff;border-radius:50%;display:inline-grid;place-items:center;width:19px;height:19px;font-size:9px}.layer-placeholder{height:70px;background:linear-gradient(135deg,#d8e0e8,#f7f9fb);margin:6px 0}.layer-grid small{font-size:8px}.lab-bottom{display:grid;grid-template-columns:1.7fr .8fr 1fr;gap:10px;padding-top:10px;padding-bottom:18px}.device-model-strip{display:grid;grid-template-columns:1fr 300px 1.2fr;align-items:center;gap:25px;margin:0 32px 18px}.device-model-strip img{height:95px;object-fit:contain}.device-specs{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.device-specs span{border:1px solid #d1ddea;padding:8px}.device-specs small,.device-specs strong{display:block;font-size:9px}.device-specs strong{font-size:11px;color:#10498f}
.field-hero{display:grid;grid-template-columns:42% 1fr 22%;background:#fff;padding-right:32px;gap:0}.field-hero>div:first-child{padding:22px 20px 16px 5px}.field-hero h1{font-size:40px}.field-hero>img{height:190px;width:100%;object-fit:cover}.campaign-status{margin:15px;background:#073565;color:#fff;padding:14px}.campaign-status h3{color:#fff;text-transform:uppercase;font-size:11px}.campaign-status dl{display:grid;grid-template-columns:80px 1fr;font-size:9px}.campaign-status dt{color:#b9d5f0}.campaign-status dd{margin:0}.field-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding-top:10px;padding-bottom:18px}.field-map-card img{height:230px;width:100%;object-fit:cover}.campaign-donut:after{background:#fff}
.student-record-head{display:flex;justify-content:space-between;align-items:center;background:#fff;padding-top:17px;padding-bottom:10px}.student-record-head h1{font-size:38px}.contribution-status{border:1px solid var(--line);padding:12px;display:grid;grid-template-columns:auto 1fr;min-width:300px}.contribution-status small{grid-column:2}.student-record-grid{display:grid;grid-template-columns:27% 1fr;gap:10px;padding-top:10px;padding-bottom:18px}.student-profile-column{display:grid;gap:10px;align-content:start}.profile-card{display:grid;grid-template-columns:38% 1fr;gap:13px}.profile-card img{height:155px;width:100%;object-fit:cover}.profile-card h2{font-family:Georgia,serif;text-transform:none;font-size:22px}.profile-list{list-style:none;padding:0;font-size:10px}.profile-list li{margin:7px 0}.student-record-main{display:grid;gap:10px}.student-metrics{grid-template-columns:repeat(5,1fr)}.student-two-col{display:grid;grid-template-columns:1fr 1fr;gap:10px}.focus-pills{display:flex;gap:6px;flex-wrap:wrap}.focus-pills span{background:#eff6fc;border:1px solid #cbddeb;padding:5px 7px;font-size:8px}.asset-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.asset-strip figure{margin:0;border:1px solid #cedbe7;padding:5px}.asset-strip img{height:100px;width:100%;object-fit:cover}.asset-strip figcaption{font-size:9px;padding:5px}.competency{display:grid;grid-template-columns:150px 1fr 48px;align-items:center;gap:8px;margin:10px 0;font-size:10px}.timeline{display:grid;grid-template-columns:repeat(8,1fr);position:relative}.timeline:before{content:"";position:absolute;top:14px;left:6%;right:6%;height:3px;background:#b8c7d8}.timeline>div{text-align:center;position:relative;font-size:8px}.timeline i{display:block;width:14px;height:14px;border-radius:50%;background:#fff;border:2px solid #8497ac;margin:8px auto}.timeline .done i{background:#2ea16a;border-color:#2ea16a}.timeline strong,.timeline small{display:block}
.review-head{display:grid;grid-template-columns:42% 1fr;background:#fff;padding-top:17px;padding-bottom:12px}.review-head h1{font-size:38px}.review-snapshot{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;align-items:center}.review-snapshot div{border:1px solid var(--line);padding:12px;text-align:center}.review-snapshot strong,.review-snapshot small{display:block}.review-snapshot strong{font-size:23px;color:#0a3e80}.review-grid{display:grid;grid-template-columns:17% 1fr;gap:10px;padding-top:10px;padding-bottom:18px}.review-sidebar{display:grid;gap:10px;align-content:start}.review-sidebar select{width:100%;margin:5px 0;padding:6px;border:1px solid #cbd7e4}.review-main{display:grid;gap:10px}.review-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.review-cards.lower{grid-template-columns:.8fr 1.1fr 1.4fr .8fr}
.modal{position:fixed;inset:0;background:rgba(3,24,50,.68);display:grid;place-items:center;z-index:2000;padding:20px}.modal[hidden]{display:none}.modal-card{background:#fff;width:min(620px,100%);padding:28px;border-radius:8px;position:relative}.modal-close{position:absolute;right:10px;top:8px;border:0;background:transparent;font-size:25px}.modal label{display:block;margin:11px 0;font-weight:700;font-size:12px}.modal input,.modal textarea{width:100%;border:1px solid #bfcfe0;padding:9px;margin-top:4px}.hp-field{position:absolute!important;left:-9999px!important}.form-status{font-size:12px}.search-dialog{position:fixed;inset:0;background:rgba(3,24,50,.7);display:grid;place-items:start center;padding-top:90px;z-index:2100}.search-dialog[hidden]{display:none}.search-card{width:min(700px,90%);background:#fff;padding:25px;position:relative}.search-card button{position:absolute;right:10px;top:5px;border:0;background:none;font-size:24px}.search-card label{display:block}.search-card input{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid #c1cfdf}
.site-footer{background:linear-gradient(90deg,var(--navy-deep),var(--navy));color:#dbe8f6;padding:22px 32px 12px}.footer-grid{display:grid;grid-template-columns:1.2fr .7fr 1.1fr .8fr;gap:35px;max-width:1600px;margin:auto}.footer-grid h3{color:#fff;text-transform:uppercase;font-size:10px}.footer-grid a,.footer-grid span{display:block;color:#dbe8f6;font-size:10px;margin:6px 0}.footer-brand p{font-size:10px;max-width:340px}.footer-brand-lockup{min-width:auto}.footer-bottom{border-top:1px solid rgba(255,255,255,.14);margin-top:15px;padding-top:10px;display:flex;justify-content:space-between;font-size:9px}.social-row{display:flex;gap:8px}.social-row span{width:22px;height:22px;border-radius:50%;background:#7c98b6;color:#082d5b;display:grid;place-items:center}
.error-page{min-height:70vh;display:grid;place-items:center}.error-card{max-width:650px;text-align:center;padding:50px}
@media(max-width:1200px){.primary-nav a{padding-left:7px;padding-right:7px}.brand{min-width:235px}.dashboard-row-top{grid-template-columns:1fr 1fr}.dashboard-row-top .workstreams-mini{grid-column:span 2}.lower-dashboard{grid-template-columns:repeat(3,1fr)}.feature-strip{grid-template-columns:repeat(3,1fr)}.workbench-grid{grid-template-columns:1fr}.workbench-side{grid-template-columns:repeat(3,1fr)}.right-side{grid-template-columns:repeat(4,1fr)}.workbench-bottom{grid-template-columns:repeat(2,1fr)}.students-grid{grid-template-columns:repeat(2,1fr)}.roles-panel{grid-row:auto;grid-column:span 2}.students-lower,.workstream-lower{grid-template-columns:repeat(2,1fr)}.lab-layout{grid-template-columns:1fr}.lab-sidebar{grid-template-columns:repeat(3,1fr)}.field-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:850px){body{font-size:14px}.topbar{height:auto;min-height:58px;padding:8px 15px}.brand{min-width:0}.brand-copy strong{font-size:14px}.brand-copy small{font-size:7px}.primary-nav,.site-pill{display:none}.top-actions{margin-left:auto}.mobile-nav-wrap{display:block;background:#082f60}.mobile-nav-toggle{width:100%;background:transparent;border:0;color:#fff;padding:9px}.mobile-nav{display:none;grid-template-columns:repeat(2,1fr)}.mobile-nav.open{display:grid}.mobile-nav a{color:#fff;padding:10px;border-top:1px solid rgba(255,255,255,.1)}.shell,.shell-wide{padding-left:15px;padding-right:15px}h1{font-size:38px}.program-hero-grid,.project-hero,.split-hero,.lab-hero,.field-hero,.review-head{grid-template-columns:1fr}.program-hero h1,.hero-copy h1{font-size:42px}.hero-image{min-height:300px}.project-status{right:12px;top:12px}.dashboard-row-top,.lower-dashboard,.workbench-bottom,.workstreams-layout,.workstream-lower,.students-grid,.students-lower,.lab-bottom,.field-grid,.student-record-grid,.review-grid,.review-cards,.review-cards.lower,.three-col,.site-grid{grid-template-columns:1fr}.dashboard-row-top .workstreams-mini,.roles-panel,.span-two{grid-column:auto}.feature-strip{grid-template-columns:repeat(2,1fr)}.workbench-side,.right-side,.lab-sidebar{grid-template-columns:1fr}.pilot-grid{grid-template-columns:1fr}.zone-grid,.layer-grid{grid-template-columns:repeat(2,1fr)}.metric-ribbon{grid-auto-flow:row;grid-template-columns:repeat(2,1fr)}.split-hero>img,.lab-hero-image>img,.field-hero>img{height:260px}.technology-credit,.campaign-status{margin:0}.roles-grid{grid-template-columns:1fr}.student-two-col{grid-template-columns:1fr}.student-metrics{grid-template-columns:repeat(2,1fr)}.asset-strip{grid-template-columns:repeat(2,1fr)}.timeline{grid-template-columns:repeat(4,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.footer-bottom{display:grid;gap:5px}.device-model-strip{grid-template-columns:1fr;margin-left:15px;margin-right:15px}.site-card>img{height:190px}}
@media(max-width:520px){.feature-strip,.zone-grid,.layer-grid,.metric-ribbon,.student-metrics,.asset-strip,.footer-grid{grid-template-columns:1fr}.hero-copy{padding:20px 15px}.project-status{position:static;margin:15px}.spatial-tag{display:none}.mini-grid{grid-template-columns:1fr}.composition-metrics{grid-template-columns:repeat(2,1fr)}.kanban{grid-template-columns:1fr}.review-snapshot{grid-template-columns:repeat(2,1fr)}.field-grid{grid-template-columns:1fr}.profile-card{grid-template-columns:1fr}.competency{grid-template-columns:1fr}.timeline{grid-template-columns:repeat(2,1fr)}}
