/* Nonomi v10. Original white-space-led composition; project images remain original. */
:root{color-scheme:light;--ink:#191c24;--body:#535c6a;--muted:#626c7c;--line:#e3e7ee;--surface:#f5f7fa;--blue:#456798;--mono:Consolas,"Liberation Mono",monospace;--ease:cubic-bezier(.22,.75,.18,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px;-webkit-text-size-adjust:100%}body{margin:0;background:#fff;color:var(--ink);font-family:Inter,Arial,"Noto Sans CJK SC","Microsoft YaHei",sans-serif;font-size:16px;-webkit-font-smoothing:antialiased;overflow-x:clip}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400;letter-spacing:-.045em}p{color:var(--body);line-height:1.9}a{color:inherit;text-decoration:none}button,input{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none}button,a,input,summary{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}button:disabled{cursor:default;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #567db4;outline-offset:5px}img,canvas,svg{display:block;max-width:100%}[hidden]{display:none!important}::selection{background:#dce8fb;color:#172f55}section[id],article[id]{scroll-margin-top:105px}.skip{position:fixed;left:20px;top:-80px;padding:14px 22px;background:#fff;z-index:150;border:1px solid var(--line);border-radius:12px}.skip:focus{top:12px}
.reading-progress{height:2px;position:fixed;left:0;right:0;top:0;z-index:100;pointer-events:none}.reading-progress i{display:block;width:100%;height:100%;background:#617fa8;transform:scaleX(0);transform-origin:left}
.nav{height:70px;position:sticky;top:0;z-index:60;display:flex;align-items:center;gap:24px;padding:0 max(4vw,24px);background:#ffffffed;backdrop-filter:blur(22px);border-bottom:1px solid #edf0f4}.brand{display:inline-flex;align-items:center;gap:9px;font-size:22px;letter-spacing:-.8px;font-weight:500;white-space:nowrap}.brand svg{width:22px;height:22px;color:#536d93}.brand>span{font-size:12px;letter-spacing:0;color:var(--muted);font-weight:400;margin-left:7px}.nav nav{display:flex;align-items:center;justify-content:center;gap:25px;margin-left:auto;font-size:13px;color:#545c68}.nav nav a{padding:10px 0;white-space:nowrap}.nav nav a:hover,.nav nav a[aria-current=location]{color:#244c84}.nav nav a[aria-current=location]{box-shadow:0 1px #7894bc}.motion-button{display:flex;align-items:center;gap:8px;font-size:12px;min-height:44px;min-width:57px;justify-content:center;color:#4f5c70;margin-left:10px}.motion-button span{font-size:15px}.menu-toggle{display:none}
.primary,.light-button,.glass-button,.icon-button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:46px;padding:12px 22px;border-radius:28px;font-size:14px;line-height:1.5;transition:background .25s,color .25s,transform .3s var(--ease)}.primary{background:#20232b;color:#fff;border:1px solid #20232b}.primary:hover{background:#383f4b;transform:translateY(-2px)}.light-button{border:1px solid #dfe4ec;background:#f7f8fa;color:#435269}.light-button:hover{background:#eaf0f8}.icon-button{font-size:23px;min-width:44px;padding:7px 12px;background:#eff2f6;color:#475c7b}.glass-button{background:#ffffffed;color:#374c6a;font-size:12px;border:1px solid #fff8;backdrop-filter:blur(12px)}
.hero{padding:0 0 55px}.hero-intro{position:relative;max-width:1120px;margin:0 auto;text-align:center;padding:115px 24px 100px;min-height:655px;display:flex;flex-direction:column;align-items:center;justify-content:center}.hero-kicker{display:flex;align-items:center;gap:9px;font-size:22px;line-height:1.6;color:#313946;letter-spacing:-.5px}.hero-kicker svg{width:24px;height:24px;color:#667fa3}.hero-kicker>span{font-size:12px;letter-spacing:0;margin-left:12px;color:#626c7b}.hero-title{font-size:clamp(43px,5.2vw,76px);line-height:1.23;margin:32px 0 26px;font-weight:400;letter-spacing:-.055em;color:#181b23}.hero-title>span{display:block;overflow:hidden;padding:0 4px 6px}.hero-title i{display:block;font-style:normal;animation:headline-in 1s var(--ease) both}.hero-title>span:nth-child(2) i{animation-delay:.12s}.hero-description{font-size:15px;line-height:1.9;max-width:600px;color:#626c7d}.hero-actions{display:flex;align-items:center;justify-content:center;gap:32px;margin-top:35px}.hero-actions .primary{min-height:50px;padding:13px 28px}.hero-text-link{display:flex;gap:12px;align-items:center;font-size:14px;color:#566278;min-height:44px}.hero-text-link:hover{color:#2e5893}.hero-text-link span{transition:transform .3s}.hero-text-link:hover span{transform:translateY(3px)}@keyframes headline-in{from{transform:translateY(110%)}to{transform:none}}
.hero-contact-sheet{max-width:1320px;margin:0 auto;padding:0 28px}.hero-image-window{position:relative;overflow:hidden;border-radius:var(--cover-radius,28px);background:#edf1f5;transform:scale(var(--cover-scale,.97));transform-origin:center}.hero-image-window>img{width:100%;height:540px;object-fit:cover;object-position:center}.hero-image-window[data-cover=fieldWheat]>img{object-position:65% 100%;transform:scale(1.07)}.hero-image-window[data-cover=fieldTractor]>img{object-position:50% 65%}.hero-image-window[data-cover=campusAngle]>img{object-position:50% 50%}.hero-image-index{position:absolute;left:25px;bottom:25px;background:#172235d9;color:#f7f9ff;padding:10px 14px;border-radius:22px;font-size:12px;backdrop-filter:blur(16px)}.image-open{position:absolute;top:20px;right:20px;z-index:4;border:1px solid #ffffffa0;min-height:44px;padding:10px 15px;border-radius:24px;background:#fffffff0;color:#364c6a;font-size:12px;backdrop-filter:blur(15px)}.image-open:hover{background:#fff}.hero-contact-sheet figcaption{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 10px;font-size:12px;color:#5e697a;line-height:1.7}.hero-image-controls{display:flex;gap:4px;background:#f2f4f7;padding:4px;border-radius:28px}.hero-image-controls button{min-height:40px;padding:8px 18px;border-radius:22px;color:#606c7c;font-size:13px}.hero-image-controls button[aria-pressed=true]{background:#fff;color:#2e486f;box-shadow:0 2px 8px #1e314a0b}.archive-index{max-width:1100px;margin:25px auto 0;display:flex;justify-content:center;gap:12px 30px;flex-wrap:wrap;padding:0 24px}.archive-index a{display:flex;gap:8px;align-items:center;font-size:13px;color:#637087;min-height:44px}.archive-index a i{font-style:normal;color:#7e91ab}.archive-index a:hover,.archive-index a[aria-current=location]{color:#2d568e}
.chapter{width:min(1240px,calc(100% - 96px));margin:0 auto;padding:120px 0;min-width:0}.section-heading{text-align:center;margin:0 auto 65px;max-width:1020px}.eyebrow,.tiny-label{font-size:12px;line-height:1.8;color:#5d7190;letter-spacing:.045em;font-weight:400}.section-heading>.eyebrow{margin-bottom:22px}.section-heading>div{display:block}.section-heading h2{font-size:clamp(34px,4.25vw,61px);line-height:1.3;font-weight:400;color:#20242c}.section-heading>div>p{font-size:16px;line-height:1.9;margin:25px auto 0;max-width:680px}.reveal{opacity:1;transform:none}.js .reveal.pending{opacity:0;transform:translateY(22px)}.js .reveal{transition:opacity .8s var(--ease),transform .8s var(--ease)}.media-caption{display:flex;justify-content:space-between;gap:20px;margin-top:18px;font-size:12px;line-height:1.8;color:#626e80}
.campus{padding-top:100px;padding-bottom:110px}.campus-stage{height:640px;position:relative;isolation:isolate;overflow:hidden;border-radius:24px;background:#dbe6ec}.campus-stage>img{width:100%;height:100%;object-fit:cover;transition:filter 1s,transform 1s;transform:scale(1.015)}.campus-stage[data-weather=rain]>img{filter:brightness(.68) saturate(.65)}.campus-stage[data-weather=snow]>img{filter:brightness(1.08) saturate(.4)}.scene-tint{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#1322381a,transparent 40%,#13223833)}.campus-stage[data-weather=snow] .scene-tint{background:linear-gradient(#dae7f344,transparent,#dae7f333)}#weather{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.scene-top,.stage-top{position:absolute;top:24px;left:26px;right:26px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:.035em;z-index:2;color:#f9fbff}.scene-top>span:first-child,.stage-top>span:first-child{display:flex;align-items:center;gap:9px}.live-dot{width:5px;height:5px;display:inline-block;background:#e2edff;border-radius:50%;box-shadow:0 0 0 4px #c7d9f329}.weather-card{position:absolute;top:115px;left:35px;width:260px;padding:25px;border-radius:20px;border:1px solid #ffffffe0;background:#ffffffed;backdrop-filter:blur(20px);box-shadow:0 15px 55px #182b4512}.weather-symbol{font-size:36px;line-height:1.4;margin:20px 0 10px;color:#5b779c}.weather-card strong{display:block;font-weight:400;font-size:20px;color:#2e3d53}.weather-card p{font-size:13px;line-height:1.85;margin-top:10px;color:#596578}.demo-label{display:block;font-size:11px;color:#667388;margin-top:20px;line-height:1.7}.scene-bottom{position:absolute;bottom:25px;left:28px;right:28px;display:flex;gap:18px;align-items:center;justify-content:space-between}.segmented{display:flex;gap:3px;padding:5px;border-radius:26px;background:#ffffffd9;border:1px solid #fff9;backdrop-filter:blur(18px)}.segmented button{border-radius:21px;padding:9px 21px;min-height:40px;font-size:12px;color:#576b85}.segmented button[aria-pressed=true]{background:#fff;color:#2c466b;box-shadow:0 2px 10px #203c5812}.process-gallery{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:85px}.process-gallery figure{min-width:0}.process-image{width:100%;display:block;padding:0;position:relative;overflow:hidden;border-radius:20px;background:#eef2f6}.process-image img{width:100%;aspect-ratio:16/9;object-fit:contain;transition:transform .6s var(--ease)}.process-image:hover img{transform:scale(1.025)}.process-image>span{position:absolute;right:14px;bottom:14px;padding:9px 14px;min-height:42px;display:flex;align-items:center;background:#ffffffed;border-radius:23px;color:#425775;font-size:12px}.process-gallery figcaption{padding:26px 10px 0}.process-gallery h3{font-size:28px;line-height:1.5;margin:10px 0 14px}.process-gallery p{font-size:15px;line-height:1.9;max-width:500px}
.bridge{padding-top:100px;padding-bottom:130px}.bridge .section-heading{margin-bottom:42px}.layer-tabs{display:flex;align-items:center;gap:7px;padding:5px;background:#f0f3f7;border-radius:30px;width:max-content;max-width:100%;margin:0 auto 45px}.layer-tabs button{border-radius:24px;padding:11px 21px;min-height:44px;color:#596b84;font-size:13px;white-space:nowrap;transition:background .25s,color .25s}.layer-tabs button[aria-selected=true]{background:#fff;color:#2d4d7c;box-shadow:0 2px 12px #243c5b0a}.layer-tabs small{font-family:var(--mono);font-size:10px;color:#657a99;margin-right:7px}.bridge-workbench{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(270px,1fr);gap:65px;align-items:start;min-width:0}.bridge-visual{position:sticky;top:110px;height:560px;min-width:0;border-radius:24px;overflow:hidden;display:flex;align-items:center;justify-content:center;perspective:1100px;background:linear-gradient(150deg,#f8faff,#edf1f7);isolation:isolate}.screen-floor{position:absolute;inset:60% -20% -40%;transform:rotateX(65deg);background:repeating-linear-gradient(0deg,transparent 0 43px,#cbd4e44d 44px 45px),repeating-linear-gradient(90deg,transparent 0 43px,#cbd4e44d 44px 45px);mask-image:radial-gradient(ellipse,#000,transparent 68%)}.screen-stack{position:relative;width:335px;height:280px;transform-style:preserve-3d;transform:rotateX(var(--bridge-rx,16deg)) rotateY(-18deg) rotateZ(-3deg) scale(var(--bridge-scale,.98));margin-top:-45px}.screen-layer{position:absolute;inset:0;border-radius:13px;transform-style:preserve-3d}.screen-layer.material{background:#7184a0;box-shadow:2px 4px #586d8c,5px 9px #586d8c,10px 35px 50px #2949741c;transform:translateZ(var(--bridge-material-z,-15px)) translateY(var(--bridge-material-y,0px))}.screen-layer.texture{background:#b6c9e668;border:1px solid #91aacf;box-shadow:0 0 30px #a2bde31c;transform:translateZ(var(--bridge-texture-z,-7px))}.screen-layer.web{border:5px solid #374961;background:#fefefe;box-shadow:0 2px 2px #ffffffa0;overflow:hidden;transform:translateZ(var(--bridge-web-z,0px)) translateY(var(--bridge-web-y,0px))}.screen-layer>span{position:absolute;bottom:15px;left:16px;font-family:var(--mono);font-size:10px;letter-spacing:.06em;color:#f7fbff}.screen-layer.texture>span{color:#3d5e8c}.window-top{height:30px;display:flex;align-items:center;gap:5px;padding:8px 10px;background:#edf1f7}.window-top i{width:5px;height:5px;display:block;border-radius:50%;background:#a5b2c6}.window-top span{font-size:9px;color:#526985;margin-left:auto;margin-right:8px;letter-spacing:.04em}.mini-board{width:203px;height:196px;margin:10px auto 0;display:grid;grid-template-columns:repeat(7,1fr);position:relative;background:repeating-linear-gradient(0deg,transparent 0 27px,#c3cede 27px 28px),repeating-linear-gradient(90deg,transparent 0 28px,#c3cede 28px 29px);background-position:14px 13px}.mini-board button{position:relative;min-width:0;background:transparent;border-radius:50%;padding:0}.mini-board button:hover{background:#dce8f766}.mini-board button:disabled{opacity:1}.mini-board button::after{content:"";position:absolute;inset:4px;border-radius:50%;transform:scale(0)}.mini-board button[data-stone=black]::after{transform:scale(1);background:radial-gradient(circle at 30% 20%,#647387,#243247);box-shadow:1px 3px 4px #1c2a3a2b}.mini-board button[data-stone=white]::after{transform:scale(1);background:radial-gradient(circle at 30% 20%,#fff,#dae1ec);box-shadow:1px 3px 4px #1c2a3a22}.board-bottom{display:flex;justify-content:space-between;align-items:center;padding:0 10px;font-size:10px;color:#5c6d86}.board-bottom button{font-size:23px;min-width:34px;min-height:30px;padding:0;color:#4d6790}.layer-tag{position:absolute;z-index:3;border:1px solid #d7e0ee;border-radius:20px;background:#fffffff0;padding:8px 12px;box-shadow:0 5px 18px #233f5c05;color:#4b6284;font-size:11px;opacity:var(--bridge-open,0);pointer-events:none}.tag-one{left:22px;top:54px}.tag-two{right:18px;top:45%}.tag-three{left:22px;bottom:140px}.bridge-signals{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;opacity:var(--bridge-open,0)}.bridge-signals path{stroke-width:1.5}.bridge-signals circle{display:none}.bridge-rail{display:flex;align-items:center;justify-content:center;gap:12px;position:absolute;left:16px;right:16px;bottom:57px;color:#526b91;font-size:11px;line-height:1.7}.bridge-rail span{border-bottom:2px solid #8fa7ca;padding:5px 3px}.bridge-rail i{font-style:normal;color:#8ea3c1}.visual-foot{position:absolute;bottom:23px;left:16px;right:16px;text-align:center;color:#65748a;font-size:11px;line-height:1.7}.bridge-explanation{min-width:0}.bridge-reading-step{min-height:510px;padding:30px 0 100px;scroll-margin-top:140px}.bridge-reading-step:first-child{padding-top:10px}.bridge-reading-step h3{font-size:31px;line-height:1.5;margin:20px 0;color:#293347}.bridge-reading-step>p:not(.tiny-label){font-size:15px;line-height:1.95;color:#566379}.bridge-reading-step.is-current>.tiny-label{color:#345d99}.pipeline{padding:0;list-style:none;margin:26px 0;display:flex;flex-direction:column;gap:0}.pipeline li{font-size:12px;padding:13px 0;border-bottom:1px solid #e9edf4;line-height:1.7;color:#3e5577;overflow-wrap:anywhere}.pipeline li:last-child{border:0}.pipeline li span{display:block;font-size:12px;color:#61738f;margin-top:4px}.note{font-size:12px;line-height:1.9;color:#626f84;border-left:2px solid #d4dfef;padding-left:14px;overflow-wrap:anywhere}
.wheat-section{background:#f7f9fc}.wheat-section>.chapter{padding-top:125px;padding-bottom:120px}.field-story{display:grid;grid-template-columns:minmax(255px,.85fr) minmax(0,1.9fr);gap:65px;margin-top:55px;align-items:start}.field-sticky{position:sticky;top:100px;grid-column:2;grid-row:1;min-width:0}.field-reading{grid-column:1;grid-row:1;min-width:0;padding-top:75px}.field-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.field-steps{display:flex;gap:5px;padding:4px;background:#eaf0f7;border-radius:28px}.field-toolbar button{min-height:44px;font-size:12px;white-space:nowrap;color:#546b8c;padding:9px 14px;border-radius:24px}.field-steps button[aria-pressed=true]{background:#fff;color:#315785;box-shadow:0 2px 10px #17365b08}.field-steps button>span{display:none}#field-layer{font-size:12px;padding:8px 0;border-radius:8px}.field-frame{aspect-ratio:16/9;position:relative;overflow:hidden;isolation:isolate;background:#e6edf5;border-radius:22px}.field-shot{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:1;transition:opacity .65s var(--ease)}.field-shot-tractor{opacity:0}.field-frame[data-step="2"] .field-shot-tractor{opacity:1}.field-frame[data-step="2"] .field-shot-wheat{opacity:0}.field-frame .image-open{right:12px;top:12px;font-size:11px;padding:8px 12px;min-height:42px}.field-frame-label{position:absolute;top:12px;left:12px;padding:8px 12px;background:#18273dde;border-radius:22px;color:#f4f8ff;font-size:11px;line-height:1.6;max-width:62%}.field-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;fill:none;stroke:#fff5d5;stroke-width:1.5;opacity:0;filter:drop-shadow(0 1px 2px #203044);transition:opacity .35s}.field-frame[data-annotated=true] .field-overlay{opacity:1}.field-overlay>g{display:none}.field-frame[data-step="0"] .field-density,.field-frame[data-step="1"] .field-contact,.field-frame[data-step="2"] .field-work{display:block}.field-contact ellipse:first-child{fill:#e5eef733;stroke-width:2;stroke-dasharray:3 5}.field-contact path{stroke-width:2}.field-zone-labels{display:none;position:absolute;left:12px;right:12px;bottom:20px;pointer-events:none}.field-frame[data-step="0"][data-annotated=true] .field-zone-labels{display:flex;flex-direction:column;align-items:end;gap:20px}.field-zone-labels span{background:#18273de8;color:#f5f8ff;padding:5px 9px;border-radius:12px;font-size:11px}.field-hotspots{display:none}.field-frame[data-step="2"][data-annotated=true] .field-hotspots{display:block}.field-hotspots button{position:absolute;width:44px;height:44px;padding:0;border-radius:50%;border:1px solid #fff;background:#203958e8;color:#fff;box-shadow:0 0 0 5px #ffffff38;transform:translate(-50%,-50%);font-family:var(--mono);font-size:12px}.field-hotspots button[aria-pressed=true]{background:#496fa2;box-shadow:0 0 0 6px #ffffff55}.field-hotspots button:nth-child(1){left:29%;top:66%}.field-hotspots button:nth-child(2){left:8%;top:65%}.field-hotspots button:nth-child(3){left:91%;top:84%}.field-figure-foot{display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#5d6b81;line-height:1.8;margin-top:16px}.field-page-track{height:2px;background:#e2e8f0;margin-top:24px;overflow:hidden}.field-page-track i{display:block;width:100%;height:100%;background:#829bbe;transform:scaleX(0);transform-origin:left;transition:transform .15s linear}.field-reading-step{min-height:490px;padding:20px 0 100px;scroll-margin-top:125px}.field-reading-step h3{font-size:32px;line-height:1.5;margin:20px 0 25px;color:#293347}.field-reading-step>p:not(.tiny-label){font-size:15px;line-height:1.95;color:#566379}.field-reading-note{font-size:12px!important;color:#63718a!important;margin-top:22px;line-height:1.9!important}.field-spec{display:flex;flex-direction:column;gap:13px;margin:28px 0;font-size:13px;color:#4a6284}.field-spec span{display:flex;align-items:center;gap:10px}.field-spec span::before{content:"";width:5px;height:5px;background:#8aa3c7;border-radius:50%}.field-signal-flow{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center;margin:27px 0;font-size:12px;color:#4d6588;line-height:1.8}.field-signal-flow span{background:#eaf0f8;border-radius:8px;padding:6px 10px}.field-signal-flow i{font-style:normal;color:#899bb5}.field-interaction{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px 20px;margin-top:20px;font-size:13px;color:#4c6385}.field-interaction>span{font-size:11px;color:#5e6e84}.field-interaction input{grid-column:1/-1;order:3;width:100%;height:36px;accent-color:#6a89b3}.field-hotspot-copy{font-size:13px;line-height:1.9;color:#50647f;min-height:55px;padding:16px 0 0}
.field-lab{margin-top:50px;border-top:1px solid #dfe6ef;border-bottom:1px solid #dfe6ef;padding:0}.field-lab>summary{min-height:82px;font-size:22px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:15px 0;color:#334660}.field-lab>summary>b{font-size:13px;font-weight:400;color:#5e6e84}.field-lab-inner{padding:15px 0 30px}.field-lab-heading{display:flex;justify-content:space-between;gap:20px;margin:0 0 25px}.field-lab-heading>p:last-child{font-size:13px}.wheat-stage{min-height:505px;position:relative;overflow:hidden;border-radius:22px;background:#292e27;aspect-ratio:2}.wheat-stage>canvas,.npc-stage>canvas,.pottery-stage>canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none}.wheat-stage .stage-top{color:#e4e9d8;font-size:11px}.gold{background:#e7ddb8}.wheat-callout{position:absolute;top:95px;left:28px;padding:18px 20px;background:#1f2a24a3;border-radius:15px;pointer-events:none;max-width:270px}.wheat-callout .tiny-label{color:#e4e8d8;font-size:11px}.wheat-callout strong{display:block;font-size:26px;color:#fbfaed;font-weight:400;line-height:1.5;margin:12px 0 10px}.wheat-callout p{font-size:12px;color:#e1e5d7}.wheat-legend{position:absolute;left:30px;bottom:115px;display:flex;align-items:center;gap:9px;font-size:11px;color:#eef0e2;pointer-events:none}.wheat-legend i{width:12px;height:12px;border:1px dashed #e1e6d7;border-radius:50%}.wheat-controls{position:absolute;bottom:20px;left:22px;right:22px;display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:14px 17px;background:#ffffffed;border:1px solid #fff8;border-radius:18px;backdrop-filter:blur(20px)}.wheat-controls label{display:flex;gap:12px;align-items:center;font-size:12px;color:#50647f;flex:1;min-width:0}.wheat-controls input{width:150px;max-width:45%;accent-color:#6887b4}.wheat-controls output{font-size:12px;white-space:nowrap}.wheat-controls .light-button{padding:10px 15px;font-size:12px;min-height:40px}.wheat-story{display:grid;grid-template-columns:1fr 2fr;gap:80px;margin-top:75px}.story-index>span{font-size:11px;letter-spacing:.07em;color:#64748d}.story-index b{font-size:27px;line-height:1.6;font-weight:400;display:block;margin-top:20px;color:#344862}.story-details{min-width:0}.story-details .layer-tabs{margin:0 0 30px}.story-details h3{font-size:27px;line-height:1.5;margin-bottom:18px}.story-details p{font-size:15px;color:#576780}.story-details .footnote{font-size:12px;line-height:1.9;color:#5e6e84}.logic-flow{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:25px 0}.logic-flow span{padding:8px 12px;border-radius:9px;background:#eaf0f7;font-size:12px;color:#4f6a8e;max-width:100%;overflow-wrap:anywhere}.logic-flow b{font-weight:400;color:#93a5be}.grass-study{display:grid;grid-template-columns:1fr 1.2fr;gap:90px;padding-top:105px;margin-top:90px;border-top:1px solid #e2e7ef}.grass-study-intro h3{font-size:43px;margin:22px 0;line-height:1.4}.grass-study-intro>p:not(.eyebrow){font-size:15px;color:#566780}.grass-source{margin-top:25px;font-size:13px!important;line-height:1.9}.grass-source a{color:#3d6295;border-bottom:1px solid #bacbe3;overflow-wrap:anywhere}.grass-study-intro .source-boundary{font-size:12px!important;color:#65748a;margin-top:24px}.grass-study-demo{align-self:center;min-width:0}.grass-study-controls{display:flex;gap:25px;align-items:center}.grass-study-controls button{font-size:13px;min-height:44px;padding:8px 15px;border-radius:25px;color:#587293}.grass-study-controls button[aria-pressed=true]{background:#e7eef8;color:#2f568b}#grass-diagram{width:100%;height:auto;margin:12px 0 10px}.grass-grid-line{fill:none;stroke:#dae3ee;stroke-width:1}.grass-root{fill:#6983a4}.grass-clump-link{fill:none;stroke:#b5c4d9;stroke-width:.7}.grass-blade{fill:none;stroke:#466889;stroke-width:1.3}#grass-step-copy{font-size:13px;line-height:1.8;color:#5c7190;min-height:24px}
.npc-section{padding-top:135px;padding-bottom:120px}.npc-workbench{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(285px,1fr);gap:75px;align-items:center}.npc-stage{position:relative;min-height:660px;border-radius:26px;overflow:hidden;background:#f3f5f8}.npc-stage .stage-top{color:#5a6b84}.npc-stage .live-dot{background:#6f8eb7;box-shadow:0 0 0 4px #809cb51f}.npc-ident{position:absolute;left:30px;bottom:85px;right:25px;pointer-events:none}.npc-ident strong{display:block;font-size:34px;line-height:1.5;font-weight:400;letter-spacing:-.7px;margin:7px 0;color:#25334a}.npc-ident p{font-size:12px;color:#526985;line-height:1.8}.npc-ident .asset-credit{font-size:11px;color:#5a6f8b;margin-top:8px;max-width:400px}.npc-state{position:absolute;left:30px;bottom:26px;display:flex;align-items:center;gap:9px;background:#fffffff0;border:1px solid #dce5f1;border-radius:24px;padding:11px 15px;font-size:12px;color:#48658d}.npc-state i{width:5px;height:5px;background:#7294c4;border-radius:50%}.npc-doc{min-width:0}.npc-doc h3{font-size:33px;line-height:1.5;margin:20px 0 35px}.angle-label{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:14px;color:#536985}.angle-label output{color:#315b92}.angle-label input{flex-basis:100%;width:100%;height:34px;accent-color:#7294c4}.npc-actions{display:flex;gap:12px;margin-top:20px}.npc-actions .primary,.npc-actions .light-button{font-size:13px;padding:11px 20px;gap:20px}.npc-meter{margin-top:32px}.npc-meter>div:first-child{display:flex;justify-content:space-between;gap:15px;font-size:12px;color:#5e7390}.npc-meter b{font-size:12px;font-weight:400;font-family:var(--mono)}.meter-track{height:3px;background:#e9eef5;border-radius:5px;margin-top:12px}.meter-track i{display:block;height:100%;width:0;background:#809fc8;border-radius:5px}.numbered{list-style:none;padding:0;display:flex;flex-direction:column;gap:24px;margin:35px 0}.numbered li{display:flex;gap:17px}.numbered li>span{font-size:11px;font-family:var(--mono);color:#7f91ab;padding-top:5px}.numbered b{font-size:14px;font-weight:400;color:#3a5274}.numbered p{font-size:13px;color:#61738e;margin-top:5px;line-height:1.85}details{border-top:1px solid var(--line);padding-top:18px;margin-top:25px}summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:18px;cursor:pointer;font-size:14px;min-height:44px;line-height:1.7;color:#4f6687}summary::-webkit-details-marker{display:none}summary>span{color:#718baa;transition:transform .3s}details[open]>summary>span:last-child{transform:rotate(45deg)}details p{font-size:13px;line-height:1.95;color:#5e718c;margin-top:18px;overflow-wrap:anywhere}code{font-family:var(--mono);font-size:.94em;background:#edf2f9;color:#3d608e;border-radius:5px;padding:3px 5px}
.studio{padding-top:120px}.studio-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.studio-grid>article{min-width:0}.card-heading h3{font-size:33px;line-height:1.5;margin:15px 0}.card-heading>p{font-size:15px;line-height:1.9;color:#5d6c80}.pottery-stage{height:360px;position:relative;overflow:hidden;background:#f1f3f7;border-radius:22px;margin:30px 0 18px}.pottery-badge{position:absolute;left:16px;bottom:18px;font-size:11px;padding:9px 13px;background:#ffffffdf;border:1px solid #e4eaf4;color:#5a7091;pointer-events:none;border-radius:22px}.pottery-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.color-picker{display:flex;align-items:center;gap:9px;font-size:13px;color:#586e8e;margin-right:auto}.color-picker input{width:35px;height:35px;padding:2px;border:1px solid #d6e1ee;background:transparent;border-radius:50%;cursor:pointer}.pottery-toolbar .primary,.pottery-toolbar .light-button{font-size:12px;padding:11px 16px}.pottery-toolbar .icon-button{padding:7px 10px}.piano-card{display:flex;flex-direction:column}.sound-wave{height:190px;position:relative;display:flex;align-items:center;justify-content:center;margin:45px 0 35px}.sound-wave svg{position:absolute;inset:0;width:100%;height:100%;opacity:.75}.sound-wave>span{position:relative;font-size:13px;color:#5b7293;margin-top:120px}.piano{display:flex;position:relative;isolation:isolate;overflow:hidden;height:170px;border:5px solid #3a4961;border-radius:10px;background:#3a4961;touch-action:none}.piano button{touch-action:none;padding:0}.piano .white-key{height:100%;flex:1;position:relative;min-width:0;background:linear-gradient(#edf1f7,#fff);border:1px solid #cbd5e5;border-radius:0 0 4px 4px;box-shadow:inset 0 -4px #dfe6f0;color:#637b9c}.piano .white-key small{position:absolute;bottom:12px;left:0;right:0;text-align:center;font-size:10px}.piano .black-key{position:absolute;top:0;width:4%;height:64%;z-index:2;background:linear-gradient(90deg,#27374f,#41577a);border-radius:0 0 4px 4px;box-shadow:0 3px 4px #0003,inset 0 -5px #23334a}.piano button.is-down{background:#aac1e2;box-shadow:inset 0 0 15px #3a6aa12b}.piano-register{display:none}.piano-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:12px;color:#63748e;margin-top:22px}.piano-footer .light-button{font-size:12px;padding:9px 15px}.piano-card details{margin-top:36px}.source-strip{display:grid;grid-template-columns:1.2fr 1fr;gap:75px;align-items:center;margin-top:100px}.source-strip img{width:100%;border-radius:22px}.source-strip h3{font-size:33px;line-height:1.5;margin:20px 0}.source-strip p{font-size:15px;color:#5c6d84;line-height:1.9}.compositing-card{margin-top:115px;padding:55px;background:#f5f7fb;border:0;border-radius:26px}.compositing-heading{margin-bottom:20px}.compositing-card h3{font-size:43px;line-height:1.4;margin-bottom:22px}.compositing-card>p{font-size:16px;max-width:750px;color:#566982}.compositing-flow{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:30px}.compositing-flow span{padding:13px 22px;background:#fff;border-radius:12px;color:#506b91;font-size:14px}.compositing-flow b{font-size:14px;font-weight:400;color:#94a5be}.compositing-card .compositing-caption{font-size:12px;color:#5e6e84;margin-top:25px}.tools-section{background:#f8f9fb}.tools-section .chapter{padding-top:110px;padding-bottom:115px}.tools-section .section-heading h2{font-size:45px}.tools-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:55px}.tools-grid article{min-width:0;padding-top:10px}.tool-icon{display:none}.tools-grid h3{font-size:28px;line-height:1.5;margin:18px 0}.tools-grid p{font-size:14px;line-height:1.95;min-height:82px;color:#5c6f88}.tools-grid a{display:inline-flex;align-items:center;min-height:44px;font-size:12px;color:#4c6c99;overflow-wrap:anywhere}.tool-foot{display:block;margin-top:25px;font-size:12px;line-height:1.8;color:#637993}.source-reference{border:0;margin-top:20px;padding:0}.source-reference summary{font-size:13px;color:#4b6a95}.about{text-align:center;max-width:1000px;padding-top:135px;padding-bottom:135px}.about h2{font-size:49px;line-height:1.4;margin:25px 0}.about p{font-size:16px;line-height:1.95}.about .light-button{margin-top:32px}footer{border-top:1px solid #edf0f4;padding:35px max(4vw,24px);display:flex;align-items:center;justify-content:space-between;gap:25px}footer .brand{font-size:21px}footer p,footer>span{font-size:12px;color:#65748a}footer .brand span{font-size:11px}.license-notice{width:min(1240px,calc(100% - 96px));margin:0 auto;border:0;padding:0 0 18px}.license-notice summary{font-size:12px;max-width:250px;color:#657993}.license-notice p,.license-notice pre{font-size:11px;line-height:1.9;color:#61758f}.license-notice pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:950px;margin-top:15px;font-family:var(--mono)}
.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,15px);opacity:0;z-index:130;max-width:min(90vw,600px);padding:14px 22px;background:#26374f;color:#f7fbff;border-radius:25px;box-shadow:0 8px 40px #2338541f;font-size:13px;line-height:1.7;pointer-events:none;transition:opacity .3s,transform .3s}.toast.visible{transform:translate(-50%,0);opacity:1}.webgl-error{position:absolute;inset:90px 20px;display:flex;align-items:center;justify-content:center;padding:24px;z-index:5;background:#f7fafff2;border:1px solid #d6e2f3;border-radius:16px;color:#536e93;font-size:14px;line-height:1.9}.touch-toggle{display:none}.media-dialog{position:fixed;inset:0;width:min(1500px,94vw);height:auto;max-width:none;max-height:94dvh;overflow:auto;margin:auto;padding:0;border:1px solid #e3e9f3;border-radius:20px;background:#fff;color:#24334b;box-shadow:0 30px 100px #11274735}.media-dialog::backdrop{background:#15243bc7;backdrop-filter:blur(15px)}.media-dialog-top{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:15px 22px;background:#fffffff5;backdrop-filter:blur(16px);border-bottom:1px solid #e7edf6}.media-dialog h2{font-size:18px;line-height:1.6;letter-spacing:0}.media-dialog form{margin:0}.media-dialog button{min-height:44px;border-radius:24px;padding:10px 18px;background:#eef3fa;color:#4d6890;font-size:13px}.media-dialog-image{min-height:150px;display:flex;align-items:center;justify-content:center;background:#f0f3f8}.media-dialog-image img{width:auto;height:auto;max-width:100%;max-height:75dvh;object-fit:contain}.media-dialog>p{padding:18px 22px;font-size:12px;color:#63758f;line-height:1.9}
@media(max-width:1150px){.nav{gap:14px;padding:0 25px}.brand>span{display:none}.nav nav{gap:19px}.chapter{width:calc(100% - 70px)}.bridge-workbench{gap:35px;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr)}.screen-stack{width:300px}.bridge-visual{height:530px}.field-story{gap:35px;grid-template-columns:minmax(240px,.9fr) minmax(0,1.8fr)}.field-toolbar{flex-wrap:wrap;gap:4px 15px}.npc-workbench{gap:40px}.npc-stage{min-height:630px}.studio-grid{gap:40px}.tools-grid{gap:35px}}
@media(max-width:900px){
 .nav{height:68px;gap:12px;padding:0 22px}.nav>.brand{margin-right:auto}.nav>.motion-button{margin:0;min-width:50px}.menu-toggle{display:flex;align-items:center;justify-content:center;gap:8px;background:#f0f3f8;color:#4c6588;min-height:44px;min-width:70px;border-radius:24px;font-size:12px}.nav nav{display:none;position:absolute;left:0;right:0;top:calc(100% - 1px);padding:24px 22px;background:#fffffff7;backdrop-filter:blur(24px);border-bottom:1px solid #e4eaf3;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 15px;box-shadow:0 20px 35px #1932540b;max-height:calc(100dvh - 68px);overflow-y:auto}.nav nav.is-open{display:grid}.nav nav a{min-height:46px;display:flex;align-items:center;padding:10px 14px;border-radius:12px;font-size:14px}.nav nav a:hover,.nav nav a[aria-current=location]{background:#f1f5fc;box-shadow:none}.hero-intro{padding-top:90px;padding-bottom:85px;min-height:600px}.hero-title{font-size:58px}.hero-contact-sheet{padding:0 22px}.hero-image-window>img{height:420px}.hero-contact-sheet figcaption{flex-wrap:wrap;gap:14px 20px}.hero-contact-sheet figcaption>span:last-child{flex-basis:100%;text-align:center;font-size:11px}.hero-image-controls{margin-left:auto}.archive-index{gap:5px 25px;margin-top:15px}.chapter{width:calc(100% - 56px);padding:95px 0}.section-heading{margin-bottom:45px}.section-heading h2{font-size:45px}.process-gallery{gap:28px;margin-top:60px}.process-gallery h3{font-size:25px}.process-gallery p{font-size:14px}.campus-stage{height:570px}.bridge-workbench{grid-template-columns:1fr;gap:35px}.bridge-visual{position:relative;top:auto;height:530px;max-width:720px;width:100%;margin:0 auto}.screen-stack{width:335px}.bridge-explanation{max-width:720px;width:100%;margin:0 auto}.bridge-reading-step{min-height:0;padding:0 10px 20px}.bridge-reading-step h3{font-size:29px}.pipeline{margin:20px 0}.field-story{display:flex;flex-direction:column;gap:32px;margin-top:40px}.field-sticky{position:relative;top:auto;width:100%}.field-reading{padding:0;width:100%}.field-reading-step{min-height:0;padding:0 0 20px}.field-reading-step h3{font-size:31px;margin:15px 0 20px}.field-reading-step h3 br{display:none}.field-toolbar{flex-wrap:nowrap}.field-figure-foot{font-size:12px}.wheat-story{grid-template-columns:1fr;gap:30px;margin-top:50px}.story-index{display:flex;justify-content:space-between;align-items:center;gap:20px}.story-index b{font-size:24px;margin:0}.story-index b br{display:none}.story-details .layer-tabs{margin:0 auto 28px}.grass-study{gap:40px;padding-top:65px;margin-top:65px}.grass-study-intro h3{font-size:36px}.npc-workbench{grid-template-columns:1fr;gap:45px}.npc-stage{min-height:640px;max-width:740px;width:100%;margin:0 auto}.npc-doc{max-width:740px;width:100%;margin:0 auto}.npc-doc h3{font-size:32px}.studio-grid{grid-template-columns:1fr;gap:75px;max-width:760px;margin:0 auto}.piano-card{display:block}.sound-wave{height:145px}.source-strip{gap:35px;margin-top:75px}.source-strip h3{font-size:28px}.compositing-card{margin-top:80px;padding:40px}.tools-grid{grid-template-columns:1fr;gap:45px;max-width:760px;margin:0 auto}.tools-grid p{min-height:0;font-size:15px}.tool-foot{margin-top:18px}.tools-section .section-heading h2{font-size:40px}.license-notice{width:calc(100% - 56px)}
}
@media(max-width:600px){
 html{scroll-padding-top:85px}.nav{padding:0 max(18px,env(safe-area-inset-left)) 0 max(18px,env(safe-area-inset-right));gap:9px}.brand{font-size:21px;gap:7px}.brand svg{width:20px}.hero{padding-bottom:30px}.hero-intro{min-height:565px;padding:70px 18px 75px}.hero-kicker{font-size:21px}.hero-kicker>span{font-size:11px;margin-left:6px}.hero-title{font-size:clamp(33px,10.9vw,53px);line-height:1.27;margin:30px 0 23px;letter-spacing:-.055em}.hero-description{font-size:13px;line-height:1.95;max-width:320px}.hero-actions{gap:20px;margin-top:30px;flex-wrap:wrap}.hero-actions .primary{font-size:13px;min-height:48px;padding:12px 22px}.hero-text-link{font-size:13px;gap:8px}.hero-contact-sheet{padding:0 16px}.hero-image-window{border-radius:18px!important}.hero-image-window>img{height:290px}.hero-image-window[data-cover=fieldWheat]>img{object-position:72% 100%;transform:scale(1.08)}.hero-image-index{left:12px;bottom:12px;font-size:11px;padding:8px 12px}.image-open{top:12px;right:12px;min-height:44px;font-size:11px;padding:9px 12px}.hero-contact-sheet figcaption{padding:16px 3px;gap:10px;font-size:11px}.hero-image-controls{padding:3px;gap:0}.hero-image-controls button{font-size:12px;min-height:44px;padding:8px 12px}.archive-index{gap:2px 20px;padding:0 20px;margin-top:8px}.archive-index a{font-size:12px;min-height:40px}.chapter{width:calc(100% - 40px);padding:80px 0}.section-heading{margin-bottom:38px}.section-heading>.eyebrow{margin-bottom:18px;font-size:12px}.section-heading h2{font-size:clamp(29px,8.5vw,43px);line-height:1.4;letter-spacing:-.055em}.section-heading>div>p{font-size:14px;margin-top:22px;line-height:1.9}.desktop{display:none}.media-caption{flex-direction:column;gap:3px;font-size:11px;margin-top:15px}.campus-stage{height:auto;padding-bottom:16px;border-radius:18px;background:#f1f5fa;display:flex;flex-direction:column}.campus-stage>img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;transform:none}.campus-stage #weather,.campus-stage .scene-tint{height:auto;aspect-ratio:16/10;bottom:auto}.scene-top{left:14px;right:14px;top:14px;font-size:10px;text-shadow:0 1px 7px #223956}.scene-top>span:last-child{display:none}.weather-card{position:relative;left:auto;top:auto;width:auto;margin:-18px 14px 14px;padding:18px;display:grid;grid-template-columns:40px minmax(0,1fr);gap:3px 12px;border-radius:16px;box-shadow:none;background:#fffffff2}.weather-card>.tiny-label{grid-column:1/-1;font-size:11px}.weather-symbol{grid-column:1;grid-row:2/4;margin:5px 0 0;font-size:30px;align-self:center}.weather-card strong{grid-column:2;font-size:18px;margin-top:5px}.weather-card p{grid-column:2;font-size:12px;line-height:1.8;margin:0}.demo-label{grid-column:1/-1;font-size:11px;margin-top:10px}.scene-bottom{position:relative;left:auto;right:auto;bottom:auto;gap:10px;flex-wrap:wrap;margin:0 14px}.segmented{flex:1}.segmented button{flex:1;min-height:44px;font-size:12px;padding:9px 12px}.glass-button{flex:1;font-size:12px;min-height:44px;white-space:nowrap;padding:10px 14px}.process-gallery{grid-template-columns:1fr;gap:40px;margin-top:50px}.process-image{border-radius:16px}.process-image>span{font-size:11px;min-height:44px;right:10px;bottom:10px}.process-gallery figcaption{padding:20px 5px 0}.process-gallery h3{font-size:26px}.process-gallery p{font-size:14px}.layer-tabs{gap:2px;padding:4px;margin-bottom:30px}.layer-tabs button{font-size:12px;padding:10px 12px;min-height:44px}.layer-tabs small{display:none}.bridge-visual{height:430px;border-radius:18px}.screen-stack{width:265px;height:240px;margin-top:-40px;transform:rotateX(var(--bridge-rx,16deg)) rotateY(-16deg) rotateZ(-3deg) scale(var(--bridge-scale,.9))}.mini-board{width:175px;height:168px;margin:9px auto 0;background:repeating-linear-gradient(0deg,transparent 0 23px,#c3cede 23px 24px),repeating-linear-gradient(90deg,transparent 0 24px,#c3cede 24px 25px);background-position:12px 11px}.window-top{height:27px}.window-top span{font-size:8px}.board-bottom{font-size:9px}.board-bottom button{font-size:22px;min-height:30px}.screen-layer>span{font-size:9px;bottom:11px;left:12px}.layer-tag{font-size:10px;padding:6px 9px}.tag-one{left:10px;top:28px}.tag-two{right:8px;top:43%}.tag-three{left:10px;bottom:120px}.bridge-rail{gap:7px;left:10px;right:10px;bottom:55px;font-size:9px}.visual-foot{font-size:10px;bottom:20px}.bridge-reading-step{padding:0 4px 15px}.bridge-reading-step h3{font-size:27px}.bridge-reading-step>p:not(.tiny-label){font-size:14px}.pipeline li{font-size:12px}.pipeline li span{font-size:11px}.note{font-size:12px}.wheat-section>.chapter{padding-top:85px;padding-bottom:80px}.field-story{gap:25px;margin-top:30px}.field-toolbar{flex-wrap:wrap;gap:5px 15px;margin-bottom:13px}.field-steps{flex:1;justify-content:space-between;padding:3px;gap:0}.field-toolbar button{font-size:12px;min-height:44px;padding:9px 12px}.field-steps button{flex:1}#field-layer{margin-left:auto;min-height:44px;padding:8px 0;font-size:12px}.field-frame{border-radius:16px}.field-frame .image-open{right:8px;top:8px;min-height:44px;padding:8px;font-size:10px}.field-frame-label{left:8px;top:8px;font-size:10px;max-width:55%;padding:7px 9px}.field-zone-labels{left:8px;right:8px;bottom:8px}.field-frame[data-step="0"][data-annotated=true] .field-zone-labels{gap:6px}.field-zone-labels span{font-size:10px;padding:3px 6px}.field-figure-foot{flex-direction:column;gap:1px;font-size:11px;margin-top:14px}.field-page-track{margin-top:20px}.field-reading-step h3{font-size:29px;line-height:1.5;margin:13px 0 18px}.field-reading-step>p:not(.tiny-label){font-size:14px}.field-spec{font-size:12px;margin:22px 0;gap:12px}.field-reading-note{font-size:12px!important}.field-interaction{grid-template-columns:1fr;gap:7px;font-size:13px}.field-interaction input{order:0;grid-column:auto}.field-hotspot-copy{font-size:13px}.field-lab{margin-top:35px}.field-lab>summary{font-size:18px;gap:12px;min-height:78px}.field-lab>summary>b{font-size:11px}.field-lab-heading{display:block}.field-lab-heading>p:last-child{font-size:13px;margin-top:10px}.wheat-stage{min-height:580px;aspect-ratio:auto;border-radius:16px}.wheat-stage .stage-top{flex-direction:column;align-items:start;gap:7px;left:18px;right:18px;top:18px;font-size:10px}.wheat-callout{top:90px;left:18px;padding:13px 16px}.wheat-callout .tiny-label{font-size:10px}.wheat-callout strong{font-size:24px}.wheat-callout p{font-size:12px}.wheat-legend{left:20px;bottom:163px;font-size:11px}.wheat-controls{bottom:12px;left:12px;right:12px;padding:12px;gap:10px;border-radius:15px}.wheat-controls label{display:grid;grid-template-columns:auto minmax(0,1fr) 38px;width:100%;flex-basis:100%;font-size:12px;gap:10px}.wheat-controls input{width:100%;max-width:none;min-width:0;height:35px;margin:0}.wheat-controls output{font-size:12px}.wheat-controls .light-button{flex:1;min-height:44px;font-size:12px;padding:9px 10px}.wheat-story{gap:25px;margin-top:45px}.story-index>span{font-size:11px}.story-index b{font-size:22px;max-width:210px}.story-index b br{display:block}.story-details h3{font-size:25px}.story-details p{font-size:14px}.story-details .footnote{font-size:12px}.logic-flow{gap:8px}.logic-flow span{font-size:11px}.grass-study{grid-template-columns:1fr;gap:30px;padding-top:55px;margin-top:55px}.grass-study-intro h3{font-size:35px;margin:18px 0}.grass-study-intro>p:not(.eyebrow){font-size:14px}.grass-source{font-size:12px!important}.grass-study-controls{gap:12px}.grass-study-controls button{font-size:13px;min-height:44px;padding:9px 16px}#grass-step-copy{font-size:12px;min-height:44px;line-height:1.9}.npc-stage{min-height:570px;border-radius:20px}.npc-stage .stage-top{top:20px;left:20px;right:20px;font-size:10px;flex-direction:column;align-items:start;gap:7px}.npc-ident{left:22px;right:22px;bottom:85px}.npc-ident strong{font-size:31px}.npc-ident p{font-size:11px;line-height:1.8}.npc-ident .asset-credit{font-size:11px;max-width:280px}.npc-state{left:22px;bottom:23px;font-size:11px;padding:10px 14px}.npc-doc h3{font-size:29px;margin:18px 0 28px}.npc-actions{gap:10px;flex-wrap:wrap}.npc-actions .primary,.npc-actions .light-button{flex:1;font-size:13px;min-height:46px;padding:11px 14px}.numbered{gap:23px}.numbered b{font-size:14px}.numbered p{font-size:13px}.studio-grid{gap:65px}.card-heading h3{font-size:29px}.card-heading>p{font-size:14px}.pottery-stage{height:325px;border-radius:18px;margin-top:25px}.pottery-badge{max-width:45%;font-size:11px;left:12px;bottom:16px;padding:8px 11px}.pottery-toolbar{display:grid;grid-template-columns:1fr auto;gap:10px}.pottery-toolbar .color-picker{min-height:44px;font-size:13px;gap:10px}.color-picker input{width:40px;height:40px}.pottery-toolbar .primary{grid-column:1;font-size:13px;min-height:44px}.pottery-toolbar .light-button{font-size:13px;min-height:44px}.pottery-toolbar .icon-button{grid-column:2;min-width:44px;min-height:44px}.sound-wave{height:135px;margin:25px 0}.sound-wave>span{font-size:13px;margin-top:95px}.piano{height:165px}.piano .white-key small{font-size:11px}.piano-register{display:flex;gap:8px;margin:0 0 13px}.piano-register button{flex:1;min-height:44px;padding:9px;background:#edf2fa;color:#53719a;border-radius:24px;font-size:12px}.piano-register button[aria-pressed=true]{background:#496a99;color:#fff}.piano-footer{font-size:12px;gap:10px;flex-wrap:wrap}.source-strip{grid-template-columns:1fr;gap:30px;margin-top:70px}.source-strip img{border-radius:18px}.source-strip h3{font-size:29px;margin:16px 0}.source-strip p{font-size:14px}.compositing-card{margin-top:70px;padding:28px 22px;border-radius:20px}.compositing-card h3{font-size:34px;margin-bottom:20px}.compositing-heading .tiny-label{font-size:11px}.compositing-card>p{font-size:14px}.compositing-flow{flex-wrap:nowrap;gap:7px;margin-top:25px}.compositing-flow span{flex:1;min-width:0;padding:11px 7px;text-align:center;font-size:11px;border-radius:10px}.compositing-flow b{font-size:12px}.compositing-card .compositing-caption{font-size:12px}.tools-section .chapter{padding-top:80px;padding-bottom:85px}.tools-section .section-heading h2{font-size:34px}.tools-grid{gap:40px}.tools-grid h3{font-size:27px;margin:15px 0}.tools-grid p{font-size:14px}.tools-grid a,.tool-foot{font-size:12px}.about{padding-top:90px;padding-bottom:95px}.about h2{font-size:35px}.about p{font-size:14px}.about .light-button{font-size:13px}footer{padding:28px 20px calc(28px + env(safe-area-inset-bottom));flex-wrap:wrap;gap:18px}footer .brand{font-size:21px}footer p,footer>span{font-size:12px}footer>span{flex-basis:100%}.license-notice{width:calc(100% - 40px);padding-bottom:16px}.license-notice summary{font-size:12px}.license-notice p,.license-notice pre{font-size:11px}.media-dialog{width:96vw;max-height:96dvh;border-radius:16px}.media-dialog-top{padding:10px 14px;gap:12px}.media-dialog h2{font-size:15px}.media-dialog-image img{max-height:70dvh}.media-dialog>p{padding:14px;font-size:12px}.toast{bottom:calc(18px + env(safe-area-inset-bottom));font-size:13px}.webgl-error{inset:75px 15px;padding:20px;font-size:13px}
}
@media(any-pointer:coarse){.wheat-stage>canvas,.npc-stage>canvas,.pottery-stage>canvas{touch-action:pan-y}.touch-active>canvas{touch-action:none}.touch-toggle{display:flex;align-items:center;justify-content:center;position:absolute;z-index:4;right:18px;bottom:165px;min-height:44px;padding:10px 16px;border:1px solid #dbe5f4;border-radius:25px;background:#fffffff2;color:#52739f;font-size:12px;box-shadow:0 5px 20px #203a5812}.touch-toggle[aria-pressed=true]{background:#4e719e;color:#fff;border-color:#4e719e}.npc-stage>.touch-toggle{top:75px;bottom:auto}.pottery-stage>.touch-toggle{right:12px;bottom:15px;font-size:11px}.wheat-stage>.touch-toggle{bottom:185px}}
@media(max-height:800px) and (min-width:901px){.bridge-workbench{grid-template-columns:1fr;gap:35px}.bridge-visual{position:relative;top:auto;max-width:850px;width:100%;margin:0 auto;height:480px}.bridge-explanation{max-width:850px;width:100%;margin:0 auto}.bridge-reading-step{min-height:0;padding:0 0 20px}.field-story{display:flex;flex-direction:column;gap:30px;max-width:950px;margin-left:auto;margin-right:auto}.field-sticky{position:relative;top:auto;width:100%}.field-reading{padding:0;width:100%}.field-reading-step{min-height:0;padding:0 0 25px}.field-frame{max-height:420px}.hero-intro{min-height:480px;padding:65px 24px}.nav nav{max-height:calc(100dvh - 70px);overflow:auto}}
@media(max-width:360px){.nav{gap:6px}.nav .motion-button{font-size:0;min-width:40px;gap:0}.nav .motion-button span{font-size:16px}.brand{font-size:20px}.brand svg{width:18px}.menu-toggle{min-width:62px}.hero-intro{min-height:535px}.hero-title{font-size:10.6vw}.hero-actions{gap:12px}.hero-text-link{font-size:12px}.hero-kicker>span{font-size:10px}.hero-contact-sheet figcaption{font-size:10px}.hero-image-controls button{padding:8px 10px}.archive-index{gap:2px 15px}.layer-tabs button{font-size:11px;padding:10px}.screen-stack{width:248px}.bridge-rail{font-size:8px;gap:5px}.field-frame-label{font-size:9px}.field-frame .image-open{font-size:9px;padding:8px}.field-toolbar{gap:5px}.field-steps button{padding:8px 10px;font-size:11px}.compositing-flow{gap:4px}}
@media(prefers-reduced-motion:reduce){html:not(.motion-enabled){scroll-behavior:auto}html:not(.motion-enabled) *,html:not(.motion-enabled) *::before,html:not(.motion-enabled) *::after{animation:none!important;transition:none!important}html:not(.motion-enabled) .reveal.pending{opacity:1;transform:none}html:not(.motion-enabled) .hero-image-window{transform:none!important}}
.motion-off *,.motion-off *::before,.motion-off *::after{animation:none!important;transition:none!important}.motion-off .hero-image-window{transform:none!important}

/* Seamless diagrams and transparent WebGL, per the user's latest direction. */
.bridge-visual{background:transparent;border-radius:0;overflow:hidden}
.screen-floor{opacity:.42}
.screen-layer.material{box-shadow:2px 4px #586d8c,5px 9px #586d8c,10px 35px 65px #29497415}
.layer-tag{box-shadow:none;background:#ffffffc9;border-color:#e4eaf3}
.bridge-rail span{border-bottom-color:#c8d6e9}
.npc-stage,.pottery-stage{background:transparent;border-radius:0;overflow:hidden}
.npc-stage>canvas,.pottery-stage>canvas{-webkit-mask-image:linear-gradient(180deg,transparent,#000 9%,#000 84%,transparent);mask-image:linear-gradient(180deg,transparent,#000 9%,#000 84%,transparent)}
.npc-state{background:#ffffffde;border-color:transparent;box-shadow:none;padding-left:0}
.pottery-badge{background:#ffffffd9;border-color:transparent;padding-left:0}
.wheat-stage{background:transparent;border-radius:0}
.wheat-stage>canvas{-webkit-mask-image:linear-gradient(180deg,transparent,#000 13%,#000 79%,transparent);mask-image:linear-gradient(180deg,transparent,#000 13%,#000 79%,transparent)}
.wheat-stage .stage-top{color:#536a8d}.wheat-stage .live-dot{background:#7e99bf;box-shadow:none}
.wheat-callout{background:transparent;padding-left:0}.wheat-callout .tiny-label{color:#536b8e}.wheat-callout strong{color:#334c6e}.wheat-callout p{color:#5d7391}
.wheat-legend{color:#566e8f}.wheat-legend i{border-color:#8ba0bd}
.wheat-controls{background:#f7f9fce8;border-color:transparent;box-shadow:none;backdrop-filter:none;border-radius:0;left:0;right:0;padding-left:0;padding-right:0}
.compositing-card{background:transparent;padding-left:0;padding-right:0;border-radius:0}
.compositing-flow span{background:#f5f7fb}
@media(max-width:900px){.bridge-visual,.npc-stage,.pottery-stage{border-radius:0}.wheat-controls{left:0;right:0}.compositing-card{padding-left:0;padding-right:0}}

/* User pause also stops native anchor interpolation. */
html.motion-off{scroll-behavior:auto}

/* v09: real entry keyframes; viewport-aware guide with separate caption. */
@keyframes headline-in{from{opacity:0;transform:translateY(105%)}to{opacity:1;transform:translateY(0)}}
.npc-stage{min-height:0;overflow:visible}
.npc-viewport{position:relative;height:540px;height:clamp(220px,54svh,540px);overflow:hidden;isolation:isolate}
.npc-viewport>canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;-webkit-mask-image:linear-gradient(180deg,transparent,#000 3%,#000 94%,transparent);mask-image:linear-gradient(180deg,transparent,#000 3%,#000 94%,transparent)}
.npc-caption{position:relative;display:flex;justify-content:space-between;align-items:end;gap:18px;padding:12px 16px 0}
.npc-caption .npc-ident{position:static;min-width:0}
.npc-caption .npc-ident strong{font-size:27px;margin:3px 0}
.npc-caption .npc-ident .asset-credit{max-width:none;overflow-wrap:anywhere}
.npc-caption .npc-state{position:static;flex-shrink:0;max-width:100%;white-space:normal;line-height:1.6;background:transparent;padding:8px 0;border:0;border-radius:0}
.npc-viewport .stage-top{top:12px;left:16px;right:16px;pointer-events:none}
.npc-viewport .stage-top>span:last-child{display:none}
.npc-viewport>.touch-toggle{top:44px;bottom:auto;right:14px}
@media(max-width:900px){.npc-workbench{gap:34px}.npc-caption{flex-direction:column;align-items:start;gap:8px;padding:12px 4px 0}.npc-caption .npc-state{font-size:12px}.npc-section .section-heading{margin-bottom:28px}.npc-viewport{height:400px;height:clamp(220px,52svh,500px)}}
@media(any-pointer:coarse){.npc-viewport>canvas{touch-action:pan-y}.npc-viewport.touch-active>canvas{touch-action:none}}
.npc-viewport .webgl-error{inset:48px 12px 12px;padding:16px;overflow:auto}

/* v10: keep the model and its inputs in one phone viewport. */
.npc-workbench{display:block}
.npc-console{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(285px,1fr);gap:60px;align-items:center;scroll-margin-top:85px;min-width:0}
.npc-stage{min-width:0}
.npc-controls{min-width:0}
.npc-controls h3{font-size:29px;line-height:1.5;margin-bottom:32px}
.npc-console .npc-caption{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:14px;padding:9px 4px 0;min-width:0}
.npc-name{font-size:16px;line-height:1.5;white-space:nowrap;color:#34465f}
.npc-console .npc-state{font-size:12px;padding:0;min-width:0;flex-shrink:1;line-height:1.5}
.npc-console .npc-viewport>.touch-toggle{top:auto;bottom:9px;right:10px;min-height:36px;padding:7px 12px;font-size:11px;box-shadow:none}
.npc-notes{margin:25px 0 0;padding-top:14px}
.npc-notes>.npc-doc{max-width:none;margin-top:15px}
.npc-notes .numbered{margin:20px 0 24px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.npc-notes .asset-credit{font-size:12px;line-height:1.8;overflow-wrap:anywhere}
@media(max-width:900px){
 .npc-console{display:flex;flex-direction:column;align-items:stretch;gap:10px;height:min(600px,calc(100svh - 88px));height:min(600px,calc(var(--npc-screen-height,100svh) - var(--npc-nav-height,68px) - 20px))}
 .npc-console .npc-stage{flex:1;display:flex;flex-direction:column;min-height:0;width:100%;margin:0}
 .npc-console .npc-viewport{height:auto;min-height:0;flex:1}
 .npc-console .npc-caption{flex:none;padding-top:7px;gap:10px}
 .npc-console .npc-name{font-size:14px}
 .npc-console .npc-state{font-size:11px}
 .npc-console .stage-top{top:7px;left:8px;font-size:10px}
 .npc-controls{flex:none}
 .npc-controls h3{display:none}
 .npc-controls .angle-label{font-size:12px;gap:3px 12px;line-height:1.5}
 .npc-controls .angle-label input{height:30px;margin:0}
 .npc-controls .npc-actions{margin-top:8px;gap:10px;flex-wrap:nowrap}
 .npc-controls .npc-actions button{min-height:44px;padding:9px 12px;font-size:12px;gap:12px;line-height:1.5}
 .npc-controls .npc-meter{margin-top:10px}
 .npc-controls .npc-meter>div:first-child{font-size:11px;line-height:1.5}
 .npc-controls .npc-meter b{font-size:11px}
 .npc-controls .meter-track{margin-top:6px}
 .npc-notes{margin-top:18px}
 .npc-notes .numbered{grid-template-columns:1fr;gap:20px}
}
@media(max-width:900px) and (min-width:540px) and (max-height:500px){
 .npc-console{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px}
 .npc-console .npc-stage{height:100%}
 .npc-controls{align-self:center}
 .npc-console .npc-caption{flex-direction:column;gap:3px;align-items:start}
}

.npc-console{scroll-margin-top:calc(var(--npc-nav-height,68px) + 10px)}
