@charset "UTF-8";
:root{--paper:#f5f4ef;--ink:#242923;--muted:#666a60;--line:#d8dbd0;--olive:#5c6846;--accent:#db714d;--radius:5px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #a34728;outline-offset:5px}.shell{max-width:1600px;padding:0 5%;margin:auto}.header{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.identity{display:block;font-size:24px;font-weight:500;letter-spacing:-.8px}.identity small{display:block;font-weight:400;font-size:12px;color:var(--muted);letter-spacing:0;margin-top:6px}.intro{position:relative;padding:67px 0 57px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:1.6px;color:var(--muted);font-weight:600}.intro .eyebrow{display:flex;align-items:center;gap:9px}.dot{width:7px;height:7px;background:var(--olive);border-radius:50%}h1{font-size:clamp(60px,7.1vw,108px);line-height:.99;letter-spacing:-6px;font-weight:500;margin:30px 0 28px}h1 em{font-family:Georgia,'Times New Roman',serif;color:var(--olive);font-weight:400;letter-spacing:-5px}.intro-bottom{display:flex;align-items:flex-end;justify-content:space-between;max-width:870px}.intro-bottom p{color:var(--muted);font-size:15px;line-height:1.7;margin:0}.work{padding-top:25px;border-top:1px solid var(--line)}.section-bar{display:flex;align-items:center;justify-content:space-between;gap:20px}.section-title{display:flex;align-items:center;gap:11px}.section-title h2{font-size:19px;letter-spacing:-.5px;font-weight:500;margin:0}.section-title>span{font-size:10px;color:var(--muted);align-self:flex-start;margin-top:1px}.grid{margin-top:25px;display:grid;grid-template-columns:1fr 1fr;gap:38px 27px}.card-button{width:100%;text-align:left;background:none;border:0;padding:0;display:block}.cover{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:var(--radius);background:#e1e1d6}.cover img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .6s cubic-bezier(.2,.65,.3,1)}.card-button:hover .cover img{transform:scale(1.035)}.media-action{position:absolute;bottom:21px;left:21px;background:#f5f4eff2;border-radius:40px;padding:10px 13px;display:flex;gap:9px;align-items:center;font-size:11px}.action-icon{font-size:10px}.card-number{position:absolute;bottom:25px;right:23px;font-size:11px;letter-spacing:1px;color:white}.card-meta{display:flex;justify-content:space-between;gap:12px;margin-top:16px;align-items:flex-start}.card-meta h3{font-weight:500;font-size:17px;margin:0;letter-spacing:-.3px}.card-meta p{font-size:11px;color:var(--muted);margin:7px 0 0}.card-meta>span{font-size:18px}.about{border-top:1px solid var(--line);margin-top:78px;padding:52px 0 60px;display:grid;grid-template-columns:1fr;gap:25px;text-align:left}.about .eyebrow{margin-top:8px}.about-content{display:grid;grid-template-columns:minmax(160px,220px) 1fr;gap:36px;align-items:center}.portrait{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius)}.about-copy{min-width:0}.about h2{font-family:Georgia,serif;font-size:39px;font-weight:400;letter-spacing:-1px;margin:0 0 17px}.about p{font-size:14px;line-height:1.8;color:var(--muted);margin:0 0 21px}footer{border-top:1px solid var(--line);padding:25px 0 30px;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted)}dialog{width:min(950px,92vw);padding:25px;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);max-height:90vh;overflow:auto}dialog::backdrop{background:#1a201bbd;backdrop-filter:blur(6px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:23px}.dialog-head h2{font-size:25px;font-weight:500;letter-spacing:-.7px;margin:8px 0 0}.dialog-head p{margin:0}.dialog-head button{width:44px;height:44px;border:1px solid #c4c8ba;background:none;border-radius:50%;flex-shrink:0}#viewer-media{background:#dfe2d6;border-radius:5px;overflow:hidden;position:relative}#viewer-media img,#viewer-media video{width:100%;max-height:60vh;object-fit:contain;display:block}#viewer-description{font-size:14px;line-height:1.6;color:var(--muted);margin-bottom:0}.skip{position:fixed;top:10px;left:10px;padding:12px;background:var(--ink);color:white;z-index:10;transform:translateY(-160%)}.skip:focus{transform:none}
@media(min-width:1500px){.intro-bottom{max-width:1000px}}
@media(max-width:767px){.about-content{grid-template-columns:160px 1fr;gap:26px}.shell{padding:0 6%}.header{height:92px}.identity{font-size:21px}.identity small{font-size:10px}.intro{padding:47px 0 38px}h1{font-size:76px;letter-spacing:-4px;margin:25px 0}h1 em{letter-spacing:-3px}.intro-bottom{gap:20px}.intro-bottom p{font-size:13px}.section-bar{align-items:flex-start;flex-direction:column;gap:17px}.grid{gap:29px 17px}.card-meta h3{font-size:14px}.card-meta p{font-size:10px}.cover{aspect-ratio:16/9}.media-action{bottom:12px;left:12px;font-size:10px;padding:8px 10px}.card-number{display:none}.about{margin-top:50px;grid-template-columns:1fr;gap:24px;padding:32px 0}.about>.eyebrow{grid-column:1/-1}.about h2{font-size:34px}footer{flex-wrap:wrap;gap:18px}footer>span:nth-child(2){display:none}}
@media(max-width:480px){.about-content{grid-template-columns:1fr;gap:26px}.portrait{max-width:230px}.header{height:auto;padding:22px 0;flex-wrap:wrap;gap:19px}h1{font-size:clamp(40px,12vw,66px)}.intro-bottom{align-items:flex-start;flex-direction:column;gap:20px}.grid{grid-template-columns:1fr;gap:28px}.cover{aspect-ratio:16/9}.card-meta h3{font-size:17px}.media-action{bottom:18px;left:18px;font-size:11px}.about p br{display:none}.about h2{font-size:31px}dialog{padding:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

.media-error{padding:16px;line-height:1.6}.card-number{background:#242923bd;padding:5px 7px;border-radius:3px}

.cv-link{display:inline-flex;align-items:center;gap:28px;min-height:44px;padding:11px 17px;border:1px solid #b9beb0;border-radius:4px;background:transparent;color:var(--ink);font-size:13px;text-decoration:none}

.cv-link:hover{border-color:var(--olive);background:#e8ebdf}.cv-format{font-size:10px;letter-spacing:.8px;color:var(--muted)}
