@font-face{font-family:Saira Stencil One;font-style:normal;font-weight:400;font-display:swap;src:url(../media/375d86af82fe11cb-s.32bmn-0y18xtd.woff2?dpl=dpl_7kHZ8Et9rC5qjCxBfYsFyQkHGRpm)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Saira Stencil One;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b007b65f0ca8bb95-s.2np4r1jlq-y92.woff2?dpl=dpl_7kHZ8Et9rC5qjCxBfYsFyQkHGRpm)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Saira Stencil One;font-style:normal;font-weight:400;font-display:swap;src:url(../media/790c8783728a5eb9-s.p.1hy6swxxn_yxs.woff2?dpl=dpl_7kHZ8Et9rC5qjCxBfYsFyQkHGRpm)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Saira Stencil One Fallback;src:local(Arial);ascent-override:105.63%;descent-override:40.86%;line-gap-override:0.0%;size-adjust:107.45%}.saira_stencil_one_f8114221-module__5byXsa__className{font-family:Saira Stencil One,Saira Stencil One Fallback;font-style:normal;font-weight:400}.saira_stencil_one_f8114221-module__5byXsa__variable{--font-x-cheese-display:"Saira Stencil One", "Saira Stencil One Fallback"}
@font-face{font-family:Rajdhani;font-style:normal;font-weight:400;font-display:swap;src:url(../media/906d1c14d86e79d2-s.37w9rf9gxod1y.woff2?dpl=dpl_7kHZ8Et9rC5qjCxBfYsFyQkHGRpm)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Rajdhani;font-style:normal;font-weight:400;font-display:swap;src:url(../media/dc822924a6b60314-s.0ctr8_5dz3nr_.woff2?dpl=dpl_7kHZ8Et9rC5qjCxBfYsFyQkHGRpm)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rajdhani;font-style:normal;font-weight:400;font-display:swap;src:url(../media/278cbb97e75e04e2-s.p.3frbiw4nltldc.woff2?dpl=dpl_7kHZ8Et9rC5qjCxBfYsFyQkHGRpm)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Rajdhani;font-style:normal;font-weight:500;font-display:swap;src:url(../media/e9924293c1dc5ea7-s.2-y062ayal8rj.woff2?dpl=dpl_7kHZ8Et9rC5qjCxBfYsFyQkHGRpm)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Rajdhani;font-style:normal;font-weight:500;font-display:swap;src:url(../media/10bd139a632d728f-s.0hy6nmzga_x0y.woff2?dpl=dpl_7kHZ8Et9rC5qjCxBfYsFyQkHGRpm)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rajdhani;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a079e02bba5bf7ab-s.p.3f6zc4f4lqyuc.woff2?dpl=dpl_7kHZ8Et9rC5qjCxBfYsFyQkHGRpm)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Rajdhani Fallback;src:local(Arial);ascent-override:102.12%;descent-override:37.99%;line-gap-override:0.0%;size-adjust:91.07%}.rajdhani_3e9acdcf-module__xS_ySa__className{font-family:Rajdhani,Rajdhani Fallback;font-style:normal}.rajdhani_3e9acdcf-module__xS_ySa__variable{--font-x-cheese-body:"Rajdhani", "Rajdhani Fallback"}
.page{flex-direction:column;min-height:100dvh;display:flex;position:relative}.page--lab{--lab-footer-height:60px;padding-bottom:calc(12rem + var(--lab-footer-height));scroll-padding-top:8rem}.lab-scroll{z-index:1;isolation:isolate;position:relative}.bg-cover{z-index:0;pointer-events:none;background-color:#0a0806;background-image:url(/lab3.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;position:fixed;inset:0}.beaker-table{bottom:var(--lab-footer-height,60px);z-index:10;pointer-events:none;-webkit-user-select:none;user-select:none;height:auto;position:fixed}.beaker-table--mobile{width:100vw;max-width:100%;display:block;left:50%;transform:translate(-50%)}.beaker-table--desktop{width:35vw;display:none;left:0;transform:none}@media (min-width:768px){.beaker-table--mobile{display:none}.beaker-table--desktop{display:block}}.lab-chrome{z-index:45;padding:0;padding-top:env(safe-area-inset-top);background:#0a0805;border-bottom:1px solid #d8c69429;flex-direction:column;align-items:stretch;gap:0;display:flex;position:sticky;top:0;overflow:hidden}.caution-tape{z-index:1;width:100%;height:3rem;color:inherit;cursor:pointer;margin:.4rem 0 .2rem;text-decoration:none;display:block;position:relative;overflow:visible}.caution-tape:hover .caution-tape-band,.caution-tape:focus-visible .caution-tape-band{opacity:1}.caution-tape:focus-visible{outline:none}.caution-tape:focus-visible .caution-tape-band{box-shadow:inset 0 1px #ffeca02e,inset 0 -1px #281c0840,0 0 0 2px #ffeca08c}.caution-tape-band{opacity:.88;background:repeating-linear-gradient(-45deg,#281c0838 0 .4rem,#0000 .4rem .8rem),linear-gradient(#d6ba4ab8 0%,#c4a030ad 45%,#a88424b3 100%);border-top:1px solid #ffe68c47;border-bottom:1px solid #3c2a0a73;width:110%;transition:opacity .16s;display:flex;position:absolute;top:50%;left:-4%;transform:translateY(-50%)rotate(-2deg);box-shadow:inset 0 1px #ffeca02e,inset 0 -1px #281c0840}.caution-tape-text{white-space:nowrap;font-family:var(--font-x-cheese-display), "Arial Black", sans-serif;letter-spacing:.22em;text-transform:uppercase;color:#2a1e08c7;text-shadow:0 1px #ffecaa33;margin:0;padding:.7rem 0;font-size:.85rem;font-weight:400}.lab-chrome-bar{flex-direction:column;justify-content:center;align-items:flex-end;gap:.65rem;margin-top:-15px;padding:.55rem 1rem .75rem;display:flex}.lab-chrome-brand{font-family:var(--font-x-cheese-display), "Arial Black", sans-serif;letter-spacing:.1em;text-transform:uppercase;font-size:clamp(.95rem,2.8vw,1.15rem);font-weight:400;line-height:1.2;text-decoration:none}.site-hero{text-align:center;flex-shrink:0;padding:1.75rem 1.5rem .75rem;position:relative}.site-header{padding:2rem 1.5rem 1rem;padding-top:calc(2rem + env(safe-area-inset-top));text-align:center;flex-shrink:0;position:relative}.site-tagline{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;letter-spacing:.04em;color:#f2e8c9d9;text-shadow:0 1px 6px #000000bf;margin:.75rem 0 0;font-size:clamp(.95rem,2.5vw,1.125rem);font-weight:500}.lab-kicker{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#e8d9a8bf;margin:0 0 .75rem;font-size:.85rem}.lab-kicker a{color:inherit;text-decoration:none}.lab-kicker a:hover{color:#fff6d6;text-underline-offset:.2em;text-decoration:underline}.lab-nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem .85rem;width:100%;max-width:none;margin:0;display:flex}.lab-nav-list{flex-wrap:wrap;justify-content:flex-end;gap:.45rem .75rem;margin:0;padding:0;list-style:none;display:flex}.lab-nav-list a{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#e6dcbed1;font-size:.75rem;font-weight:500;text-decoration:none}.lab-nav-list a:hover{color:#fff6d6;text-underline-offset:.2em;text-decoration:underline}.back-to-top{text-align:right;margin:1.1rem 0 0}.back-to-top a{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#e8d9a8bf;font-size:.75rem;font-weight:500;text-decoration:none}.back-to-top a:hover{color:#fff6d6;text-underline-offset:.2em;text-decoration:underline}.lab-section,.site-hero,#home,#about,#projects,#rants,#portfolio,#ai{scroll-margin-top:8.25rem}@media (min-width:768px){.lab-chrome{padding-top:env(safe-area-inset-top);flex-direction:column}.lab-chrome-bar{flex-direction:row;justify-content:flex-end;padding:.55rem 1.75rem .7rem}.caution-tape{height:3.5rem}.caution-tape-text{letter-spacing:.28em;padding:.85rem 0;font-size:1.25rem}.lab-nav{justify-content:flex-end;margin:0}.page--lab{padding-bottom:calc(14rem + var(--lab-footer-height));scroll-padding-top:7.5rem}.lab-section,.site-hero,#home,#about,#projects,#rants,#portfolio,#ai{scroll-margin-top:7.75rem}}.lab-main{box-sizing:border-box;flex-direction:column;gap:1.25rem;width:100%;max-width:72rem;margin:0 auto;padding:.5rem 1.25rem 2rem;display:flex;position:relative}.lab-main--narrow{max-width:42rem}.lab-hero-pair{flex-direction:column;gap:1rem;width:100%;display:flex}.lab-section{width:100%}.lab-section-title{font-family:var(--font-x-cheese-display), "Arial Black", sans-serif;letter-spacing:.08em;text-transform:uppercase;text-align:center;margin:0 0 .75rem;font-size:clamp(1.25rem,3.5vw,1.75rem)}.lab-section-note{text-align:center;font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;color:#e6dcbed1;text-shadow:0 1px 4px #000000a6;margin:0 0 1rem;font-size:.95rem}.lab-section-note a{color:#f2e8c9}.lab-panel{box-sizing:border-box;background:linear-gradient(160deg,#080604e6 0%,#0c0a06e6 100%);border:1px solid #d8c6942e;border-radius:1.25rem;width:100%;padding:1.25rem 1.35rem 1.4rem}.lab-panel-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.25rem;display:flex}.lab-heading{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#e8d9a8bf;margin:0 0 1rem;font-size:.8rem;font-weight:500}.lab-panel-head .lab-heading{margin-bottom:0}.lab-prose{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;color:#e6dcbee0;text-shadow:0 1px 4px #000000a6;margin:0;font-size:25px;line-height:40px}.lab-empty{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;color:#b8a56ed9;margin:0;font-size:.95rem}.lab-text-link{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;letter-spacing:.06em;color:#f2e8c9;text-underline-offset:.18em;font-size:.85rem;text-decoration:underline}.lab-text-link:hover{color:#fff6d6}.about-links{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;color:#e6dcbed1;flex-direction:column;gap:.55rem;margin:3rem 0 0;padding:0;font-size:.95rem;list-style:none;display:flex}.about-links a{color:#f2e8c9;text-underline-offset:.18em;text-decoration:underline}.projects-grid{grid-template-columns:1fr;gap:1rem;display:grid}@media (min-width:720px){.projects-grid{gap:1.25rem}}.project-list,.portfolio-list,.rant-teaser-list,.rant-index-list,.ai-service-list{flex-direction:column;gap:.85rem;margin:0;padding:0;list-style:none;display:flex}.project-list{grid-template-columns:1fr;gap:1rem;display:grid}@media (min-width:720px){.project-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}}.project-divider{border:0;border-top:1px solid #d8c69438;margin:2em 0}.project-link{color:inherit;grid-template-columns:5.5rem minmax(0,1fr);align-items:center;gap:.9rem;text-decoration:none;display:grid}a.project-link:hover .project-title{color:#fff6d6;text-underline-offset:.2em;text-decoration:underline;text-decoration-thickness:1px}a.project-link:hover .project-thumb{border-color:#f2e8c973;transform:scale(1.02)}.project-thumb{object-fit:cover;object-position:center;background:#00000059;border:1px solid #d8c69438;border-radius:.75rem;width:5.5rem;height:5.5rem;transition:border-color .16s,transform .18s;display:block}.project-thumb--placeholder{background:linear-gradient(145deg,#282012e6,#120e08f2)}.project-copy{min-width:0}.project-item-head{flex-wrap:wrap;align-items:baseline;gap:.65rem;display:flex}.project-title{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;letter-spacing:.04em;color:#f2e8c9;text-shadow:0 1px 4px #000000b3;font-size:clamp(1.05rem,3vw,1.3rem);font-weight:500}.project-status{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#b8a56ed9;font-size:.7rem;font-weight:500}.project-blurb{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;color:#e6dcbed1;text-shadow:0 1px 4px #000000a6;margin:.35rem 0 0;font-size:clamp(.9rem,2.4vw,1rem);font-weight:400;line-height:1.45}.portfolio-groups{flex-direction:column;gap:1rem;display:flex}.portfolio-item{gap:.85rem;display:grid}.portfolio-thumbs{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.portfolio-thumb-button{cursor:zoom-in;background:0 0;border:none;width:100%;padding:0;display:block}.portfolio-thumb-button:focus-visible{outline-offset:3px;border-radius:.65rem;outline:2px solid #f2e8c9bf}.portfolio-thumbs img{object-fit:cover;background:#00000059;border:1px solid #d8c69438;border-radius:.65rem;width:100%;height:5.5rem;transition:border-color .15s,opacity .15s}.portfolio-thumb-button:hover img,.portfolio-thumb-button:focus-visible img{opacity:.9;border-color:#f2e8c98c}.portfolio-lightbox-image{object-fit:contain;background:#00000073;border-radius:.7rem;width:100%;max-height:70vh;display:block}.portfolio-lightbox-count{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;letter-spacing:.06em;color:#e6dcbed1;justify-content:center;align-items:center;font-size:.75rem;font-weight:500;display:flex}.rant-teaser-list a,.rant-index-list a{color:inherit;text-decoration:none;display:block}.rant-teaser-list a:hover .rant-teaser-title,.rant-index-list a:hover .rant-teaser-title{color:#fff6d6;text-underline-offset:.2em;text-decoration:underline}.rant-teaser-title{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;color:#f2e8c9;font-size:1.15rem;font-weight:500;display:block}.rant-teaser-list time,.rant-index-list time{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#b8a56ed9;margin-top:.2rem;font-size:.75rem;display:block}.rant-teaser-list p,.rant-index-list p,.ai-service-list p{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;color:#e6dcbed1;margin:.35rem 0 0;font-size:.95rem;line-height:1.45}.ai-service-list li{border-top:1px solid #d8c6941f;padding:.75rem 0}.ai-service-list li:first-child{border-top:0;padding-top:0}.ai-service-list a{color:inherit;text-decoration:none;display:block}.ai-service-title{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;color:#f2e8c9;font-size:1.1rem;font-weight:500}.ai-service-list a:hover .ai-service-title{color:#fff6d6;text-underline-offset:.2em;text-decoration:underline}.rant-article .rant-body{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;color:#f2e8c9e6;font-size:clamp(1rem,2.4vw,1.1rem);line-height:1.65}.rant-body p{margin:0 0 1rem}.rant-body h2,.rant-body h3{color:#f2e8c9;margin:1.4rem 0 .65rem}.rant-body a{color:#fff6d6}.rant-body ul{margin:0 0 1rem;padding-left:1.25rem}.rant-back{border-top:1px solid #d8c69424;margin:1.5rem 0 0;padding-top:1rem}.rant-back a{color:#f2e8c9;font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;letter-spacing:.06em;text-decoration:none}.rant-back a:hover{text-decoration:underline}.cheese-gallery{box-sizing:border-box;background:linear-gradient(160deg,#080604e6 0%,#0c0a06e6 100%);border:1px solid #d8c6942e;border-radius:1.25rem;flex-direction:column;gap:.9rem;width:100%;padding:1.25rem 1.35rem 1.4rem;display:flex;position:relative}.cheese-gallery-stage{width:100%;position:relative}.cheese-gallery-frame{aspect-ratio:1;cursor:zoom-in;background:#00000073;border:none;border-radius:.85rem;width:100%;padding:0;display:block;position:relative;overflow:hidden}.cheese-gallery-frame:focus-visible{outline-offset:3px;outline:2px solid #f2e8c9bf}.cheese-gallery-frame:disabled{cursor:default}.cheese-gallery-slide{object-fit:cover;object-position:center;opacity:0;pointer-events:none;width:100%;height:100%;transition:opacity .7s;position:absolute;inset:0}.cheese-gallery-slide--active{opacity:1}.cheese-gallery-loader{z-index:2;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);pointer-events:none;background:#040302b8;border-radius:.85rem;flex-direction:column;justify-content:center;align-items:center;gap:.85rem;padding:1rem;display:flex;position:absolute;inset:0}.beaker-loader{width:3rem;height:3.6rem;display:block;position:relative}.beaker-loader-glass{background:#ffffff0d;border:2px solid #f2e8c9d9;border-radius:.2rem .2rem .6rem .6rem;width:2.2rem;height:2.3rem;position:absolute;bottom:0;left:50%;overflow:hidden;transform:translate(-50%)}.beaker-loader:after{content:"";background:#f2e8c9d9;border-radius:3px;width:2.7rem;height:3px;position:absolute;bottom:2.25rem;left:50%;transform:translate(-50%)}.beaker-loader-liquid{background:linear-gradient(#ffd65ae6 0%,#ce9422f2 100%);height:55%;animation:1.6s ease-in-out infinite beaker-slosh;position:absolute;bottom:0;left:0;right:0}.beaker-loader-bubble{opacity:0;border:2px solid #f2e8c9d9;border-radius:50%;width:.4rem;height:.4rem;animation:1.9s ease-in infinite beaker-bubble;position:absolute;bottom:1.5rem;left:50%}.beaker-loader-bubble:first-child{width:.3rem;height:.3rem;margin-left:-.65rem;animation-delay:0s}.beaker-loader-bubble:nth-child(2){margin-left:-.1rem;animation-delay:.65s}.beaker-loader-bubble:nth-child(3){width:.32rem;height:.32rem;margin-left:.4rem;animation-delay:1.2s}@keyframes beaker-slosh{0%,to{height:50%}50%{height:64%}}@keyframes beaker-bubble{0%{opacity:0;transform:translateY(.35rem)scale(.55)}20%{opacity:.9}to{opacity:0;transform:translateY(-1.5rem)scale(1)}}.cheese-gallery-loader-text{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#f2e8c9;text-align:center;margin:0;font-size:.82rem;font-weight:500}@media (prefers-reduced-motion:reduce){.cheese-gallery-slide{transition:none}.beaker-loader-liquid{animation:none}.beaker-loader-bubble{opacity:.7;animation:none;transform:translateY(-.5rem)}}.cheese-lightbox{z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#040302d1;place-items:center;padding:1.25rem;display:grid;position:fixed;inset:0}.cheese-lightbox-panel{background:linear-gradient(160deg,#0c0a06f7 0%,#080604fa 100%);border:1px solid #d8c69447;border-radius:1rem;flex-direction:column;gap:.85rem;width:min(100%,42rem);max-height:min(92vh,56rem);padding:1rem 1.1rem 1.15rem;display:flex;overflow:auto;box-shadow:0 24px 60px #0000008c}.cheese-lightbox-toolbar{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.cheese-lightbox-title{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#e8d9a8c7;margin:0;font-size:.78rem;font-weight:500}.cheese-lightbox-close{color:#f2e8c9;font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:#282010d9;border:1px solid #d8c69459;border-radius:.45rem;padding:.4rem .7rem;font-size:.75rem;font-weight:500}.cheese-lightbox-close:hover{color:#fff6d6;border-color:#f2e8c98c}.cheese-lightbox-image{aspect-ratio:1;object-fit:cover;object-position:center;background:#00000073;border-radius:.7rem;width:100%;display:block}.cheese-lightbox-stage{aspect-ratio:1;background:#00000073;border-radius:.7rem;width:100%;position:relative;overflow:hidden}.cheese-lightbox-stage .cheese-lightbox-image{border-radius:0;width:100%;height:100%}.cheese-lightbox-loader{border-radius:0;position:absolute;inset:0}.cheese-lightbox-prompt{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;color:#e6dcbec7;margin:0;font-size:.82rem;line-height:1.45}.cheese-lab-controls{flex-direction:column;gap:.55rem;display:flex}.cheese-lab-controls-label{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#e8d9a8b3;margin:0;font-size:.72rem;font-weight:500}.cheese-lab-cook-row{grid-template-columns:minmax(0,1fr) minmax(0,1.45fr) minmax(0,1fr);gap:.45rem;display:grid}.cheese-lab-cook-row button{color:#f2e8c9;width:100%;font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:#282010d9;border:1px solid #d8c69459;border-radius:.55rem;padding:.55rem .45rem;font-size:.72rem;font-weight:500}.cheese-lab-cook-row button:hover:not(:disabled){color:#fff6d6;border-color:#f2e8c98c}.cheese-lab-cook-row button:disabled{opacity:.55;cursor:not-allowed}.cheese-lab-status{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;color:#e6dcbed1;margin:0;font-size:.85rem}.cheese-lab-status--error{color:#e8b4a0}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (min-width:768px){.lab-main{gap:1.5rem;padding:1rem 2.5rem 3rem}.lab-hero-pair{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:stretch;gap:1.25rem;display:grid}.lab-hero-pair .lab-panel{height:100%}.lab-hero-pair .cheese-gallery{align-self:start}.cheese-gallery-frame{flex:none}.portfolio-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.project-link{grid-template-columns:7rem minmax(0,1fr);gap:1.1rem}.project-thumb{width:7rem;height:7rem}.portfolio-thumbs img{height:7rem}}@layer components{.gross-text{background:linear-gradient(#f2e8c9 0%,#e8d9a8 22%,#d9c992 45%,#c4b07a 68%,#b39f6b 85%,#8fa894 100%);color:#0000;text-shadow:0 0 4px #d8c69459,0 2px 4px #000000a6;filter:drop-shadow(0 2px 3px #0000008c);-webkit-background-clip:text;background-clip:text}.hero-title{font-family:var(--font-x-cheese-display), "Arial Black", sans-serif;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:clamp(1.75rem,5vw,2.5rem);font-weight:400;line-height:1.1}}.site-footer{z-index:11;box-sizing:border-box;height:var(--lab-footer-height,60px);padding:0 1.5rem;padding-bottom:env(safe-area-inset-bottom);text-align:center;background:#0a0806;border-top:1px solid #d8c69424;justify-content:center;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.site-footer p{font-family:var(--font-x-cheese-body), "Segoe UI", sans-serif;letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:clamp(.875rem,2.5vw,1rem);font-weight:500}.javatari-wrap{text-align:center;width:100%;margin:1.25rem 0 .75rem;overflow-x:auto}.javatari-screen{vertical-align:top;text-align:left;width:fit-content;max-width:100%;margin-inline:auto;display:inline-block}.javatari-screen #jt-screen-canvas{width:458px!important;height:450px!important}.atari-credit{margin-top:1rem}.atari-credit code{word-break:break-all;font-size:.85em}
