@font-face{font-family:Manrope;src:url('/manrope.ttf') format('truetype');font-weight:400;font-display:swap}
:root{--bg:#f5f1eb;--ink:#342d29;--muted:#695d53;--brown:#80614c;--gold:#c7af86;--accent:#0b1a2f;--navy:#071529;--surface:#e9e0d4;--line:#d7cbbd;--white:#fff;--font:Manrope,Arial,sans-serif;--serif:Georgia,'Times New Roman',serif;--ease:cubic-bezier(.2,.75,.25,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 var(--font);-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button{cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--brown);outline-offset:5px}button:disabled{cursor:wait;opacity:.5}[hidden]{display:none!important}::selection{background:#d8c3a6}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400;line-height:1.13;letter-spacing:-.045em}h2{font-size:clamp(37px,4.1vw,60px);text-wrap:balance}h3{font-size:25px;letter-spacing:-.025em}.section-shell{width:100%;max-width:1424px;padding-inline:72px;margin-inline:auto}.section-block{padding-block:104px}.serif-word{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.045em;color:var(--brown)}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:20px;z-index:80;background:var(--navy);color:var(--bg);padding:12px 20px;border-radius:10px}.skip-link:focus{top:20px}.button{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:54px;padding:14px 26px;border:0;border-radius:100px;font-size:15px;font-weight:600;transition:background .25s,color .25s,box-shadow .25s}.button.primary{background:var(--accent);color:var(--bg)}.button.primary:hover{background:#25354b;box-shadow:0 6px 18px #09182e12}.button:active{box-shadow:inset 0 0 0 2px var(--gold)}.text-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:8px 0;background:none;border:0;border-bottom:1px solid #b6a28e;font-size:15px}.text-link:hover{color:var(--brown)}.arrow-icon{width:23px;height:23px;flex-shrink:0}
.header{display:flex;align-items:center;justify-content:space-between;gap:32px;max-width:1424px;height:106px;padding-inline:72px;margin:auto;position:relative;z-index:10}.wordmark{font-size:31px;font-weight:800;line-height:1;letter-spacing:-1.7px}.brand-dot{color:var(--brown)}.desktop-nav{display:flex;align-items:center;gap:30px;font-size:14px}.desktop-nav a{padding-block:12px;position:relative}.desktop-nav a:after{content:'';position:absolute;bottom:7px;left:0;width:100%;height:1px;background:var(--brown);transform:scaleX(0);transform-origin:left;transition:transform .25s}.desktop-nav a:hover:after{transform:scaleX(1)}.header-contact{font-size:14px;min-height:44px;padding:9px 19px;border:1px solid #c6b29d;border-radius:100px}.header-contact:hover{background:var(--surface)}.menu-toggle{display:none}.mobile-nav{position:absolute;z-index:11;width:100%;background:var(--bg);border-bottom:1px solid var(--line);padding:16px 24px 26px}.mobile-nav a{display:block;padding:10px 0;font-size:24px}
.hero{display:grid;grid-template-columns:minmax(0,1.14fr) minmax(0,1fr);gap:48px;align-items:center;min-height:690px;padding-block:38px 80px}.hero-copy{min-width:0}.hero h1{font-size:clamp(80px,8.3vw,116px);line-height:1.03;letter-spacing:-.064em}.hero h1 .serif-word{font-size:1.075em;letter-spacing:-.075em}.hero-description{font-size:clamp(23px,2.2vw,30px);line-height:1.48;letter-spacing:-.025em;margin-top:30px}.hero-personal{font-size:17px;line-height:1.8;color:var(--muted);max-width:365px;margin-top:20px}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:31px}.hero-art{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;align-self:stretch;padding-top:10px}.hero-orb-button{position:relative;display:block;width:100%;max-width:460px;aspect-ratio:1;background:none;border:0;padding:0;border-radius:50%;touch-action:manipulation}.live-orb{display:block;aspect-ratio:1;max-width:100%}.orb-image{width:100%;height:100%;filter:drop-shadow(0 22px 27px #3f2d181b);transition:filter .3s}.hero-orb-button:hover .orb-image{filter:drop-shadow(0 22px 27px #3f2d1829)}.agent-invite{background:none;border:0;border-bottom:1px solid #cbb69f;padding:12px 0;min-height:44px;font-size:14px;text-align:center;color:var(--brown)}.agent-invite:hover{color:var(--ink);border-color:var(--ink)}.orb-caption{font-size:12px;line-height:1.6;color:var(--muted);margin-top:8px;text-align:center}.hero-copy{animation:heroArrival .7s var(--ease)}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:44px}.section-description{max-width:320px;color:var(--muted);font-size:16px;line-height:1.8;padding-bottom:5px}.experience{background:var(--navy);color:var(--bg);padding-block:95px 75px}.experience .serif-word{color:var(--gold)}.about-intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-bottom:58px}.about-intro>p{font-size:18px;line-height:1.8;color:#c5c4c1;max-width:540px}.experience-list{display:grid;grid-template-columns:1fr 1fr;gap:35px 48px}.experience-card{min-width:0;scroll-margin-top:40px}.experience-card.primary-role{border-top:1px solid #c7af863b;padding-top:30px}.role-brand{display:flex;align-items:center;max-width:100%;height:79px;margin-bottom:25px;padding:0;background:transparent}.role-brand img{display:block;width:240px;max-width:100%;height:76px;object-fit:contain;object-position:left}.role-brand img:not(.digital-logo){width:270px;filter:brightness(0) invert(1);opacity:.94}.role-place{font-size:14px;color:#b7b8ba}.experience-card h3{font-size:34px;line-height:1.2;margin-bottom:17px;max-width:450px}.experience-card p{font-size:16px;line-height:1.85;color:#c5c4c1;max-width:530px}.teaching-media{position:relative;display:block;aspect-ratio:16/9;margin-top:28px;border-radius:16px;overflow:hidden;background:#15253b;border:1px solid #c7af8635}.teaching-media video{display:block;width:100%;height:100%;object-fit:cover}.teaching-caption{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:11px;font-size:12px;color:#b7b8ba}.research-role{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:48px;border-top:1px solid #c7af863b;padding-top:30px;margin-top:3px}.research-role h3{font-size:23px;line-height:1.45;max-width:350px}.research-role p{font-size:15px}.research-role .role-place{display:block;margin-top:8px}.experience-bridge{display:flex;align-items:center;justify-content:space-between;gap:55px;border-top:1px solid #c7af863b;padding-top:35px;margin-top:42px}.experience-bridge p{font-size:28px;line-height:1.5;letter-spacing:-.03em;max-width:720px}.experience-bridge .text-link{color:var(--gold);border-color:#c7af8677;font-size:13px;white-space:nowrap;flex-shrink:0}
.projects{padding-block:106px 104px}.case-filters{display:flex;gap:11px;flex-wrap:wrap;margin-bottom:30px}.filter{flex:0 0 auto;min-height:44px;font-size:14px;line-height:1.5;white-space:nowrap;background:transparent;border:1px solid #cbbba9;border-radius:100px;padding:10px 19px;transition:background .25s,color .25s,border-color .25s}.filter:hover{background:#e8dfd3}.filter.active{background:var(--ink);border-color:var(--ink);color:var(--bg)}.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px 32px}.case-card{display:flex;flex-direction:column;min-width:0;border-bottom:1px solid var(--line)}.case-visual{height:320px;position:relative;overflow:hidden;display:grid;place-items:center;flex-shrink:0;border-radius:18px}.case-copy{padding:27px 0 25px;display:flex;flex-direction:column;flex:1;min-width:0}.case-kind{font-size:12px;line-height:1.5;color:var(--muted);display:block}.case-copy h3{font-size:29px;line-height:1.27;margin-top:12px;letter-spacing:-.025em}.case-copy>p{font-size:16px;line-height:1.8;color:var(--muted);margin-top:15px;max-width:470px}.case-card-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:26px;font-size:14px;color:var(--brown)}.case-card-foot .arrow-icon{transition:transform .25s}.case-card:hover .arrow-icon{transform:translateX(4px)}.case-card.featured{grid-column:1/-1;display:grid;grid-template-columns:1.12fr 1fr;gap:48px;align-items:center;padding-bottom:32px}.featured .case-visual{height:410px}.featured .case-copy{padding:12px 0}.featured h3{font-family:var(--serif);font-style:italic;font-size:46px;line-height:1.17;letter-spacing:-.045em;max-width:440px;color:var(--brown)}.featured .case-copy>p{font-size:18px}.visual-content{background:#132239;padding:38px 28px}.content-workflow{display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:center;width:min(440px,100%)}.content-brief{background:#f7f1e6;border:1px solid #fff9;border-radius:12px;padding:22px;box-shadow:0 22px 42px #0003;transform:rotate(-6deg);transition:transform .5s var(--ease)}.window-label{display:block;font-size:13px;color:#786c5e;margin-bottom:24px}.content-brief strong{font-size:23px;font-weight:600;line-height:1.25;letter-spacing:-.035em}.content-brief p{font-size:13px;color:#786c5e;margin-top:14px;line-height:1.6}.brief-line{height:5px;background:#ded3c3;border-radius:5px;margin-top:16px}.brief-line.short{width:65%;margin-top:8px}.brief-chips{display:flex;gap:8px;margin-top:23px}.brief-chips span{width:22px;height:22px;border-radius:50%;background:#152a45}.brief-chips span:nth-child(2){background:#80614c}.brief-chips span:nth-child(3){background:#c7af86}.content-result{display:flex;flex-direction:column;background:linear-gradient(145deg,#b8a181,#e6d8bc);color:#342d29;border:1px solid #cbbba1;border-radius:13px;padding:17px 20px;min-height:278px;transform:rotate(6deg);box-shadow:0 22px 42px #0003;transition:transform .5s var(--ease)}.case-card:hover .content-result{transform:rotate(3deg)}.case-card:hover .content-brief{transform:rotate(-3deg)}.story-progress{display:flex;gap:4px;margin-bottom:34px}.story-progress i{height:2px;flex:1;background:#342d2950}.story-progress i:first-child{background:#342d29}.content-result>span{font-size:13px}.content-result strong{font-family:var(--serif);font-style:italic;font-size:36px;font-weight:400;line-height:1.1;letter-spacing:-.04em;margin-top:15px}.story-link{margin-top:auto;border:1px solid #342d2970;border-radius:20px;font-size:12px;padding:6px 10px;align-self:flex-start}.visual-knowledge{background:#d5dddf;padding:34px 26px}.mini-window{width:min(365px,100%);background:#faf8f3;border:1px solid #bec8ca;border-radius:13px;padding:24px;box-shadow:0 14px 32px #1a304516;transition:transform .4s var(--ease)}.case-card:hover .mini-window{transform:translateY(-3px)}.mini-window-top{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#706c62}.mini-window-top svg{width:21px;height:21px}.mini-query{background:#e9e7df;border-radius:8px;padding:12px 15px;font-size:14px;margin-top:20px}.mini-answer{font-size:17px;line-height:1.6;margin-top:20px;color:#172b43}.mini-source{font-size:12px;color:#80614c;border-top:1px solid #d9d7ce;padding-top:16px;margin-top:20px}.visual-documents{background:#d4c4ad;padding:34px 26px}.document-window{width:min(400px,100%);background:#faf7f0;border:1px solid #c3ad90;border-radius:13px;padding:24px;box-shadow:0 14px 30px #4c382216;transition:transform .4s var(--ease)}.case-card:hover .document-window{transform:rotate(-1deg)}.doc-heading{font-size:17px;font-weight:600}.doc-columns,.doc-row{display:grid;grid-template-columns:.8fr 1fr 1fr;gap:10px;font-size:13px;align-items:center}.doc-columns{color:#786e60;margin-top:24px;padding-bottom:12px}.doc-row{padding:15px 0;border-top:1px solid #ddd3c4}.doc-row strong{font-size:15px;font-weight:400;color:#4d3b2d}.doc-highlight{background:#e8dfd0;color:#6c5037;border-radius:8px;font-size:14px;padding:11px 13px;margin-top:15px}
.practice{background:var(--surface);padding-block:88px}.practice-layout{display:grid;grid-template-columns:1.12fr 1fr;gap:70px}.practice-intro h2{max-width:610px}.practice-intro>p{font-size:17px;line-height:1.85;color:var(--muted);margin-top:28px;max-width:390px}.practice-grid{display:flex;flex-direction:column;gap:27px}.practice-card{border-top:1px solid #c6b59f;padding-top:24px}.practice-card h3{font-size:24px;line-height:1.35}.practice-card p{font-size:16px;line-height:1.85;color:var(--muted);margin-top:13px}.services{padding-block:105px 96px}.collaboration-formats{padding-bottom:40px;margin-bottom:48px;border-bottom:1px solid var(--line)}.tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px}.tool-item h3{font-size:23px;line-height:1.4;letter-spacing:-.02em}.tool-item p{font-size:16px;line-height:1.85;color:var(--muted);margin-top:13px;max-width:350px}.working-process>h3{font-size:30px;line-height:1.4;max-width:450px;margin-bottom:43px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px;position:relative}.service-grid:before{content:'';position:absolute;left:22px;right:22px;top:24px;height:1px;background:var(--line)}.service-grid:after{content:'';position:absolute;left:22px;right:22px;top:24px;height:1px;background:#a48965;transform:scaleX(var(--process-progress,0));transform-origin:left;transition:transform .4s var(--ease)}.service-card{position:relative;min-width:0}.service-number{position:relative;z-index:1;display:grid;place-items:center;width:48px;height:48px;border:1px solid #b7a185;border-radius:50%;background:var(--bg);font-size:14px;color:var(--brown);margin-bottom:25px;transition:background .25s,color .25s,border-color .25s}.service-card:hover .service-number{background:var(--brown);color:var(--bg);border-color:var(--brown)}.service-card h3{font-size:25px;line-height:1.4;max-width:280px;letter-spacing:-.02em}.service-card p{font-size:16px;line-height:1.85;color:var(--muted);margin-top:15px}.collaboration-contact{margin-top:40px;color:var(--brown)}.background{background:#ece6de;border-top:1px solid #ddd1c3;padding-block:92px 98px}.background-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:90px}.background-label{font-size:16px;margin-bottom:28px;letter-spacing:0;color:var(--muted)}.career-list{display:flex;flex-direction:column}.career-card{display:grid;grid-template-columns:88px minmax(0,1fr);gap:22px;padding:26px 0;border-top:1px solid #d3c5b4}.career-period{font-size:12px;color:var(--brown);padding-top:4px}.career-brand{display:flex;align-items:center;gap:10px;margin-bottom:8px;font-size:16px;font-weight:600;line-height:1.55}.career-brand img{display:block;width:170px;max-height:38px;object-fit:contain;object-position:left}.career-content h3{font-size:20px;line-height:1.45;letter-spacing:-.015em}.career-content p{font-size:14px;line-height:1.9;color:var(--muted);margin-top:12px}.current-mark{display:inline-block;width:6px;height:6px;background:var(--brown);border-radius:50%;flex-shrink:0}.education-column{scroll-margin-top:40px;border-left:1px solid #d3c5b4;padding-left:48px}.education-logo{display:block;width:min(270px,100%);height:auto;margin-bottom:35px}.education-list{display:flex;flex-direction:column;gap:31px}.education-list h3{font-size:23px;line-height:1.4}.education-list p{font-size:15px;line-height:1.85;color:var(--muted);margin-top:14px}.research-references{border-top:1px solid #d3c5b4;margin-top:35px;padding-top:27px}.research-references>h3{font-size:14px;font-weight:600;letter-spacing:0;margin-bottom:17px}.research-reference{margin-top:17px;font-size:12px;color:var(--muted);line-height:1.75}.research-reference a{display:flex;gap:9px;text-decoration:underline;text-underline-offset:3px}.research-reference summary{display:flex;gap:9px;cursor:pointer;list-style:none}.research-reference summary::-webkit-details-marker{display:none}.research-reference summary:after{content:'+';flex-shrink:0;margin-left:auto}.research-reference[open] summary:after{content:'−'}.research-reference p{margin-top:10px;padding-left:26px;font-size:12px}.research-reference .reference-number{flex-shrink:0;color:var(--brown)}
.contact{background:var(--navy);color:var(--bg);padding-block:99px 94px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:95px}.contact .serif-word{color:var(--gold)}.contact-intro>p{font-size:18px;line-height:1.85;color:#c5c4c1;max-width:420px;margin-top:28px}.direct-contact{display:block;width:fit-content;min-height:44px;padding:9px 0;margin-top:14px;border-bottom:1px solid #c7af8666;font-size:15px;color:var(--gold)}.direct-contact:first-child{margin-top:28px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:26px}.contact-form label:not(.consent){display:block;font-size:13px;font-weight:400;color:#ddd4c6}.contact-form input:not([type=checkbox]),.contact-form textarea{display:block;width:100%;color:var(--bg);background:transparent;border:0;border-bottom:1px solid #9b968b;border-radius:0;padding:14px 0;font-size:16px;scroll-margin-block:80px}.contact-form textarea{resize:vertical;min-height:150px}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#b0ada7;opacity:1}.contact-form input:not([type=checkbox]):focus,.contact-form textarea:focus{border-bottom-color:var(--gold);box-shadow:0 1px 0 var(--gold);outline-offset:4px}.contact-form .button.primary{background:var(--gold);color:#172235}.contact-form .button.primary:hover{background:#ddc7a0}.contact :focus-visible{outline-color:var(--gold)}.message-label{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:30px;margin-bottom:5px}.dictation-button{display:inline-flex;align-items:center;gap:7px;min-height:44px;border:0;background:none;padding:8px 0 8px 12px;font-size:13px;color:var(--gold)}.dictation-button svg{width:18px;height:18px}.dictation-button[data-state=recording]{color:#f1a397}.dictation-feedback{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-top:9px}.dictation-feedback p{font-size:12px;line-height:1.75;color:#b0ada7}.dictation-feedback .text-link{font-size:12px;flex-shrink:0;min-height:30px;color:var(--gold)}.consent{display:flex;align-items:flex-start;gap:11px;font-size:12px;color:#b0ada7;line-height:1.8;margin:24px 0}.consent input{accent-color:var(--gold);width:18px;height:18px;margin:3px 0 0;flex-shrink:0}.consent a{color:#ddd4c6;text-decoration:underline;text-underline-offset:3px}.form-status{font-size:14px;line-height:1.8;margin-top:16px}.form-status.success{color:#b4d4b5}.form-status.error{color:#f1a397}.honeypot{position:absolute!important;width:0!important;height:0!important;opacity:0!important;pointer-events:none!important}.footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-block:34px 42px}.footer .wordmark{font-size:26px}.footer>div{display:flex;gap:25px;font-size:12px;color:var(--muted)}
.floating-agent{position:fixed;z-index:15;right:24px;bottom:24px;display:flex;align-items:center;gap:6px;border:1px solid #baa586;border-radius:100px;padding:4px 18px 4px 3px;background:#f5f1eb;box-shadow:0 8px 32px #37271519;transition:box-shadow .25s,opacity .25s}.floating-agent canvas{width:46px;height:46px;flex-shrink:0}.floating-agent span{font-size:13px}.floating-agent:hover{box-shadow:0 10px 36px #37271529}body.hero-visible .floating-agent{opacity:0;pointer-events:none;visibility:hidden}
.tour-toast{position:fixed;z-index:16;bottom:92px;right:24px;max-width:350px;padding:14px 18px;background:var(--navy);color:var(--bg);border:1px solid #c7af8640;border-radius:12px;font-size:13px;box-shadow:0 5px 30px #0001}

.case-detail{padding-block:38px 100px;min-height:70vh}.case-back{display:inline-flex;align-items:center;gap:12px;min-height:44px;font-size:14px;color:var(--brown);margin-bottom:43px}.case-back .arrow-icon{transform:rotate(180deg)}.case-detail-heading{max-width:820px;margin-bottom:40px}.case-detail h1{font-size:clamp(44px,5.3vw,73px);margin-top:19px}.case-detail-heading>p{font-size:20px;line-height:1.8;max-width:720px;color:var(--muted);margin-top:25px}.case-detail>.case-visual{height:470px}.case-detail .content-workflow{width:500px;max-width:90%;gap:35px}.case-detail .mini-window{width:430px}.case-detail .document-window{width:470px}.detail-metric{display:flex;align-items:baseline;gap:24px;border-bottom:1px solid var(--line);padding-block:30px}.detail-metric strong{font-family:var(--serif);font-style:italic;font-size:36px;font-weight:400;letter-spacing:-.035em;color:var(--brown)}.detail-metric p{font-size:16px;color:var(--muted)}.detail-body{display:grid;grid-template-columns:200px minmax(0,1fr);gap:70px;margin-top:58px}.detail-body aside{position:sticky;top:30px;align-self:start;font-size:14px;color:var(--muted)}.detail-body aside a{display:block;min-height:44px;padding-block:7px}.detail-section{margin-bottom:42px;scroll-margin-top:35px}.detail-section h2{font-size:30px;margin-bottom:18px}.detail-section p{font-size:18px;line-height:1.85;color:var(--muted);max-width:730px}.case-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid var(--line);padding-top:42px;margin-top:25px}.case-cta h2{font-size:38px}.privacy-view{padding-block:50px 110px;max-width:1000px}.privacy-view h1{font-size:64px;margin-block:40px 35px}.privacy-view>p{font-size:18px;line-height:1.85;color:var(--muted);margin-top:24px}.privacy-view .button{margin-top:35px}.tour-highlight{animation:highlight 1.8s ease-out}
@keyframes heroArrival{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes highlight{0%,35%{box-shadow:0 0 0 5px #c7af8644}100%{box-shadow:0 0 0 0 transparent}}
@media(max-width:1150px){.section-shell,.header{padding-inline:44px}.hero{gap:32px;min-height:670px}.hero h1{font-size:96px}.hero-description{font-size:26px}.hero-personal{font-size:16px}.desktop-nav{gap:22px}.hero-actions{gap:20px}.hero-actions .button,.hero-actions .text-link{font-size:14px}.hero-art{padding-top:0}.agent-invite{font-size:13px;max-width:300px}.about-intro{gap:45px}.experience-list{gap:32px}.experience-card h3{font-size:30px}.experience-bridge{gap:35px}.experience-bridge p{font-size:26px;max-width:550px}.background-layout{gap:48px}.education-column{padding-left:34px}.practice-layout{gap:45px}.featured h3{font-size:40px}.case-card.featured{gap:35px}.featured .case-visual{height:380px}.contact-layout{gap:55px}}
@media(max-width:900px){.header{height:92px;gap:20px}.desktop-nav{gap:18px;font-size:13px}.header-contact{font-size:13px;padding:9px 15px}.hero{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);min-height:610px;gap:20px;padding-bottom:65px}.hero h1{font-size:clamp(56px,8.5vw,76px)}.hero-description{font-size:22px}.hero-personal{max-width:300px}.hero-actions{align-items:flex-start;flex-direction:column;gap:12px}.agent-invite{font-size:12px;max-width:240px}.orb-caption{max-width:220px}.section-block{padding-block:85px}.section-heading{gap:30px}.section-heading h2{font-size:43px}.section-description{max-width:250px;font-size:15px}.about-intro{gap:35px}.about-intro>p{font-size:16px}.experience-card h3{font-size:27px}.experience-card p{font-size:15px}.role-brand{height:65px}.role-brand img{width:200px;height:65px}.role-brand img:not(.digital-logo){width:220px}.role-place{font-size:12px}.research-role{gap:32px}.experience-bridge{display:block;margin-top:35px;padding-top:29px}.experience-bridge p{font-size:26px;max-width:610px}.experience-bridge .text-link{margin-top:15px}.case-card.featured{gap:30px}.featured .case-visual{height:350px}.featured h3{font-size:35px}.featured .case-copy>p{font-size:16px}.content-workflow{gap:15px}.content-brief{padding:17px}.content-brief strong{font-size:20px}.content-result{min-height:250px;padding:17px}.content-result strong{font-size:31px}.case-visual{height:280px}.case-copy h3{font-size:25px}.practice-layout{grid-template-columns:1fr 1fr;gap:35px}.practice-intro h2{font-size:41px}.practice-intro>p{font-size:16px}.practice-card h3{font-size:22px}.practice-card p{font-size:15px}.tool-grid,.service-grid{gap:25px}.tool-item h3{font-size:21px}.tool-item p,.service-card p{font-size:15px}.service-card h3{font-size:22px}.background-layout{grid-template-columns:1.2fr 1fr;gap:32px}.career-card{grid-template-columns:65px minmax(0,1fr);gap:14px}.career-brand{font-size:14px}.career-content h3{font-size:18px}.career-content p{font-size:13px}.education-column{padding-left:26px}.education-list h3{font-size:21px}.education-list p{font-size:14px}.contact-layout{grid-template-columns:1fr;gap:45px}.contact-intro h2{max-width:660px}.contact-intro>p{max-width:560px}.contact-form{max-width:800px}#direct-contacts{display:flex;gap:22px;flex-wrap:wrap}.direct-contact,.direct-contact:first-child{margin-top:20px}.detail-body{grid-template-columns:170px minmax(0,1fr);gap:35px}}
@media(max-width:650px){.section-shell,.header{padding-inline:24px}.header{height:84px}.wordmark{font-size:29px}.desktop-nav,.header-contact{display:none}.menu-toggle{display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center;width:44px;height:44px;background:none;border:1px solid #c8b5a0;border-radius:50%}.menu-toggle span{width:17px;height:1px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.hero{grid-template-columns:1fr;min-height:0;gap:24px;padding-block:28px 55px}.hero h1{font-size:clamp(65px,18vw,94px);line-height:1.07;max-width:460px}.hero-description{font-size:24px;line-height:1.5;margin-top:27px}.hero-personal{font-size:16px;max-width:340px;margin-top:16px}.hero-actions{flex-direction:row;align-items:center;gap:22px;flex-wrap:wrap;margin-top:27px}.hero-actions .button{padding:14px 21px;font-size:13px}.hero-actions .text-link{font-size:13px}.hero-art{max-width:380px;justify-self:center;width:100%;padding-top:0;min-height:335px}.hero-orb-button{width:310px;max-width:100%}.agent-invite{font-size:13px;max-width:none}.orb-caption{font-size:11px;max-width:none}.section-block{padding-block:68px}h2,.section-heading h2{font-size:clamp(34px,9vw,46px);line-height:1.25}.section-heading{display:block;margin-bottom:33px}.section-description{margin-top:20px;max-width:390px;font-size:15px}.about-intro{grid-template-columns:1fr;gap:26px;margin-bottom:35px}.about-intro>p{font-size:16px;line-height:1.85}.experience-list{grid-template-columns:1fr;gap:35px}.experience-card.primary-role{padding-top:24px}.role-brand{height:70px;margin-bottom:23px}.role-brand img{width:220px;height:70px}.role-brand img:not(.digital-logo){width:245px}.experience-card h3{font-size:29px;max-width:390px}.experience-card p{font-size:16px;line-height:1.85}.teaching-media{margin-top:25px;border-radius:13px}.teaching-caption{font-size:11px}.research-role{grid-column:auto;grid-template-columns:1fr;gap:10px;padding-top:26px;margin-top:0}.research-role h3{font-size:23px}.research-role p{font-size:15px}.experience-bridge{margin-top:33px;padding-top:27px}.experience-bridge p{font-size:25px;line-height:1.55}.experience-bridge .text-link{margin-top:16px;font-size:13px}.case-filters{gap:10px;flex-wrap:nowrap;overflow-x:auto;margin-right:-24px;padding-right:24px;padding-bottom:7px;scrollbar-width:none;scroll-snap-type:x proximity}.filter{flex:0 0 auto;white-space:nowrap;min-height:44px;font-size:13px;padding:10px 17px;scroll-snap-align:start}.case-grid{grid-template-columns:1fr;gap:30px}.case-card.featured{display:flex;grid-column:auto;gap:0;padding-bottom:0}.case-visual,.featured .case-visual{height:315px;border-radius:16px}.case-copy,.featured .case-copy{padding:25px 0}.case-copy h3{font-size:29px;line-height:1.35;margin-top:10px}.featured h3{font-size:37px;line-height:1.2}.case-copy>p,.featured .case-copy>p{font-size:16px;line-height:1.85;margin-top:15px}.case-card-foot{padding-top:24px}.content-workflow{max-width:360px;gap:19px}.content-brief{padding:18px}.content-brief strong{font-size:21px}.content-result{padding:16px;min-height:256px}.content-result strong{font-size:32px}.visual-content{padding:31px 25px}.mini-window,.document-window{padding:23px}.practice-layout{grid-template-columns:1fr;gap:34px}.practice-intro h2{font-size:clamp(34px,9vw,46px)}.practice-intro>p{font-size:16px;margin-top:23px;max-width:430px}.practice-grid{gap:26px}.practice-card{padding-top:23px}.practice-card h3{font-size:24px}.practice-card p{font-size:16px}.tool-grid{grid-template-columns:1fr;gap:28px}.tool-item h3{font-size:23px}.tool-item p{font-size:16px;margin-top:10px;max-width:none}.collaboration-formats{padding-bottom:33px;margin-bottom:36px}.working-process>h3{font-size:27px;line-height:1.45;margin-bottom:31px}.service-grid{grid-template-columns:1fr;gap:28px}.service-grid:before{left:23px;right:auto;top:22px;bottom:22px;width:1px;height:auto}.service-grid:after{left:23px;right:auto;top:22px;bottom:22px;width:1px;height:auto;transform:scaleY(var(--process-progress,0));transform-origin:top}.service-card{display:grid;grid-template-columns:48px minmax(0,1fr);gap:0 21px}.service-number{grid-row:1/3;margin-bottom:0}.service-card h3{font-size:24px;max-width:none;line-height:1.4}.service-card p{grid-column:2;font-size:15px;margin-top:10px}.collaboration-contact{margin-top:29px}.background-layout{grid-template-columns:1fr;gap:45px}.career-card{grid-template-columns:67px minmax(0,1fr);gap:17px;padding-block:23px}.career-brand{font-size:16px;flex-wrap:wrap}.career-content h3{font-size:20px}.career-content p{font-size:14px}.education-column{border-left:0;border-top:1px solid #d3c5b4;padding-left:0;padding-top:34px}.education-logo{width:250px;margin-bottom:29px}.education-list{gap:29px}.education-list h3{font-size:23px}.education-list p{font-size:15px;max-width:470px}.research-reference{font-size:12px}.contact-layout{gap:36px}.contact-intro>p{font-size:17px;line-height:1.85;margin-top:24px}.field-row{grid-template-columns:1fr;gap:23px}.contact-form label:not(.consent){font-size:13px}.message-label{margin-top:26px}.dictation-button{font-size:13px}.consent{font-size:12px}.footer{padding-block:31px 96px}.footer .wordmark{font-size:25px}.footer>div{gap:15px;font-size:11px}.floating-agent{right:16px;bottom:max(16px,env(safe-area-inset-bottom));padding-right:16px}.floating-agent canvas{width:44px;height:44px}.tour-toast{bottom:82px;right:16px;left:16px;max-width:none}.case-detail{padding-block:26px 65px}.case-back{margin-bottom:30px}.case-detail h1{font-size:42px;line-height:1.2}.case-detail-heading{margin-bottom:30px}.case-detail-heading>p{font-size:17px;margin-top:20px}.case-detail>.case-visual{height:335px}.case-detail .content-workflow{width:350px;gap:20px;max-width:100%}.case-detail .mini-window,.case-detail .document-window{width:100%}.detail-metric{display:block;padding-block:26px}.detail-metric strong{font-size:32px}.detail-metric p{font-size:14px;margin-top:9px}.detail-body{display:block;margin-top:29px}.detail-body aside{position:static;display:flex;gap:20px;overflow:auto;white-space:nowrap;margin-right:-24px;padding-right:24px;margin-bottom:24px;font-size:13px;scrollbar-width:none}.detail-section{margin-bottom:32px}.detail-section h2{font-size:27px}.detail-section p{font-size:16px}.case-cta{display:block;margin-top:10px;padding-top:32px}.case-cta h2{font-size:32px}.case-cta .button{margin-top:24px}.privacy-view{padding-block:30px 70px}.privacy-view h1{font-size:46px;margin-block:30px 25px}.privacy-view>p{font-size:16px}}
@media(max-width:360px){.section-shell,.header{padding-inline:20px}.hero h1{font-size:63px}.hero-description{font-size:22px}.hero-actions{gap:16px}.hero-actions .button{padding:14px 18px;font-size:12px}.hero-actions .text-link{font-size:12px}.hero-art{min-height:315px}.hero-orb-button{width:280px}.agent-invite{font-size:12px}.orb-caption{font-size:10px}.case-filters,.detail-body aside{margin-right:-20px;padding-right:20px}.case-visual,.featured .case-visual{height:295px}.visual-content{padding-inline:21px}.content-workflow{gap:13px}.content-brief{padding:15px}.content-brief strong{font-size:19px}.content-result{padding:14px;min-height:245px}.content-result strong{font-size:29px}.mini-window,.document-window{padding:19px}.doc-columns,.doc-row{font-size:12px;gap:7px}.career-card{grid-template-columns:58px minmax(0,1fr);gap:13px}.career-content h3{font-size:18px}.footer>div{gap:12px}}
/* The conversation belongs to the hero; the dock keeps it available while browsing. */
body.agent-open .floating-agent,body.agent-collapsed .floating-agent{opacity:0;pointer-events:none;visibility:hidden}
.hero-orb-button{transition:width .35s var(--ease),max-width .35s var(--ease)}
body.agent-collapsed{padding-bottom:calc(84px + env(safe-area-inset-bottom))}
.hero-art.is-agent-active{justify-content:flex-start;padding-top:0}
.hero-art.is-agent-active .hero-orb-button{width:220px;max-width:220px;flex-shrink:0}
.hero-art.is-agent-active .agent-invite,.hero-art.is-agent-active .orb-caption{display:none}
.agent-workspace{display:flex;flex-direction:column;width:100%;max-width:490px;min-width:0;margin-top:2px;color:var(--ink);background:transparent;scroll-margin-top:28px;animation:workspaceArrival .3s var(--ease)}
.agent-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;padding:0 0 11px}
.agent-header>div:first-child{display:flex;flex-direction:column;gap:2px;min-width:0}
.agent-header strong{font-size:13px;font-weight:600;line-height:1.5}
.agent-state{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.6;color:var(--muted)}
.agent-header-actions{display:flex;align-items:center;gap:0;flex-shrink:0}
.agent-icon-button{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;padding:0;border:0;background:transparent;color:var(--muted);font-size:25px;line-height:1;border-radius:8px}
.agent-icon-button:hover{background:#e9e0d488;color:var(--ink)}
.agent-messages{display:flex;flex-direction:column;gap:14px;max-height:250px;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#bbab99 transparent;padding:0 4px 14px 0}
.agent-messages:empty{display:none}
.agent-message{flex-shrink:0;font-size:14px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}
.agent-message.assistant{color:var(--ink);padding:3px 0;max-width:97%}
.agent-message.user{align-self:flex-end;max-width:90%;padding:10px 14px;background:#e9e0d4;border-radius:13px 13px 3px 13px;color:var(--ink)}
.agent-message.thinking{font-size:12px;color:var(--muted);padding:4px 0}
.message-action{display:block;min-height:44px;margin-top:4px;border:0;border-bottom:1px solid #b6a28e;background:transparent;padding:7px 0;color:var(--brown);font-size:13px;text-align:left}
.voice-panel{display:flex;align-items:center;gap:12px;flex-wrap:wrap;flex-shrink:0;padding:0 0 12px;min-width:0}
.agent-interrupt{min-height:44px;padding:7px 0;background:transparent;border:0;font-size:12px;line-height:1.5;color:var(--brown);text-decoration:underline;text-underline-offset:4px}
.agent-error{flex-shrink:0;margin:0 0 10px;color:#944432;font-size:12px;line-height:1.7;max-height:80px;overflow-y:auto}
.agent-suggestions{display:flex;align-items:center;gap:20px;flex-wrap:nowrap;flex-shrink:0;max-width:100%;min-height:44px;overflow-x:auto;scrollbar-width:none;opacity:1;transition:opacity .18s ease}
.agent-suggestions::-webkit-scrollbar{display:none}
.agent-suggestions.is-updating{opacity:.35}
.agent-suggestions button{position:relative;flex:0 0 auto;min-height:44px;padding:9px 0;background:transparent;border:0;border-radius:0;color:var(--brown);font-size:12px;line-height:1.5;white-space:nowrap;text-align:left}
.agent-suggestions button:after{content:'';position:absolute;left:0;right:0;bottom:9px;height:1px;background:currentColor;opacity:0;transition:opacity .2s}
.agent-suggestions button:hover:after{opacity:.65}
.agent-suggestions button:disabled{cursor:default;opacity:.45}
.agent-composer{flex-shrink:0;padding-top:2px}
.agent-composer form{display:flex;align-items:center;gap:4px;min-width:0;min-height:58px;padding:5px 6px 5px 17px;background:#ede5d9;border:1px solid #cbbbA6;border-radius:17px;transition:border-color .2s,background .2s}
.agent-composer form:focus-within{background:#f1eadd;border-color:var(--brown)}
.agent-composer input{flex:1 1 auto;min-width:0;width:100%;height:44px;background:transparent;border:0;padding:7px 4px 7px 0;color:var(--ink);font-size:16px;line-height:1.5;outline:none}
.agent-composer input::placeholder{color:var(--muted);opacity:1}
.agent-composer input:focus-visible{outline:none}
.agent-voice-toggle,.agent-send{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:10px;border:0;border-radius:11px;transition:background .2s,color .2s}
.agent-voice-toggle{background:transparent;color:var(--brown)}
.agent-voice-toggle:hover{background:#d8c6ad66}
.agent-voice-toggle[aria-pressed=true]{background:var(--brown);color:var(--bg)}
.agent-voice-toggle.is-connecting{opacity:.55}
.agent-voice-toggle svg,.agent-send svg{width:21px;height:21px}
.agent-send{background:var(--accent);color:var(--bg)}
.agent-send:hover{background:#25354b}
.agent-send:disabled{cursor:default;background:#d8cbb9;color:#74675a;opacity:1}
.agent-dock{position:fixed;z-index:25;right:20px;bottom:max(16px,env(safe-area-inset-bottom));display:flex;align-items:center;gap:10px;width:420px;max-width:calc(100% - 32px);height:68px;padding:10px 10px 10px 5px;background:var(--bg);border:1px solid #d1c3b2;border-radius:17px;box-shadow:0 8px 30px #3b2b171b;color:var(--ink);animation:workspaceArrival .25s var(--ease)}
.agent-dock canvas{flex:0 0 48px;width:48px;height:48px}
.agent-dock-copy{flex:1 1 auto;min-width:0;line-height:1.55}
.agent-dock-copy>span{display:block;font-size:12px;font-weight:600}
.agent-dock-copy p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:var(--muted)}
.agent-resume{flex-shrink:0;min-height:44px;padding:8px 4px;border:0;border-radius:0;background:transparent;color:var(--brown);font-size:12px;white-space:nowrap;text-decoration:underline;text-underline-offset:4px}
.agent-dock .agent-voice-toggle{border-left:1px solid var(--line);border-radius:0;padding-left:12px;flex-basis:46px;width:46px}
.agent-dock .agent-voice-toggle[aria-pressed=true]{border-left-color:transparent;border-radius:10px}
body.agent-collapsed .tour-toast{bottom:100px}
@keyframes workspaceArrival{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(max-width:900px) and (min-width:651px){.hero-art.is-agent-active .hero-orb-button{width:180px;max-width:180px}.agent-workspace{margin-top:4px}.agent-message{font-size:13px}.agent-composer form{padding-left:12px}.agent-suggestions{gap:16px}.agent-suggestions button{font-size:11px}}
@media(max-width:650px){
  .hero-art.is-agent-active{max-width:none;min-height:0;justify-content:flex-start}
  .hero-art.is-agent-active .hero-orb-button{width:190px;max-width:190px}
  .agent-workspace{max-width:none;margin-top:0;scroll-margin-top:16px}
  .agent-header{padding-bottom:10px;gap:8px}
  .agent-header strong{font-size:12px}
  .agent-state{font-size:10px}
  .agent-messages{max-height:min(340px,45dvh);gap:13px;padding-bottom:13px}
  .agent-message{font-size:14px}
  .agent-suggestions{gap:19px}
  .agent-suggestions button{font-size:12px}
  .agent-composer form{min-height:56px;padding:4px 5px 4px 14px;border-radius:15px}
  .agent-voice-toggle,.agent-send{border-radius:10px}
  .agent-dock{left:12px;right:12px;bottom:max(10px,env(safe-area-inset-bottom));width:auto;max-width:none;height:64px;gap:7px;padding:8px 7px 8px 3px;border-radius:15px}
  .agent-dock-copy>span{font-size:11px}
  .agent-dock-copy p{font-size:10px}
  .agent-resume{font-size:11px;padding-inline:3px}
  .agent-dock .agent-voice-toggle{flex-basis:44px;width:44px;padding-left:10px}
  .agent-workspace.is-typing{position:fixed;z-index:35;inset:var(--agent-viewport-top,0px) 0 auto;width:100%;max-width:none;height:var(--agent-viewport-height,100dvh);max-height:none;margin:0;padding:12px 20px max(12px,env(safe-area-inset-bottom));background:var(--bg);border:0;border-radius:0;box-shadow:none;overflow:hidden;overscroll-behavior:none;isolation:isolate;animation:none}
  .agent-workspace.is-typing .agent-header{padding-bottom:7px}
  .agent-workspace.is-typing .agent-messages{display:flex;flex:1 1 auto;max-height:none;min-height:0;padding-bottom:10px}
  .agent-workspace.is-typing .voice-panel{max-height:90px;overflow:auto;padding-bottom:5px}
  .agent-workspace.is-typing .agent-suggestions{margin-top:auto}
  .agent-workspace.is-typing .agent-composer{padding-top:0}
  .hero-art:has(.agent-workspace.is-typing) .hero-orb-button{visibility:hidden}
}
@media(max-width:360px){.agent-suggestions{gap:16px}.agent-suggestions button{font-size:11px}.agent-dock{gap:5px}.agent-dock-copy p{max-width:110px}.agent-dock-copy>span{font-size:10px}.agent-workspace.is-typing{padding-inline:16px}.agent-composer form{padding-left:11px}}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
