:root{--paper:#f7f0e4;--ink:#373832;--muted:#716d63;--red:#e9422b;--line:#d9d0bf;color:var(--ink);background:var(--paper);font-synthesis:none;font-family:Helvetica Neue,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}body{place-items:center;min-height:100svh;margin:0;display:grid}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:2px solid var(--red);outline-offset:6px}::selection{color:#fff9f0;background:#e9422b}.portfolio{aspect-ratio:1.61803;isolation:isolate;background:var(--paper);width:min(1200px,100vw,161.803svh);position:relative;overflow:hidden}.masthead{top:0;z-index:3;justify-content:space-between;align-items:center;gap:24px;padding:34px 4.6%;display:flex;position:absolute;inset-inline:0}.name{letter-spacing:.025em;white-space:nowrap;margin:0;font-size:18px;font-weight:300}.artwork{aspect-ratio:1090/1140;width:40.1722%;margin:0;position:absolute;top:53%;left:52.5%;transform:translate(-50%,-50%)}.artwork-crop{position:absolute;inset:0;overflow:visible}.portrait{-webkit-user-select:none;user-select:none;pointer-events:none;width:117.431%;max-width:none;height:auto;position:absolute;top:-5.26316%;left:-14.6789%}.folder-hotspot{background:0 0;border:0;width:36%;height:26%;padding:0;position:absolute;top:2%;left:19%;transform:rotate(-3deg)}.folder-hotspot span{white-space:nowrap;opacity:0;font-size:12px;font-style:italic;transition:opacity .2s,transform .2s;position:absolute;bottom:calc(100% + 15px);left:50%;transform:translate(-50%,4px)rotate(3deg)}.folder-hotspot:hover span,.folder-hotspot:focus-visible span{opacity:1;transform:translate(-50%)rotate(3deg)}.page-footer{z-index:2;position:absolute;bottom:5.4%;left:4.6%}.word-navigation{align-items:center;gap:32px;display:flex}.word-navigation button{letter-spacing:.06em;background:0 0;border:0;min-height:44px;padding:6px 0;font-size:14px;font-weight:300;line-height:1.4;transition:color .2s}.word-navigation button:hover,.word-navigation button:focus-visible{color:var(--red)}.portfolio-panel{width:min(500px,100%);max-width:100%;height:100dvh;max-height:100dvh;color:var(--ink);overscroll-behavior:contain;background:#f8f3e9;border:0;margin:0;padding:0;position:fixed;inset:0 0 0 auto;overflow-y:auto;box-shadow:-12px 0 70px #302b1b14}.portfolio-panel::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#25231626}.portfolio-panel[open]{animation:.28s ease-out panel-arrive}.panel-inner{flex-direction:column;min-height:100%;padding:30px 38px 32px;display:flex}.panel-top{justify-content:space-between;align-items:center;margin-bottom:46px;display:flex}.panel-label{text-transform:uppercase;letter-spacing:.15em;color:var(--muted);margin:0;font-size:12px}.close-panel{background:0 0;border:0;align-items:center;gap:14px;padding:9px 0 9px 12px;font-size:13px;display:inline-flex}.close-panel span{font-size:25px;font-weight:400;line-height:.7}.close-panel:hover{color:var(--red)}.panel-inner h2{letter-spacing:-.035em;margin:0 0 24px;font:400 36px/1.1 Georgia,serif}.panel-lede{color:var(--muted);margin:0 0 30px;font-size:16px;line-height:1.7}.project-list{border-top:1px solid var(--line);margin:0 0 28px}.project{border-bottom:1px solid var(--line);grid-template-columns:24px 1fr;gap:17px;padding:22px 0;display:grid}.project-number{color:var(--muted);padding-top:4px;font-size:11px}.project h3{margin:0 0 10px;font-size:20px;font-weight:400;transition:color .18s}.project:hover h3{color:var(--red)}.project p,.story-list p{color:var(--muted);margin:0;font-size:14px;line-height:1.7}.project-meta{color:var(--muted);margin-top:12px;font-size:11px;line-height:1.6;display:block}.underlined{border-bottom:1px solid var(--ink);padding-bottom:5px;font-size:14px;display:inline-block}.underlined:hover{color:var(--red);border-color:var(--red)}.story-list{margin:0 0 28px;padding:0;list-style:none}.story-list li{border-left:1px solid var(--line);padding:0 0 28px 23px;position:relative}.story-list li:before{content:"";background:var(--red);width:5px;height:5px;position:absolute;top:4px;left:-3px}.story-list li:last-child{padding-bottom:0}.story-year{color:var(--muted);font-size:11px}.story-list h3{margin:10px 0;font-size:20px;font-weight:400}.secondary-link{color:var(--muted);margin-top:18px;font-size:13px;display:block}.secondary-link:hover{color:var(--red)}.contact-content>p:not(.panel-lede){font-size:16px}.contact-links{flex-direction:column;gap:0;margin-top:38px;display:flex}.contact-links a{border-bottom:1px solid var(--line);padding:19px 0;font-size:17px}.contact-links a:hover{color:var(--red)}.contact-content .location{color:var(--muted);margin-top:34px;font-size:12px!important}.panel-signature{color:var(--muted);align-items:center;gap:10px;margin-top:auto;padding-top:54px;font-size:12px;display:flex}.panel-signature span{background:var(--red);width:7px;height:7px}@keyframes panel-arrive{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@media (orientation:portrait){.portfolio{aspect-ratio:1/1.61803;width:min(742px,100vw,61.8034svh)}.artwork{width:92%;top:53%;left:50%}}@media (max-width:650px){.masthead{gap:12px;padding:25px 6%}.name{font-size:17px}.page-footer{bottom:6%;left:6%}.word-navigation{gap:28px}.word-navigation button{font-size:14px}.folder-hotspot span{display:none}.panel-inner{padding:22px 26px 30px}.panel-top{margin-bottom:35px}.panel-inner h2{font-size:34px}}@media (max-height:560px){.masthead{padding-block:20px}.page-footer{bottom:4%}.artwork-signature{margin-top:-8px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}@media (forced-colors:active){.folder-hotspot{border:1px solid buttontext}.portrait{forced-color-adjust:none}}.artwork-signature{background:var(--red);pointer-events:none;width:7px;height:7px;position:absolute;top:calc(98% + 20px);left:69%;transform:translate(-50%)}.frame-corners{pointer-events:none;z-index:4;color:#c8bead;position:absolute;inset:2px}.frame-corners span{border:0 dotted;width:24px;height:24px;position:absolute}.frame-corners span:first-child{border-top-width:1px;border-left-width:1px;top:0;left:0}.frame-corners span:nth-child(2){border-top-width:1px;border-right-width:1px;top:0;right:0}.frame-corners span:nth-child(3){border-bottom-width:1px;border-left-width:1px;bottom:0;left:0}.frame-corners span:nth-child(4){border-bottom-width:1px;border-right-width:1px;bottom:0;right:0}
