@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ccf27e5a7366fb23-s.1wwzpfhzaj2r0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e41d5df559864f9e-s.2rlzm4mj5kw8e.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif Fallback;src:local(Times New Roman);ascent-override:117.94%;descent-override:36.93%;line-gap-override:0.0%;size-adjust:83.94%}.instrument_serif_d08df6fd-module__HpqOuq__className{font-family:Instrument Serif,Instrument Serif Fallback;font-style:normal;font-weight:400}.instrument_serif_d08df6fd-module__HpqOuq__variable{--font-instrument:"Instrument Serif", "Instrument Serif Fallback"}
.portfolio{--paper:#f4f1ea;--ink:#1a1917;--brown:#8a5a2b;--border:#dcd6c9;--muted:#645e54;--body:#3c3a35;--panel:#1a1917;--panel-soft:#252420;--panel-line:#35332e;--panel-muted:#8b857a;--accent-warm:#c9915a;--surface:#efebe2;--rail:clamp(60px, 4.6vw, 84px);--ease:cubic-bezier(.22, .7, .28, 1);--font-display:"Clash Display", var(--font-schibsted), system-ui, sans-serif;--font-body:var(--font-schibsted), system-ui, sans-serif;--font-mono:var(--font-jetbrains), ui-monospace, monospace;--font-serif:var(--font-instrument), Georgia, serif;background:var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;min-height:100%}@media (max-width:900px){.portfolio{--rail:0px}}.portfolio #rail{transition:background-color .65s var(--ease), color .65s var(--ease), border-color .65s var(--ease)}.portfolio #rail [data-hair]{transition:border-color .65s var(--ease), background-color .65s var(--ease)}.portfolio #rail img{transition:filter .65s var(--ease)}.portfolio #rail [data-rail-hide]>div{transition:background-color .65s var(--ease)}.portfolio [data-rot]{writing-mode:vertical-rl;white-space:nowrap;transform:rotate(180deg)}.portfolio [data-menu]{opacity:0;pointer-events:none;transition:opacity .55s var(--ease), transform .55s var(--ease);transform:translateY(-12px)}.portfolio.menu-open [data-menu],.portfolio [data-menu][data-open=true]{opacity:1;pointer-events:auto;transform:none}.portfolio [data-menu-item]{color:#3e3b35;transition:color .45s ease, transform .55s var(--ease)}.portfolio [data-menu-item]:hover{color:var(--paper);transform:translate(14px)}.portfolio [data-menu-item].cur{color:#ede8de}.portfolio [data-rev]{opacity:0;transition:opacity .85s var(--ease), transform .85s var(--ease);transform:translateY(20px)}.portfolio [data-rev].in{opacity:1;transform:none}.portfolio [data-ul]{display:inline-block;position:relative}.portfolio [data-ul]:after{content:"";transform-origin:0;width:100%;height:1px;transition:transform .5s var(--ease);background:currentColor;position:absolute;bottom:-3px;left:0;transform:scaleX(0)}.portfolio [data-ul]:hover:after{transform:scaleX(1)}.portfolio [data-card]{transition:transform .6s var(--ease)}.portfolio [data-card]:hover{transform:translateY(-8px)}.portfolio [data-card] [data-zoom]{transition:transform .8s var(--ease)}.portfolio [data-card]:hover [data-zoom]{transform:scale(1.04)}.portfolio [data-card] [data-peek]{opacity:0;transition:opacity .5s ease, transform .5s var(--ease);transform:translateY(8px)}.portfolio [data-card]:hover [data-peek]{opacity:1;transform:none}.portfolio [data-logo]{opacity:.88;transition:opacity .5s}.portfolio [data-logo=tech] img{filter:brightness(0)invert()}.portfolio [data-logo]:hover{opacity:1}.portfolio [data-post]{transition:padding-left .5s var(--ease), background .5s ease}.portfolio [data-post]:hover{background:#ede9e0;padding-left:14px}.portfolio [data-works-card-transform]{transform-style:preserve-3d;will-change:transform;transition:box-shadow .6s}.portfolio [data-works-card] [data-zoom]{transition:transform .9s var(--ease)}.portfolio [data-works-card]:hover [data-zoom]{transform:scale(1.045)}.portfolio [data-works-card]:hover [data-works-card-transform]{box-shadow:0 30px 70px #1a191729}.portfolio [data-works-card] [data-name]{display:inline-block;position:relative}.portfolio [data-works-card] [data-name]:after{content:"";transform-origin:0;width:100%;height:1px;transition:transform .55s var(--ease);background:currentColor;position:absolute;bottom:-2px;left:0;transform:scaleX(0)}.portfolio [data-works-card]:hover [data-name]:after{transform:scaleX(1)}@media (max-width:900px){.portfolio [data-post]:hover{background:0 0;padding-left:0}.portfolio [data-card]:hover{transform:none}.portfolio [data-card] [data-peek]{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.portfolio [data-rev]{opacity:1;transition:none;transform:none}.portfolio [data-works-card-transform]{transform:none!important}}.portfolio [data-blog-body] p{color:var(--body);text-wrap:pretty;margin:0 0 1.35em;font-size:clamp(16px,1.18vw,18.5px);line-height:1.72}.portfolio [data-blog-body] p:first-of-type:first-letter{float:left;font-family:var(--font-display);color:var(--ink);margin:.04em .09em 0 0;font-size:4.1em;font-weight:500;line-height:.82}.portfolio [data-blog-body] h2{font-family:var(--font-display);letter-spacing:-.025em;color:var(--ink);margin:2.1em 0 .65em;font-size:clamp(24px,2.3vw,34px);font-weight:500;line-height:1.1}.portfolio [data-blog-body] blockquote{border-left:1px solid #c9b79a;margin:2em 0;padding:0 0 0 clamp(18px,2vw,30px)}.portfolio [data-blog-body] blockquote p{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);margin:0;font-size:clamp(20px,1.9vw,27px);font-weight:400;line-height:1.32}.portfolio [data-blog-body] blockquote p:first-letter{float:none;font-size:inherit;line-height:inherit;margin:0}.portfolio [data-blog-body] ul{flex-direction:column;gap:.6em;margin:0 0 1.5em;padding:0;list-style:none;display:flex}.portfolio [data-blog-body] li{color:var(--body);padding-left:22px;font-size:clamp(15.5px,1.1vw,17.5px);line-height:1.6;position:relative}.portfolio [data-blog-body] li:before{content:"";background:var(--brown);width:9px;height:1px;position:absolute;top:.62em;left:0}.portfolio [data-blog-body] a{color:var(--brown);border-bottom:1px solid #d8c6ab}
