:root{--paper:#f5f3ec;--ink:#27392f;--muted:#697066;--olive:#7c8760;--line:#dcded2;--highlight:#e7ebdc;--pointer-x:70vw;--pointer-y:35vh;color-scheme:light;font-family:Arial,Helvetica,sans-serif;font-size:15px;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;-webkit-font-smoothing:antialiased}body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(340px circle at var(--pointer-x) var(--pointer-y),#b6c48d16,transparent 80%)}button,a,summary{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button,a,summary{touch-action:manipulation}a{color:inherit;text-decoration:none}a,button,summary{outline-offset:6px}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--olive)}img{max-width:100%;display:block}p{line-height:1.8;margin:0 0 18px}h1,h2,h3,h4{margin:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400}em{font-weight:400;color:var(--olive)}button:disabled{cursor:default}button::-moz-focus-inner{border:0}details>summary{list-style:none;cursor:pointer}summary::-webkit-details-marker{display:none}summary::marker{content:""}[hidden]{display:none!important}.page-width{width:min(1392px,calc(100% - 112px));margin-inline:auto}.icon{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon-defs{position:absolute;width:0;height:0;overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:20px;top:-70px;z-index:300;background:var(--ink);color:white;padding:15px}.skip-link:focus{top:12px}.eyebrow{font-size:10px;line-height:1.5;letter-spacing:1.7px;font-weight:500;text-transform:uppercase}.little-line{width:25px;height:1px;background:var(--olive);display:inline-block}.status-dot{display:inline-block;width:6px;height:6px;background:var(--olive);border-radius:50%;box-shadow:0 0 0 3px #7c876013;flex-shrink:0}.site-header{position:sticky;top:0;z-index:100;background:#f5f3ecf2;backdrop-filter:blur(12px)}.header-inner{height:93px;display:flex;align-items:center;gap:32px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:19px;flex-shrink:0}.monogram{font-family:Georgia,serif;font-size:38px;letter-spacing:-3px;line-height:1}.monogram>span{font-size:22px;vertical-align:top;letter-spacing:0;margin-left:2px}.brand-name{font-size:11px;font-weight:600}.brand-name small{display:block;font-weight:400;font-size:7px;letter-spacing:1.45px;margin-top:6px}.site-header nav{display:flex;gap:27px;margin-left:auto;align-items:center}.site-header nav a{font-size:12px;display:flex;align-items:center;gap:7px;position:relative;padding-block:14px}.site-header nav a:after{content:"";position:absolute;bottom:7px;left:0;height:1px;width:0;background:var(--olive);transition:width .2s}.site-header nav a:hover:after,.site-header nav a[aria-current]:after{width:100%}.site-header nav .icon{width:14px;height:14px}.motion-toggle{border:1px solid var(--line);background:transparent;border-radius:25px;display:flex;align-items:center;gap:8px;padding:11px 14px;min-height:40px;font-size:10px;white-space:nowrap}.motion-toggle:hover{background:var(--highlight)}.motion-toggle[aria-pressed=false] .status-dot{background:#a9ada5;box-shadow:none}.scroll-track{position:absolute;bottom:0;left:0;right:0;height:1px;pointer-events:none}.scroll-track span{display:block;height:100%;background:var(--olive);transform:scaleX(0);transform-origin:left;will-change:transform}.portfolio-layout{display:grid;grid-template-columns:minmax(0,1.07fr) minmax(0,1fr);column-gap:clamp(42px,5.5vw,90px);align-items:start;position:relative}.portfolio-layout>section,.site-footer{grid-column:1;min-width:0}.hero{grid-row:1;min-height:calc(100svh - 93px);display:flex;flex-direction:column;justify-content:center;padding:64px 0 43px}.hero-eyebrow{display:flex;align-items:center;gap:13px;font-size:10px;letter-spacing:1.4px}.hero h1{font-size:clamp(91px,8.65vw,133px);line-height:.93;letter-spacing:-7px;margin-top:34px;margin-bottom:35px}.hero h1 em{letter-spacing:-7px}.title-dot{color:var(--olive)}.specialties{font-size:10px;letter-spacing:1.6px;margin:0 0 28px;line-height:1.4}.specialties b{font-weight:400;margin:0 11px;color:#a1a892}.hero-intro{font-size:15px;color:#565f56;line-height:1.85;max-width:430px;margin-bottom:31px}.hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:49px;padding:15px 21px;border:1px solid transparent;font-size:12px;border-radius:3px;transition:background .2s,transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px);box-shadow:0 7px 18px #26352a12}.button-dark{background:var(--ink);color:var(--paper)}.button-dark:hover{background:#41563f}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{background:#e4eccf}.button .icon{width:17px;height:17px}.text-link{display:inline-flex;align-items:center;gap:11px;font-size:12px;padding-block:10px;border-bottom:1px solid transparent;transition:border-color .2s}.text-link:hover{border-color:var(--olive)}.text-link .icon{width:15px;height:15px}.hero-footnote{display:flex;align-items:center;gap:14px;margin-top:36px;color:var(--muted);font-size:10px}.hero-footnote i{height:12px;width:1px;background:var(--line)}.hero-small-note{margin-top:42px;display:flex;align-items:center;gap:21px;font-size:9px;color:#72796c}.hero-small-note>span:first-child{font-size:8px;letter-spacing:1px;background:#e8ebdf;padding:6px 8px;border-radius:2px}.portrait-rail{grid-column:2;grid-row:1 / span 7;position:sticky;top:113px;align-self:start;padding-top:12px;min-width:0;z-index:10}.portrait-card{width:min(100%,calc(100svh - 278px));margin-inline:auto}.portrait-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:7px;letter-spacing:1.1px;color:var(--muted);margin:10px 3px 17px}.portrait-meta>span:first-child{display:flex;align-items:center;gap:8px}.portrait-meta .status-dot{width:5px;height:5px}.portrait-stage{display:block;position:relative;aspect-ratio:1;width:100%;isolation:isolate;touch-action:pan-y;user-select:none;border-radius:3px;outline-offset:5px;cursor:default}.portrait-stage.over-subject{cursor:pointer}.portrait-disc{position:absolute;left:8%;right:2%;top:13%;bottom:0;background:#e1e6d5;border-radius:50% 50% 3px 3px;z-index:0;overflow:hidden}.disc-grid{position:absolute;inset:21% 0 0 13%;border-radius:50% 50% 0 0;background-image:linear-gradient(#fff4 1px,transparent 1px),linear-gradient(90deg,#fff4 1px,transparent 1px);background-size:44px 44px;opacity:.35;pointer-events:none;z-index:0}.orbit-stroke{position:absolute;left:6%;top:13%;width:88%;height:72%;border:1px solid #a8b49170;border-radius:50%;transform:rotate(-20deg);pointer-events:none;z-index:0}.portrait-layer{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}.portrait-frame{position:absolute;width:100%;height:100%;inset:0;object-fit:contain;opacity:0;transition:opacity 110ms linear;pointer-events:none}.portrait-frame.is-current{opacity:1;z-index:1}.speech-bubble{position:absolute;z-index:3;top:12%;left:-5%;background:var(--paper);border:1px solid #d6dbc9;padding:10px 12px;font-size:10px;box-shadow:0 8px 26px #283b3008;border-radius:5px;transform:rotate(-5deg);max-width:170px;line-height:1.5;pointer-events:none}.speech-bubble:after{content:"";position:absolute;width:8px;height:8px;background:var(--paper);border-right:1px solid #d6dbc9;border-bottom:1px solid #d6dbc9;right:19px;bottom:-5px;transform:rotate(45deg)}.portrait-badge{position:absolute;z-index:4;bottom:15px;left:50%;transform:translateX(-50%);background:#f5f3ecf2;border:1px solid #fff7;padding:10px 14px;border-radius:30px;white-space:nowrap;display:flex;gap:7px;align-items:center;font-size:10px;box-shadow:0 6px 20px #1c2a2520;pointer-events:none}.portrait-badge .icon{width:13px;height:13px}.touch-hint{display:none}.stage-corner{position:absolute;width:15px;height:15px;z-index:2;border-color:#9ca68d;border-style:solid;opacity:.7;pointer-events:none}.top-left{top:0;left:0;border-width:1px 0 0 1px}.bottom-right{bottom:0;right:0;border-width:0 1px 1px 0}.portrait-status{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:13px 2px;color:var(--muted);font-size:9px}.tracking-label{display:flex;align-items:center;gap:9px}.gaze-map{width:24px;height:24px;position:relative;border:1px solid #bcc5a7;border-radius:50%;background:linear-gradient(90deg,transparent 48%,#dce2cf 49%,#dce2cf 52%,transparent 53%),linear-gradient(transparent 48%,#dce2cf 49%,#dce2cf 52%,transparent 53%)}.gaze-map i{position:absolute;left:50%;top:50%;width:4px;height:4px;border-radius:50%;background:var(--olive);transform:translate(-50%,-50%);will-change:transform}.portrait-note{font-family:Georgia,serif;font-size:15px;line-height:1.8;margin-top:6px;text-align:center}.portrait-note>span{display:block;font-family:Arial,sans-serif;font-size:10px;color:var(--muted)}.click-ripple{position:absolute;width:10px;height:10px;border:1px solid #d0daac;border-radius:50%;z-index:6;transform:translate(-50%,-50%);animation:ripple .65s ease-out forwards;pointer-events:none}@keyframes ripple{to{width:95px;height:95px;opacity:0}}.portrait-stage[data-mode=reacting] .speech-bubble{border-color:#a4b67b;background:#f1f5df}.portrait-stage[data-mode=reacting] .speech-bubble:after{background:#f1f5df}.content-section{padding-block:56px 0;scroll-margin-top:0;border-top:1px solid var(--line);margin-bottom:63px}.work-section{grid-row:2}.reels-section{grid-row:3}.experience-section{grid-row:4}.about-section{grid-row:5}.contact-section{grid-row:6}.section-marker{display:flex;align-items:center;gap:15px;font-size:8px;letter-spacing:1.1px;color:var(--muted);margin-bottom:28px;line-height:1.5}.section-marker i{height:1px;flex:1;background:var(--line)}.section-marker span:last-child{font-size:7px}.content-section h2{font-size:clamp(34px,3.55vw,51px);line-height:1.1;letter-spacing:-1.8px;margin-bottom:20px}.section-intro{font-size:13px;color:var(--muted);line-height:1.85;max-width:470px;margin-bottom:28px}.project-filters{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:23px}.project-filters button{border:1px solid var(--line);padding:10px 13px;min-height:39px;border-radius:3px;background:transparent;font-size:10px;transition:background .2s,border-color .2s}.project-filters button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.project-filters button:hover:not([aria-pressed=true]){background:var(--highlight);border-color:#b7c19f}.project-filters button span{font-size:8px;opacity:.6;padding-left:8px}.projects-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.work-card{border:1px solid var(--line);border-radius:4px;background:#faf9f580;min-width:0;transition:border-color .2s,background .2s,box-shadow .2s}.work-card:hover,.work-card[open]{border-color:#adba98;background:#fafbf5;box-shadow:0 5px 22px #2b3b3005}.work-card summary{padding:20px 18px 0;display:flex;flex-direction:column;min-height:268px}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:29px;gap:8px}.card-top .eyebrow{font-size:8px;letter-spacing:1.2px;color:#6d7857}.project-number{font:italic 20px Georgia,serif;color:#adb69b}.card-title{font-family:Georgia,serif;font-size:26px;letter-spacing:-.7px;line-height:1.12;display:block;margin-bottom:7px}.card-client{font-size:9px;color:#737b6e;line-height:1.5;display:block;margin-bottom:17px}.card-summary{font-size:11px;color:#5f695d;line-height:1.8;display:block;margin-bottom:20px}.card-bottom{display:flex;align-items:center;justify-content:space-between;font-size:9px;margin-top:auto;border-top:1px solid var(--line);padding-block:13px;color:#5d684f}.card-bottom .icon{width:15px;height:15px;transition:transform .2s}.work-card[open] .card-bottom .icon{transform:rotate(45deg)}.work-card[open] summary{min-height:0}.project-detail{padding:9px 18px 21px}.project-detail h4{font-weight:400;text-transform:uppercase;font-size:8px;letter-spacing:1px;color:var(--olive);margin-bottom:9px}.project-detail .role{font-size:11px;color:var(--ink);margin-bottom:11px;font-weight:600}.project-detail p{font-size:12px;color:#576351;line-height:1.85}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-block:17px}.tags span{font-size:8px;padding:6px 8px;background:#e9eede;border:1px solid #dce3cd;border-radius:3px;color:#556144}.inline-link{font-size:10px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:13px;border-top:1px solid var(--line);line-height:1.8}.inline-link .icon{width:13px;height:13px}.inline-link:hover{text-decoration:underline}.reels-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 16px}.reel-card{min-width:0;display:block}.reel-image{display:block;position:relative;aspect-ratio:16/10;background:#26362d;border-radius:4px;overflow:hidden}.reel-image img{width:100%;height:100%;object-fit:contain;transition:transform .45s ease,opacity .3s}.reel-card:hover .reel-image img{transform:scale(1.045);opacity:.65}.play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:37px;height:37px;background:#f5f3eceb;border:1px solid #ffffff80;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--ink);box-shadow:0 2px 12px #0002}.play-icon .icon{width:16px;height:16px}.watch-label{position:absolute;left:12px;right:12px;bottom:9px;display:flex;align-items:center;justify-content:space-between;color:white;font-size:7px;letter-spacing:1px;text-shadow:0 1px 4px #000;background:#26362d90;border-radius:2px;padding:6px}.watch-label .icon{width:11px;height:11px}.reel-card h3{font-family:Georgia,serif;font-weight:400;font-size:22px;margin-block:14px 7px}.reel-card p{font-size:11px;color:var(--muted);line-height:1.75;margin:0}.source-note{font-size:9px;color:#7b8274;line-height:1.7;margin:24px 0 0}.experience-item{border-bottom:1px solid var(--line)}.experience-item summary{display:grid;grid-template-columns:90px 1fr 16px;gap:16px;align-items:start;padding:26px 0;line-height:1.6}.experience-date{font-size:9px;color:var(--olive);padding-top:3px}.experience-head strong{font-size:14px;font-weight:500;line-height:1.55;display:block}.experience-head>span{display:block;font-size:10px;margin-top:9px;color:var(--muted)}.experience-head b{font-weight:400;margin:0 4px}.experience-item summary>.icon{width:14px;height:14px;margin-top:4px;transition:transform .2s}.experience-item[open] summary>.icon{transform:rotate(45deg)}.experience-detail{padding:0 0 20px 106px;color:#5d6957;font-size:12px}.experience-detail p{margin-bottom:10px}.experience-detail ul{padding-left:15px;line-height:1.85;margin:12px 0}.experience-detail li{margin-bottom:10px;padding-left:4px}.experience-detail li::marker{color:#8e9c74}.experience-cv{margin-top:23px}.about-section>p{font-size:13px;color:var(--muted);line-height:1.9}.about-section>p.about-lead{font-family:Georgia,serif;font-size:23px;line-height:1.5;color:var(--ink);margin-top:28px}.skill-groups{margin-top:31px;border-top:1px solid var(--line)}.skill-groups details{border-bottom:1px solid var(--line)}.skill-groups summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 0;font-size:12px}.skill-groups summary .icon{width:13px;height:13px}.skill-groups details[open] summary .icon{transform:rotate(45deg)}.skill-groups p{font-size:11px;line-height:2;color:#65715c;margin-bottom:20px;max-width:97%}.education-card{margin-top:28px;padding:23px 22px;background:#e8ebdf;border-radius:3px}.education-card .eyebrow{font-size:8px;color:#76845e}.education-card h3{font-family:Georgia,serif;font-weight:400;font-size:21px;line-height:1.4;margin-block:10px 7px}.education-card p{font-size:10px;color:#637157;margin:0;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.languages{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px}.languages>span{font-size:10px}.languages b{font-weight:400;display:block;font-size:9px;color:#7c856f;margin-top:5px}.contact-section{border:0;padding-top:0}.contact-panel{background:var(--ink);color:var(--paper);border-radius:5px;padding:34px}.contact-panel .section-marker{color:#bcc9a9;font-size:7px}.contact-panel .section-marker i{background:#617253}.contact-panel h2{font-size:clamp(53px,5vw,71px);margin-top:33px;line-height:1.02}.contact-panel h2 em{color:#c8d3aa}.contact-panel>p{font-size:13px;line-height:1.9;color:#c1ccb9;max-width:380px;margin-top:25px;margin-bottom:28px}.contact-links{margin-top:35px;border-top:1px solid #617253;padding-top:20px;display:flex;flex-wrap:wrap;gap:18px 28px;font-size:11px;color:#d4ddc8}.email-row{display:flex;align-items:center;justify-content:space-between;width:100%;gap:7px;min-width:0}.email-address{font-size:11px;overflow-wrap:anywhere;line-height:1.7}.copy-button{border:0;background:transparent;color:#d4ddc8;min-width:40px;min-height:40px;display:inline-flex;justify-content:center;align-items:center;border-radius:3px}.copy-button:hover{background:#4a6146}.copy-button .icon{width:16px;height:16px}.linkedin-link{margin-left:auto;display:inline-flex;gap:10px;align-items:center}.linkedin-link .icon{width:13px;height:13px}.contact-links a:hover{color:white;text-decoration:underline}.site-footer{grid-row:7;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding-bottom:40px;font-size:9px;color:var(--muted)}.site-footer>a:hover{text-decoration:underline}.site-notes{width:100%;border-top:1px solid var(--line);padding-top:18px}.site-notes summary{font-size:9px}.site-notes summary:hover{color:var(--ink)}.site-notes p{font-size:10px;line-height:1.9;margin:14px 0 0;max-width:530px}.toast{position:fixed;bottom:25px;left:50%;max-width:calc(100vw - 35px);transform:translate(-50%,20px);padding:13px 21px;font-size:12px;color:var(--paper);background:var(--ink);border:1px solid #829368;border-radius:5px;box-shadow:0 10px 25px #29352b20;z-index:200;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;line-height:1.7}.toast.is-visible{opacity:1;transform:translate(-50%,0)}.noscript-message{font-size:12px;padding:20px;text-align:center}.motion-off *, .motion-off *::before,.motion-off *::after{animation:none!important;transition:none!important}.motion-off::before{display:none}
@media(min-width:1500px){.portrait-rail{top:128px}.portrait-card{width:min(100%,calc(100svh - 260px))}.hero-intro{font-size:16px}.hero h1{font-size:145px}.work-card summary{min-height:280px}.card-title{font-size:29px}.card-summary{font-size:12px}.reel-card p{font-size:12px}}
@media(max-width:1190px){.page-width{width:calc(100% - 72px)}.portfolio-layout{column-gap:40px;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.header-inner{gap:20px}.site-header nav{gap:20px}.hero h1{font-size:103px;letter-spacing:-5px}.hero h1 em{letter-spacing:-5px}.hero-intro{font-size:14px}.portrait-meta{font-size:6px;letter-spacing:.9px}.speech-bubble{max-width:145px;font-size:9px;padding:8px 10px;left:-2%}.portrait-note{font-size:14px}.portrait-note>span{font-size:9px}.card-title{font-size:23px}.card-top{margin-bottom:23px}.work-card summary{padding:17px 14px 0;min-height:281px}.project-detail{padding-inline:14px}.experience-item summary{grid-template-columns:76px 1fr 14px;gap:12px}.experience-detail{padding-left:88px}.contact-panel{padding:28px}.hero-actions{gap:20px}.button{font-size:11px;gap:18px;padding-inline:18px}.text-link{font-size:11px}.section-marker{font-size:7px;letter-spacing:1px}.section-marker>span:last-child{font-size:6px}}
@media(max-width:960px) and (min-width:761px){.page-width{width:calc(100% - 48px)}.portfolio-layout{column-gap:28px;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.brand-name{display:none}.site-header nav{gap:22px}.hero h1{font-size:91px}.hero-eyebrow{font-size:8px;letter-spacing:1px}.hero-intro{font-size:13px}.hero-actions{gap:13px}.hero-actions .button{gap:12px;padding-inline:14px}.hero-actions .text-link{font-size:10px;gap:6px}.hero-footnote{font-size:8px;gap:9px}.specialties{font-size:9px;letter-spacing:1px}.specialties b{margin:0 6px}.portrait-meta>span:last-child{display:none}.speech-bubble{font-size:8px;padding:8px;max-width:133px;left:0}.portrait-badge{font-size:8px;padding:9px 11px}.portrait-status{font-size:8px}.portrait-note{font-size:13px}.portrait-note>span{font-size:8px}.card-title{font-size:23px}.projects-grid{grid-template-columns:1fr}.work-card summary{min-height:230px;padding:20px 22px 0}.card-summary{font-size:12px;max-width:290px}.project-detail{padding-inline:22px}.card-top{margin-bottom:16px}.project-filters{gap:5px}.project-filters button{padding:9px 10px;font-size:9px}.reels-grid{gap:20px 12px}.reel-card h3{font-size:19px}.watch-label{font-size:6px;left:6px;right:6px}.experience-item summary{grid-template-columns:1fr 15px;gap:6px}.experience-date{grid-column:1;grid-row:1}.experience-head{grid-column:1;grid-row:2}.experience-item summary>.icon{grid-row:2;grid-column:2}.experience-detail{padding-left:0}.contact-panel{padding:25px}.contact-panel .section-marker span:last-child{display:none}}
@media(max-width:760px){html{scroll-padding-top:87px}.page-width{width:calc(100% - 40px)}.header-inner{height:73px;gap:12px}.brand{gap:0}.monogram{font-size:34px}.monogram>span{font-size:19px}.brand-name{display:none}.site-header nav{gap:20px}.site-header nav a{font-size:11px}.site-header nav a .icon{width:12px;height:12px}.site-header nav a[href="#about"]{display:none}.motion-toggle{font-size:9px;padding:9px 11px;min-height:37px;gap:6px}.status-dot{width:5px;height:5px}.portfolio-layout{display:flex;flex-direction:column;gap:0}.portfolio-layout>section,.site-footer,.portrait-rail{width:100%}.hero{order:0;min-height:0;padding:47px 5px 36px}.hero h1{font-size:107px;line-height:.93;letter-spacing:-5.5px;margin-top:26px;margin-bottom:26px}.hero h1 em{letter-spacing:-5.5px}.hero-eyebrow{font-size:8px;letter-spacing:1.3px}.hero-intro{font-size:14px;line-height:1.85;margin-bottom:25px;max-width:430px}.specialties{font-size:9px;letter-spacing:1.4px;margin-bottom:24px}.specialties b{margin:0 9px}.hero-actions{gap:25px}.hero-actions .button{font-size:12px;gap:24px;min-height:48px;padding-inline:20px}.hero-actions .text-link{font-size:11px}.hero-footnote{font-size:9px;margin-top:28px;gap:13px}.hero-small-note{display:none}.portrait-rail{order:1;position:relative;top:auto;z-index:50;padding:0;margin-block:0 44px}.portrait-card{width:min(100%,465px);margin-inline:auto}.portrait-meta{margin-inline:5px;margin-bottom:12px;font-size:7px;letter-spacing:1px}.portrait-meta>span:last-child{font-size:6px}.speech-bubble{font-size:9px;max-width:160px;left:0;top:14%}.portrait-badge{font-size:10px}.portrait-status{font-size:9px}.portrait-note{font-size:15px;margin-top:2px}.portrait-note>span{font-size:10px}.portrait-rail.is-docked .portrait-card{position:fixed;right:18px;bottom:20px;width:136px;max-width:none;z-index:80;margin:0;background:var(--paper);border:1px solid #c0cbaa;border-radius:14px;box-shadow:0 8px 30px #1d312223;padding:3px 3px 0}.portrait-rail.is-docked .portrait-meta,.portrait-rail.is-docked .portrait-note,.portrait-rail.is-docked .portrait-status,.portrait-rail.is-docked .portrait-badge,.portrait-rail.is-docked .stage-corner,.portrait-rail.is-docked .disc-grid,.portrait-rail.is-docked .orbit-stroke{display:none}.portrait-rail.is-docked .portrait-stage{border-radius:11px;overflow:hidden}.portrait-rail.is-docked .portrait-disc{inset:0;border-radius:10px}.portrait-rail.is-docked .speech-bubble{display:none}.portrait-rail.is-docked .portrait-stage[data-mode=reacting]{overflow:visible}.portrait-rail.is-docked .portrait-stage[data-mode=reacting] .speech-bubble{display:block;top:-35px;right:0;left:auto;font-size:9px;white-space:nowrap;max-width:none;transform:rotate(-3deg);padding:7px 10px}.work-section{order:2}.reels-section{order:3}.experience-section{order:4}.about-section{order:5}.contact-section{order:6}.site-footer{order:7}.content-section{padding-top:39px;margin-bottom:47px;scroll-margin-top:0}.section-marker{font-size:8px;letter-spacing:1px;margin-bottom:25px;gap:12px}.section-marker span:last-child{font-size:7px}.content-section h2{font-size:43px;letter-spacing:-1.6px;line-height:1.13}.section-intro{font-size:13px;max-width:470px;margin-bottom:25px}.project-filters{gap:7px}.project-filters button{font-size:10px;min-height:41px;padding-inline:13px}.projects-grid{gap:13px}.work-card summary{padding:20px 18px 0;min-height:267px}.card-title{font-size:27px}.card-summary{font-size:12px}.card-client{font-size:10px}.project-detail{padding-inline:18px}.reels-grid{gap:27px 16px}.reel-card h3{font-size:22px}.reel-card p{font-size:12px}.watch-label{font-size:7px}.experience-item summary{grid-template-columns:84px 1fr 16px;gap:13px}.experience-detail{padding-left:97px}.experience-head strong{font-size:14px}.experience-detail,.about-section>p{font-size:13px}.about-section>p.about-lead{font-size:24px}.education-card h3{font-size:21px}.contact-section{padding-top:0}.contact-panel{padding:29px 27px}.contact-panel h2{font-size:65px;letter-spacing:-2px}.contact-panel .section-marker{font-size:8px}.contact-links{gap:18px 24px}.email-address{font-size:11px}.site-footer{padding-bottom:180px;font-size:10px}.site-notes summary{font-size:10px}.site-notes p{font-size:11px}.toast{bottom:173px;font-size:11px}.skill-groups summary{font-size:13px;min-height:50px}.skill-groups p{font-size:12px}}
@media(max-width:480px){.header-inner{gap:10px}.site-header nav{gap:15px}.site-header nav a{font-size:10px}.site-header nav a[href="#about"]{display:none}.site-header nav .icon{display:none}.motion-toggle{font-size:8px;padding:9px 9px;margin-left:0}.monogram{font-size:31px}.monogram>span{font-size:17px}.hero h1{font-size:98px}.hero-actions{gap:20px}.hero-actions .button{font-size:11px;gap:16px;padding-inline:17px}.hero-intro{font-size:13px}.projects-grid{grid-template-columns:1fr}.work-card summary{min-height:227px;padding:21px 23px 0}.card-top{margin-bottom:21px}.card-title{font-size:28px}.card-summary{font-size:12px;max-width:360px}.card-bottom{font-size:10px;padding-block:14px}.project-detail{padding-inline:23px}.project-detail p{font-size:13px}.project-detail .role{font-size:12px}.project-detail h4{font-size:9px}.tags span{font-size:9px}.inline-link{font-size:11px}.experience-item summary{grid-template-columns:1fr 16px;gap:6px;padding-block:23px}.experience-date{grid-row:1;grid-column:1;font-size:10px}.experience-head{grid-row:2;grid-column:1}.experience-item summary>.icon{grid-row:2;grid-column:2}.experience-detail{padding-left:0}.experience-head>span{font-size:11px}.reels-grid{gap:23px 13px}.reel-card h3{font-size:21px;line-height:1.2}.reel-card p{font-size:11px}.watch-label{font-size:6px;letter-spacing:.5px;left:5px;right:5px;bottom:6px}.watch-label .icon{width:9px;height:9px}.play-icon{height:32px;width:32px}.content-section h2{font-size:40px}.portrait-rail.is-docked .portrait-card{width:125px;right:14px;bottom:17px}.project-filters{gap:5px}.project-filters button{padding-inline:12px}.section-marker span:last-child{font-size:6px}.contact-panel{padding:27px 22px}.contact-panel h2{font-size:61px}.email-address{font-size:10px}.contact-links{font-size:11px}.portrait-note>span{font-size:9px}.portrait-meta{font-size:6px}.source-note{font-size:9px;max-width:90%}.site-footer{padding-bottom:173px}.toast{bottom:157px}}
@media(max-width:350px){.page-width{width:calc(100% - 28px)}.site-header nav{gap:10px}.site-header nav a{font-size:9px}.hero{padding-inline:1px}.hero h1{font-size:89px}.hero-actions{gap:15px}.hero-actions .button{gap:10px;padding-inline:13px}.hero-actions .text-link{font-size:10px;gap:6px}.project-filters button{padding-inline:9px}.portrait-rail.is-docked .portrait-card{width:109px}.content-section h2{font-size:36px}}
@media(hover:none),(pointer:coarse){.desktop-hint{display:none}.touch-hint{display:inline}.portrait-stage{cursor:default}.button:hover{transform:none}.reel-card:hover .reel-image img{transform:none;opacity:1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body:not(.motion-override) *,body:not(.motion-override) *::before,body:not(.motion-override) *::after{animation:none!important;transition:none!important}}
@media print{.site-header,.portrait-rail,.project-filters,.site-notes,.toast,.copy-button,.skip-link{display:none!important}.portfolio-layout{display:block}.page-width{width:100%}.hero{min-height:0;padding:20px 0}.hero h1{font-size:70px}.content-section{padding-top:20px;margin-bottom:30px}.contact-panel{color:#000;background:none;border:1px solid #aaa}.contact-panel p,.contact-panel em,.contact-links{color:#333}.button{color:#111;background:white;border:1px solid #aaa}.work-card,.experience-item,.reel-card{break-inside:avoid}.site-footer{padding-bottom:0}.hero-small-note{display:none}}
