:root{--paper:#fafafa;--ink:#17171a;--muted:#62626b;--line:#dedee3;--accent:#ded9ed;--light:#ffffff;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}::selection{background:var(--accent);color:var(--ink)}a{color:inherit;text-underline-offset:5px}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #655282;outline-offset:5px}button:disabled{cursor:default}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-weight:500;line-height:1.1;letter-spacing:-.045em}p+p{margin-top:18px}h1{font-size:clamp(44px,5.2vw,78px);letter-spacing:-.055em}h2{font-size:clamp(35px,4.1vw,58px)}h2 em{font-family:var(--serif);font-weight:400}h3{font-size:27px;letter-spacing:-.035em}h4{font-size:23px}img,svg{max-width:100%}[hidden]{display:none!important}.wrap{max-width:1320px;margin-inline:auto;padding-inline:60px}.section{padding-top:110px;padding-bottom:110px;scroll-margin-top:20px}.eyebrow{font-size:11px;letter-spacing:.14em;line-height:1.5;font-weight:700}.small{font-size:13px;color:var(--muted)}.lead{font-size:22px;line-height:1.65;letter-spacing:-.02em}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;z-index:100;left:20px;top:-90px;padding:12px 20px;background:var(--ink);color:white}.skip:focus{top:12px}.header{position:sticky;top:0;z-index:30;background:rgba(250,250,250,.97);border-bottom:1px solid var(--line)}.nav-wrap{max-width:1320px;margin:auto;padding:19px 60px;display:flex;align-items:center;justify-content:space-between;gap:28px}.wordmark{font-weight:700;font-size:30px;letter-spacing:-.065em;text-decoration:none;line-height:1}.wordmark span{color:#655282}.header nav{display:flex;align-items:center;gap:30px;font-size:13px}.header nav a{text-decoration:none;padding:9px 0}.header nav a:hover{text-decoration:underline}.header .nav-contact{padding:9px 18px;background:var(--ink);color:var(--paper);border-radius:3px}.nav-contact span{margin-left:18px}.menu-toggle{display:none;background:none;border:1px solid var(--line);padding:8px 13px}.hero{padding-top:34px}.hero-top{display:flex;align-items:center;justify-content:space-between}.dot{display:inline-block;width:7px;height:7px;background:#78688f;border-radius:50%;margin-right:9px}.location{font-size:11px;text-transform:uppercase;letter-spacing:.12em}.hero-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:40px;align-items:center;margin:56px 0 66px}.intro-name{font-size:16px;margin-bottom:19px}.hero h1{font-size:clamp(42px,4.7vw,68px);line-height:1.08}.amp{font-family:var(--serif);font-style:italic}.highlight{position:relative;display:inline;box-shadow:inset 0 -.22em var(--accent)}.hero-copy{max-width:470px;font-size:17px;line-height:1.75;color:var(--muted);margin-top:28px}.actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;text-decoration:none;min-height:48px;padding:13px 19px;border:1px solid var(--ink);border-radius:3px;font-size:12px;font-weight:600;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.dark{background:var(--ink);color:var(--paper)}.dark:hover{background:#34343b}.ghost{background:transparent}.ghost:hover{background:#ebe8f2}.hero-object{height:510px;position:relative;border:1px solid #dcdbe2;background:#eeedf2;border-radius:220px 220px 8px 8px;overflow:hidden;padding:34px;display:flex;flex-direction:column;justify-content:flex-end}.orbit-label{position:absolute;top:47px;left:0;right:0;text-align:center;font-size:9px;letter-spacing:.22em}.sculpture{position:relative;flex:1;max-height:310px;margin:25px 0 20px}.arch{position:absolute;top:30px;left:50%;width:165px;height:240px;border-radius:110px 110px 14px 14px;border:40px solid var(--accent);border-bottom-width:43px}.arch-back{transform:translateX(-73%) rotate(-16deg);border-color:#cbc3df;box-shadow:12px 18px 25px #354d3520}.arch-front{transform:translateX(-20%) rotate(18deg);box-shadow:14px 18px 25px #85513a20;border-color:#ded9ed}.sculpture-dot{position:absolute;width:43px;height:43px;border-radius:50%;background:var(--ink);right:7%;top:15px}.object-note{display:flex;justify-content:space-between;align-items:center;font:italic 27px/1.15 var(--serif)}.object-arrow{font:40px/1 var(--sans)}.process-line{margin-top:27px;padding-top:19px;border-top:1px solid #d0cbdc;display:flex;justify-content:space-between;gap:10px;font-size:8px;letter-spacing:.1em}.hero-foot{padding:25px 0;display:flex;justify-content:space-between;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px;gap:20px;color:var(--muted)}.hero-foot strong{font-weight:500;color:var(--ink)}.hero-foot a{text-decoration:none;color:var(--ink)}.about{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-bottom:1px solid var(--line)}.about h2{margin-top:28px;font-size:clamp(32px,3.3vw,47px)}.about-copy>p:not(.lead){color:var(--muted);font-size:15px}.text-link{display:inline-block;font-size:13px;font-weight:600;margin-top:25px;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:4px}.text-link:hover{color:#655282}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:65px;margin-bottom:48px}.section-heading h2{margin-top:22px}.section-heading>p{max-width:350px;color:var(--muted);font-size:15px}.filters{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:35px}.filters button{border:1px solid var(--line);border-radius:25px;background:transparent;padding:10px 18px;font-size:12px;min-height:44px}.filters button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:58px 30px}.project-card{min-width:0;animation:show .35s ease both}.project-visual{display:block;overflow:hidden;border-radius:5px;text-decoration:none}.project-art{height:280px;padding:25px 28px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;transition:transform .3s}.project-visual:hover .project-art{transform:scale(1.015)}.art-caption,.art-bottom{font-size:8px;font-weight:600;letter-spacing:.14em}.art-bottom{display:flex;gap:14px;align-items:center}.raccoon-art{background:#1b1b20;color:#f4f3f7}.bot-cluster{display:flex;justify-content:center;gap:13px}.bot{position:relative;width:63px;height:66px;border:1px solid currentColor;border-radius:32px 32px 12px 12px;display:flex;align-items:center;justify-content:center;font:700 30px/1 var(--sans);background:rgba(255,255,255,.025)}.bot small{position:absolute;bottom:-23px;font:10px/1 var(--sans);color:#f4f3f7;letter-spacing:.04em}.orange{color:#f2a267}.purple{color:#c3a9e5}.blue{color:#94b6e6}.yellow{color:#e8d373}.pink{color:#e6acc2}.booking-art{background:#eceaf2;color:#242229}.booking-shape{display:flex;transform:rotate(-6deg);align-items:center;justify-content:center;gap:7px}.booking-shape>span{display:flex;flex-direction:column;align-items:start;justify-content:space-between;width:110px;height:100px;padding:13px;background:#ffffff;border-radius:5px;box-shadow:0 5px 10px #47372f0a;font:11px/1.2 var(--sans)}.booking-shape>span:nth-child(2){background:#746685;color:white;transform:translateY(-12px)}.booking-shape b{font-size:14px;font-weight:500}.palworld-art{background:#f0eff4;color:#37333f}.signal{height:90px;display:flex;gap:10px;align-items:center;justify-content:center}.signal i{width:16px;height:32px;background:#8f839f;border-radius:8px}.signal i:nth-child(2n){height:55px}.signal i:nth-child(3n){height:85px}.signal i:nth-child(4n){height:110px}.peach-art{background:#e5e1ed;color:#35303e}.peach-art>strong{font-size:70px;line-height:.85;letter-spacing:-.065em;font-weight:500;align-self:center}.peach-art strong span{display:block;font:12px/1 var(--sans);letter-spacing:.4em;text-align:right;margin-top:12px}.vespera-art{background:#e8e4f0;color:#50465e}.media-word{font:italic 52px/1 var(--serif);text-align:center}.media-word span{margin:0 20px;font:20px var(--sans);vertical-align:middle}.ecosystem-art{background:#ededf0;color:#39363f}.ecosystem-words{font-size:37px;line-height:1;letter-spacing:-.055em;padding-left:12px}.project-info{padding-top:23px}.card-top{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;font-size:9px;letter-spacing:.06em}.status{display:inline-flex;border:1px solid #c9c5d1;border-radius:20px;padding:4px 9px;font-size:10px;line-height:1.5;letter-spacing:0;background:#f5f4f8}.project-info h3{margin-top:16px;margin-bottom:14px;font-size:31px}.project-info h3 a{display:flex;justify-content:space-between;text-decoration:none}.project-info h3 a:hover{text-decoration:underline}.project-info p{font-size:15px;color:var(--muted);max-width:95%}.tags{display:flex;gap:7px;flex-wrap:wrap;list-style:none;padding:0;margin:20px 0 0}.tags li{border:1px solid var(--line);font-size:10px;padding:4px 9px;border-radius:3px;line-height:1.5}.project-info .text-link{margin-top:18px}.missions-band{background:var(--ink);color:#fafafa}.missions-band .section-heading>p{color:#c7c5d0}.mission-feature{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;padding:50px 0;border-top:1px solid #52505a;border-bottom:1px solid #52505a}.mission-feature h3{font-size:38px;margin:20px 0 25px}.mission-feature p:not(.eyebrow){font-size:15px;color:#d0ced7}.mission-feature .tags li,.mission-secondary .tags li{border-color:#625e6c}.mission-columns{padding-left:32px;border-left:1px solid #52505a}.mission-columns>div{position:relative;margin-bottom:27px}.mission-columns span{position:absolute;right:0;top:0;color:#cfc4e3;font-size:12px}.mission-columns h4{margin-bottom:9px}.mission-columns p{max-width:300px}.mission-secondary{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-top:42px}.mission-secondary h3{margin:15px 0}.mission-secondary p{color:#c7c5d0;font-size:15px}.mission-note{color:#c2bdcb;margin-top:40px;font-size:11px;max-width:850px}.timeline{list-style:none;padding:0;margin:0}.timeline li{display:grid;grid-template-columns:1fr 2fr;gap:45px;padding:32px 0;border-top:1px solid var(--line)}.timeline .date{font-size:13px;position:relative;padding-left:22px;color:#62626b}.timeline .date:before{content:'';position:absolute;left:0;top:8px;width:6px;height:6px;border-radius:50%;background:#807293}.timeline h3{font-size:24px}.timeline .org{font-size:14px;font-weight:600;margin-top:10px}.timeline p:not(.date):not(.org){font-size:14px;color:var(--muted);max-width:700px;margin-top:12px}.other-experience{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:20px}.other-experience summary{padding:19px 0;cursor:pointer;font-size:14px;display:flex;justify-content:space-between}.other-experience summary::-webkit-details-marker{display:none}.other-experience[open] summary span{transform:rotate(45deg)}.other-experience>div{padding:0 20px 25px 22px;font-size:14px;color:var(--muted)}.career{padding-bottom:45px}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.skills-grid article{padding:28px 24px 35px 0;border-bottom:1px solid var(--line)}.skills-grid article:nth-child(3n+2),.skills-grid article:nth-child(3n+3){padding-left:24px;border-left:1px solid var(--line)}.index{font:11px/1 var(--sans);color:#655282;display:block;margin-bottom:25px}.skills-grid h3{font-size:23px}.skills-grid p{margin-top:12px;font-size:13px;color:var(--muted)}.skills-grid .tags li{background:#eeedf2;border:0;padding:5px 8px}.formation{padding-top:15px}.formation .section-heading>p{max-width:460px}.formation .timeline li{padding:23px 0}.formation .timeline h3{font-size:22px}.cv-banner{background:#e8e4f0;border-radius:4px;display:flex;align-items:center;justify-content:space-between;padding-top:50px;padding-bottom:50px;gap:35px}.cv-banner h2{font-size:38px;margin-top:14px}.cv-banner p:not(.eyebrow){font-size:14px;margin-top:15px}.cv-banner .actions{margin:0;display:flex;flex-direction:column;align-items:flex-start}.cv-banner .text-link{margin-top:5px}.contact h2{font-size:clamp(60px,8vw,105px);margin-top:27px;line-height:1}.contact-bottom{display:flex;justify-content:space-between;gap:35px;margin-top:45px}.contact-bottom>p{font-size:16px}.contact-bottom>p>span{display:block;font-size:12px;color:var(--muted);margin-top:20px}.contact-mail{font-size:clamp(18px,2.4vw,30px);text-decoration:none;letter-spacing:-.035em;border-bottom:1px solid var(--ink);padding-bottom:8px}.contact-bottom>div>p{margin-top:17px;font-size:11px;color:var(--muted)}.contact-bottom .text-link{font-size:11px;margin-top:14px}.footer{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-top:35px;padding-bottom:35px;border-top:1px solid var(--line)}.footer p,.footer>div,.back-top{font-size:10px;color:var(--muted)}.footer>div{display:flex;flex-direction:column;gap:7px}.footer a:not(.wordmark){text-decoration:none}.footer a:hover{text-decoration:underline}.case-hero{padding-top:45px}.case-hero>.text-link{margin-top:0}.case-heading{max-width:950px;padding:65px 0 40px}.case-heading h1{margin-top:20px}.case-heading h1 span,.cv-page h1 span{color:#807293}.case-pitch{font-size:clamp(22px,3vw,37px);letter-spacing:-.035em;line-height:1.4;max-width:850px;margin-top:25px}.case-heading .status{margin-top:25px}.case-hero .project-art{height:360px;padding:35px 45px}.case-hero .art-caption,.case-hero .art-bottom{font-size:10px}.case-hero .bot{width:93px;height:95px;font-size:44px;margin:0 13px}.case-hero .bot small{font-size:13px}.case-hero .peach-art>strong{font-size:110px}.case-hero .booking-shape>span{width:155px;height:135px}.case-hero .media-word{font-size:80px}.case-hero .ecosystem-words{font-size:60px}.visual-caption{font-size:10px;color:var(--muted);margin-top:10px}.case-content{display:grid;grid-template-columns:1fr 2fr;gap:80px;padding-top:70px;padding-bottom:100px}.case-aside p:not(.eyebrow){font-size:14px;color:var(--muted)}.case-aside .eyebrow{margin-bottom:16px}.case-aside .eyebrow:not(:first-child){margin-top:35px}.case-aside .button{margin-top:30px}.case-main h2{font-size:33px;margin-top:16px}.case-main>.lead{margin-top:25px}.case-features{margin-top:45px}.case-features article{border-top:1px solid var(--line);padding:25px 0;position:relative;padding-left:48px}.case-features .index{position:absolute;left:0;top:31px}.case-features h3{font-size:23px}.case-features p{font-size:15px;color:var(--muted);margin-top:14px}.challenge{background:#eeedf2;padding:30px;margin-top:30px;border-radius:4px}.challenge h2{font-size:28px}.challenge p:not(.eyebrow){font-size:15px;margin-top:20px}.project-state{border-top:1px solid var(--line);margin-top:40px;padding-top:15px}.project-state h2{font-size:25px}.project-state p{font-size:15px;margin-top:15px;color:var(--muted)}.cv-page{max-width:1100px}.cv-page h1{margin-top:24px}.cv-page>section{margin-top:65px}.cv-page section>h2{font-size:30px;margin-bottom:25px}.cv-page .timeline li{grid-template-columns:1fr 2.4fr}.cv-project{border-top:1px solid var(--line);padding:22px 0}.cv-project h3{font-size:23px}.cv-project p{margin-top:14px;font-size:15px}.cv-page .skills-grid article h3{font-size:20px}.legal{max-width:960px}.legal h1{margin:25px 0 55px;font-size:clamp(36px,5vw,60px)}.legal h2{font-size:26px;margin-top:38px;margin-bottom:18px}.legal p{font-size:15px;color:var(--muted)}.error{min-height:70vh}.error h1{margin:24px 0}.error .button{margin-top:35px}@keyframes show{from{opacity:.5;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){.wrap,.nav-wrap{max-width:1430px}.hero h1{font-size:75px}.hero-object{height:530px}}
@media(max-width:1050px){.wrap{padding-left:35px;padding-right:35px}.nav-wrap{padding-left:35px;padding-right:35px}.hero-grid{gap:30px}.hero h1{font-size:48px}.hero-object{height:465px;padding:25px}.arch{width:145px;height:210px;border-width:33px}.sculpture-dot{right:1%}.section-heading{gap:30px}.section-heading>p{max-width:300px}.hero .actions{gap:10px}.hero .button{padding:12px;font-size:11px;gap:8px}.bot-cluster{gap:9px}.bot{width:53px;height:56px;font-size:26px}.project-art{padding:22px}.mission-feature{gap:40px}.about{gap:40px}.case-content{gap:45px}.footer{gap:18px}.header nav{gap:20px}.cv-banner{margin-inline:35px}.case-hero .bot{margin:0 6px}}
@media(max-width:760px){html{scroll-padding-top:82px}.wrap{padding-inline:23px}.section{padding-top:65px;padding-bottom:65px}.nav-wrap{padding:18px 23px}.wordmark{font-size:28px}.menu-toggle{display:flex;gap:15px;align-items:center;font-size:12px;min-height:44px}.header nav{display:none;position:absolute;top:100%;left:0;right:0;padding:16px 23px 24px;background:var(--paper);border-bottom:1px solid var(--line);align-items:stretch;gap:5px;box-shadow:0 8px 15px #2026200a}.header nav.open{display:flex;flex-direction:column}.header nav a{padding:12px;min-height:44px}.header .nav-contact{margin-top:7px;padding:12px}.hero{padding-top:25px}.hero-top{align-items:start;gap:15px}.location{font-size:9px;max-width:100px;text-align:right}.hero-top .eyebrow{font-size:9px}.hero-grid{grid-template-columns:1fr;margin:36px 0 32px;gap:35px}.hero h1{font-size:clamp(39px,8vw,60px)}.intro-name{font-size:14px}.hero-copy{font-size:16px;max-width:500px;margin-top:25px}.hero .actions{gap:12px}.hero .button{font-size:12px;padding:13px 15px;gap:12px}.hero-object{height:350px;max-width:480px;width:100%;justify-self:center;border-radius:180px 180px 6px 6px;padding:25px 28px}.orbit-label{top:25px;font-size:8px}.sculpture{margin:13px 0 18px;height:180px;min-height:180px}.arch{width:110px;height:160px;border-width:25px;top:10px}.sculpture-dot{width:30px;height:30px;right:14%;top:15px}.object-note{font-size:23px}.object-arrow{font-size:30px}.process-line{margin-top:17px;padding-top:12px;font-size:7px}.hero-foot{display:grid;grid-template-columns:1fr 1fr;font-size:10px;gap:16px}.hero-foot a{grid-column:1/-1}.about{grid-template-columns:1fr;gap:28px}.about h2{font-size:38px;margin-top:18px}.lead{font-size:20px}.section-heading{display:block;margin-bottom:30px}.section-heading h2{margin-top:18px}.section-heading>p{max-width:100%;margin-top:23px;font-size:14px}.project-grid{grid-template-columns:1fr;gap:40px}.project-art{height:260px}.bot-cluster{gap:12px}.bot{width:58px;height:62px}.project-info h3{font-size:29px}.project-info p{max-width:100%;font-size:14px}.card-top{font-size:8px}.status{font-size:9px}.filters{gap:7px}.filters button{font-size:11px;padding:10px 14px}.mission-feature{grid-template-columns:1fr;gap:35px;padding:30px 0}.mission-feature h3{font-size:30px}.mission-columns{padding-left:20px}.mission-columns>div:last-child{margin-bottom:0}.mission-secondary{grid-template-columns:1fr;gap:35px;padding-top:35px}.mission-secondary h3{font-size:25px}.timeline li{grid-template-columns:1fr;gap:14px;padding:25px 0}.timeline .date{font-size:12px}.timeline h3{font-size:23px}.timeline .org{font-size:13px}.skills-grid{grid-template-columns:1fr 1fr}.skills-grid article{padding:25px 17px 25px 0!important;border-left:0!important}.skills-grid article:nth-child(even){padding-left:18px!important;border-left:1px solid var(--line)!important}.skills-grid h3{font-size:20px}.skills-grid .index{margin-bottom:20px}.skills-grid p{font-size:12px}.skills-grid .tags{gap:6px;margin-top:15px}.skills-grid .tags li{font-size:9px;padding:4px 6px}.formation{padding-top:10px}.cv-banner{margin-inline:23px;padding:30px 24px;display:block}.cv-banner h2{font-size:32px}.cv-banner .actions{margin-top:24px;gap:16px}.contact h2{font-size:65px}.contact-bottom{flex-direction:column;gap:30px;margin-top:30px}.contact-mail{font-size:24px}.footer{flex-wrap:wrap;padding-top:28px;padding-bottom:28px;gap:25px}.footer>div{width:100%;order:4}.footer .back-top{margin-left:auto}.footer p{margin-left:auto}.case-hero{padding-top:25px}.case-heading{padding:40px 0 30px}.case-heading h1{font-size:45px}.case-pitch{font-size:25px}.case-hero .project-art{height:280px;padding:23px}.case-hero .bot{width:52px;height:60px;font-size:25px;margin:0}.case-hero .bot small{font-size:9px}.case-hero .art-caption,.case-hero .art-bottom{font-size:7px}.case-hero .booking-shape>span{width:90px;height:95px}.case-hero .peach-art>strong{font-size:67px}.case-hero .media-word{font-size:50px}.case-hero .ecosystem-words{font-size:40px}.case-content{grid-template-columns:1fr;gap:40px;padding-top:40px;padding-bottom:65px}.case-aside{padding-bottom:35px;border-bottom:1px solid var(--line)}.case-aside .eyebrow:not(:first-child){margin-top:23px}.case-aside .tags{margin-top:15px}.case-main h2{font-size:29px}.challenge{padding:24px}.cv-page .timeline li{grid-template-columns:1fr}.cv-page .case-pitch{font-size:24px}.cv-page>section{margin-top:45px}.legal h1{font-size:38px}.legal h2{font-size:24px}}
@media(max-width:370px){.wrap{padding-inline:18px}.hero h1{font-size:37px}.hero .actions{align-items:stretch;flex-direction:column}.hero .button{justify-content:space-between}.bot-cluster{gap:7px}.bot{width:47px;height:55px}.project-art{padding:18px}.contact-mail{font-size:21px}.skills-grid{grid-template-columns:1fr}.skills-grid article:nth-child(even){padding-left:0!important;border-left:0!important}.case-hero .bot{width:43px}.case-hero .bot-cluster{gap:6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{html{scroll-behavior:auto}body{background:white;color:#111;font:10pt/1.4 Arial,sans-serif}.header,.footer,.skip,.no-print,.cv-page>.actions{display:none!important}.wrap{padding:0;max-width:none}.section{padding:0}.cv-page h1{font-size:30pt;margin-top:0}.cv-page .case-pitch{font-size:15pt;margin:12px 0}.cv-page>section{margin-top:24px}.cv-page section>h2{font-size:17pt;margin-bottom:12px}.cv-page .timeline li{padding:12px 0;grid-template-columns:1fr 3fr;gap:20px}.timeline h3,.cv-page .skills-grid article h3{font-size:12pt}.timeline .date,.timeline p:not(.date):not(.org),.timeline .org,.cv-page p,.cv-page .lead{font-size:10pt}.skills-grid{grid-template-columns:repeat(3,1fr)}.skills-grid article{padding:12px!important}.skills-grid .index{display:none}.tags li{font-size:8pt}.cv-project{padding:12px 0}.cv-project h3{font-size:12pt}a{text-decoration:none}.cv-page h2,.cv-page h3{break-after:avoid}.timeline li,.skills-grid article,.cv-project{break-inside:avoid}.cv-page .status{display:none}@page{size:A4;margin:16mm}}
@media(min-width:761px) and (max-width:1050px){.hero-object .object-note{font-size:23px}.hero-object .arch{height:195px;width:135px;border-width:31px;top:5px}}

/* Personal identity: black, white and pastel lavender. */
.wordmark{display:inline-flex;align-items:center;gap:13px;letter-spacing:0}.wordmark .monogram{font:italic 34px/1 Georgia,serif;color:var(--ink);letter-spacing:-.1em;background:var(--accent);padding:2px 10px 6px 7px;border-radius:2px}.wordmark .wordmark-name{font-size:13px;font-weight:600;color:var(--ink);letter-spacing:-.025em}.header nav{font-size:12px}.hero-top{border-bottom:1px solid var(--line);padding-bottom:23px}.hero-grid{grid-template-columns:1.4fr 1fr;gap:65px;align-items:center;margin:45px 0 45px}.intro-name{font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;margin-bottom:25px;color:var(--muted)}.hero h1{font-size:clamp(76px,8vw,112px);line-height:.91;letter-spacing:-.07em;font-weight:500}.hero h1>span{font:italic 1.04em/.95 Georgia,serif;letter-spacing:-.065em}.hero-role{font-size:clamp(19px,2.1vw,28px);line-height:1.4;letter-spacing:-.035em;margin-top:28px!important}.hero-copy{font-size:15px;max-width:480px;margin-top:22px!important}.hero .actions{margin-top:30px}.hero-foot{font-size:9px;letter-spacing:.07em;align-items:center}.hero-foot strong{display:block;font-size:12px;letter-spacing:0;margin-top:3px}.hero-foot a{font-size:11px;letter-spacing:0}.portrait{margin:0;position:relative;padding:0 18px 0 0;max-width:375px;justify-self:end;width:100%}.portrait-frame{position:relative;z-index:1}.portrait-frame:after{content:'';position:absolute;z-index:-1;top:18px;left:18px;right:-18px;bottom:-18px;background:var(--accent)}.portrait img{display:block;width:100%;height:auto;aspect-ratio:575/768;object-fit:contain;border-radius:2px}.portrait figcaption{margin-top:34px;display:flex;justify-content:space-between;gap:10px;font-size:7px;font-weight:600;letter-spacing:.08em;color:var(--muted)}.section-heading .eyebrow,.about .eyebrow{color:#655282}.missions-band .eyebrow{color:#d8cfe8}.section-heading h2 em,.about h2 em{background:linear-gradient(transparent 70%,#e8e4f0 70%);box-decoration-break:clone}.career{padding-bottom:80px}.experience-links{display:flex;flex-wrap:wrap;gap:8px 32px;margin-bottom:34px}.experience-links .text-link{font-size:12px}.timeline li:last-child .date:before{background:#a99cbb}.timeline li:last-child{border-bottom:1px solid var(--line)}.project-art{border:1px solid #dedee3;border-radius:2px}.project-visual{border-radius:2px}.bot-cluster .bot{color:#d5cce5}.raccoon-art{border-color:#1b1b20}.peach-art>strong.independent-word{font-size:35px;line-height:1.1;letter-spacing:-.05em}.case-hero .peach-art>strong.independent-word{font-size:55px}.cv-banner{background:#efecf5;border-top:1px solid #ddd5e9;border-bottom:1px solid #ddd5e9;border-radius:0}.cv-banner h2{font-size:33px}.contact h2{font-size:clamp(54px,6.7vw,89px)}.contact h2 em{color:#56505f}.cv-identity{display:grid;grid-template-columns:1fr 150px;gap:40px;align-items:start}.cv-identity h1{font-size:54px;line-height:1.05}.cv-identity .case-pitch{font-size:25px;max-width:620px;line-height:1.4}.cv-identity>div>p:last-child{margin-top:18px;font-size:13px}.cv-photo{width:150px;height:auto;display:block;border:8px solid #eeebf4;object-fit:contain}.cv-page .cv-identity{padding-bottom:30px;border-bottom:1px solid var(--line)}.footer .wordmark{gap:9px}.footer .wordmark-name{font-size:11px}
@media(min-width:1600px){.hero h1{font-size:120px}.portrait{max-width:400px}}
@media(max-width:1050px){.hero-grid{gap:36px;grid-template-columns:1.15fr 1fr}.hero h1{font-size:86px}.hero-role{font-size:22px}.portrait{max-width:340px}.header nav{gap:17px}.nav-wrap{gap:18px}.wordmark .wordmark-name{font-size:11px}.cv-identity{grid-template-columns:1fr 130px;gap:25px}.cv-photo{width:130px}.cv-identity h1{font-size:46px}}
@media(max-width:760px){.hero-grid{grid-template-columns:1fr;gap:38px;margin:32px 0}.hero h1{font-size:clamp(74px,17vw,100px)}.hero-role{font-size:22px;margin-top:24px!important}.hero-copy{font-size:15px}.hero .actions{margin-top:24px}.intro-name{font-size:9px;margin-bottom:20px}.hero-top{padding-bottom:20px}.hero-top .eyebrow{max-width:200px;font-size:8px}.portrait{max-width:350px;width:90%;justify-self:center;padding-right:14px}.portrait-frame:after{top:14px;left:14px;right:-14px;bottom:-14px}.portrait figcaption{font-size:6px;margin-top:27px}.hero-foot{font-size:8px}.hero-foot strong{font-size:10px;line-height:1.6}.hero-foot>span:nth-child(2){max-width:150px}.wordmark .wordmark-name{font-size:11px}.wordmark .monogram{font-size:30px}.section-heading h2 em,.about h2 em{background:linear-gradient(transparent 75%,#e8e4f0 75%)}.career{padding-bottom:60px}.experience-links{gap:0;margin-bottom:25px}.experience-links .text-link{font-size:11px}.case-hero .peach-art>strong.independent-word{font-size:31px}.cv-identity{grid-template-columns:minmax(0,1fr) 85px;gap:15px}.cv-photo{width:85px;border-width:4px}.cv-identity h1{font-size:36px;line-height:1.1;margin-top:18px}.cv-identity .case-pitch{font-size:17px;margin-top:16px}.cv-identity>div>p:last-child{font-size:11px;overflow-wrap:anywhere}.cv-identity .eyebrow{font-size:9px}.cv-banner h2{font-size:30px}.contact h2{font-size:53px}.footer .wordmark-name{font-size:10px}}
@media(max-width:370px){.hero h1{font-size:75px}.hero-role{font-size:21px}.hero-top .eyebrow{max-width:145px}.wordmark{gap:9px}.wordmark .wordmark-name{font-size:10px}.cv-identity{grid-template-columns:minmax(0,1fr) 70px;gap:12px}.cv-photo{width:70px}.cv-identity h1{font-size:31px}.cv-identity .case-pitch{font-size:15px}.contact h2{font-size:45px}}
@media print{.cv-identity{grid-template-columns:1fr 80px;gap:20px}.cv-photo{width:80px;border-width:3px}.cv-identity h1{font-size:30pt}.cv-identity .case-pitch{font-size:13pt}.cv-identity>div>p:last-child{font-size:9pt}.cv-page .cv-identity{padding-bottom:15px}.cv-page .cv-identity h1{margin-top:0}}

/* Lavender accents reinforced at Laurine's request. */
:root{--lavender-wash:#efecf5;--accent-dark:#655282}
.header{border-bottom:3px solid var(--accent)}
.header .nav-contact{background:var(--accent);color:var(--ink)}
.hero h1>span{background:linear-gradient(transparent 72%,var(--accent) 72%,var(--accent) 94%,transparent 94%);box-decoration-break:clone}
.ghost{background:var(--lavender-wash);border-color:#c5b9db}
.ghost:hover{background:var(--accent)}
.hero-foot{background:var(--lavender-wash);padding:22px 24px;border-color:#d2c9e2}
.portrait-frame:after{background:#d5cbea}
.about{background:var(--lavender-wash);margin-top:56px;border-color:#d5cce5}
.section-heading h2 em,.about h2 em{background:linear-gradient(transparent 60%,var(--accent) 60%,var(--accent) 95%,transparent 95%);box-decoration-break:clone}
.eyebrow{color:var(--accent-dark)}
.timeline .date:before,.timeline li:last-child .date:before{width:9px;height:9px;top:6px;background:#b8a5d5;box-shadow:0 0 0 4px var(--lavender-wash)}
.timeline .org{color:var(--accent-dark)}
.filters button[aria-pressed=true]{background:var(--accent);color:var(--ink);border-color:#bcaed2}
.tags li{background:var(--lavender-wash);border-color:#d9d0e6}
.status{background:var(--lavender-wash);border-color:#c9bddb}
.missions-band h2 em{color:var(--accent);background:none}
.missions-band .eyebrow{color:#d8cfe8}
.missions-band .tags li{background:#302a3a;border-color:#6e607f}
.mission-columns span{color:var(--accent)}
.mission-columns{border-left:3px solid #b9a9d0}
.skills-grid .index{display:inline-block;min-width:31px;padding:9px 7px;text-align:center;background:var(--accent);color:var(--ink);margin-bottom:19px}
.skills-grid .tags li{background:var(--lavender-wash)}
.booking-art{background:#e1d8ed}
.palworld-art{background:#eeebf5}
.vespera-art{background:#ded5ed}
.cv-banner{background:var(--accent);border-color:#c6b8dc}
.contact h2 em{color:var(--accent-dark);background:linear-gradient(transparent 76%,var(--accent) 76%,var(--accent) 95%,transparent 95%)}
.contact-mail{border-bottom:3px solid #b8a5d5}
.cv-photo{border-color:var(--accent)}
.cv-page>section>h2{border-left:5px solid #b8a5d5;padding:10px 16px;background:var(--lavender-wash)}
.challenge{background:var(--lavender-wash);border-left:4px solid #b8a5d5}
.footer{border-top:3px solid var(--accent)}
@media(max-width:760px){.hero-foot{padding:18px 16px}.about{margin-top:34px}.mission-columns{padding-left:18px}.cv-page>section>h2{padding:9px 12px}}
@media print{.cv-page>section>h2{border-left:3px solid #b8a5d5;padding:4px 10px;background:#efecf5;print-color-adjust:exact}.cv-photo{border-color:#ded9ed}}


/* Visual project catalogue and concise editorial layout. */
.section{padding-top:85px;padding-bottom:85px}
.project-art{height:290px;gap:16px}
.project-art>.project-icon{width:200px;height:175px;align-self:center}
.project-icon{display:block;overflow:visible;flex-shrink:0}
.raccoon-lineup{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;width:100%;max-width:530px;align-self:center}
.bot-avatar{text-align:center;min-width:0}
.bot-avatar .project-icon{width:100%;height:auto}
.bot-avatar b{display:block;margin:-2px auto 8px;width:26px;height:26px;border-radius:50%;font:600 13px/26px var(--sans);background:#ded9ed;color:#17171a}
.bot-avatar>span{font-size:10px;letter-spacing:.03em;color:#f4f3f7}
.media-duo{display:flex;justify-content:center;gap:45px}
.media-duo>div{width:145px;min-width:0;text-align:center}
.media-duo .project-icon{width:100%;height:125px}
.media-duo span{display:block;font:italic 20px/1.3 Georgia,serif;margin-top:8px;color:#17171a}
.art-caption,.art-bottom{line-height:1.5}
.project-art .art-bottom{font-size:8px}
.integration-art{background:#ded9ed;color:#17171a}
.intranet-art{background:#efecf5;color:#17171a}
.pro-card{background:#fafafa;color:#17171a;border-radius:3px;overflow:hidden}
.pro-card .project-info{padding:24px 26px 28px}
.pro-card .project-art{border:0;border-radius:0}
.pro-card .project-info h3{font-size:29px}
.missions-band .pro-card .tags li{background:#efecf5;color:#17171a;border-color:#d9d0e6}
.missions-band .pro-card .status{color:#17171a}
.project-actions{display:flex;flex-wrap:wrap;gap:14px 25px;margin-top:22px}
.project-open{font-size:13px;font-weight:600;display:inline-flex;align-items:center;gap:16px;padding:6px 0;text-decoration:none;border-bottom:2px solid #b8a5d5}
.project-open:hover{color:#655282;border-color:#655282}
.project-info>p{max-width:100%;font-size:15px}
.mission-note{font-size:12px;margin-top:30px}
.case-heading{padding:45px 0 30px}
.case-pitch{font-size:clamp(22px,2.5vw,32px)}
.case-hero .project-art>.project-icon{width:260px;height:230px}
.case-hero .raccoon-lineup{max-width:670px;gap:35px}
.case-hero .bot-avatar>span{font-size:13px}
.case-hero .media-duo{gap:75px}
.case-hero .media-duo>div{width:200px}
.case-hero .media-duo .project-icon{height:175px}
.case-main>h2{font-size:31px;line-height:1.3;margin-bottom:30px}
.feature-tiles{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.feature-tiles article{padding:24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.feature-tiles .index{font-size:11px;margin-bottom:14px}
.feature-tiles h3{font-size:21px;line-height:1.2}
.feature-tiles p{font-size:14px;line-height:1.6;color:var(--muted);margin-top:12px}
.case-main .challenge p:not(.eyebrow){margin-top:12px;font-size:15px}
.project-note{font-size:13px;color:var(--muted);margin-top:25px!important}
.expertise-band{background:#efecf5}
.expertise-band .tags li,.expertise-band .skills-grid .tags li{background:#fafafa}
.expertise-band .skills-grid{border-color:#d5cce5}
.formation{padding-top:65px}
.formation .timeline li{grid-template-columns:1fr 2fr;padding:19px 0}
.formation .timeline .org{margin-top:7px}
.editorial-art{font:italic 44px/1.1 Georgia,serif;align-self:center}
.site-mosaic{display:grid;grid-template-columns:1fr 1fr;gap:9px;transform:rotate(-4deg);max-width:270px;width:100%;align-self:center}
.site-mosaic span{background:#fafafa;padding:15px 20px;border:1px solid #c4b6d8;font-size:19px}
.site-mosaic span:nth-child(2){background:#ded9ed}
.cv-project .eyebrow{font-size:10px;margin-bottom:8px}
.cv-project .small{display:block;margin-top:12px}
@media(max-width:1050px){.media-duo{gap:22px}.media-duo>div{width:125px}.raccoon-lineup{gap:8px}.project-art{padding:22px}.pro-card .project-info{padding:22px}.pro-card .project-info h3{font-size:26px}}
@media(max-width:760px){.section{padding-top:60px;padding-bottom:60px}.project-art{height:270px;padding:22px}.raccoon-lineup{gap:8px}.bot-avatar>span{font-size:9px}.media-duo{gap:35px}.media-duo>div{width:120px}.project-art .art-bottom{font-size:7px}.project-info h3{font-size:27px}.case-hero .project-art>.project-icon{height:170px;width:200px}.case-hero .raccoon-lineup{gap:7px}.case-hero .bot-avatar>span{font-size:9px}.case-hero .media-duo{gap:28px}.case-hero .media-duo>div{width:120px}.case-hero .media-duo .project-icon{height:115px}.case-main>h2{font-size:27px}.feature-tiles{grid-template-columns:1fr}.feature-tiles article{padding:21px}.formation .timeline li{grid-template-columns:1fr;gap:9px}.mission-note{font-size:11px}.pro-card .project-info{padding:22px}.site-mosaic{max-width:220px}.editorial-art{font-size:35px}}
@media(max-width:370px){.project-art{padding:17px}.raccoon-lineup{gap:3px}.bot-avatar>span{font-size:8px}.bot-avatar b{width:22px;height:22px;line-height:22px;font-size:11px}.media-duo,.case-hero .media-duo{gap:16px}.media-duo>div,.case-hero .media-duo>div{width:105px}}
@media print{.section{padding:0}.cv-project{padding:12px 0}.cv-project .eyebrow{font-size:8pt}.cv-project .small{margin-top:5px}.cv-project h3{font-size:12pt}}

/* Soft mascot treatment: tonal lavender, rounded shapes, no heavy outlines. */
.raccoon-art{background:#ede8f3;color:#655282;border-color:#ded5e9}
.bot-avatar>span{color:#655282}
.bot-avatar b{background:#fafafa;color:#655282;font-weight:500;border:1px solid #ded5e9}
.vespera-art{background:#e6def0;color:#655282}
.media-duo span{color:#655282}

/* One calm raccoon mark, with the five bot initials underneath. */
.raccoon-signature{display:flex;flex-direction:column;align-items:center;gap:5px}
.raccoon-signature>.project-icon{width:145px;height:117px}
.bot-initials{display:flex;justify-content:center;gap:28px}
.bot-initials>span{font:500 16px/1.2 var(--sans);color:#655282;text-align:center;min-width:30px}
.bot-initials small{display:block;font:9px/1.5 var(--sans);margin-top:5px;color:#655282}
.case-hero .raccoon-signature>.project-icon{width:190px;height:157px}
@media(max-width:370px){.bot-initials{gap:17px}.bot-initials>span{font-size:14px}.bot-initials small{font-size:8px}}

/* Direct destinations belong to the project introduction. */
.project-site-access{display:flex;align-items:center;flex-wrap:wrap;gap:18px 24px;margin-top:28px}
.project-site-access>div{display:flex;flex-direction:column;gap:3px;min-width:0}
.site-domain{font-size:12px;color:#655282;overflow-wrap:anywhere}
.project-site-access .small{font-size:11px;max-width:340px}
.site-link-notice{font-size:13px;color:#62626b;margin-top:22px!important}
.project-sites{margin-top:30px;padding:25px 28px;background:#efecf5;border-left:4px solid #b8a5d5}
.project-site-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px 22px;margin-top:18px}
.project-site-grid .project-open{justify-content:space-between;font-size:12px;gap:9px}
@media(max-width:760px){.project-site-access{align-items:flex-start;flex-direction:column;gap:12px}.project-site-access .button{max-width:100%}.project-sites{padding:20px}.project-site-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px}.site-domain{font-size:11px}}

.agenda-art{background:#ded5e9}.agenda-art .project-icon{width:180px;height:158px}

.case-screenshot{display:block;width:100%;height:auto;border:1px solid #ded9ed;border-radius:16px;box-shadow:0 12px 40px #6552820d}
