:root{font-family:Arial,Helvetica,sans-serif;color-scheme:light}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;width:100%;overflow:hidden}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:wait}button,a{touch-action:manipulation}button svg{flex-shrink:0}button{color:inherit}a{color:inherit;text-underline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #6c9344;outline-offset:3px}button{border:0;background:none}p,h1,h2,h3,figure{margin:0}button img{pointer-events:none}button:disabled{opacity:.5}.studio-shell{--ink:#25342b;--muted:#647065;--paper:#fbfaf6;--side:#f1f2eb;--border:#e1e4d9;--accent:#365b40;--active:#e2e8d9;--wall:#9aa68a;--system:#e4e9d8;--title:#f4f5ee;position:relative;height:100%;width:100%;background:var(--wall);color:var(--ink);font-size:14px;line-height:1.5;isolation:isolate}.theme-night{--ink:#e5e8df;--muted:#a7b4a8;--paper:#1d302b;--side:#182922;--border:#3a4c40;--accent:#d6e8a2;--active:#344835;--wall:#101f1b;--system:#22342a;--title:#23372d;color-scheme:dark}.theme-paper{--wall:#dad5c8;--system:#f1eee6;--side:#eeeae0;--active:#e4ddd0;--accent:#705d40;--ink:#403c33;--muted:#736d5f;--border:#dfd9cb;--title:#f4f1e9}.studio-wallpaper{position:absolute;inset:0;overflow:hidden;pointer-events:none;color:#e4edd073}.studio-wallpaper svg{width:100%;height:100%}.studio-wallpaper>span{position:absolute;bottom:130px;right:60px;font:italic 72px Georgia,serif;letter-spacing:-3px;opacity:.35}.studio-systembar{height:42px;display:flex;align-items:center;gap:19px;padding:0 23px;background:var(--system);border-bottom:1px solid #31482720;position:relative;z-index:100;box-shadow:0 1px 6px #18282108}.studio-brand{display:flex;align-items:center;gap:11px;padding:0}.studio-brand b{font:italic bold 22px Georgia,serif;letter-spacing:-2px}.studio-brand>span{font-size:10px;letter-spacing:2px;font-weight:600}.studio-bar-separator{height:15px;width:1px;background:var(--ink);opacity:.2}.studio-current{font-size:12px}.studio-system-right{display:flex;margin-left:auto;gap:25px;align-items:center}.studio-system-right button{display:flex;align-items:center;gap:8px;font-size:12px}.studio-system-right svg{width:15px;height:15px}.studio-system-right kbd{margin-left:12px;opacity:.6;font-size:10px}.studio-time{display:flex;gap:10px;font-size:11px}.studio-time time{font-variant-numeric:tabular-nums}.studio-window{position:absolute;display:flex;flex-direction:column;background:var(--paper);border:1px solid #7d8b6977;border-radius:12px;box-shadow:0 25px 70px #20302430,0 2px 5px #20302420;overflow:hidden;max-width:calc(100% - 20px);max-height:calc(100% - 125px);container-type:inline-size}.studio-window[hidden]{display:none}.studio-window:not(.is-active){box-shadow:0 10px 30px #20302420}.studio-window.is-maximized{inset:50px 10px 74px!important;width:auto!important;height:auto!important;max-height:none;max-width:none}.studio-window-bar{height:43px;min-height:43px;background:var(--title);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding-left:16px;user-select:none;touch-action:none}.studio-window-title{display:flex;gap:9px;align-items:center;font-size:12px;font-weight:600}.studio-window-title svg{width:16px;height:16px;color:var(--muted)}.studio-window-title small{font-size:10px;font-weight:400;color:var(--muted)}.studio-window-controls{display:flex;height:100%;padding-right:6px;align-items:center;gap:3px}.studio-window-controls button{width:32px;height:30px;border-radius:5px;display:grid;place-items:center}.studio-window-controls svg{width:16px;height:16px}.studio-window-controls button:hover{background:var(--active)}.studio-window-controls button:last-child:hover{background:#e8b4a4;color:#442319}.studio-window-body{display:flex;min-height:0;flex:1}.studio-sidebar{background:var(--side);width:182px;min-width:182px;border-right:1px solid var(--border);padding:27px 12px 18px;display:flex;flex-direction:column}.studio-eyebrow{font:10px/1.5 Arial,Helvetica,sans-serif;letter-spacing:1.45px;text-transform:uppercase;color:var(--muted);font-weight:500}.studio-sidebar>p{padding:0 12px;margin-bottom:18px;font-size:9px}.studio-sidebar nav{display:flex;flex-direction:column;gap:5px}.studio-sidebar nav button{display:flex;align-items:center;gap:12px;position:relative;padding:10px 12px;text-align:left;font-size:12px;border-radius:6px;color:var(--muted);min-height:39px}.studio-sidebar nav svg{width:19px;height:19px}.studio-sidebar nav button[aria-current],.studio-sidebar nav button:hover{background:var(--active);color:var(--ink)}.studio-sidebar nav button[aria-current]{font-weight:600}.studio-sidebar nav i{height:4px;width:4px;border-radius:50%;margin-left:auto;background:var(--accent)}.studio-sidebar-bottom{margin-top:auto;padding:23px 12px 0;display:flex;flex-direction:column;border-top:1px solid var(--border);gap:3px}.studio-avatar{background:var(--active);width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font:italic 15px Georgia;margin-bottom:8px}.studio-sidebar-bottom strong{font-size:12px;font-weight:500}.studio-sidebar-bottom small{font-size:9px;color:var(--muted)}.studio-sidebar-bottom button{padding:10px 0 0;text-align:left;font-size:10px;color:var(--muted)}.studio-content{flex:1;min-width:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.studio-home{padding:29px 37px 0;min-height:100%;display:flex;flex-direction:column}.studio-home-head{display:flex;justify-content:space-between;align-items:center;gap:14px}.studio-home-head .studio-eyebrow{font-size:9px;letter-spacing:1.3px}.studio-tag{font-size:9px;display:flex;align-items:center;gap:6px;white-space:nowrap;color:var(--muted)}.studio-tag i,.studio-window-status i{width:5px;height:5px;border-radius:50%;background:#637b47;display:inline-block}.studio-home-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;padding:36px 0 30px;flex:1;min-height:0}.studio-intro{padding-top:21px;display:flex;flex-direction:column;align-items:flex-start}.studio-overline{font-size:10px;color:var(--muted);letter-spacing:.2px}.studio-intro h1{font:clamp(43px,5.5cqw,72px)/1.02 Georgia,'Times New Roman',serif;letter-spacing:-3.7px;margin:22px 0 24px;font-weight:400}.studio-intro h1 em{font-weight:400;color:var(--accent)}.studio-intro>p{font-size:13px;line-height:1.85;color:var(--muted)}.studio-text-link{display:flex;gap:20px;align-items:center;text-align:left;padding:0 0 6px;margin-top:26px;font-size:12px;border-bottom:1px solid var(--ink)}.studio-text-link svg{width:18px;height:18px}.studio-text-link:hover{color:var(--accent)}.studio-signature{display:flex;gap:15px;align-items:center;margin-top:auto;padding-top:40px}.studio-signature>span{font:italic 46px/1 Georgia;letter-spacing:-6px;transform:rotate(-10deg);padding-right:9px}.studio-signature p{font-size:10px;line-height:1.7;color:var(--muted)}.studio-collections{display:grid;grid-template-rows:1.4fr 1fr;gap:15px;min-height:350px}.studio-photo-card{position:relative;padding:0;border-radius:7px;overflow:hidden;min-height:230px;text-align:left;color:#fff;background:#455c5e}.studio-photo-card>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform .6s ease}.studio-photo-card:hover>img{transform:scale(1.035)}.studio-card-caption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:flex-end;padding:28px 21px 20px;background:linear-gradient(transparent,#172721c9);font-size:9px;letter-spacing:.7px}.studio-card-caption strong{font:32px/1.15 Georgia;display:block;margin-top:7px;letter-spacing:-1px}.studio-card-caption svg{width:23px;height:23px;border:1px solid #ffffff70;border-radius:50%;padding:3px}.studio-art-card{display:flex;padding:0;background:#ebe8df;color:#2e352a;border-radius:6px;overflow:hidden;text-align:left;min-height:160px}.studio-art-card>img{width:44%;object-fit:cover;object-position:38% 35%;align-self:stretch}.studio-art-card>div{display:flex;flex-direction:column;justify-content:center;padding:19px}.studio-art-card .studio-eyebrow{font-size:8px;color:#6b6e5f}.studio-art-card strong{font:30px/.98 Georgia;margin:12px 0 17px;letter-spacing:-.8px}.studio-art-card>div>span:last-child{font-size:8px;color:#5d6455}.studio-art-card:hover{background:#e0e4d5}.studio-home-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--border);padding:17px 0 22px;font-size:9px}.studio-home-bottom>span{color:var(--muted)}.studio-home-bottom button{display:flex;align-items:center;gap:10px;font-size:10px;padding:5px 0}.studio-home-bottom svg{width:13px;height:13px}.studio-window-status{min-height:25px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;padding:0 16px;font-size:8px;color:var(--muted)}.studio-window-status span:first-child{display:flex;align-items:center;gap:6px}.studio-resize{position:absolute;right:0;bottom:0;width:22px;height:22px;padding:0;cursor:nwse-resize;font-size:20px;color:var(--muted);touch-action:none}.studio-desktop-footer{position:absolute;bottom:23px;left:24px;right:24px;display:flex;align-items:center;justify-content:space-between;pointer-events:none;color:var(--ink);font-size:8px;letter-spacing:1.2px}.studio-themes{display:flex;gap:3px;background:var(--system);border:1px solid #30462b22;padding:3px;border-radius:20px;pointer-events:auto;z-index:100}.studio-themes button{font-size:9px;padding:6px 10px;border-radius:20px}.studio-themes button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.studio-dock{position:absolute;z-index:101;bottom:10px;left:50%;transform:translateX(-50%);display:flex;gap:4px;padding:6px 9px 8px;border-radius:15px;background:var(--system);box-shadow:0 8px 30px #20302430;border:1px solid #66795c55}.studio-dock button{display:flex;align-items:center;justify-content:center;position:relative;width:44px;height:42px;border-radius:9px;color:var(--ink)}.studio-dock svg{width:24px;height:24px}.studio-dock button:hover{background:var(--active)}.studio-dock button>span{position:absolute;bottom:58px;background:var(--paper);padding:5px 10px;font-size:10px;white-space:nowrap;box-shadow:0 3px 10px #20302430;border-radius:5px;display:none}.studio-dock button:hover>span,.studio-dock button:focus-visible>span{display:block}.studio-dock button>i{display:none;width:3px;height:3px;border-radius:50%;background:var(--ink);position:absolute;bottom:0}.studio-dock .is-open>i{display:block}.studio-welcome-back{position:absolute;inset:25% 10%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:25px}.studio-welcome-back strong{font:italic 85px Georgia;letter-spacing:-3px}.studio-reading,.studio-interests{padding:40px 45px 60px}.studio-reading>h1,.studio-page-heading>h1{font:52px/1.05 Georgia;letter-spacing:-2px;margin:22px 0 25px;max-width:800px}.studio-reading>p,.studio-page-heading>p:not(.studio-eyebrow){font-size:14px;line-height:1.85;color:var(--muted);max-width:700px;margin:15px 0}.studio-reading h1 em,.studio-page-heading h1 em{color:var(--accent);font-weight:400}.studio-reading h2{font:26px/1.2 Georgia;margin:18px 0 12px}.studio-reading h3{font-size:18px;line-height:1.5;margin:12px 0}.studio-reading section p,.studio-list-entry p{font-size:14px;line-height:1.8;color:var(--muted)}.studio-list-entry{padding:27px 0;border-bottom:1px solid var(--border)}.studio-list-entry h2 a{text-decoration:none}.studio-list-entry>a{display:inline-block;margin-top:15px;font-size:12px}.studio-list-entry .studio-eyebrow{font-size:10px}.studio-focus{display:grid;grid-template-columns:repeat(2,1fr);gap:25px;border-bottom:1px solid var(--border);padding:25px 0}.studio-focus h2{font-size:21px}.studio-focus p{font-size:12px!important}.studio-search-label{display:flex;flex-direction:column;gap:10px;font-size:12px;margin:30px 0}.studio-search-label input{padding:13px 16px;background:var(--side);border:1px solid var(--border);color:var(--ink);border-radius:5px}.studio-primary{padding:12px 20px;background:var(--accent);color:var(--paper);border-radius:5px;margin:15px 20px 15px 0}.theme-night .studio-primary{color:#182922}.studio-contact-links{display:flex;gap:16px;flex-wrap:wrap;font-size:12px}.studio-email{display:inline-block;font:25px Georgia;margin:25px 0;overflow-wrap:anywhere}.studio-about-photo{width:100%;max-height:370px;object-fit:cover;object-position:center 35%;margin-top:20px;border-radius:6px}.studio-page-heading>span{font-size:10px;color:var(--muted);display:block;margin:22px 0 30px}.studio-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 20px;align-items:start}.studio-photo-tile{padding:0;text-align:left;display:flex;flex-direction:column;gap:7px;overflow:hidden;border-radius:4px}.studio-photo-tile img{width:100%;height:200px;object-fit:cover;border-radius:5px;transition:filter .2s}.studio-photo-tile:hover img{filter:brightness(1.08)}.studio-photo-tile .studio-eyebrow{font-size:8px;margin-top:4px}.studio-photo-tile strong{font:17px Georgia;letter-spacing:-.25px;font-weight:400}.studio-art-view{padding:28px 32px 20px;min-height:100%;display:flex;flex-direction:column}.studio-art-view>header{display:flex;justify-content:space-between;align-items:center;font:10px monospace;color:var(--muted);margin-bottom:24px}.studio-art-main{display:grid;grid-template-columns:1.12fr 1fr;gap:34px;flex:1;min-height:300px}.studio-art-image{background:var(--side);padding:20px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);min-height:0}.studio-art-image img{width:100%;max-height:430px;object-fit:contain;filter:drop-shadow(0 6px 8px #0003)}.studio-art-note{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:5px 0}.studio-art-note h1{font:35px/1.1 Georgia;letter-spacing:-1px;margin:18px 0 22px}.studio-art-note>p:not(.studio-eyebrow){font-size:12px;line-height:1.85;color:var(--muted)}.studio-art-note>small{font-size:10px;display:block;color:var(--muted);margin:24px 0 7px}.studio-art-note>a{font-size:10px}.studio-art-note details{font-size:9px;color:var(--muted);margin-top:14px}.studio-art-note details summary{cursor:pointer}.studio-art-note details p{margin:9px 0}.studio-art-arrows{display:flex;gap:8px;margin-top:20px}.studio-art-arrows button{border:1px solid var(--border);width:39px;height:35px;font-size:20px}.studio-art-arrows button:hover{background:var(--active)}.studio-art-strip{display:flex;gap:10px;margin-top:25px;overflow-x:auto;min-height:69px;padding:4px}.studio-art-strip button{padding:4px;width:54px;min-width:54px;height:64px;border:1px solid transparent;border-radius:4px}.studio-art-strip button[aria-pressed=true]{border-color:var(--accent);background:var(--side)}.studio-art-strip img{width:100%;height:100%;object-fit:contain}.studio-modal-backdrop{position:absolute;inset:0;z-index:200;background:#0b1c16ad;display:flex;align-items:center;justify-content:center;padding:20px}.studio-modal{background:var(--paper);color:var(--ink);border:1px solid var(--border);border-radius:12px;box-shadow:0 30px 100px #0006;width:min(600px,100%);max-height:calc(100% - 80px);display:flex;flex-direction:column;overflow:hidden}.studio-command-input{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border);padding:15px 20px}.studio-command-input input{border:0;outline:0;background:none;color:var(--ink);min-width:0;flex:1;font-size:16px;padding:9px 0}.studio-command-input button{border:1px solid var(--border);border-radius:4px;font-size:10px;padding:5px}.studio-command>.studio-eyebrow{padding:18px 23px 8px}.studio-command-results{overflow:auto;padding:5px 10px 14px;min-height:0}.studio-command-results>button{width:100%;display:flex;align-items:center;gap:16px;padding:10px 13px;text-align:left;border-radius:6px}.studio-command-results>button:hover{background:var(--active)}.studio-command-results button>span{flex:1;display:flex;flex-direction:column;gap:1px}.studio-command-results strong{font-size:13px;font-weight:500}.studio-command-results small{font-size:10px;color:var(--muted)}.studio-command-results>p{padding:20px;font-size:13px}.studio-command footer{padding:12px 22px;border-top:1px solid var(--border);font-size:9px;color:var(--muted)}.studio-lightbox{width:min(1100px,100%);height:calc(100% - 35px);max-height:100%;padding:16px 22px}.studio-lightbox>header{display:flex;justify-content:space-between;align-items:center;font-size:10px;margin-bottom:12px}.studio-lightbox>header button{padding:7px}.studio-lightbox-image{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;background:var(--side);border-radius:4px}.studio-lightbox-image img{width:100%;height:100%;object-fit:contain}.studio-lightbox>footer{display:flex;gap:22px;justify-content:space-between;align-items:center;padding:17px 0 0}.studio-lightbox>footer>button{font-size:26px;padding:10px;border:1px solid var(--border)}.studio-lightbox>footer>div{text-align:center;max-width:650px}.studio-lightbox h2{font:23px Georgia}.studio-lightbox p{font-size:11px;margin:7px 0;color:var(--muted)}.studio-lightbox a{font-size:9px}.studio-skeleton{width:80%;height:120px;margin:30px 0;background:repeating-linear-gradient(var(--side) 0 16px,transparent 16px 32px)}
@container(max-width:950px){.studio-sidebar{width:150px;min-width:150px;padding:20px 8px 15px}.studio-sidebar nav button{font-size:11px;padding:9px 8px;gap:9px}.studio-sidebar-bottom{padding:15px 8px 0}.studio-sidebar-bottom small{font-size:8px}.studio-home{padding:24px 25px 0}.studio-home-grid{gap:23px;padding-top:25px}.studio-intro{padding-top:10px}.studio-intro h1{letter-spacing:-2px;font-size:52px}.studio-collections{min-height:310px}.studio-photo-card{min-height:180px}.studio-art-card{min-height:140px}.studio-art-card>div{padding:14px}.studio-art-card strong{font-size:27px}.studio-signature{padding-top:30px}.studio-home-head .studio-tag{display:none}.studio-reading,.studio-interests{padding:30px}.studio-reading>h1,.studio-page-heading>h1{font-size:42px}.studio-art-main{gap:20px;grid-template-columns:1fr 1fr}.studio-art-view{padding:23px}.studio-art-note h1{font-size:29px}.studio-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-home-bottom>span{display:none}.studio-home-bottom button{font-size:9px;gap:5px}.studio-overline{font-size:9px}.studio-intro>p{font-size:12px}.studio-art-image{padding:12px}}
@container(max-width:700px){.studio-sidebar{width:63px;min-width:63px;padding:16px 7px}.studio-sidebar>p,.studio-sidebar nav button>span,.studio-sidebar nav i,.studio-sidebar-bottom{display:none}.studio-sidebar nav button{padding:11px;justify-content:center}.studio-sidebar nav button svg{width:21px;height:21px}.studio-home-grid{gap:20px}.studio-intro h1{font-size:43px;letter-spacing:-2px}.studio-intro .studio-overline{font-size:8px}.studio-home{padding:21px 22px 0}.studio-card-caption{padding:18px 14px}.studio-card-caption strong{font-size:27px}.studio-art-card>div{padding:10px}.studio-art-card strong{font-size:23px}.studio-art-card>div>span:last-child{font-size:7px}.studio-signature{padding-top:25px}.studio-signature p{font-size:8px}.studio-intro>p{font-size:11px}.studio-art-main{grid-template-columns:1fr}.studio-art-image{max-height:290px;min-height:230px}.studio-art-image img{max-height:265px}.studio-art-note h1{margin:10px 0 15px}.studio-art-note>small{margin-top:14px}.studio-focus{grid-template-columns:1fr}.studio-art-strip{flex-wrap:wrap}.studio-wide-break{display:none}}
@media(max-width:779px){.studio-window,.studio-window.is-maximized{left:10px!important;right:10px!important;top:54px!important;bottom:100px!important;width:calc(100% - 20px)!important;height:calc(100% - 154px)!important;max-height:none!important;max-width:none!important}.studio-systembar{padding:0 14px;gap:12px}.studio-system-right{gap:15px}.studio-time{font-size:10px;gap:5px}.studio-system-right kbd{display:none}.studio-desktop-footer{bottom:79px;left:17px;right:17px}.studio-desktop-footer>span{font-size:7px;letter-spacing:.6px}.studio-themes button{padding:4px 8px;font-size:8px}.studio-dock{bottom:10px}.studio-resize{display:none}.studio-window-controls button{width:30px}.studio-window-controls button:nth-of-type(2){display:none}.studio-window-title small{display:none}.studio-window-status{font-size:7px}.studio-modal-backdrop{padding:12px}.studio-lightbox{padding:12px}.studio-lightbox>footer{gap:10px}.studio-lightbox>footer>button{padding:6px}.studio-lightbox h2{font-size:19px}.studio-lightbox p{font-size:10px}.studio-lightbox>footer>div{max-width:75%}}
@media(max-width:500px){.studio-time{display:none}.studio-current{font-size:10px}.studio-system-right button{font-size:10px}.studio-brand>span{font-size:8px}.studio-window-bar{padding-left:10px}.studio-window-title{font-size:10px}.studio-window-title svg{width:14px}.studio-sidebar{width:48px;min-width:48px;padding:12px 4px}.studio-sidebar nav button{padding:10px 6px}.studio-sidebar nav button svg{width:18px;height:18px}.studio-home{padding:21px 17px 0}.studio-home-grid{grid-template-columns:1fr;padding-top:13px}.studio-home-head .studio-eyebrow{font-size:7px;letter-spacing:1px}.studio-intro h1{font-size:47px;margin:17px 0}.studio-intro .studio-overline{font-size:8px}.studio-intro>p{font-size:12px}.studio-signature{display:none}.studio-collections{min-height:400px;margin-top:8px;grid-template-rows:240px 160px}.studio-home-bottom{flex-wrap:wrap;margin-top:5px}.studio-home-bottom button{font-size:10px}.studio-reading,.studio-interests{padding:25px 18px 40px}.studio-reading>h1,.studio-page-heading>h1{font-size:36px;letter-spacing:-1.5px}.studio-reading>p,.studio-page-heading>p:not(.studio-eyebrow){font-size:12px}.studio-photo-grid{grid-template-columns:1fr}.studio-photo-tile img{height:auto;max-height:350px;object-fit:contain}.studio-art-view{padding:22px 16px}.studio-art-main{grid-template-columns:1fr}.studio-art-image{min-height:210px;padding:10px}.studio-art-note h1{font-size:30px}.studio-art-note>p:not(.studio-eyebrow){font-size:12px}.studio-art-strip{gap:5px}.studio-art-strip button{width:45px;min-width:45px;height:55px}.studio-dock{gap:2px;padding:5px 6px 7px}.studio-dock button{width:42px;height:42px}.studio-window-status{padding:0 10px}.studio-command-input{padding:10px 13px;gap:8px}.studio-command-input input{font-size:12px}.studio-command footer{font-size:8px}.studio-desktop-footer>span{max-width:95px}.studio-welcome-back strong{font-size:55px}.studio-lightbox>footer>div{max-width:70%}.studio-lightbox p{max-height:72px;overflow:auto}}
@media(max-height:650px) and (min-width:780px){.studio-window{top:52px!important;height:calc(100% - 127px)!important}.studio-sidebar{padding-top:15px}.studio-sidebar nav{gap:1px}.studio-sidebar nav button{padding-block:7px;min-height:32px}.studio-sidebar-bottom{display:none}.studio-home-grid{min-height:420px}.studio-home-head{padding-top:0}.studio-home{padding-top:22px}.studio-art-main{min-height:350px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Reading copy remains comfortable when this desktop fills the curved monitor. */
.studio-art-note>p:not(.studio-eyebrow){font-size:14px;line-height:1.8}.studio-art-note>small,.studio-art-note>a{font-size:12px}.studio-art-note details{font-size:11px}.studio-sidebar nav button{font-size:13px}.studio-intro>p{font-size:14px}.studio-lightbox p{font-size:13px}.studio-window-status{padding-right:27px}
@container(max-width:950px){.studio-sidebar nav button{font-size:12px}.studio-intro>p{font-size:13px}}
@media(max-width:500px){.studio-art-note>p:not(.studio-eyebrow),.studio-intro>p{font-size:14px}.studio-lightbox p{font-size:12px}}
/* Keep the navigation profile inside short, in-monitor document windows. */
.studio-sidebar{overflow-y:auto;scrollbar-width:thin}.studio-sidebar-bottom{flex-shrink:0}.studio-window-body{overflow:hidden}
@media(max-height:780px){.studio-sidebar-bottom{display:none}}
/* The 16:9 monitor can be very short even on a tall tablet. Give content priority. */
@media(max-height:500px){
 .studio-systembar{height:30px;padding:0 13px}.studio-brand b{font-size:18px}.studio-brand>span{font-size:8px}.studio-current,.studio-system-right button,.studio-time{font-size:10px}
 .studio-window,.studio-window.is-maximized{left:7px!important;right:7px!important;top:36px!important;bottom:49px!important;width:calc(100% - 14px)!important;height:calc(100% - 85px)!important;max-height:none!important;max-width:none!important;border-radius:7px}
 .studio-window-bar{height:32px;min-height:32px;padding-left:10px}.studio-window-title{font-size:10px}.studio-window-title small{display:none}.studio-window-controls button{height:27px;width:29px}
 .studio-window-status,.studio-desktop-footer,.studio-resize{display:none}.studio-sidebar{width:49px;min-width:49px;padding:5px 4px}.studio-sidebar>p,.studio-sidebar nav button>span,.studio-sidebar nav i,.studio-sidebar-bottom{display:none}.studio-sidebar nav{gap:1px}.studio-sidebar nav button{padding:6px;min-height:29px;justify-content:center}.studio-sidebar nav button svg{width:17px;height:17px}
 .studio-dock{bottom:3px;padding:3px 8px 5px;border-radius:10px}.studio-dock button{width:35px;height:31px}.studio-dock svg{width:21px;height:21px}
 .studio-home{padding:15px 20px 0}.studio-home-head{display:none}.studio-home-grid{min-height:0;grid-template-columns:1fr 1fr;gap:20px;padding:0 0 15px}.studio-intro{padding-top:7px}.studio-intro h1{font-size:39px;letter-spacing:-2px;margin:12px 0}.studio-intro>p{font-size:12px;line-height:1.6}.studio-intro .studio-overline{font-size:8px}.studio-signature{display:none}.studio-text-link{margin-top:16px;font-size:11px}.studio-collections{min-height:225px;grid-template-rows:125px 92px;gap:8px}.studio-photo-card{min-height:125px}.studio-art-card{min-height:92px}.studio-art-card strong{font-size:23px;margin:5px 0}.studio-art-card>div>span:last-child{display:none}.studio-card-caption{padding:14px}.studio-card-caption strong{font-size:26px}.studio-home-bottom{padding:10px 0}
 .studio-art-view{padding:13px 18px}.studio-art-view>header{margin-bottom:10px}.studio-art-main{display:grid;grid-template-columns:.8fr 1fr;gap:20px;min-height:0;align-items:start}.studio-art-image{height:185px;min-height:185px;max-height:185px;padding:8px}.studio-art-image img{max-height:167px}.studio-art-note{padding-top:0}.studio-art-note>.studio-eyebrow{font-size:8px;letter-spacing:.5px}.studio-art-note h1{font-size:24px;line-height:1.1;margin:8px 0 10px}.studio-art-note>p:not(.studio-eyebrow){font-size:14px;line-height:1.6}.studio-art-note>small{margin-top:12px}.studio-art-arrows{margin-top:12px}.studio-art-strip{margin-top:12px;gap:6px;min-height:45px}.studio-art-strip button{height:43px;width:36px;min-width:36px}
 .studio-reading,.studio-interests{padding:20px 25px}.studio-page-heading>h1,.studio-reading>h1{font-size:38px;margin:13px 0}.studio-page-heading>span{margin:14px 0 20px}.studio-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 12px}.studio-photo-tile img{height:140px}.studio-photo-tile strong{font-size:15px}
 .studio-modal{max-height:calc(100% - 24px)}.studio-modal-backdrop{padding:9px}.studio-command-input{padding:7px 14px}.studio-command>.studio-eyebrow{padding:10px 20px 4px}.studio-command-results>button{padding:7px 10px}.studio-lightbox{height:100%}.studio-lightbox>footer{padding-top:7px}.studio-lightbox p{max-height:45px;overflow:auto}
}

/* Keep the room exit visible in standalone and projected monitor layouts. */
.studio-room-return{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-size:12px;font-weight:600;text-decoration:none;padding:5px 9px;border:1px solid var(--border);border-radius:5px;background:var(--paper)}
.studio-room-return:hover{background:var(--active)}
@media(max-width:600px){.studio-current,.studio-bar-separator{display:none}.studio-system-right{gap:10px}.studio-room-return{font-size:11px;padding:5px 7px}.studio-system-right button>span{display:none}}
@media(max-height:500px) and (min-width:501px){.studio-room-return{font-size:10px;padding:2px 7px}}

.studio-desktop-footer{gap:12px}
.studio-credits-link{pointer-events:auto;display:inline-flex;align-items:center;min-height:24px;flex-shrink:0;font-size:10px;text-decoration:none;color:var(--muted)}
.studio-credits-link:hover{text-decoration:underline;color:var(--ink)}
.studio-desktop-footer .studio-themes{margin-left:auto}
.studio-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}
@media(max-height:500px) and (min-width:501px){.studio-desktop-footer{display:flex;left:13px;right:auto;bottom:8px}.studio-desktop-footer>.studio-footer-note,.studio-desktop-footer>.studio-themes{display:none}.studio-credits-link{font-size:9px}}

html,body,#root{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.studio-phone-navigation{display:none}
.studio-phone-navigation[hidden]{display:none}

/* Phone layouts use the portfolio as a document; the monitor surface keeps its window chrome. */
@media (max-width: 767px), (pointer: coarse) and (max-width: 1100px) and (max-height: 500px){
 html.studio-phone-viewport{height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto}
 html.studio-phone-viewport body,html.studio-phone-viewport body #root{height:auto;min-height:100%;overflow:visible}
 .studio-shell.is-phone-layout{height:auto;min-height:100dvh;overflow:visible}
 .studio-shell.is-phone-layout:not(.is-embedded){padding-top:env(safe-area-inset-top);padding-right:env(safe-area-inset-right);padding-bottom:max(16px,env(safe-area-inset-bottom));padding-left:env(safe-area-inset-left)}
 .studio-shell.is-phone-layout .studio-wallpaper{display:none}
 .studio-shell.is-phone-layout .studio-systembar{height:auto;min-height:56px;padding:6px 16px;gap:8px;position:relative;z-index:300}
 .studio-shell.is-phone-layout .studio-brand{min-width:44px;min-height:44px;gap:0}
 .studio-shell.is-phone-layout .studio-brand>span,.studio-shell.is-phone-layout .studio-bar-separator,.studio-shell.is-phone-layout .studio-current,.studio-shell.is-phone-layout .studio-time{display:none}
 .studio-shell.is-phone-layout .studio-system-right{gap:6px;margin-left:auto}
 .studio-shell.is-phone-layout .studio-system-right button{min-width:44px;min-height:44px;justify-content:center;font-size:16px}
 .studio-shell.is-phone-layout .studio-system-right button>span,.studio-shell.is-phone-layout .studio-system-right kbd{display:none}
 .studio-shell.is-phone-layout .studio-room-return{min-height:44px;padding:7px 9px;font-size:11px}
 .studio-shell.is-phone-layout .studio-phone-navigation:not([hidden]){display:block;position:sticky;top:0;z-index:250;padding:8px 16px;background:var(--system);border-bottom:1px solid var(--border);box-shadow:0 1px 6px #18282108}
 .studio-shell.is-phone-layout:not(.is-embedded) .studio-phone-navigation:not([hidden]){top:env(safe-area-inset-top)}
 .studio-shell.is-phone-layout .studio-phone-navigation label{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:10px;font-size:11px;font-weight:600}
 .studio-shell.is-phone-layout .studio-phone-navigation select{width:100%;min-height:44px;padding:8px 12px;border:1px solid var(--border);border-radius:6px;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.3}
 .studio-shell.is-phone-layout .studio-window,.studio-shell.is-phone-layout .studio-window.is-maximized{position:relative!important;inset:auto!important;left:auto!important;top:auto!important;right:auto!important;bottom:auto!important;width:100%!important;height:auto!important;min-height:0;max-width:none!important;max-height:none!important;border:0;border-radius:0;box-shadow:none;overflow:visible;container-type:normal;z-index:auto!important}
 .studio-shell.is-phone-layout .studio-window:not(.is-active){box-shadow:none}
 .studio-shell.is-phone-layout .studio-window-bar,.studio-shell.is-phone-layout .studio-sidebar,.studio-shell.is-phone-layout .studio-window-status,.studio-shell.is-phone-layout .studio-resize,.studio-shell.is-phone-layout .studio-dock{display:none}
 .studio-shell.is-phone-layout .studio-window-body{display:block;min-height:0;overflow:visible}
 .studio-shell.is-phone-layout .studio-content{min-height:calc(100dvh - 120px);overflow:visible;padding:0;overscroll-behavior:auto;scrollbar-width:auto}
 .studio-shell.is-phone-layout .studio-home,.studio-shell.is-phone-layout .studio-reading,.studio-shell.is-phone-layout .studio-interests{min-height:0;padding:24px 20px 48px}
 .studio-shell.is-phone-layout .studio-home-grid{grid-template-columns:1fr;gap:28px;padding:24px 0 30px;min-height:0}
 .studio-shell.is-phone-layout .studio-intro{padding-top:0}
 .studio-shell.is-phone-layout .studio-overline{font-size:11px;line-height:1.5}
 .studio-shell.is-phone-layout .studio-intro h1{font-size:clamp(36px,9.2vw,38px);line-height:1.04;letter-spacing:-1.8px;margin:18px 0 20px}
 .studio-shell.is-phone-layout .studio-intro>p{font-size:16px;line-height:1.65}
 .studio-shell.is-phone-layout .studio-wide-break{display:none}
 .studio-shell.is-phone-layout .studio-text-link{min-height:44px;margin-top:22px;padding:7px 0;font-size:15px;gap:14px}
 .studio-shell.is-phone-layout .studio-signature{display:none}
 .studio-shell.is-phone-layout .studio-collections{grid-template-rows:minmax(210px,auto) minmax(170px,auto);gap:14px;min-height:0}
 .studio-shell.is-phone-layout .studio-photo-card{min-height:210px}
 .studio-shell.is-phone-layout .studio-art-card{min-height:170px}
 .studio-shell.is-phone-layout .studio-card-caption{padding:20px 18px 17px}
 .studio-shell.is-phone-layout .studio-card-caption strong{font-size:28px}
 .studio-shell.is-phone-layout .studio-art-card>div{padding:18px}
 .studio-shell.is-phone-layout .studio-art-card strong{font-size:28px}
 .studio-shell.is-phone-layout .studio-home-bottom{display:flex;flex-direction:column;align-items:stretch;gap:3px;padding:18px 0 0;font-size:12px}
 .studio-shell.is-phone-layout .studio-home-bottom>span{display:block;padding-bottom:5px}
 .studio-shell.is-phone-layout .studio-home-bottom button{min-height:44px;justify-content:space-between;padding:8px 0;font-size:15px}
 .studio-shell.is-phone-layout .studio-reading>h1,.studio-shell.is-phone-layout .studio-page-heading>h1{font-size:clamp(28px,8.8vw,36px);line-height:1.1;letter-spacing:-1px;margin:18px 0 22px}
 .studio-shell.is-phone-layout .studio-reading>p:not(.studio-eyebrow),.studio-shell.is-phone-layout .studio-page-heading>p:not(.studio-eyebrow){font-size:16px;line-height:1.7;max-width:none;margin:16px 0}
 .studio-shell.is-phone-layout .studio-reading h2{font-size:24px;line-height:1.25;margin:22px 0 12px}
 .studio-shell.is-phone-layout .studio-reading h3{font-size:18px;line-height:1.5}
 .studio-shell.is-phone-layout .studio-reading section p:not(.studio-eyebrow),.studio-shell.is-phone-layout .studio-list-entry p:not(.studio-eyebrow){font-size:16px!important;line-height:1.7}
 .studio-shell.is-phone-layout .studio-reading .studio-eyebrow,.studio-shell.is-phone-layout .studio-list-entry .studio-eyebrow{font-size:11px;line-height:1.5}
 .studio-shell.is-phone-layout .studio-list-entry{padding:24px 0}
 .studio-shell.is-phone-layout .studio-list-entry>a,.studio-shell.is-phone-layout .studio-art-note>a{display:inline-flex;align-items:center;min-height:44px;margin-top:12px;font-size:15px}
 .studio-shell.is-phone-layout .studio-focus{grid-template-columns:1fr;gap:18px;padding:18px 0}
 .studio-shell.is-phone-layout .studio-focus p{font-size:15px!important;line-height:1.65}
 .studio-shell.is-phone-layout .studio-search-label{gap:8px;margin:28px 0;font-size:15px}
 .studio-shell.is-phone-layout .studio-search-label input{min-height:44px;padding:9px 12px;font-size:16px;line-height:1.4}
 .studio-shell.is-phone-layout .studio-photo-grid{grid-template-columns:1fr;gap:25px}
 .studio-shell.is-phone-layout .studio-photo-tile{min-height:44px;gap:8px}
 .studio-shell.is-phone-layout .studio-photo-tile img{width:100%;height:auto;max-height:none;object-fit:cover}
 .studio-shell.is-phone-layout .studio-photo-tile strong{font-size:18px;line-height:1.35}
 .studio-shell.is-phone-layout .studio-page-heading>span{font-size:12px;line-height:1.5;margin:18px 0 26px}
 .studio-shell.is-phone-layout .studio-art-view{min-height:0;padding:24px 20px 48px}
 .studio-shell.is-phone-layout .studio-art-view>header{margin-bottom:20px;font-size:11px}
 .studio-shell.is-phone-layout .studio-art-main{grid-template-columns:1fr;gap:24px;min-height:0}
 .studio-shell.is-phone-layout .studio-art-image{min-height:240px;max-height:none;padding:14px}
 .studio-shell.is-phone-layout .studio-art-image img{max-height:55dvh}
 .studio-shell.is-phone-layout .studio-art-note{justify-content:flex-start;padding:0}
 .studio-shell.is-phone-layout .studio-art-note h1{font-size:clamp(28px,8.5vw,34px);line-height:1.1;margin:14px 0 17px}
 .studio-shell.is-phone-layout .studio-art-note>p:not(.studio-eyebrow){font-size:16px;line-height:1.7}
 .studio-shell.is-phone-layout .studio-art-note>small{font-size:13px;margin:22px 0 5px}
 .studio-shell.is-phone-layout .studio-art-note details{font-size:14px;margin-top:14px}
 .studio-shell.is-phone-layout .studio-art-note details summary{display:flex;align-items:center;min-height:44px}
 .studio-shell.is-phone-layout .studio-art-arrows{gap:8px;margin-top:18px}
 .studio-shell.is-phone-layout .studio-art-arrows button{width:44px;height:44px;min-height:44px}
 .studio-shell.is-phone-layout .studio-art-strip{flex-wrap:nowrap;gap:8px;margin-top:22px;min-height:72px;padding:4px;overflow-x:auto}
 .studio-shell.is-phone-layout .studio-art-strip button{width:58px;min-width:58px;height:64px;min-height:44px}
 .studio-shell.is-phone-layout .studio-about-photo{object-position:center 20%}
 .studio-shell.is-phone-layout .studio-contact-links{gap:8px;font-size:16px}
 .studio-shell.is-phone-layout .studio-contact-links a{display:inline-flex;align-items:center;min-height:44px}
 .studio-shell.is-phone-layout .studio-email{font-size:22px;line-height:1.35;margin:20px 0}
 .studio-shell.is-phone-layout .studio-primary{min-height:44px;padding:10px 18px;font-size:16px}
 .studio-shell.is-phone-layout .studio-desktop-footer{position:static;display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:10px;padding:14px 16px 20px;border-top:1px solid var(--border);pointer-events:auto;font-size:11px;letter-spacing:.6px}
 .studio-shell.is-phone-layout .studio-footer-note{display:none}
 .studio-shell.is-phone-layout .studio-credits-link{min-height:44px;padding:8px 0;font-size:12px}
 .studio-shell.is-phone-layout .studio-desktop-footer .studio-themes{display:flex;justify-self:end;gap:2px;margin-left:0;padding:3px;pointer-events:auto}
 .studio-shell.is-phone-layout .studio-themes button{min-height:44px;padding:8px 9px;font-size:12px}
 .studio-shell.is-phone-layout .studio-modal-backdrop{position:fixed;inset:0;padding:12px;align-items:stretch;overflow:auto}
 .studio-shell.is-phone-layout:not(.is-embedded) .studio-modal-backdrop{padding-top:max(12px,env(safe-area-inset-top));padding-right:max(12px,env(safe-area-inset-right));padding-bottom:max(12px,env(safe-area-inset-bottom));padding-left:max(12px,env(safe-area-inset-left))}
 .studio-shell.is-phone-layout .studio-modal{width:100%;max-width:none;max-height:calc(100dvh - 24px);border-radius:10px}
 .studio-shell.is-phone-layout .studio-command-input{padding:8px 12px;gap:8px}
 .studio-shell.is-phone-layout .studio-command-input input{min-height:44px;font-size:16px}
 .studio-shell.is-phone-layout .studio-command-input button{min-width:44px;min-height:44px;font-size:12px}
 .studio-shell.is-phone-layout .studio-command>.studio-eyebrow{padding:16px 18px 8px}
 .studio-shell.is-phone-layout .studio-command-results{max-height:52dvh;padding:5px 8px 12px}
 .studio-shell.is-phone-layout .studio-command-results>button{min-height:44px;padding:10px 12px}
 .studio-shell.is-phone-layout .studio-command-results strong{font-size:15px}
 .studio-shell.is-phone-layout .studio-command-results small{font-size:12px}
 .studio-shell.is-phone-layout .studio-command footer{padding:12px 18px;font-size:11px}
 .studio-shell.is-phone-layout .studio-lightbox{height:auto;padding:12px}
 .studio-shell.is-phone-layout .studio-lightbox>header{margin-bottom:10px;font-size:12px}
 .studio-shell.is-phone-layout .studio-lightbox>header button{min-width:44px;min-height:44px;padding:8px}
 .studio-shell.is-phone-layout .studio-lightbox-image{height:min(52dvh,420px);min-height:180px;flex:none}
 .studio-shell.is-phone-layout .studio-lightbox>footer{gap:8px;padding-top:12px}
 .studio-shell.is-phone-layout .studio-lightbox>footer>button{min-width:44px;min-height:44px;padding:8px}
 .studio-shell.is-phone-layout .studio-lightbox>footer>div{max-width:calc(100% - 104px)}
 .studio-shell.is-phone-layout .studio-lightbox h2{font-size:22px;line-height:1.2}
 .studio-shell.is-phone-layout .studio-lightbox p{font-size:15px;line-height:1.55;max-height:120px;overflow:auto}
 .studio-shell.is-phone-layout .studio-lightbox a{display:inline-flex;align-items:center;min-height:44px;font-size:13px}
}

/* Keep location in window chrome and give the desktop introduction the freed space. */
.studio-window-title{min-width:0;gap:8px}
.studio-window-title>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.studio-window-title small{white-space:nowrap}
.studio-window-controls{flex-shrink:0}
.studio-titlebar-location{margin:0 17px 0 12px;font-size:10px}
.studio-shell:not(.is-phone-layout) .studio-home{padding-top:24px}
.studio-shell:not(.is-phone-layout) .studio-home-grid{padding-top:12px}
@media(max-width:779px),(max-height:500px){.studio-titlebar-location{font-size:9px;margin-right:9px;margin-left:8px}}
@media(max-width:500px){.studio-titlebar-location{font-size:8px;margin-right:4px;margin-left:4px;gap:4px}}
/* The owner's supplied portrait keeps its complete, near-4:5 composition. */
.studio-reading .studio-about-photo{display:block;width:min(100%,360px);height:auto;max-height:none;aspect-ratio:1122/1402;object-fit:contain;object-position:center;margin:24px 0 28px;border-radius:5px;background:var(--side)}
.studio-about-biography>p{max-width:65ch;line-height:1.8;margin-top:1em}
.studio-about-biography>h1{font:clamp(36px,4.5vw,54px)/1.1 Georgia,serif;letter-spacing:-1.5px;margin:18px 0 28px}
.studio-about-copy>p{max-width:65ch;line-height:1.8;margin:0 0 1.25em;font-size:14px;text-align:justify;hyphens:auto}
@container(min-width:960px){.studio-about-layout{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:36px;align-items:start}.studio-reading .studio-about-photo{width:100%;margin:0}}

/* Mode controls belong to the Studio screen, including its room projection. */
.studio-system-identity{display:flex;align-items:center;gap:18px;min-width:0;flex-shrink:0}
.studio-systembar>.studio-modebar{margin-left:auto;flex:1;max-width:500px;color:var(--ink)}
.studio-system-right{margin-left:0;gap:16px;flex-shrink:0}
.studio-modebar .experience-place{color:var(--muted)}
@media(max-width:1100px){
 .studio-system-identity .studio-current,.studio-system-identity .studio-bar-separator{display:none}
 .studio-systembar{gap:12px;padding-inline:14px}
 .studio-system-right kbd{display:none}
}
@media(max-width:767px){
 .studio-systembar{flex-wrap:wrap;gap:0 8px;padding:4px 12px 6px;height:auto;min-height:100px}
 .studio-systembar>.studio-modebar{order:3;flex:0 0 100%;max-width:none}
 .studio-system-right{margin-left:auto}
 .studio-systembar .studio-time{display:none}
 .studio-shell.is-phone-layout .studio-systembar{gap:0 8px;padding:4px 12px 6px;min-height:100px}
 .studio-shell.is-phone-layout .studio-systembar>.studio-modebar{margin-left:0}
 .studio-shell.is-phone-layout .studio-system-right{margin-left:auto}
 .studio-shell.is-phone-layout .studio-brand{min-height:40px}
 .studio-shell.is-phone-layout .studio-system-right button{min-height:40px}
}
@media(max-width:767px) and (min-height:501px){
 .studio-shell.is-monitor-surface .studio-window,.studio-shell.is-monitor-surface .studio-window.is-maximized{top:110px!important;height:calc(100% - 210px)!important}
}
@media(max-height:500px){
 .studio-systembar>.studio-modebar{max-width:460px;font-size:10px;gap:5px 8px}
 .studio-modebar .experience-modes a,.studio-modebar .experience-room-return{min-height:26px;padding:2px 6px}
 .studio-system-right{gap:10px}
}
@media(max-height:500px) and (max-width:767px){
 .studio-systembar,.studio-shell.is-phone-layout .studio-systembar{height:auto;min-height:72px;padding-block:2px}
 .studio-systembar>.studio-modebar{max-width:none}
 .studio-shell.is-monitor-surface .studio-window,.studio-shell.is-monitor-surface .studio-window.is-maximized{top:78px!important;height:calc(100% - 127px)!important}
}

.studio-about-layout>.profile-portrait{margin:24px 0 28px}
@container(min-width:960px){.studio-about-layout>.profile-portrait{margin:0;width:100%}}

/* Keep the reversible portrait usable as a complete card on a short room screen. */
@media(max-height:500px){
 .studio-shell.is-monitor-surface .studio-about-layout{display:grid;grid-template-columns:clamp(100px,calc(80dvh - 152px),180px) minmax(0,1fr);gap:18px;align-items:start}
 .studio-shell.is-monitor-surface .studio-about-layout>.profile-portrait{margin:0;width:100%;max-width:none}
}

.achievement-gallery {
  max-width: 1360px;
  margin: 0 auto;
  padding: 0 1.5rem 5rem;
  color: var(--achievement-foreground);
}

.achievement-header {
  display: grid;
  gap: 1.5rem;
  align-items: end;
  margin-bottom: 2rem;
}

@media (min-width: 900px) {
  .achievement-header {
    grid-template-columns: minmax(0, 1fr) auto;
  }
}

.achievement-title {
  margin: 0.5rem 0 0;
  font-family: Georgia, serif;
  font-size: clamp(2.5rem, 6vw, 4.5rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.03em;
}

.achievement-intro {
  max-width: 46rem;
  margin: 1.25rem 0 0;
  color: var(--achievement-muted);
  font-size: 1.0625rem;
  line-height: 1.6;
}

.achievement-header-actions {
  display: flex;
  align-items: center;
  gap: 1rem;
  min-width: 0;
}

.achievement-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
  margin-bottom: 1rem;
}

@media (min-width: 700px) {
  .achievement-stats {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.achievement-stat {
  border: 1px solid var(--achievement-border);
  background: rgba(255, 255, 255, 0.84);
  border-radius: 1.25rem;
  padding: 1rem 1.1rem;
  box-shadow: 0 18px 38px -38px rgba(15, 23, 42, 0.32);
}

.achievement-statValue {
  display: block;
  margin-top: 0.35rem;
  font-family: Georgia, serif;
  font-size: 1.65rem;
  line-height: 1;
}

.achievement-segmented {
  display: inline-grid;
  grid-auto-columns: 1fr;
  grid-auto-flow: column;
  border: 1px solid var(--achievement-border-strong);
  border-radius: 999px;
  background: var(--achievement-surface-strong);
  overflow: hidden;
}

.achievement-segmentButton {
  min-width: 8.5rem;
  min-height: 2.75rem;
  border: 0;
  background: transparent;
  color: var(--achievement-muted);
  font-family: Arial, sans-serif;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.achievement-segmentButtonActive {
  background: var(--achievement-accent);
  color: var(--achievement-inverse-foreground);
}

.achievement-featured {
  display: grid;
  gap: 1rem;
  margin: 0 0 1.5rem;
}

@media (min-width: 760px) {
  .achievement-featured {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1160px) {
  .achievement-featured {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.achievement-featuredCard {
  position: relative;
  display: flex;
  min-height: 100%;
  flex-direction: column;
  border: 1px solid var(--achievement-border);
  border-radius: 1.5rem;
  padding: 1.2rem;
  background: var(--achievement-surface-strong);
  box-shadow: 0 22px 45px -42px rgba(15, 23, 42, 0.34);
}

.achievement-featuredTitle {
  margin: 0.45rem 0 0.5rem;
  font-family: Georgia, serif;
  font-size: 1.2rem;
  line-height: 1.25;
}

.achievement-featuredText {
  flex: 1;
  color: var(--achievement-muted);
  font-size: 0.94rem;
  line-height: 1.55;
}

.achievement-featuredImage {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: contain;
  object-position: top center;
  border-radius: 1rem;
  margin-bottom: 1rem;
  border: 1px solid var(--achievement-border);
}

.achievement-featuredButton {
  justify-self: start;
  margin-top: 0.9rem;
  border: 0;
  border-radius: 999px;
  background: transparent;
  padding: 0;
  color: var(--achievement-accent-strong);
  font: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.achievement-controls {
  display: grid;
  gap: 0.75rem;
  align-items: end;
  margin: 0 0 1.5rem;
  padding: 1rem;
  border: 1px solid var(--achievement-border);
  border-radius: 1.5rem;
  background: color-mix(in srgb, var(--achievement-surface-strong) 92%, var(--achievement-background));
}

@media (min-width: 760px) {
  .achievement-controls {
    grid-template-columns: minmax(180px, 1.3fr) minmax(150px, 1fr) minmax(120px, 0.8fr) auto auto;
  }
}

.achievement-search,
.achievement-select {
  width: 100%;
  min-height: 2.7rem;
  border: 1px solid var(--achievement-border-strong);
  border-radius: 0.9rem;
  padding: 0 0.8rem;
  background: var(--achievement-surface-strong);
  color: var(--achievement-foreground);
  font: inherit;
  font-size: 0.92rem;
}

.achievement-search:focus,
.achievement-select:focus,
.achievement-segmentButton:focus,
.achievement-cardButton:focus,
.achievement-clearButton:focus,
.achievement-docButton:focus,
.achievement-pageButton:focus,
.achievement-closeButton:focus {
  outline: 2px solid var(--achievement-focus);
  outline-offset: 3px;
}

.achievement-controlLabel {
  display: block;
  margin-bottom: 0.35rem;
  color: var(--achievement-muted);
  font-family: Arial, sans-serif;
  font-size: 0.68rem;
  text-transform: uppercase;
  letter-spacing: 0.11em;
}

.achievement-clearButton {
  min-height: 2.7rem;
  border: 1px solid var(--achievement-border-strong);
  border-radius: 999px;
  padding: 0 1.1rem;
  background: var(--achievement-surface-strong);
  color: var(--achievement-foreground);
  font: inherit;
  font-size: 0.88rem;
}

.achievement-clearButton:disabled {
  opacity: 0.45;
}

.achievement-resultCount {
  min-height: 2.7rem;
  display: flex;
  align-items: center;
  margin: 0;
  color: var(--achievement-muted);
  font-size: 0.88rem;
  white-space: nowrap;
}

.achievement-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem;
  align-items: start;
}

@media (min-width: 640px) {
  .achievement-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 880px) {
  .achievement-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (min-width: 1120px) {
  .achievement-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}

@media (min-width: 1360px) {
  .achievement-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}

.achievement-card {
  border: 1px solid var(--achievement-border);
  background: var(--achievement-surface-strong);
  border-radius: 1.1rem;
  overflow: hidden;
}

.achievement-cardButton {
  display: block;
  width: 100%;
  border: 0;
  background: transparent;
  color: inherit;
  padding: 0.7rem;
  text-align: left;
  font: inherit;
}

.achievement-thumbnail {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: contain;
  background: #f2f1ea;
  border: 1px solid var(--achievement-border);
  border-radius: 0.75rem;
}

.achievement-thumbnailEmpty {
  display: grid;
  place-items: center;
  min-height: 7rem;
  color: var(--achievement-muted);
  font-size: 0.78rem;
  text-align: center;
}

.achievement-cardBody {
  display: block;
  margin-top: 0.7rem;
}

.achievement-cardCategory,
.achievement-cardBadge {
  display: block;
  color: var(--achievement-muted);
  font-family: Arial, sans-serif;
  font-size: 0.65rem;
  line-height: 1.35;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.achievement-cardTitle {
  display: block;
  margin: 0.35rem 0;
  font-family: Georgia, serif;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.25;
}

.achievement-cardMeta {
  display: block;
  color: var(--achievement-muted);
  font-size: 0.8rem;
  line-height: 1.4;
}

.achievement-cardSummary {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-top: 0.45rem;
  color: var(--achievement-prose);
  font-size: 0.84rem;
  line-height: 1.45;
}

.achievement-empty {
  border: 1px dashed var(--achievement-border-strong);
  border-radius: 1.5rem;
  padding: 3rem 1.5rem;
  text-align: center;
  background: rgba(255, 255, 255, 0.7);
}

.achievement-empty h2,
.achievement-empty p {
  margin: 0 0 0.5rem;
}

.achievement-empty button {
  min-height: 2.5rem;
  border: 1px solid var(--achievement-border-strong);
  border-radius: 999px;
  padding: 0 1rem;
  background: var(--achievement-surface-strong);
  font: inherit;
}

.achievement-backdrop {
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  display: grid;
  place-items: center;
  padding: clamp(0.75rem, 3vw, 2.5rem);
  background: rgba(13, 20, 25, 0.72);
  backdrop-filter: blur(12px);
}

.achievement-dialog {
  position: relative;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  width: min(1120px, 100%);
  max-height: min(92dvh, 100%);
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 1.25rem;
  background: var(--achievement-surface-strong);
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.45);
  overflow: hidden;
}

.achievement-dialogHeader {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
  justify-content: space-between;
  padding: 1rem 1rem 0.5rem 1.4rem;
  border-bottom: 1px solid var(--achievement-border);
}

.achievement-dialogTitle {
  margin: 0.2rem 0 0;
  font-family: Georgia, serif;
  font-size: clamp(1.25rem, 3vw, 1.9rem);
  line-height: 1.1;
}

.achievement-closeButton {
  flex: 0 0 auto;
  width: 2.5rem;
  height: 2.5rem;
  border: 1px solid var(--achievement-border-strong);
  border-radius: 999px;
  background: var(--achievement-surface-strong);
  color: var(--achievement-foreground);
  font-size: 1.2rem;
  line-height: 1;
}

.achievement-dialogBody {
  display: grid;
  min-height: 0;
  overflow: auto;
}

@media (min-width: 860px) {
  .achievement-dialogBody {
    grid-template-columns: minmax(0, 1fr) 280px;
  }
}

.achievement-viewerColumn {
  min-width: 0;
  padding: 1rem;
}

.achievement-imageFrame {
  display: grid;
  place-items: center;
  min-height: 0;
  border: 1px solid var(--achievement-border);
  border-radius: 1rem;
  background: #f4f3ec;
  overflow: auto;
}

.achievement-viewerImage {
  max-width: 100%;
  max-height: min(52dvh, 620px);
  width: auto;
  height: auto;
  object-fit: contain;
}

.achievement-imageActions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  margin-top: 1rem;
}

.achievement-imageActions a,
.achievement-imageActions button {
  min-height: 2.25rem;
  border: 1px solid var(--achievement-border-strong);
  border-radius: 999px;
  padding: 0 0.9rem;
  background: var(--achievement-surface-strong);
  color: inherit;
  font: inherit;
  font-size: 0.85rem;
  text-decoration: none;
}

.achievement-details {
  min-width: 0;
  border-top: 1px solid var(--achievement-border);
  padding: 1.25rem;
  background: #fbfaf6;
  overflow: auto;
}

@media (min-width: 860px) {
  .achievement-details {
    border-top: 0;
    border-left: 1px solid var(--achievement-border);
  }
}

.achievement-details dl,
.achievement-details div {
  margin: 0;
}

.achievement-details div + div {
  margin-top: 1rem;
}

.achievement-details dt {
  color: var(--achievement-muted);
  font-family: Arial, sans-serif;
  font-size: 0.67rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.achievement-details dd {
  margin: 0.35rem 0 0;
  font-size: 0.92rem;
  line-height: 1.5;
}
/* Self-contained colours also apply to the portal outside the Studio window. */
.achievement-gallery,.achievement-backdrop{--achievement-foreground:#25342b;--achievement-muted:#5b685e;--achievement-border:#dce0d3;--achievement-border-strong:#bbc5b1;--achievement-surface-strong:#fffefa;--achievement-background:#f7f7ef;--achievement-accent:#365b40;--achievement-accent-strong:#294932;--achievement-inverse-foreground:#fff;--achievement-focus:#6b8b45;--achievement-prose:#465349;color:var(--achievement-foreground);font:14px/1.6 Arial,Helvetica,sans-serif;color-scheme:light}
.achievement-gallery *,.achievement-backdrop *{box-sizing:border-box}
.achievement-gallery{padding-top:42px;container-type:inline-size}
.achievement-gallery.is-embedded{padding:30px 26px 60px}
.achievement-eyebrow{font:10px/1.5 Arial,sans-serif;text-transform:uppercase;letter-spacing:1.4px;color:var(--achievement-muted);margin:0}
.achievement-title{font-weight:400}.achievement-stat{border-radius:7px;display:flex;flex-direction:column;gap:9px}.achievement-stat>span:last-child{font-size:11px;color:var(--achievement-muted)}.achievement-statValue{font-size:30px}.achievement-collectionHeading{display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between;margin:34px 0 20px}.achievement-collectionHeading h2{font:30px/1.2 Georgia,serif;letter-spacing:-.6px;margin:6px 0 0}
.achievement-controls{grid-template-columns: minmax(0,1fr) minmax(0,1fr);border-radius:7px}.achievement-controls>label:first-child{grid-column:1/-1}.achievement-controls>label{min-width:0}.achievement-controls input,.achievement-controls select{border-radius:5px;min-height:44px}.achievement-controls .achievement-clearButton{justify-self:start;border-radius:5px;min-height:44px}.achievement-resultCount{min-height:0;margin:0 0 16px;font-size:12px}.achievement-card{border-radius:6px}.achievement-cardButton{cursor:pointer}.achievement-cardButton:hover{background:#f3f5ec}.achievement-cardButton:focus-visible{outline:3px solid var(--achievement-focus);outline-offset:-3px}.achievement-thumbnail{border-radius:3px;background:#f5f5ef}.achievement-cardTitle{font-weight:400;overflow-wrap:anywhere}.achievement-cardBadge{margin-top:10px;font-size:9px;letter-spacing:.3px;text-transform:none}.achievement-cardCategory{font-size:9px;letter-spacing:.5px}.achievement-cardMeta{font-size:11px}.achievement-featured{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}.achievement-featuredCard{border-radius:7px}.achievement-featuredTitle{font-weight:400}.achievement-featuredText{font-size:13px}.achievement-featuredButton{font-size:12px;text-align:left;min-height:44px;cursor:pointer}.achievement-segmentButton{min-width:105px;min-height:44px;cursor:pointer}.achievement-segmented{border-radius:6px}.achievement-dialog{color:var(--achievement-foreground)}.achievement-dialogTitle{overflow-wrap:anywhere}.achievement-dialog button,.achievement-dialog select{font:inherit;cursor:pointer}.achievement-dialog button:focus-visible,.achievement-dialog a:focus-visible{outline:3px solid var(--achievement-focus);outline-offset:2px}.achievement-imageFrame{max-height:60dvh;min-height:160px}.achievement-viewerImage{max-height:56dvh;display:block}.achievement-viewerImage.is-zoomed{max-width:none;max-height:none;width:auto;height:auto}.achievement-imageFrame:has(.is-zoomed){display:block}.achievement-documentSelect{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:12px;margin-bottom:12px}.achievement-documentSelect select{min-height:44px;max-width:100%;min-width:0;flex:1;border:1px solid var(--achievement-border);background:#fffefa;border-radius:5px;padding:8px}.achievement-details{font-size:13px}.achievement-imageActions{flex-wrap:wrap;gap:9px}.achievement-imageActions button,.achievement-imageActions a{min-height:44px;display:inline-flex;align-items:center}.achievement-pageButton{min-width:44px;min-height:44px}.achievement-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}
.achievement-gallery[data-density=comfortable] .achievement-grid{grid-template-columns:1fr}
@container(min-width:600px){.achievement-controls{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,.7fr) auto}.achievement-controls>label:first-child{grid-column:auto}.achievement-gallery[data-density=comfortable] .achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container(min-width:1000px){.achievement-gallery[data-density=comfortable] .achievement-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:400px){.achievement-gallery{padding:26px 12px 48px}.achievement-gallery.is-embedded{padding:24px 16px 48px}.achievement-title{font-size:38px}.achievement-grid{gap:9px}.achievement-cardButton{padding:7px}.achievement-cardTitle{font-size:14px}.achievement-backdrop{padding:7px}.achievement-dialogHeader{padding:12px}.achievement-dialogTitle{font-size:19px}.achievement-closeButton{width:44px;height:44px}.achievement-viewerColumn{padding:10px}.achievement-imageActions{font-size:12px}}
@media(max-width:340px){.achievement-grid{grid-template-columns:1fr}}
.achievement-jump{display:inline-block;margin-top:14px;color:var(--achievement-accent);font-size:13px;text-decoration:underline;text-underline-offset:4px;min-height:32px;padding:5px 0}.achievement-highlights{margin:18px 0;border-block:1px solid var(--achievement-border)}.achievement-highlights>summary{padding:13px 4px;cursor:pointer;color:var(--achievement-accent);font-size:13px}.achievement-highlights>summary>span{float:right;color:var(--achievement-muted);font-size:11px}.achievement-highlights .achievement-featured{padding-top:12px}.achievement-collectionHeading{scroll-margin-top:20px}
@media(min-width:1000px){.achievement-title-break{display:none}}
@media(max-width:600px){.achievement-stat:last-child .achievement-statValue{font-size:24px;white-space:nowrap}}

.portfolio-timeline {
  --timeline-ink: var(--work-portfolio-foreground);
  --timeline-muted: var(--work-portfolio-muted);
  --timeline-line: #cbd0c1;
  --timeline-soft: #f3f3eb;
  position: relative;
  min-width: 0;
  margin: 0 0 1.25rem;
  color: var(--timeline-ink);
}

/* This shared component also runs outside the main site's utility styles. */
.portfolio-timeline .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;
}

.portfolio-timeline-scroll {
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  padding: .2rem 0 .55rem;
  scrollbar-color: #9ba88c transparent;
}

.portfolio-timeline-chart {
  min-width: 1240px;
  padding: .15rem .25rem .25rem;
}

.portfolio-timeline-figure {
  position: relative;
  overflow: hidden;
  border-top: 1px solid #c9cfc2;
  border-bottom: 1px solid #c9cfc2;
  border-radius: .22rem;
  background: var(--timeline-soft);
}

.portfolio-timeline-figure::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 0;
  background: repeating-linear-gradient(180deg, transparent 0, transparent 11px, #ffffff43 11px, #ffffff43 12px);
  pointer-events: none;
}

.portfolio-timeline-axis {
  position: relative;
  min-height: 48px;
  padding: .35rem 0 .2rem;
  color: var(--timeline-muted);
}

.portfolio-timeline-years,
.portfolio-timeline-months {
  display: flex;
  align-items: stretch;
}

.portfolio-timeline-years > span {
  position: relative;
  display: block;
  min-width: 0;
  font-size: .7rem;
}

.portfolio-timeline-years > span strong {
  display: block;
  padding-left: .32rem;
  color: var(--timeline-ink);
  font-size: .69rem;
  font-weight: 600;
}

.portfolio-timeline-months { margin-top: .15rem; }

.portfolio-timeline-months > span {
  min-width: 0;
  padding-left: 2px;
  border-left: 1px solid #e2e4da;
  color: #8a9284;
  font: 8px/1.3 ui-monospace, SFMono-Regular, Consolas, monospace;
  overflow: hidden;
}

.portfolio-timeline-today-line {
  position: absolute;
  z-index: 0;
  top: 13px;
  bottom: 0;
  border-left: 1px solid #59705c;
  opacity: .72;
}

.portfolio-timeline-today-label {
  position: absolute;
  top: -.1rem;
  transform: translateX(-100%);
  padding: 0 .18rem;
  color: #49624e;
  background: var(--timeline-soft);
  font: 8px/1.3 ui-monospace, SFMono-Regular, Consolas, monospace;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.portfolio-timeline-grid {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}

.portfolio-timeline-grid i {
  position: absolute;
  top: 0;
  bottom: 0;
  border-left: 1px solid #e2e4da;
}

.portfolio-timeline-grid i.is-year { border-left-color: #bfc6b7; }
.portfolio-timeline-grid i.is-quarter { opacity: .75; }

.portfolio-timeline-runs,
.portfolio-timeline-cloud {
  position: relative;
  margin: 0;
  border-top: 1px solid #d7dccf;
  background: transparent;
}

.portfolio-timeline-cloud { min-height: 138px; border-bottom: 0; }

.portfolio-timeline-run {
  position: absolute;
  z-index: 2;
  height: 8px;
  min-width: 3px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 3px;
  background: transparent;
  opacity: .88;
  cursor: pointer;
  box-shadow: 0 1px 0 #0000000f;
}

.portfolio-timeline-run > span {
  display: block;
  width: 100%;
  height: 4px;
  margin-top: 2px;
  border-radius: 999px;
  background: var(--timeline-bar, #667b61);
}

.portfolio-timeline-run:hover,
.portfolio-timeline-run:focus-visible { z-index: 4; opacity: 1; outline: 2px solid #fff; outline-offset: 1px; }
.portfolio-timeline-run.is-clipped > span { border-radius: 0 999px 999px 0; background-image: repeating-linear-gradient(120deg, transparent 0, transparent 3px, #fff6 3px, #fff6 5px); }
.portfolio-timeline-run.is-ongoing > span { box-shadow: inset -2px 0 0 #294932; }

.portfolio-timeline-point {
  position: absolute;
  z-index: 3;
  display: grid;
  place-items: center;
  width: 12px;
  height: 12px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  transform: translateX(-50%);
  cursor: pointer;
}

.portfolio-timeline-point > span {
  display: block;
  width: 7px;
  height: 7px;
  border: 1px solid #0002;
  border-radius: 50%;
  background: var(--timeline-dot, #71836b);
  box-sizing: border-box;
}

.portfolio-timeline-point:hover,
.portfolio-timeline-point:focus-visible {
  z-index: 8;
  outline: 2px solid #26372b;
  outline-offset: 1px;
  background: #f7f8f0;
}

.portfolio-timeline-legend {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem .8rem;
  margin: .62rem 0 .2rem;
  color: var(--timeline-muted);
  font-size: .61rem;
}

.portfolio-timeline-legend > span {
  display: inline-flex;
  align-items: center;
  gap: .28rem;
}

.portfolio-timeline-legend i {
  display: inline-block;
  width: 7px;
  height: 7px;
  border: 1px solid #0002;
  border-radius: 50%;
  background: var(--timeline-dot, #71836b);
}

.portfolio-timeline-tooltip {
  position: fixed;
  z-index: 1200;
  width: min(316px, calc(100vw - 24px));
  padding: .62rem .7rem .66rem;
  border: 1px solid #7c8978;
  border-radius: .35rem;
  background: #fffef8;
  color: #26372b;
  box-shadow: 0 10px 26px #1e2c1f2b, 0 2px 5px #1e2c1f1a;
  pointer-events: none;
  font: 12px/1.42 Arial, sans-serif;
}

.portfolio-timeline-tooltip > span {
  display: block;
  margin-bottom: .2rem;
  color: #64705f;
  font-size: .58rem;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.portfolio-timeline-tooltip strong { display: block; font-size: .76rem; font-weight: 600; }
.portfolio-timeline-tooltip small { display: block; margin-top: .23rem; color: #5a6658; font-size: .66rem; }
.portfolio-timeline-tooltip em { display: block; margin-top: .32rem; color: #7a6331; font-size: .62rem; font-style: normal; }

.is-articles { --timeline-dot: #3d6047; --timeline-bar: #3d6047; }
.is-preprints { --timeline-dot: #709573; --timeline-bar: #709573; }
.is-abstracts { --timeline-dot: #9e793e; --timeline-bar: #9e793e; }
.is-presentations { --timeline-dot: #b5704d; --timeline-bar: #b5704d; }
.is-conferences { --timeline-dot: #bca17b; --timeline-bar: #bca17b; }
.is-projects { --timeline-dot: #4a7884; --timeline-bar: #4a7884; }
.is-writing { --timeline-dot: #84729b; --timeline-bar: #84729b; }
.is-awards { --timeline-dot: #ad8b26; --timeline-bar: #ad8b26; }
.is-education { --timeline-dot: #9d784c; --timeline-bar: #9d784c; }
.is-experience { --timeline-dot: #587455; --timeline-bar: #587455; }
.is-leadership { --timeline-dot: #71868e; --timeline-bar: #71868e; }
.is-courses { --timeline-dot: #7c838b; --timeline-bar: #7c838b; }

@media (max-width: 760px) {
  .portfolio-timeline-chart { min-width: 1050px; }
}

@media (prefers-reduced-motion: reduce) {
  .portfolio-timeline-run,
  .portfolio-timeline-point { transition: none !important; }
}

.work-portfolio {
  --work-portfolio-foreground: #25342b;
  --work-portfolio-muted: #5b685e;
  --work-portfolio-prose: #465349;
  --work-portfolio-border: #dce0d3;
  --work-portfolio-border-strong: #bbc5b1;
  --work-portfolio-surface: #fffefa;
  --work-portfolio-background: #f7f7ef;
  --work-portfolio-accent: #365b40;
  --work-portfolio-accent-strong: #294932;
  --work-portfolio-focus: #6b8b45;
  max-width: 1360px;
  margin: 0 auto;
  padding: 1rem 1.5rem 5rem;
  color: var(--work-portfolio-foreground);
  font: 14px/1.6 Arial, Helvetica, sans-serif;
  color-scheme: light;
}

.work-portfolio.is-embedded {
  padding: 1.5rem 1rem 3rem;
  overflow-anchor: none;
}

.work-portfolio *,
.work-portfolio *::before,
.work-portfolio *::after {
  box-sizing: border-box;
}

.work-portfolio :focus-visible {
  outline: 3px solid var(--work-portfolio-focus);
  outline-offset: 2px;
}

.work-portfolio-header {
  display: flex;
  gap: 1rem;
  align-items: end;
  justify-content: space-between;
  margin-bottom: 1.5rem;
}

.work-portfolio-title {
  margin: .25rem 0 0;
  color: inherit;
  font-family: Georgia, serif;
  font-size: clamp(2.5rem, 6vw, 4rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: -.03em;
}

.work-portfolio-eyebrow,
.work-portfolio-category,
.work-portfolio-badge,
.work-portfolio-counts,
.work-portfolio-status,
.work-portfolio-highlight-card > span {
  margin: 0;
  color: var(--work-portfolio-muted);
}

.work-portfolio-eyebrow,
.work-portfolio-category,
.work-portfolio-badge,
.work-portfolio-highlight-card > span {
  font-size: .68rem;
  text-transform: uppercase;
  letter-spacing: .1em;
}

.work-portfolio-counts {
  max-width: 34rem;
  text-align: right;
  font-size: .85rem;
}

.work-portfolio-counts strong {
  color: var(--work-portfolio-foreground);
  font-family: Georgia, serif;
  font-size: 1.15rem;
}

.work-portfolio-controls {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .75rem;
  padding: .8rem;
  border: 1px solid var(--work-portfolio-border);
  border-radius: .6rem;
  background: color-mix(in srgb, var(--work-portfolio-surface) 92%, var(--work-portfolio-background));
}

.work-portfolio-controls > label:first-child,
.work-portfolio-views {
  grid-column: 1 / -1;
}

.work-portfolio-controls label {
  min-width: 0;
}

.work-portfolio-controls input,
.work-portfolio-controls select {
  width: 100%;
  min-height: 2.7rem;
  border: 1px solid var(--work-portfolio-border-strong);
  border-radius: .35rem;
  padding: .45rem .65rem;
  background: var(--work-portfolio-surface);
  color: inherit;
  font: inherit;
  font-size: .92rem;
}

.work-portfolio-controls button,
.work-portfolio-evidence-list button,
.work-portfolio-primary-links button,
.work-portfolio-highlight-card button,
.work-portfolio-evidence-actions button,
.work-portfolio-empty button {
  border: 1px solid var(--work-portfolio-border-strong);
  border-radius: .35rem;
  padding: .45rem .65rem;
  background: transparent;
  color: var(--work-portfolio-accent);
  font: inherit;
  cursor: pointer;
}

.work-portfolio-views {
  display: flex;
  gap: .5rem;
}

.work-portfolio-views button {
  flex: 1;
  min-height: 2.7rem;
}

.work-portfolio-views button[aria-pressed=true] {
  border-color: transparent;
  background: var(--work-portfolio-accent);
  color: #fff;
  min-height: 2.7rem;
}

.work-portfolio-controls > button {
  justify-self: start;
  min-height: 2.7rem;
}

.work-portfolio-controls > button:disabled {
  opacity: .5;
  cursor: not-allowed;
}

.work-portfolio-status {
  margin: .8rem 0 1rem;
  font-size: .78rem;
}

.work-portfolio-highlights {
  display: grid;
  grid-template-columns: 1fr;
  gap: .7rem;
  margin-bottom: 1.5rem;
}

.work-portfolio-highlight-card {
  border: 1px solid var(--work-portfolio-border);
  border-radius: .5rem;
  padding: .8rem;
  background: var(--work-portfolio-surface);
}

.work-portfolio-highlight-card h2 {
  margin: .35rem 0;
  font-family: Georgia, serif;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.25;
}

.work-portfolio-highlight-card p {
  margin: 0 0 .6rem;
  color: var(--work-portfolio-prose);
  font-size: .82rem;
}

.work-portfolio-highlight-card button {
  min-height: 2.5rem;
}

.work-portfolio-year-nav,
.work-portfolio-grid,
.work-portfolio-source-grid,
.work-portfolio-certificate-grid {
  display: grid;
  gap: .7rem;
}

.work-portfolio-year-nav {
  grid-template-columns: repeat(auto-fit, minmax(4rem, 1fr));
  margin-bottom: 1.2rem;
}

.work-portfolio-year-nav a {
  display: grid;
  place-items: center;
  min-height: 2.5rem;
  border: 1px solid var(--work-portfolio-border);
  border-radius: .3rem;
  background: var(--work-portfolio-surface);
  color: var(--work-portfolio-accent);
  font-size: .82rem;
  text-decoration: none;
}

.work-portfolio-year-section {
  scroll-margin-top: 1.5rem;
}

.work-portfolio-year-marker {
  display: flex;
  gap: .8rem;
  align-items: baseline;
  justify-content: space-between;
  margin: 1.5rem 0 .6rem;
  border-bottom: 1px solid var(--work-portfolio-border);
  padding-bottom: .35rem;
}

.work-portfolio-year-marker h2,
.work-portfolio-category-heading {
  font-family: Georgia, serif;
  font-weight: 600;
  letter-spacing: -.02em;
}

.work-portfolio-year-marker h2 {
  margin: 0;
  font-size: clamp(1.7rem, 5vw, 2.2rem);
}

.work-portfolio-year-marker span {
  color: var(--work-portfolio-muted);
  font-size: .78rem;
}

.work-portfolio-category-heading {
  margin: 1rem 0 .6rem;
  font-size: 1.1rem;
}

.work-portfolio-category-heading span {
  color: var(--work-portfolio-muted);
  font-family: Arial, Helvetica, sans-serif;
  font-size: .75rem;
  font-weight: 400;
}

.work-portfolio-grid {
  grid-template-columns: 1fr;
}

.work-portfolio-card,
.work-portfolio-source-card,
.work-portfolio-certificate-card {
  border: 1px solid var(--work-portfolio-border);
  border-radius: .5rem;
  padding: .9rem;
  background: var(--work-portfolio-surface);
}

.work-portfolio-card-header {
  display: flex;
  gap: .5rem;
  align-items: center;
  justify-content: space-between;
}

.work-portfolio-badge {
  padding: .2rem .4rem;
  border-radius: 999px;
  background: color-mix(in srgb, var(--work-portfolio-accent) 12%, transparent);
  color: var(--work-portfolio-accent-strong);
}

.work-portfolio-card-title,
.work-portfolio-highlight-card h2,
.work-portfolio-evidence-body h4 {
  font-family: Georgia, serif;
  font-weight: 600;
  line-height: 1.25;
}

.work-portfolio-card-title,
.work-portfolio-evidence-body h4 {
  margin: .4rem 0;
  font-size: 1rem;
}

.work-portfolio-card-meta,
.work-portfolio-evidence-body p {
  margin: 0;
  color: var(--work-portfolio-muted);
  font-size: .78rem;
}

.work-portfolio-card-summary,
.work-portfolio-highlight-card p {
  color: var(--work-portfolio-prose);
  font-size: .84rem;
}

.work-portfolio-card-summary {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin: .5rem 0;
}

.work-portfolio-details {
  margin-top: .5rem;
  border-top: 1px solid var(--work-portfolio-border);
  padding-top: .4rem;
}

.work-portfolio-details summary {
  display: flex;
  align-items: center;
  min-height: 2.2rem;
  color: var(--work-portfolio-accent);
  cursor: pointer;
  font-size: .82rem;
}

.work-portfolio-details dl {
  display: grid;
  gap: .5rem;
  margin: .5rem 0;
}

.work-portfolio-details dt {
  color: var(--work-portfolio-muted);
  font-size: .68rem;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.work-portfolio-details dd {
  margin: 0;
  font-size: .84rem;
}

.work-portfolio-evidence-list {
  display: grid;
  gap: .4rem;
  margin-top: .5rem;
}

.work-portfolio-evidence-list button,
.work-portfolio-evidence-list a,
.work-portfolio-primary-links a,
.work-portfolio-evidence-actions a {
  display: inline-flex;
  align-items: center;
  min-height: 2.5rem;
  border: 1px solid var(--work-portfolio-border-strong);
  border-radius: .3rem;
  padding: .35rem .55rem;
  background: transparent;
  color: var(--work-portfolio-accent);
  font-size: .82rem;
  text-align: left;
  text-decoration: none;
}

.work-portfolio-primary-links {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem;
  margin-top: .55rem;
}

.work-portfolio-primary-links a,
.work-portfolio-primary-links button {
  font-size: .8rem;
}

.work-portfolio-evidence > section + section {
  margin-top: 2rem;
}

.work-portfolio-evidence h2 {
  margin: 1.5rem 0 .8rem;
  font-family: Georgia, serif;
  font-size: 1.4rem;
}

.work-portfolio-source-grid,
.work-portfolio-certificate-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.work-portfolio-certificate-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.work-portfolio-source-card img,
.work-portfolio-certificate-card img {
  width: 100%;
  height: auto;
  border: 1px solid var(--work-portfolio-border);
  border-radius: .25rem;
  background: #f5f5ef;
  object-fit: contain;
}

.work-portfolio-source-card.is-text,
.work-portfolio-certificate-card.is-text {
  display: flex;
  min-height: 9rem;
  flex-direction: column;
  justify-content: space-between;
  gap: .35rem;
}

.work-portfolio-source-card > span,
.work-portfolio-certificate-card > span {
  color: var(--work-portfolio-muted);
  font-size: .68rem;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.work-portfolio-evidence-body {
  display: block;
  margin-top: .55rem;
}

.work-portfolio-evidence-body > span {
  display: block;
  color: var(--work-portfolio-muted);
  font-size: .68rem;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.work-portfolio-evidence-actions {
  display: flex;
  gap: .4rem;
  margin-top: .55rem;
}

.work-portfolio-evidence-actions a,
.work-portfolio-evidence-actions button {
  flex: 1;
  min-height: 2.5rem;
  font-size: .78rem;
  text-align: center;
}

.work-portfolio-empty {
  margin: 2rem 0;
  border: 1px dashed var(--work-portfolio-border-strong);
  border-radius: .5rem;
  padding: 2rem 1rem;
  text-align: center;
}

.work-portfolio-empty h2,
.work-portfolio-empty p {
  margin: 0 0 .4rem;
}

.work-portfolio-empty button {
  min-height: 2.5rem;
}

@media (min-width: 720px) {
  .work-portfolio-controls {
    grid-template-columns: minmax(0, 1.5fr) minmax(0, .9fr) minmax(0, .7fr);
  }

  .work-portfolio-controls > label:first-child,
    .work-portfolio-views {
    grid-column: auto;
  }

  .work-portfolio-grid,
  .work-portfolio-highlights,
  .work-portfolio-source-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1000px) {
  .work-portfolio-certificate-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}

@media (max-width: 480px) {
  .work-portfolio {
    padding: 0 .8rem 3rem;
  }

  .work-portfolio-header {
    align-items: start;
    flex-direction: column;
  }

  .work-portfolio-counts {
    text-align: left;
  }

  .work-portfolio-controls {
    grid-template-columns: 1fr;
  }

  .work-portfolio-source-grid,
  .work-portfolio-certificate-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

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

.experience-modebar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 12px;
  min-width: 0;
  color: inherit;
  font: 11px/1.4 Arial, sans-serif;
}

.experience-place {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-right: auto;
  white-space: nowrap;
}

.experience-place i {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #637b47;
}

.experience-modes { display: flex; align-items: center; gap: 3px; }
.experience-modes a,
.experience-room-return {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-height: 30px;
  padding: 4px 8px;
  border: 1px solid transparent;
  border-radius: 4px;
  color: inherit;
  text-decoration: none;
  white-space: nowrap;
  box-sizing: border-box;
}

.experience-modes a:hover,
.experience-room-return:hover { background: var(--active, #e2e8d9); border-color: #9baa8f; }
.experience-modes a[aria-current="page"] { border-color: #9baa8f; background: var(--paper, #fffef8); font-weight: 600; }
.experience-room-return { border-color: var(--border, #9baa8f); background: var(--paper, #fffef8); }
.experience-modes a:focus-visible,
.experience-room-return:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }

@media (max-width: 767px) {
  .experience-modebar { gap: 4px 6px; }
  .experience-modes a, .experience-room-return { min-height: 44px; padding: 5px 8px; }
}

.profile-portrait { width: 100%; max-width: 360px; margin: 0; color: inherit; }
.profile-portrait-button {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 1122 / 1402;
  padding: 0;
  border: 0;
  border-radius: 5px;
  background: transparent;
  color: inherit;
  cursor: pointer;
  perspective: 1100px;
  -webkit-tap-highlight-color: transparent;
}
.profile-portrait-button:focus-visible { outline: 3px solid #365b40; outline-offset: 5px; }
.profile-portrait-turn {
  position: absolute;
  inset: 0;
  display: block;
  transform-style: preserve-3d;
  transition: transform 650ms cubic-bezier(.2,.65,.25,1);
}
.profile-portrait[data-side="childhood"] .profile-portrait-turn { transform: rotateY(180deg); }
.profile-portrait-face {
  position: absolute;
  inset: 0;
  display: block;
  overflow: hidden;
  border-radius: 5px;
  background: #e8e5dd;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.profile-portrait-back { transform: rotateY(180deg); }
.profile-portrait-face img { display: block; width: 100%; height: 100%; object-fit: contain; }
.profile-portrait-affordance {
  position: absolute;
  right: 10px;
  bottom: 10px;
  display: inline-flex;
  gap: 8px;
  align-items: center;
  padding: 6px 9px;
  border: 1px solid #ffffff85;
  border-radius: 3px;
  background: #203429d9;
  color: #fffef8;
  font: 11px/1.3 Arial, sans-serif;
  pointer-events: none;
}
@media(prefers-reduced-motion:reduce) { .profile-portrait-turn { transition: none; } }

