@font-face{font-family:Barlow;src:url('/barlow-condensed-semibold.ttf') format('truetype');font-weight:600;font-display:swap}
:root{color-scheme:dark;--bg:#090d10;--surface:#111b22;--plane:#10171c;--line:#2b3942;--ink:#f2f0e9;--muted:#b3bec6;--accent:#f47747;--blue:#8cb8ce;--radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--ink);font:18px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:default}[hidden]{display:none!important}h1,h2,h3,h4,p,figure{margin:0}h2,h3{line-height:1.08;letter-spacing:-.035em}p+p{margin-top:16px}em{font-style:normal;color:var(--accent)}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}a:hover{color:var(--accent)}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip{position:fixed;left:20px;top:-100px;z-index:30;padding:12px 20px;background:var(--accent);color:var(--bg)}.skip:focus{top:12px}.eyebrow{font-size:14px;font-weight:650;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.header{position:relative;z-index:10;display:flex;justify-content:space-between;align-items:center;min-height:112px;border-bottom:1px solid #ffffff12}.brand{font-size:18px;font-weight:720;letter-spacing:.05em;line-height:1.3}.brand span{display:block;font-weight:400;font-size:14px;letter-spacing:0;color:var(--muted);margin-top:7px}.header nav{display:flex;gap:36px}.header nav a{display:flex;gap:10px;align-items:center;color:#7e909b;font-size:14px;min-height:44px}.header nav a span{font-size:16px;color:var(--ink)}.header nav a[aria-current]{color:var(--accent)}.header nav a[aria-current] span{color:var(--accent)}.button,.stage-enter{display:inline-flex;gap:24px;align-items:center;justify-content:center;min-height:52px;padding:14px 22px;border-radius:8px;border:1px solid #53606a;background:transparent;color:var(--ink);font-size:16px;font-weight:600;line-height:1.4}.button:hover{border-color:var(--accent)}.button.primary,.stage-enter{border-color:var(--accent);background:var(--accent);color:#21130d}.stage-enter:hover{background:#ff926b;color:#17110d}.button span,.stage-enter span{font-size:24px;font-weight:400}.signal{display:inline-block;width:7px;height:7px;background:var(--accent);margin-right:8px}.stage{height:auto;min-height:860px;padding:70px 0 220px;position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 70% 45%,#252f35,#0a0e11 72%)}.canvas-shell{position:absolute;inset:2% -12% 0 13%;z-index:-2}.canvas-shell canvas{width:100%;height:100%;display:block}.stage-shade{position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#090d10ec,transparent 58%),linear-gradient(0deg,#090d10 0%,transparent 36%)}.stage-copy{position:relative;margin-left:max(56px,calc((100% - 1280px)/2));max-width:650px}.stage-copy .eyebrow{margin-bottom:30px}.stage h1{font-family:Barlow,"Arial Narrow",sans-serif;font-weight:600;font-size:clamp(104px,12vw,166px);line-height:.83;letter-spacing:-.035em;margin-bottom:32px}.stage-intro{font-size:20px;line-height:1.65;color:#d3d9da}.stage-actions{display:flex;gap:28px;align-items:center;margin-top:25px;flex-wrap:wrap}.stage-link{font-size:16px;min-height:48px;display:inline-flex;gap:16px;align-items:center;border-bottom:1px solid #60727c}.stage-link span{font-size:23px}.stage-project{position:absolute;top:10%;right:max(56px,calc((100% - 1280px)/2));display:flex;flex-direction:column;gap:6px;font-size:14px;text-align:right;color:#cbd3d7;border-left:2px solid var(--accent);padding:8px 0 8px 20px}.stage-project span:first-child{letter-spacing:.08em;font-weight:600}.stage-project span:last-child{font-size:13px;color:var(--muted)}.stage-bottom{position:absolute;left:max(56px,calc((100% - 1280px)/2));right:max(56px,calc((100% - 1280px)/2));bottom:22px;display:grid;gap:12px}.stage-caption{display:flex;gap:16px;align-items:center;font-size:14px;line-height:1.5;max-width:650px;background:#090d10b8;padding:8px 14px;border-radius:8px}.caption-mark{font-size:28px;color:var(--accent)}.stage-caption small{display:block;color:var(--muted);font-size:14px}.viewer-controls{display:flex;align-items:center;gap:16px;padding:10px 14px;background:#111a22ed;border:1px solid #45535e80;border-radius:18px;box-shadow:0 12px 50px #0004;width:fit-content;max-width:100%;flex-wrap:wrap}.control{background:none;color:var(--ink);border:0;min-height:44px;padding:9px 16px;border-radius:30px;font-size:15px;line-height:1.3;white-space:nowrap}.camera-controls{display:flex;padding:4px;background:#080e13;border-radius:30px;gap:2px}.camera-controls .selected{background:#354650;color:#fff}.control:disabled{opacity:.45}.play-control{width:54px;height:54px;flex-shrink:0;padding:0;border-radius:50%;font-size:14px;font-weight:700;background:var(--accent);color:#1b1511}.play-control[aria-pressed=true]{background:#dce5e9}.scrub{display:flex;align-items:center;gap:15px;color:#d2dbe1;font-size:14px;padding-inline:10px}.scrub input{width:180px;accent-color:var(--accent);min-height:44px;cursor:pointer}.exit-control{border:1px solid #6b7e89}.stage #ride-status{font-size:14px;color:var(--muted);padding-left:4px}.stage.immersive .stage-copy,.stage.immersive .stage-project{visibility:hidden}.stage.immersive .canvas-shell{inset:0 -5% 90px -5%}.stage.immersive .stage-shade{background:linear-gradient(0deg,#090d10 0%,transparent 40%)}#real-video{position:absolute;right:4%;top:16%;width:60%;height:58%;background:#000;border-radius:12px}.stage.video-mode .stage-copy{max-width:35%}.stage.video-mode h1{font-size:clamp(76px,8vw,112px)}.stage.video-mode .stage-intro{font-size:18px}.stage.immersive #real-video{inset:30px 6% 175px;width:88%;height:calc(100% - 205px)}#canvas-fallback,.canvas-noscript{position:absolute;top:55%;right:20%;max-width:400px;background:#101a24;padding:24px;border:1px solid var(--line);font-size:18px;color:var(--muted)}
.project-interlude{display:grid;grid-template-columns:1fr 1fr;gap:50px 80px;align-items:center;padding-block:105px 125px;border-top:1px solid var(--line)}.project-interlude h2{font-size:clamp(40px,4.6vw,64px);margin:22px 0;overflow-wrap:anywhere}.project-interlude #brief{font-size:20px;color:var(--muted);max-width:590px}.project-meta{display:flex;flex-wrap:wrap;gap:20px 28px;margin:30px 0}.project-meta span{display:block;font-size:13px;color:#91a1ac;letter-spacing:.1em;margin-bottom:6px}.project-meta>p{margin:0;min-width:0}.project-meta{align-items:flex-start}.project-meta strong{display:block;font-size:15px;font-weight:500;max-width:250px}.dossier-link{background:#15222c;border-color:#344956}.concept-figure{min-width:0}.concept-figure>div{border:1px solid #314650;border-radius:18px;overflow:hidden;background:linear-gradient(135deg,#14232c,#0d1318)}.concept-figure svg,.concept-figure img{display:block;width:100%;height:auto;max-height:460px;object-fit:contain}.concept-trace{fill:none;stroke:#c9d7dd;stroke-width:5}.concept-alt{fill:none;stroke:#f47747;stroke-width:2;stroke-dasharray:6 9}.concept-figure figcaption{font-size:14px;color:var(--muted);margin-top:18px}.project-notes{grid-column:1/-1}.detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:30px 65px;padding:26px 0}.detail-columns h3,.detail-columns h4{font-size:23px;letter-spacing:-.02em;line-height:1.3;margin-bottom:16px}.detail-columns p{color:var(--muted);font-size:17px}.detail-columns p+p{margin-top:14px}details{border-top:1px solid var(--line)}summary{cursor:pointer;min-height:52px;padding:16px 0;font-size:17px;color:#d7e3e8}summary:hover{color:var(--accent)}.chapter{padding-block:120px}.chapter-heading{display:flex;align-items:center;gap:24px;margin-bottom:55px}.chapter-number{font-family:Barlow,sans-serif;color:var(--accent);font-size:34px;line-height:1;border-bottom:1px solid var(--accent);padding-bottom:12px}.engineering{background:radial-gradient(ellipse at 20% 18%,#1b2c3555,transparent 55%),#0d1318;border-block:1px solid var(--line)}.engineering-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:65px}.engineering-intro h2,.about h2{font-family:Barlow,sans-serif;font-size:clamp(58px,6.8vw,96px);line-height:.94;font-weight:600;letter-spacing:-.02em}.engineering-intro>p{font-size:20px;color:var(--muted);padding-bottom:5px}.mechanics-lab{background:linear-gradient(120deg,#182731,#111b23 70%);border:1px solid #405765;border-radius:22px;overflow:hidden;box-shadow:0 30px 80px #0002}.lab-topline{display:flex;align-items:center;justify-content:space-between;padding:24px 34px;border-bottom:1px solid #ffffff12;gap:18px}.lab-badge{font-size:14px;color:#bdd1df;background:#243843;padding:7px 13px;border-radius:30px}.lab-heading{display:flex;gap:40px;justify-content:space-between;align-items:center;padding:38px 40px 0}.lab-heading h3{font-size:clamp(30px,3.2vw,44px);font-weight:500}.lab-heading>p{font-size:18px;color:var(--muted);max-width:350px}.lab-workspace{display:grid;grid-template-columns:1.2fr 1fr;min-width:0}.lab-visual{min-width:0;padding:38px 25px 28px 35px;border-right:1px solid #ffffff12}.diagram-callouts{display:flex;justify-content:space-between;font-size:15px;color:var(--muted);gap:20px}.diagram-callouts strong{display:block;color:var(--ink);font-size:28px;font-weight:500;line-height:1.5}.force-diagram{display:block;width:100%;height:auto;max-height:430px}.diagram-grid{fill:none;stroke:#577487;stroke-opacity:.16;stroke-width:1}.diagram-ground{fill:none;stroke:#8aabba;stroke-width:3}.applied-force{fill:none;stroke:var(--accent);stroke-width:5}.reaction-force{fill:none;stroke:var(--blue);stroke-width:3}.dimension-line{fill:none;stroke:#7295a7;stroke-width:2;stroke-dasharray:4 5}.diagram-key{display:flex;gap:24px;flex-wrap:wrap;font-size:14px;color:var(--muted)}.diagram-key span{display:flex;gap:8px;align-items:center}.force-dot,.reaction-dot{width:8px;height:8px;display:inline-block;border-radius:50%;background:var(--accent)}.reaction-dot{background:var(--blue)}.section-spec{font-size:16px;color:#d2e0e7;margin-top:18px}.diagram-scale{font-size:14px;color:var(--muted);margin-top:8px}.lab-scope{font-size:15px;color:#afc4d1;margin-top:10px;line-height:1.65;max-width:530px}.lab-mini{display:none}.lab-console{padding:38px 38px 32px;min-width:0}.lab-console>.eyebrow{margin-bottom:24px}.lab-console fieldset{padding:0;border:0;margin:0;min-width:0}.lab-input{display:block;margin-bottom:23px}.lab-input>span{display:flex;justify-content:space-between;gap:12px;color:#c9d5dd;font-size:16px}.lab-input strong{color:#fff;font-size:18px;font-weight:500;font-variant-numeric:tabular-nums}.lab-input input{width:100%;height:36px;margin:6px 0 0;accent-color:var(--accent);cursor:pointer}.lab-results{display:grid;grid-template-columns:1fr 1fr;gap:25px;border-top:1px solid #65778266;padding-top:25px;margin-top:8px}.lab-results>div>span{font-size:14px;letter-spacing:.07em;color:#a9bbc7}.lab-results p{margin-top:7px;line-height:1.1;font-variant-numeric:tabular-nums}.lab-results strong{font-size:clamp(42px,4.8vw,62px);font-weight:450;letter-spacing:-.06em}.lab-results p span{font-size:16px;color:var(--blue);display:block;margin-top:6px}.lab-console #lab-insight{font-size:16px;color:#b8cbd7;margin-top:26px;line-height:1.6}.text-button{background:none;border:0;border-bottom:1px solid #617d8e;color:#d3e1e8;padding:10px 0;margin-top:18px;min-height:44px;font-size:16px}.worked-equations{display:grid;grid-template-columns:1fr 1fr 1.35fr;gap:35px;padding:28px 38px 34px;background:#09121b80;border-top:1px solid #ffffff18}.worked-equations>div>span{color:#91aabc;font-size:13px;letter-spacing:.075em}.worked-equations p{font-size:20px;margin-block:12px;color:#f4f5ed;letter-spacing:-.02em;overflow-wrap:anywhere}.worked-equations small{font-size:15px;color:#b3c9d8;line-height:1.65;display:block;overflow-wrap:anywhere}.lab-method{margin:0 38px}.lab-method .detail-columns{padding-bottom:36px}.source-link{color:var(--blue);text-decoration:underline;text-underline-offset:4px}
.standards-feature{padding-top:100px}.standards-title{display:grid;grid-template-columns:.65fr 1.35fr;gap:60px;align-items:center;margin-bottom:45px}.standards-mark{font-family:Barlow,sans-serif;font-size:clamp(115px,17vw,240px);line-height:.85;letter-spacing:-.06em;color:#d4e1e9;background:linear-gradient(120deg,#eff1ee,#668997);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.standards-title h3{font-size:clamp(36px,4.2vw,58px);font-weight:500;margin-block:17px 24px}.standards-title p:not(.eyebrow){font-size:19px;color:var(--muted);max-width:650px}.evidence-map{border-top:1px solid #425864}.evidence-map>div{display:grid;grid-template-columns:44px 1fr 1.5fr .85fr;gap:26px;align-items:start;padding:27px 0;border-bottom:1px solid var(--line)}.evidence-index{font-size:14px;color:var(--accent);padding-top:4px}.evidence-map h4{font-size:21px;line-height:1.4;font-weight:500;letter-spacing:-.02em}.evidence-map p{font-size:17px;color:var(--muted);line-height:1.6}.evidence-map a{font-size:16px;color:var(--blue);padding:4px 0;min-height:44px}.standards-scope{font-size:15px;color:var(--muted);margin-top:24px;max-width:850px}.reference-details{margin-top:26px}.reference-details>p{font-size:17px;color:var(--muted);max-width:860px;margin-block:14px 26px}.table-scroll{overflow:auto;max-width:100%;margin-block:16px 30px}table{border-collapse:collapse;font-size:16px;width:100%}th,td{text-align:left;padding:18px 16px;vertical-align:top;border-bottom:1px solid var(--line)}th{color:#b5ccd9;font-weight:500}td{color:var(--muted)}td a{color:var(--blue);text-decoration:underline}caption{text-align:left;color:var(--muted);padding-block:12px;font-size:15px}.project-evidence{margin-top:45px}.project-evidence h3{font-size:25px}.project-evidence canvas{width:100%;height:260px}.about{background:radial-gradient(ellipse at 90% 30%,#352b221c,transparent 70%),#0a0f13}.about-story{display:grid;grid-template-columns:1.15fr 1fr;gap:100px}.about-story>div>p:not(.eyebrow){font-size:20px;color:var(--muted);margin-top:28px;max-width:570px}.about h2{margin-top:12px}.givetech-story{border-top:1px solid var(--line);padding-top:25px}.givetech-wordmark{display:block;font-size:43px;font-weight:750;line-height:1;letter-spacing:-.06em;margin-bottom:28px}.givetech-wordmark span{color:var(--accent)}.givetech-wordmark i{font-style:normal;font-size:34px;margin-left:12px;font-weight:350;color:var(--muted)}.givetech-story h3{font-size:42px;font-weight:500;line-height:1.1;margin-top:20px}.givetech-story .button{margin-top:25px}.career-strip{margin-top:100px;padding:60px 0 10px;border-top:1px solid #425460;display:grid;grid-template-columns:1.1fr 1fr;gap:100px}.career-strip h3{font-size:clamp(30px,3.5vw,48px);font-weight:500;line-height:1.12;margin-top:22px}.career-details{display:grid;gap:30px}.career-details h4{font-size:21px;font-weight:500;margin-bottom:10px}.career-details p{font-size:17px;color:var(--muted)}.pending-label{display:inline-block;color:#a3b6c1;font-size:14px;margin-top:14px;border-left:2px solid var(--accent);padding-left:12px}.career-details .button{margin-top:18px}.footer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:38px 48px;border-top:1px solid var(--line)}.footer>span{color:var(--muted);font-size:14px}.footer>a:last-child{font-size:15px}.small{font-size:15px}.muted{color:var(--muted)}
/* The project brief uses the same system on screen, with a separate paper layout. */
.summary-page{padding-block:42px 80px;max-width:1040px}.summary-toolbar{display:flex;justify-content:space-between;align-items:center;gap:22px;margin-bottom:55px}.summary-page h1{font-size:clamp(38px,6vw,70px);font-weight:500;line-height:1.06;margin-block:20px 28px;letter-spacing:-.04em;overflow-wrap:anywhere}.summary-page #brief{font-size:21px;color:var(--muted);max-width:830px}.summary-page h2{font-size:30px;font-weight:500;margin-block:32px 14px}.summary-page p{overflow-wrap:anywhere}.summary-visual{display:grid;grid-template-columns:1fr .9fr;gap:30px;margin-block:40px}.summary-render{min-height:260px;background:repeating-linear-gradient(0deg,#182630 0 1px,transparent 1px 28px),repeating-linear-gradient(90deg,#182630 0 1px,#0e1821 1px 28px);border:1px solid #2e4351;border-radius:16px;display:grid;place-content:center;text-align:center;padding:25px;color:#bdcbd4}.summary-render img{max-width:100%;max-height:400px;object-fit:contain}.summary-render svg{width:100%;max-height:260px;display:block}.summary-banner{display:flex;align-items:center;gap:24px;border-block:1px solid var(--line);padding:30px 0}.summary-banner img{background:#fff;width:160px;height:160px;flex-shrink:0}.summary-banner p{font-size:16px;color:var(--muted)}.summary-banner .qr-address{overflow-wrap:anywhere;font-size:18px;color:var(--ink);line-height:1.5;margin-block:8px 15px}.summary-page .project-meta{padding-block:20px;border-block:1px solid var(--line)}#summary-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding:28px 0;border-block:1px solid var(--line);margin-bottom:30px}#summary-stats b{display:block;font-size:27px;font-weight:500}#summary-stats span,#summary-stats small{display:block;font-size:16px;color:var(--muted)}.summary-footer{border-top:1px solid var(--line);padding-top:25px;margin-top:38px;font-size:15px;color:var(--muted)}.summary-page .reference-note{font-size:16px;color:var(--muted)}

.education-note{margin-top:35px;border-left:2px solid var(--accent);padding-left:24px}.education-note h3{font-size:32px;letter-spacing:-.02em;margin-top:14px;line-height:1.2}.education-note p:not(.eyebrow){font-size:18px;color:var(--muted);line-height:1.65;margin-top:16px}.education-note .education-program{color:var(--ink);font-weight:550}.education-ranking{display:block;color:var(--muted);font-size:15px;line-height:1.6;margin-top:12px;padding-block:8px;min-height:44px}.education-note .source-link{display:inline-flex;align-items:center;min-height:44px;margin-top:12px}
.heartline-study{margin-top:75px;padding-top:50px;border-top:1px solid #405765}.heartline-intro{max-width:780px}.heartline-intro h3{font-family:Barlow,sans-serif;font-size:60px;line-height:1;margin:20px 0}.heartline-intro>p:not(.eyebrow){font-size:19px;color:var(--muted);line-height:1.65}.heartline-intro .heartline-boundary{font-size:17px;border-left:2px solid var(--accent);padding-left:18px}.heartline-workspace{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:32px;align-items:start}.heartline-visual{min-width:0;background:radial-gradient(ellipse at center,#233b4950,transparent 70%);border:1px solid #405765;border-radius:18px;padding:22px}.heartline-visual svg{width:100%;height:auto;display:block}.heartline-guide{stroke:#3c515d;stroke-width:1;fill:none}.heartline-ghost{stroke:#80939e;stroke-width:1.5;stroke-dasharray:5 6;fill:none}.heartline-offset-line{stroke:var(--blue);stroke-width:2;stroke-dasharray:5 5}.heartline-rail{stroke:var(--ink);stroke-width:6;stroke-linecap:round}.heartline-rail-centre{fill:var(--blue)}.heartline-reference{fill:var(--accent)}.heartline-pivot-ring{stroke:var(--accent);stroke-width:2;fill:none}.heartline-visual figcaption{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 22px;font-size:15px;color:var(--muted)}.heartline-visual figcaption small{flex-basis:100%;text-align:center;font-size:14px}.heartline-console{min-width:0;padding:4px 0}.heartline-pivots{width:fit-content;margin:14px 0 20px}.heartline-console fieldset{margin:0;padding:0;border:0;min-width:0}.heartline-results{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:8px}.heartline-results>p{margin:0;line-height:1.4}.heartline-results span,.heartline-results small{display:block;font-size:16px;color:var(--muted)}.heartline-results strong{display:block;font-family:Barlow,sans-serif;font-size:44px;font-weight:600;letter-spacing:-.02em;margin:5px 0}.heartline-reset{border:1px solid #60727c;border-radius:8px;margin:20px 0 0}.heartline-result-label{border-top:1px solid #405765;padding-top:18px;font-size:16px;color:var(--muted)}#heartline-insight{font-size:17px;color:var(--muted);margin-top:22px}#heartline-error{font-size:17px;color:var(--accent)}.heartline-method{margin-top:30px}.heartline-method .source-link{display:inline-flex;min-height:44px;align-items:center;margin-top:12px}
@media(max-width:800px){.heartline-workspace{grid-template-columns:1fr;gap:24px}.heartline-visual{max-width:550px;width:100%;justify-self:center}.heartline-console{max-width:550px;width:100%;justify-self:center}}
@media(max-width:600px){.heartline-study{margin-top:55px;padding-top:35px}.heartline-intro h3{font-size:44px}.heartline-intro>p:not(.eyebrow){font-size:18px}.heartline-intro .heartline-boundary{font-size:16px;padding-left:14px}.heartline-visual{padding:12px}.heartline-visual svg{height:210px}.heartline-visual figcaption{font-size:14px;gap:8px 14px}.heartline-pivots{width:100%}.heartline-pivots .control{flex:1;padding-inline:8px}.heartline-results strong{font-size:39px}.heartline-console .lab-input>span{font-size:16px}.heartline-console .lab-input strong{font-size:18px}.education-note{padding-left:18px;margin-top:28px}.education-note h3{font-size:30px}.education-note p:not(.eyebrow){font-size:17px}.education-ranking{font-size:15px}}
@media(max-width:1100px){.wrap{width:calc(100% - 80px)}.stage-copy{left:auto;margin-left:40px}.stage-project{right:40px}.stage-bottom{left:40px;right:40px}.stage h1{font-size:clamp(105px,12.5vw,138px)}.stage-copy{max-width:620px}.stage-project{top:6%;font-size:13px}.stage .canvas-shell{inset:7% -14% 0 12%}.project-interlude{gap:40px}.project-meta{gap:15px 20px}.lab-heading{padding-inline:28px;gap:25px}.lab-visual{padding-inline:25px}.lab-console{padding-inline:26px}.lab-results{gap:20px}.worked-equations{padding-inline:28px;gap:24px}.lab-method{margin-inline:28px}.about-story,.career-strip{gap:55px}.evidence-map>div{gap:22px;grid-template-columns:30px 1fr 1.3fr .8fr}.header nav{gap:24px}}
@media(max-width:800px){.lab-workspace{grid-template-columns:1fr}.lab-visual{border-right:0;border-bottom:1px solid #ffffff12;padding:28px}.force-diagram{max-height:390px}.lab-console{padding:30px}.lab-heading{display:block}.lab-heading>p{max-width:600px;margin-top:18px}.lab-results strong{font-size:58px}.engineering-intro{display:block}.engineering-intro>p{margin-top:25px}.engineering-intro>p br{display:none}.engineering-intro>p{max-width:580px}.worked-equations{gap:24px}.standards-title{grid-template-columns:.55fr 1.3fr;gap:35px}.evidence-map>div{grid-template-columns:30px 1fr 1.2fr}.evidence-map a{grid-column:2/-1}.about-story,.career-strip{gap:42px}.stage-project{top:auto;bottom:260px;right:40px}.stage h1{font-size:110px}.stage-copy{max-width:600px}.summary-visual{grid-template-columns:1fr}.summary-banner{justify-content:flex-start}.project-interlude{grid-template-columns:1fr}.concept-figure{max-width:680px}.project-notes{grid-column:1}.project-interlude .project-meta{display:grid;grid-template-columns:1fr 1fr}.footer{flex-wrap:wrap}}
@media(max-width:600px){html{scroll-padding-top:25px}body{font-size:18px}.wrap{width:calc(100% - 40px)}.header{min-height:0;padding-block:24px 18px;display:block}.brand{font-size:17px}.brand span{font-size:14px;margin-top:4px}.header nav{gap:0;justify-content:space-between;margin-top:16px;border-top:1px solid #ffffff12;padding-top:9px}.header nav a{gap:7px;font-size:13px;min-height:44px}.header nav a span{font-size:15px}.stage{height:1100px;min-height:1100px;max-height:none;padding:0}.stage-copy{position:absolute;margin-left:0;top:38px;left:20px;right:20px;width:auto;max-width:none}.stage-copy .eyebrow{font-size:13px;line-height:1.5;letter-spacing:.06em;max-width:280px;margin-bottom:27px}.stage h1{font-size:clamp(78px,21.4vw,115px);line-height:.83;margin-bottom:26px}.stage-intro{font-size:18px;line-height:1.6}.stage-actions{gap:18px;align-items:flex-start;margin-top:24px}.stage-enter{font-size:16px;padding:13px 18px;min-height:52px}.stage-link{font-size:16px;min-height:46px}.stage .canvas-shell{inset:380px -22% 240px -18%}.stage-shade{background:linear-gradient(180deg,#090d10 0%,#090d10c9 33%,transparent 59%,#090d10 82%)}.stage-project{right:20px;bottom:332px;font-size:14px;background:#0a121add;padding:10px 14px}.stage-project span:last-child{font-size:12px;max-width:205px}.stage-bottom{left:20px;right:20px;bottom:20px;gap:14px}.stage-caption{font-size:14px;padding:8px 10px;gap:12px}.stage-caption small{font-size:14px;line-height:1.5}.viewer-controls{width:100%;display:grid;grid-template-columns:54px 1fr;gap:12px;padding:12px;border-radius:16px}.play-control{width:50px;height:50px;font-size:14px}.camera-controls{justify-content:space-evenly;min-width:0}.control{font-size:14px;padding:10px 12px;min-height:44px}.camera-controls .control{padding-inline:12px;flex:1}.scrub{grid-column:1/-1;padding:0;display:block;font-size:14px}.scrub>span{display:block;margin-bottom:2px}.scrub input{width:100%;min-height:36px;margin:0}.exit-control,#schematic-toggle,#video-toggle{grid-column:1/-1}.stage #ride-status{font-size:14px;line-height:1.5;max-width:100%}.stage.immersive{height:900px;min-height:900px}.stage.immersive .canvas-shell{inset:10px -12% 260px}.stage.immersive .stage-bottom{bottom:18px}.stage.video-mode .stage-copy{max-width:none}.stage.video-mode h1{font-size:clamp(78px,21.4vw,115px)}.stage.video-mode .stage-intro{font-size:18px}.stage.video-mode #real-video{inset:520px 20px auto;width:calc(100% - 40px);height:210px}.stage.immersive #real-video{inset:20px 20px 310px;width:calc(100% - 40px);height:calc(100% - 330px)}#canvas-fallback,.canvas-noscript{top:570px;left:20px;right:20px;max-width:none;font-size:18px;padding:20px}.project-interlude{padding-block:65px 80px;gap:38px}.project-interlude h2{font-size:40px;line-height:1.1;margin:18px 0}.project-interlude #brief{font-size:18px;line-height:1.65}.project-interlude .project-meta{grid-template-columns:1fr;gap:20px;margin:25px 0}.project-meta span{font-size:13px}.project-meta strong{font-size:16px;max-width:none}.concept-figure figcaption{font-size:15px;line-height:1.6}.detail-columns{grid-template-columns:1fr;gap:30px}.detail-columns p{font-size:17px;line-height:1.65}summary{font-size:17px;line-height:1.5;padding-block:18px}.chapter{padding-block:70px}.chapter-heading{gap:17px;margin-bottom:34px}.chapter-heading .eyebrow{font-size:13px;letter-spacing:.06em}.chapter-number{font-size:30px}.engineering-intro{margin-bottom:35px}.engineering-intro h2,.about h2{font-size:clamp(47px,12.8vw,69px);line-height:.97}.engineering-intro>p{font-size:18px;line-height:1.6;margin-top:22px}.mechanics-lab{border-radius:16px}.lab-topline{padding:20px;display:block}.lab-topline .eyebrow{font-size:12px;letter-spacing:.06em}.lab-badge{display:inline-block;margin-top:12px;font-size:14px}.lab-heading{padding:22px 20px 0}.lab-heading h3{font-size:30px;line-height:1.13}.lab-heading>p{font-size:17px;line-height:1.6;margin-top:15px}.lab-visual{padding:25px 16px}.lab-ready .lab-visual{display:none}.lab-ready .lab-mini{display:block;margin-bottom:16px}.lab-mini svg{width:100%;height:160px;display:block;max-height:160px;margin:0}.lab-mini figcaption{font-size:14px;color:var(--muted);text-align:center;margin-top:8px}.diagram-callouts{gap:12px;font-size:15px}.diagram-callouts strong{font-size:26px}.force-diagram{margin-block:10px;max-height:310px}.diagram-key{gap:16px;font-size:14px}.section-spec{font-size:16px;line-height:1.6}.lab-scope{font-size:15px;line-height:1.65}.lab-console{padding:22px 20px}.lab-console>.eyebrow{font-size:13px;letter-spacing:.07em;margin-bottom:14px}.lab-input{margin-bottom:10px}.lab-input>span{font-size:16px}.lab-input strong{font-size:18px}.lab-input input{height:44px}.lab-results{gap:16px;grid-template-columns:1fr 1fr;padding-top:18px}.lab-results>div>span{font-size:14px;line-height:1.5;display:block;min-height:42px;letter-spacing:.03em}.lab-results strong{font-size:46px;letter-spacing:-.055em}.lab-results p span{font-size:16px}.lab-console #lab-insight{font-size:16px}.worked-equations{grid-template-columns:1fr;padding:27px 20px;gap:25px}.worked-equations>div+div{border-top:1px solid #ffffff16;padding-top:24px}.worked-equations>div>span{font-size:13px}.worked-equations p{font-size:21px;line-height:1.5;margin-block:10px}.worked-equations small{font-size:16px;line-height:1.7}.lab-method{margin-inline:20px}.lab-method summary{font-size:16px}.lab-method .detail-columns{padding-top:14px}.standards-feature{padding-top:70px}.standards-title{display:block;margin-bottom:35px}.standards-mark{display:block;font-size:138px;line-height:1;margin-bottom:28px}.standards-title h3{font-size:36px;line-height:1.13;margin:16px 0 20px}.standards-title p:not(.eyebrow){font-size:18px;line-height:1.65}.evidence-map>div{grid-template-columns:25px 1fr;gap:10px 16px;padding-block:25px}.evidence-map h4{font-size:22px}.evidence-map p{grid-column:2;font-size:17px;line-height:1.65}.evidence-map a{grid-column:2;font-size:16px}.standards-scope{font-size:16px;line-height:1.65}.reference-details>p{font-size:17px}.project-evidence{margin-top:35px}.about-story{grid-template-columns:1fr;gap:55px}.about-story>div>p:not(.eyebrow){font-size:18px;line-height:1.65;margin-top:24px}.givetech-wordmark{font-size:42px}.givetech-story h3{font-size:36px}.career-strip{grid-template-columns:1fr;gap:40px;margin-top:65px;padding-top:35px}.career-strip h3{font-size:34px;line-height:1.15;margin-top:17px}.career-details{gap:32px}.career-details p{font-size:18px}.footer{display:grid;gap:18px;padding-block:30px}.footer>span{font-size:15px}.footer>a:last-child{font-size:16px}.summary-page{padding-top:25px}.summary-toolbar{margin-bottom:35px;display:grid;gap:20px}.summary-toolbar a{font-size:17px;min-height:44px}.summary-toolbar .button{width:fit-content}.summary-page h1{font-size:42px}.summary-page #brief{font-size:19px}.summary-page .project-meta{display:grid;grid-template-columns:1fr}.summary-visual{gap:25px;margin-block:30px}.summary-banner{display:block}.summary-banner img{margin-bottom:22px}.summary-banner p{font-size:17px}.summary-banner .qr-address{font-size:19px}.summary-page h2{font-size:29px;line-height:1.15}.summary-page p{font-size:18px}.summary-page .reference-note{font-size:16px}#summary-stats{grid-template-columns:1fr;gap:22px}.summary-footer{font-size:16px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{:root{color-scheme:light;--ink:#181c20;--muted:#48545b;--line:#b9c2c6;--accent:#994026;--blue:#2d5968}body{background:#fff;color:#181c20;font-size:11pt;line-height:1.5}.no-print{display:none!important}.summary-page{width:100%;max-width:none;margin:0;padding:0}.summary-page h1{font-size:30pt;margin:12px 0 18px}.summary-page #brief{font-size:12pt}.summary-page h2{font-size:16pt;margin:18px 0 8px}.summary-page p{font-size:11pt}.summary-visual{grid-template-columns:1fr 1fr;margin:20px 0;gap:20px;break-inside:avoid}.summary-render{min-height:160px;background:#edf0f1;color:#202b30;border-color:#afbac0;padding:15px}.summary-render svg{max-height:180px}.summary-render .concept-trace{stroke:#293b44}.summary-banner{padding:10px 0;gap:16px}.summary-banner img{width:112px;height:112px}.summary-banner p,.summary-banner .qr-address{font-size:10pt}.project-meta{margin:15px 0;padding:10px 0!important;gap:15px}.project-meta strong,.project-meta span{font-size:10pt}.summary-footer{font-size:9pt;margin-top:25px}#summary-stats{padding:15px 0;gap:15px}#summary-stats b{font-size:16pt}#summary-stats span,#summary-stats small{font-size:9pt}a{color:inherit}.reference-note{font-size:9pt!important}}

/* Shared four-destination navigation: full-size targets on narrow screens. */
.header nav{gap:26px}.nav-toggle{display:none;align-items:center;gap:12px;min-height:48px;border:1px solid #53606a;border-radius:8px;background:transparent;color:var(--ink);padding:10px 16px;font-size:16px}.nav-toggle span{color:var(--accent);font-size:22px}
@media(max-width:1000px){.header nav{gap:18px}.brand{font-size:17px}.brand span{font-size:13px}}
@media(max-width:800px){.header{flex-direction:row;align-items:center;flex-wrap:wrap;padding-block:22px;gap:14px;min-height:145px}.header nav{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:4px 20px}.header nav a{min-height:48px}.header.nav-ready{min-height:108px;display:grid;grid-template-columns:minmax(0,1fr) auto}.nav-ready .brand{max-width:none}.nav-ready .nav-toggle{display:flex}.nav-ready nav{display:none;grid-column:1/-1}.nav-ready.nav-open nav{display:grid}.brand span{font-size:13px;line-height:1.5}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
