/* Soft white, orbital blue, and burnt orange. Solid contours, calm motion. */
:root{--bg:#e8edf2;--panel:#f3f6f9;--text:#18344e;--muted:#486078;--line:#9eafbe;--blue:#155ec0;--cyan:#125c9d;--orange:#b65324;color-scheme:light}
body{background:#e8edf2;color:var(--text)}
.space-nebula{background:radial-gradient(ellipse at 12% 16%,#609bd326,transparent 42%),radial-gradient(ellipse at 88% 70%,#dc935f17,transparent 39%)}
#particles{opacity:.4}.no-motion #particles{opacity:.25}
.space-contours{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;opacity:.32}
.space-orbit{position:absolute;width:75vw;height:75vw;max-width:1100px;max-height:1100px;left:48%;top:16%;border:1px solid #5a789b;border-radius:50%;animation:orbital-turn 110s linear infinite}
.space-orbit:before{content:"";position:absolute;width:8px;height:8px;border:1px solid #914019;background:#cc744a;border-radius:50%;top:14.3%;left:14.3%}
.space-orbit:nth-child(2){width:63vw;height:63vw;left:-38%;top:26%;border-color:#af8b72;animation-duration:150s;animation-direction:reverse}
.space-orbit:nth-child(2):before{background:#2465a8;border-color:#174c86}.space-orbit:nth-child(3){width:40vw;height:40vw;left:38%;top:68%;border-color:#7c8fa4;animation-duration:85s}
@keyframes orbital-turn{to{transform:rotate(360deg)}}
.header{background:#edf2f7ed;border-bottom:1px solid #91a6bb;box-shadow:0 2px 20px #47678208}
.monogram{color:#183e70;border-left-color:#b75a29}.monogram>span,.footer-brand span{color:var(--orange)}
.brand-copy{color:#193854}.brand-copy small,.resume-link,.desktop-nav a,.hero-eyebrow,.hero-foot>span:first-child,.hero-foot a{color:#4b6279}
.desktop-nav a.active,.desktop-nav a:hover,.about-links a:hover,.contact-socials a:hover,.demo-link:hover{color:#174ea1;background:#d7e5f5}
.quick-open,.mobile-nav{background:#eef3f8;color:#284e79;border:1px solid #8aa2bc}.quick-open kbd{color:#506880}.mobile-nav a{color:#284e79}
.gradient,.hero h1 .gradient{background-image:linear-gradient(105deg,#1259b8 0%,#1b729d 58%,#a94c23 100%)}
.section-label,.section-count,.section-label:before{color:#4a6279}.section-label:before{background:#b65b2c;box-shadow:none}.label-line,.eyebrow-rule{background:#9eafbe}
.availability{background:#e5edf5;border:1px solid #849fb9;color:#2d5577}.status-dot{background:#bb5b2a;box-shadow:0 0 0 3px #b65c2614}
.build-line{color:#405971}.build-symbol{color:var(--orange)}.hero-credentials>span,.hero-credentials small{color:#385b7b}
.button{background:#1c5eba;color:#fff;border:1px solid #154f9d;box-shadow:0 6px 20px #285eab19}.button:hover{background:#174f9e;box-shadow:0 8px 25px #285eab26}
.button-secondary{background:#f2f5f8;color:#274e75;border-color:#8a9fb3}.button-secondary:hover{background:#e0e9f3;border-color:#517aab}.case-button{background:#b45426;border:1px solid #943b18;color:#fff}.case-button:hover{background:#943f1c}
.intro-replay{display:inline-flex;gap:9px;align-items:center;margin-top:18px;color:#655040;background:transparent;padding:5px 0;border-bottom:1px solid #ae8265;font-size:12px}.intro-replay span{color:#a94c23;font-size:17px}.intro-replay:hover{color:#9d421e}
.vision-lab{background:#173450;border:1px solid #648db5;box-shadow:0 18px 65px #33577824;color:#e7eef6}.vision-lab:hover{box-shadow:0 20px 65px #33577832}.lab-top{color:#c4d8ed;border-bottom-color:#6d8baa}.lab-version{color:#c8a17f}.lab-window-dots i{background:#d19a72}.lab-preview{background:#112c46}.lab-preview:after,.lab-crosshair{display:none}.lab-grid{opacity:.25}
.lab-controls{border-top:1px solid #6485a4}.lab-controls button{color:#c7d9ee;border:1px solid #6384a3;background:#163652}.lab-controls button.active{color:#fff;border-color:#dea778;background:#3f4850}.lab-controls button:hover{background:#2e506f}.lab-note{border-color:#6384a3}.lab-note p{color:#d4dfec}.lab-bottom{color:#c3d1e1;border-color:#6384a3}.lab-bottom a{color:#f1bd95}
#lab-art{height:100%;padding:15px 16px;position:relative}.lab-top .lab-live{display:flex;align-items:center;gap:6px}.lab-live i{width:7px;height:7px;background:#dd9f71;border:1px solid #f2c39f;border-radius:50%}.lab-preview .project-photo{object-fit:contain;max-height:100%;border:1px solid #7897b4;border-radius:8px;background:#dce7f2}
.lab-sweep{position:absolute;inset:15px 16px;border:1px solid #d9ae8533;border-radius:8px;overflow:hidden;pointer-events:none}.lab-sweep:after{content:"";position:absolute;left:0;right:0;height:2px;background:#f0b98b;box-shadow:0 0 16px #b8643636;animation:lab-sweep 8s ease-in-out infinite;opacity:.55}.lab-sweep:before{content:"";position:absolute;inset:0;background:linear-gradient(transparent 92%,#dea47308 100%)}
@keyframes lab-sweep{0%,100%{top:4%}50%{top:96%}}
.stack-ribbon{background:#eef3f8;border:1px solid #9eafbe;color:#3c5c7b}.stack-label{color:#965431}.stack-ribbon a,.text-link,.about-links,.contact-socials{color:#245c99}.text-link span{color:#b65324}
.identity-card,.skill-card,.benchmark-lab,.github-more{background:#f0f4f8;border:1px solid #8fa5bb;box-shadow:0 10px 35px #33577808}.identity-top .code-label,.code-label{color:#54718d}.identity-card:before{opacity:.3}.identity-avatar{background-image:linear-gradient(120deg,#164b8d,#b75e32);text-shadow:none}.identity-caption,.profile-lines strong{color:#284c6e}.identity-caption small,.profile-lines span,.about-stats small,.about-stats strong span{color:#526f8b}.about-stats strong{color:#174f91}
.project-deck{border-top:1px solid var(--line);padding-top:24px}.project-kicker,.deck-hint{color:#74513e}.deck-stage:before{background:radial-gradient(ellipse,#6186b624,transparent 65%)}
.deck-card{background:#eff4f9;border:1px solid #7c99b6;box-shadow:0 16px 35px #32537620}.deck-card[data-position=center]{border:1.5px solid #b96336;box-shadow:0 20px 55px #3253762b}.deck-card[data-position=left],.deck-card[data-position=right]{opacity:.65}.deck-card[data-position=left]:hover,.deck-card[data-position=right]:hover{border-color:#2b6ab0;opacity:.95}
.deck-card-top{color:#395c7f;border-color:#9eafbe}.deck-card-top>span:last-child{color:#a94c23}.deck-art{padding:0;background:#dce7f1;border-color:#9eafbe}.deck-card-copy>.project-kicker{color:#72503b}.deck-card-copy>strong{color:#163e64}.deck-description,.deck-tags,.deck-visual-note{color:#476681}.deck-visual-note{font-size:10px}.deck-arrow{background:#eff4f9;color:#1c5795;border:1px solid #7f9bb8}.deck-arrow:hover{background:#dce9f6;border-color:#9c4d26}#deck-status{color:#385a79}
.featured-shell{background:#f2f5f8;border:1px solid #819bb5;box-shadow:0 16px 40px #33577812}.featured-tabs{background:#e4edf5;border-color:#9eafbe}.featured-tabs button{color:#536d86;border-color:#9eafbe}.featured-tabs button span{color:#496580}.featured-tabs button[aria-selected=true]{background:#f6eee7;color:#9b421c}.featured-tabs button[aria-selected=true] span{color:#24486b}.featured-tabs button[aria-selected=true]:after{background:linear-gradient(90deg,#1962b8,#b96031)}
.feature-art{background:#dce7f1;padding:49px 20px 45px;border-color:#8fa6bc}.feature-art .project-photo{height:100%;max-height:340px;object-fit:contain;border:1px solid #8da4ba;border-radius:8px;background:#eaf0f5}.visual-caption,.visual-footer{color:#3d5e7d}.visual-caption:before{background:#b86030}.visual-footer{font-size:9px;letter-spacing:0}.visual-footer a{text-decoration:underline;text-underline-offset:3px}.feature-metrics strong{color:#174e83}.feature-metrics small{color:#4b6884}.demo-link,.repository-link{color:#195b9f}
.project-card{background:#f3f6f9;border:1px solid #8da4bb;box-shadow:0 5px 25px #33577808}.project-card:hover{border-color:#b26036;box-shadow:0 12px 30px #33577819}.card-art{background:#dfe8f1;border-color:#8da4bb;padding:34px 12px 12px}.card-art .project-photo{height:100%;width:100%;object-fit:contain;border:1px solid #8da4bb;border-radius:7px;background:#eaf0f5}.card-art .visual-caption{font-size:8px;color:#3d5e7d}.card-content .project-kicker{color:#855131}.card-bottom span,.card-bottom button{color:#3d6790}.card-bottom button:hover{color:#ac4f23}.card-bottom .save-project[aria-pressed=true]{color:#a54d20}
.project-grid{grid-template-columns:repeat(3,1fr)}.project-card{display:flex;flex-direction:column;min-height:0}.card-art{display:block;height:220px;min-height:220px;border-right:0;border-bottom:1px solid #8da4bb}.card-content{flex:1;display:flex;flex-direction:column}.card-content .card-bottom{margin-top:auto;padding-top:18px}.card-content .tags{margin-bottom:22px}
.tags span,.skill-tag{background:#e5edf5;border:1px solid #8da4bb;color:#355b80}.skill-tag:hover{background:#d8e7f6;color:#164f8c}.skill-icon{color:#a34f29}.card-index{color:#54718d}.skill-card:after{color:#627c94}
.project-search{background:#f3f6f9;border:1px solid #8da4bb;color:#315879}.project-search input,.quick-search-label input{color:#244e76;background:transparent}.project-search input::placeholder,.quick-search-label input::placeholder{color:#5e7893}.projects-toolbar h3 span{color:#486b8c}.toolbar-hint,.collection-footnote{color:#57718a}.filters button{color:#456582;border:1px solid #9eafbe;background:#ecf2f7}.filters button.active{background:#d7e6f6;color:#184e8b;border-color:#5d87b4}.saved-controls button{color:#335d87}.saved-controls button[aria-pressed=true]{color:#9d4a23}.repo-shelf a{background:#e8f0f7;border:1px solid #8da4bb}.repo-shelf a:hover{border-color:#b26036}.repo-shelf a>span{color:#76523f}.repo-shelf strong{color:#234b74}.github-more summary>span{color:#456988}
.saved-controls #saved-count{background:#d5e3f1;color:#275986;border:1px solid #9cb0c3}#project-empty{border:1px solid #8da4bb;color:#486986;background:#f0f5fa}#project-empty button{color:#1b5c9e}.project-search>span:first-child{color:#416e9c}.lab-note .status-dot{background:#d5996c;box-shadow:none}.lab-window-dots i:first-child{background:#daa477}
.metric-label,.benchmark-row>div:first-child,.benchmark-axis,.benchmark-source,.benchmark-details{color:#3d6388}.metric-label select{color:#214f7a;background:#e6eff7;border:1px solid #7e9cb8}.bar-track{background:#d1dce8;border:1px solid #9eafbe}.bar-baseline{background:#7995b4}.bar-proposed{background:linear-gradient(90deg,#2469ba,#ba673c)}.benchmark-row strong{color:#174f8d}#benchmark-insight{color:#466581}
.timeline{border-left:1px solid #7893ac}.timeline-date,.role-label{color:#4a6b88}.timeline-item:before{background:#d08a5f;border:1px solid #9a4d27;box-shadow:none}.scholarship-note>span{color:#b05325}.scholarship-note small{color:#4f6e8c}
.contact-section{background:linear-gradient(135deg,#cfddec40,#ece6df3b)}.contact-section p strong{color:#264e73}.contact-orbit{border:1px solid #8fa7bd66;background:none;animation:contact-rotation 130s linear infinite}.contact-orbit:before,.contact-orbit:after{border:1px solid #b1958066}.contact-orbit:before{background:radial-gradient(circle at 15% 15%,#ac5d32 0 3px,transparent 4px)}.contact-orbit:after{background:radial-gradient(circle at 85% 15%,#306aaf 0 3px,transparent 4px)}
@keyframes contact-rotation{from{transform:translateX(-50%) rotate(0)}to{transform:translateX(-50%) rotate(360deg)}}
.email-address{color:#315e88}.footer,.footer a:last-child{color:#4c6b86}.footer-brand{color:#1b518a}.section-dots a{background:#8095aa;border:1px solid #71859a}.section-dots a.active{background:#b86031;box-shadow:none}.section-dots a span{color:#426485}.motion-toggle{background:#eff4f9ee;color:#2b567e;border:1px solid #8da4bb}.toast{background:#173858;color:#edf4fc;border:1px solid #91b2cf}.skip-link{background:#173858;color:#fff}
dialog{background:#f1f5f9;color:#18344e;border:1px solid #7d9bb7;box-shadow:0 30px 100px #24466450}dialog::backdrop{background:#1a365979;backdrop-filter:blur(8px)}.dialog-close{background:#e7eff7;color:#25537f;border:1px solid #8da4bb}.dialog-body p,.dialog-body li{color:#48647e}.dialog-note{background:#e5edf5;border:1px solid #8da4bb}.dialog-table{color:#325774}.dialog-table th,.dialog-table tr:last-child td{color:#235580}.quick-header h2,.quick-result,.recruiter-facts strong,.recruiter-projects button{color:#274e73}.quick-result:hover{background:#dfebf5}.quick-result small,.quick-footer,.recruiter-facts small,.recruiter-projects span{color:#526e88}.command-symbol{color:#a85128}.quick-result>span:last-child{color:#a85128}.recruiter-facts>div,.recruiter-projects button{background:#e6edf5;border:1px solid #8da4bb}
.project-photo{width:100%;height:100%;display:block;object-fit:contain}.media-placeholder{height:100%;display:grid;place-items:center;color:#3d6185;padding:20px;font-size:14px;text-align:center;border:1px solid #8da4bb;background:#e7eff7}
.recorded-visual{height:100%;width:100%;min-height:145px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;text-align:center;overflow:hidden;padding:20px;color:#245782}.recorded-label{font:9px Consolas,monospace;letter-spacing:1.2px;position:relative}.recorded-visual>strong{font-size:clamp(38px,5vw,62px);font-weight:700;letter-spacing:-2px;line-height:1.15;display:block;margin:15px 0 12px;color:#195890;position:relative}.recorded-visual>strong>small{font-size:11px;letter-spacing:0;display:block;color:#775840;margin-top:5px}.recorded-metrics{display:flex;gap:35px;position:relative}.recorded-metrics>span{font-size:20px;font-weight:700;color:#875332}.recorded-metrics small{display:block;font-size:9px;font-weight:400;color:#466b8b}.recorded-note{font-size:10px;line-height:1.7;margin-top:13px;position:relative;color:#52718d}.result-orbit{position:absolute;left:50%;top:50%;width:270px;height:270px;transform:translate(-50%,-50%);border:1px solid #7a9dbc60;border-radius:50%}.result-orbit i{position:absolute;inset:16px;border:1px solid #a8856c66;border-radius:50%;animation:orbital-turn 55s linear infinite}.result-orbit i:after{content:"";width:5px;height:5px;border:1px solid #945331;background:#c07a50;border-radius:50%;position:absolute;top:13%;left:13%}.result-orbit i:nth-child(2){inset:32px;border-color:#7795b466;animation-duration:75s;animation-direction:reverse}.result-orbit i:nth-child(3){inset:48px;border-color:#9ea9b7;animation-duration:90s}.deck-art .recorded-visual{padding:12px}.deck-art .recorded-visual>strong{font-size:45px;margin:7px 0}.deck-art .recorded-metrics>span{font-size:16px}.deck-art .recorded-note{font-size:9px;margin-top:7px}.deck-art .result-orbit{width:235px;height:235px}.card-art .recorded-visual{padding:0}.card-art .recorded-visual>strong{font-size:38px;margin:6px 0}.card-art .recorded-note{font-size:9px;margin-top:5px}.card-art .recorded-metrics>span{font-size:16px}.card-art .recorded-label{font-size:8px}.card-art .result-orbit{width:210px;height:210px}
.project-evidence{padding:26px 0 24px;border-block:1px solid #9eafbe;margin:5px 0 35px}.evidence-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px}.evidence-heading h3{font-size:30px;letter-spacing:-1px;margin:8px 0 13px;line-height:1.2}.evidence-heading p{font-size:14px;line-height:1.8;margin:0;max-width:700px}.evidence-count{font:10px Consolas,monospace;color:#865736;white-space:nowrap;margin-top:10px}.evidence-gallery{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 4px 18px;scrollbar-width:thin;scrollbar-color:#7999b7 #d6e1eb;overscroll-behavior-x:contain}.evidence-card{flex:0 0 310px;border:1px solid #87a2bc;border-radius:12px;background:#f0f5fa;overflow:hidden;scroll-snap-align:start;text-align:left;padding:0;transition:transform .3s,border-color .3s;min-height:280px}.evidence-card:hover{transform:translateY(-3px);border-color:#b3663d}.evidence-image{height:215px;display:block;background:#dce7f1;border-bottom:1px solid #9eafbe;padding:10px}.evidence-image .project-photo{object-fit:contain}.evidence-copy{display:block;padding:15px 18px}.evidence-copy>span{font-size:9px;color:#76513b;display:block;margin-bottom:7px;letter-spacing:.3px}.evidence-copy strong{font-size:17px;color:#245178;display:flex;justify-content:space-between;gap:12px}.evidence-copy i{font-style:normal;color:#9f4d25}.evidence-footnote{font-size:12px;line-height:1.8;margin:16px 0 0;color:#55738f}
.media-dialog{width:min(1000px,calc(100vw - 24px));padding:25px 28px 24px}.media-header{position:relative;padding-right:40px}.media-header .dialog-close{position:absolute;top:-8px;right:-10px;float:none;margin:0}.media-header h2{font-size:28px;letter-spacing:-1px;margin:10px 0 18px}#media-content{height:min(56svh,550px);border:1px solid #8da4bb;border-radius:8px;background:#dce7f1;padding:12px}#media-content .project-photo{object-fit:contain}#media-caption{font-size:13px;line-height:1.7;margin:16px 0;color:#456884}.media-controls{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.media-controls .deck-arrow{width:40px;height:40px}#media-position{font:12px Consolas,monospace;color:#4d7091}.media-controls .demo-link{margin-left:auto}
.dialog-media{margin:25px 0 0;border:1px solid #8da4bb;border-radius:10px;overflow:hidden;background:#dce7f1}.dialog-media img{display:block;width:100%;max-height:430px;object-fit:contain;padding:12px}.dialog-media figcaption{font-size:12px;padding:12px 16px;border-top:1px solid #8da4bb;color:#456783}.dialog-media a{color:#175b9e;text-decoration:underline}
/* A brief, skippable detection sequence. The source photos remain real. */
.detection-intro{width:100vw;max-width:none;height:100svh;max-height:none;margin:0;border:0;border-radius:0;background:#e7edf4;overflow:hidden;color:#234766;box-shadow:none;padding:clamp(22px,4vw,60px);flex-direction:column;justify-content:center}
.detection-intro[open]{display:flex}.detection-intro::backdrop{background:#e7edf4;backdrop-filter:none}.intro-top{display:flex;justify-content:space-between;align-items:center;gap:20px;position:relative;z-index:2}.intro-mark{font-size:24px;font-weight:800;color:#1a5d9f;letter-spacing:-1px}.intro-mark span{color:#ae592e}.intro-skip{border:1px solid #7796b4;background:#f0f4f8;border-radius:99px;color:#345f86;padding:10px 18px;min-height:44px;font-size:13px}.intro-title{font-size:clamp(28px,4vw,52px);letter-spacing:-1.8px;margin:30px 0 8px;position:relative;z-index:2}.intro-title span{color:#a65129}.intro-subtitle{font-size:14px;color:#52718c;margin-bottom:22px}.intro-scene{height:min(44vh,410px);min-height:160px;position:relative;border:1px solid #7e9bb6;border-radius:14px;background:#dbe5ef;overflow:hidden}.intro-scene canvas{display:block;width:100%;height:100%}.intro-scene-label{position:absolute;left:15px;bottom:12px;background:#eaf1f7ed;border:1px solid #9bb0c3;padding:5px 10px;border-radius:4px;font:10px Consolas,monospace;color:#395e7c}.intro-progress{height:3px;background:#b1c3d5;margin-top:20px;border-radius:3px;overflow:hidden}.intro-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#2163aa,#bb6538)}.intro-footer{display:flex;justify-content:space-between;gap:16px;font:11px Consolas,monospace;color:#50728e;margin-top:14px}.intro-footer span:last-child{color:#96512e}
/* Portfolio assistant — the page's grounded, conversational guide. */
.assistant-launch{position:fixed;right:22px;bottom:22px;z-index:60;display:flex;align-items:center;gap:12px;border:1px solid #7799bb;border-radius:99px;background:#173e66;color:#f3f7fc;padding:12px 19px;box-shadow:0 8px 28px #24496e26;font-size:13px;min-height:50px;transition:transform .25s,box-shadow .25s}.assistant-launch:hover{transform:scale(1.04);box-shadow:0 10px 32px #24496e38}.assistant-launch>span:first-child{display:grid;place-items:center;width:27px;height:27px;border:1px solid #d99a6e;border-radius:50%;color:#ffc697;font-size:17px}.assistant-launch>i{width:6px;height:6px;border-radius:50%;border:1px solid #f5b98b;background:#dc9c6d}
.assistant-panel{position:fixed;right:22px;bottom:85px;width:min(415px,calc(100vw - 30px));height:min(610px,calc(100svh - 120px));z-index:65;display:flex;flex-direction:column;border:1px solid #7293b4;border-radius:20px;background:#eff4f9;box-shadow:0 20px 65px #1d466e38;overflow:hidden}.assistant-panel[hidden]{display:none}.assistant-header{display:flex;align-items:center;gap:12px;padding:18px 18px 16px;border-bottom:1px solid #8da4bb;background:#173e66;color:#eef5fc}.assistant-emblem{width:34px;height:34px;border:1px solid #d8996c;border-radius:8px;display:grid;place-items:center;color:#f6bd94;font-size:20px}.assistant-header h2{font-size:17px;letter-spacing:-.4px;margin:0 0 2px}.assistant-header p{font-size:11px;color:#c6d9ee;margin:0}.assistant-close{margin-left:auto;background:#254e76;border:1px solid #6d90b3;border-radius:50%;color:#eff5fc;width:34px;height:34px;flex-shrink:0;font-size:24px;line-height:1}.assistant-thread{flex:1;overflow-y:auto;padding:20px 16px 12px;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#8da4bb transparent}.chat-message{margin:0 0 16px;max-width:95%}.chat-message>small{display:block;margin:0 0 5px;font-size:10px;font-weight:700;color:#6c563f;letter-spacing:.4px}.chat-bubble{background:#f8fafc;border:1px solid #a5b6c8;border-radius:2px 13px 13px;padding:13px 14px;font-size:13px;line-height:1.75;white-space:pre-line;color:#2d506f;overflow-wrap:anywhere}.chat-message.user{margin-left:auto}.chat-message.user>small{text-align:right;color:#466787}.chat-message.user .chat-bubble{background:#dce9f6;border-color:#88a7c6;border-radius:13px 2px 13px 13px;color:#284e73}.chat-links{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.chat-links a,.chat-links button{display:inline-flex;align-items:center;font-size:11px;color:#245c96;border:1px solid #8ca8c3;border-radius:6px;background:#e8f0f7;padding:5px 9px;min-height:32px;white-space:normal;line-height:1.4}.chat-links a:hover,.chat-links button:hover{background:#d8e8f7;border-color:#aa633c}.chat-suggestions{display:flex;flex-wrap:wrap;gap:6px;padding:0 16px 12px}.chat-suggestions button{font-size:11px;border:1px solid #b09179;background:#f3ede7;color:#805134;padding:6px 9px;border-radius:99px;min-height:32px}.chat-form{display:flex;gap:8px;padding:12px 14px;border-top:1px solid #8da4bb;background:#e5eef7}.chat-form input{flex:1;min-width:0;background:#f3f7fb;color:#234e76;border:1px solid #8da4bb;border-radius:9px;padding:11px 12px;font-size:13px;outline-offset:3px}.chat-form input::placeholder{color:#5a7691}.chat-form button{background:#a9532b;color:#fff;border:1px solid #91431f;border-radius:9px;padding:8px 13px;min-height:44px;font-size:18px}.assistant-foot{display:flex;justify-content:space-between;align-items:center;padding:7px 15px 10px;background:#e5eef7;color:#526e87;font-size:10px}.chat-reset{background:transparent;color:#3c6387;text-decoration:underline;font-size:10px;padding:4px}.assistant-foot span{font-size:10px}.assistant-panel :focus-visible{outline:2px solid #145fbc;outline-offset:3px}.assistant-header :focus-visible{outline-color:#ffc394}
@media(max-width:820px){.header{top:0;width:100%;border-radius:0}.space-orbit{width:125vw;height:125vw;left:20%}.feature-art .project-photo{max-height:280px}.deck-visual-note{font-size:9px}}
@media(max-width:1100px){.project-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.project-grid{grid-template-columns:1fr}}
@media(max-width:680px){.vision-lab .lab-top{font-size:9px}.lab-preview{height:300px}.intro-title{margin-top:24px;font-size:34px}.intro-scene{height:42vh;max-height:340px}.intro-footer{font-size:9px}.intro-subtitle{font-size:12px}.intro-top{gap:8px}.intro-mark{font-size:22px}.intro-skip{font-size:12px;padding:9px 14px}.intro-replay{font-size:11px}.assistant-launch{right:12px;bottom:12px;padding:9px 13px;gap:8px;font-size:12px}.assistant-panel{right:12px;bottom:75px;width:calc(100vw - 24px);height:min(600px,calc(100svh - 95px))}.assistant-thread{padding-top:16px}.assistant-header{padding:14px}.assistant-foot span{font-size:9px}.dialog-media figcaption{font-size:11px}.visual-footer{font-size:8px}.motion-toggle{bottom:17px}.section-label{line-height:1.7}.email-address{overflow-wrap:anywhere}.lab-bottom{font-size:7px}.card-art{height:220px;padding-top:36px}}
@media(max-width:680px){.evidence-heading{flex-direction:column;gap:4px}.evidence-heading h3{font-size:26px}.evidence-heading p{font-size:13px}.evidence-count{font-size:9px}.evidence-card{flex-basis:270px}.evidence-image{height:205px}.evidence-copy strong{font-size:16px}.evidence-footnote{font-size:11px}.media-dialog{padding:23px 18px}.media-controls{gap:10px}.media-controls .demo-link{font-size:11px}.media-header h2{font-size:25px}.intro-mark{font-size:17px}.recorded-visual>strong{font-size:53px}}
@media(prefers-reduced-motion:reduce){.space-orbit,.contact-orbit,.result-orbit i,.lab-sweep:after{animation:none}.lab-sweep{display:none}.assistant-launch:hover{transform:none}}
.no-motion .lab-sweep{display:none}.tab-hidden *, .tab-hidden *:before,.tab-hidden *:after{animation-play-state:paused!important}
