@font-face{font-family:prota_proregular;font-display:swap;font-weight:400;font-style:normal;src:url(/fonts/saulo/prota_pro_3.2-webfont.woff2)format('woff2')}@font-face{font-family:mralex-regular;font-display:swap;font-style:normal;font-weight:400;src:url(/fonts/saulo/MrAlex-Regular.woff2)format('woff2')}@font-face{font-family:mralex-bold;font-display:swap;font-style:normal;font-weight:700;src:url(/fonts/saulo/MrAlex-Bold.woff2)format('woff2')}@font-face{font-family:sd-tech;font-display:swap;font-style:normal;font-weight:400;src:url(/fonts/saulo/SD-Tech-Regular.woff2)format('woff2')}@font-face{font-family:sd-tech;font-display:swap;font-style:italic;font-weight:400;src:url(/fonts/saulo/SD-Tech-Italic.woff2)format('woff2')}@font-face{font-family:icons;font-display:block;font-weight:400;font-style:normal;src:url(/fonts/saulo/icons.woff2)format('woff2')}:root{--font-header:"MrAlex-Regular", sans-serif;--font-body:"prota_proregular", sans-serif;--font-mono:"SD-Tech", monospace;--bg-base:hsl(0, 0%, 100%);--shade1-base:hsl(0, 0%, 97%);--shade2-base:hsl(0, 0%, 90%);--fg-base:hsl(0, 0%, 20%);--h-base:hsl(0, 0%, 10%);--strong-base:hsl(0, 0%, 0%);--dim-base:hsl(0, 0%, 50%);--accent-base:var(--dim-base);--accent-hover-base:black;--emphasis-base:RoyalBlue;--button-base:black;--overlay-base:hsl(0, 0%, 100%, 30%);--border-color-base:var(--shade2-base);--bg-contrast:hsl(0, 0%, 5%);--shade1-contrast:hsl(0, 0%, 3%);--shade2-contrast:hsl(0, 0%, 0%);--fg-contrast:hsl(0, 0%, 85%);--h-contrast:hsl(0, 0%, 100%);--strong-contrast:hsl(0, 0%, 100%);--dim-contrast:hsl(0, 0%, 65%);--accent-contrast:var(--dim-contrast);--accent-hover-contrast:white;--emphasis-contrast:RoyalBlue;--button-contrast:white;--overlay-contrast:hsl(0, 0%, 2.5%, 30%);--border-color-contrast:var(--shade2-contrast);--bg-theme:hsl(220.98, 50.62%, 15.88%);--shade1-theme:var(--bg-theme);--shade2-theme:var(--bg-theme);--fg-theme:hsl(0, 0%, 85%);--h-theme:hsl(0, 0%, 90%);--strong-theme:hsl(0, 0%, 100%);--dim-theme:hsl(0, 0%, 75%);--accent-theme:goldenrod;--accent-hover-theme:gold;--emphasis-theme:goldenrod;--button-theme:goldenrod;--overlay-theme:hsl(220.98, 50.62%, 15.88%, 30%);--border-color-theme:var(--shade2-theme)}:root{--breakpoint-max:3840px;--breakpoint-fullhd:1920px;--breakpoint-medium:1024px;--breakpoint-small:768px;--base-line-height:1.5;--vertical-rhythm:calc(1rem * var(--base-line-height));--nav-height:calc(var(--vertical-rhythm) * 2);--footer-height:calc(var(--vertical-rhythm) * 22);--site-width:100%;--ratio-1:calc((100dvh - var(--nav-height)) * 3 / 1.4142);--ratio-2:calc((100dvh - var(--nav-height)) * 1.4142);--gap-v:calc(var(--vertical-rhythm) * 2);--gap-h:calc(var(--vertical-rhythm) * 2);--gap-slides:3px;--border-thickness:1px;--corner-radii:0px;--paragraph-width:60ch;--scheme-bg:var(--bg-base);--scheme-shade1:var(--shade1-base);--scheme-shade2:var(--shade2-base);--scheme-fg:var(--fg-base);--scheme-h:var(--h-base);--scheme-strong:var(--strong-base);--scheme-dim:var(--dim-base);--scheme-accent:var(--accent-base);--scheme-accent-hover:var(--accent-hover-base);--scheme-emphasis:var(--emphasis-base);--scheme-button:var(--button-base);--scheme-overlay:var(--overlay-base);--scheme-border-color:var(--border-color-base)}.scheme-base{--scheme-bg:var(--bg-base);--scheme-shade1:var(--shade1-base);--scheme-shade2:var(--shade2-base);--scheme-fg:var(--fg-base);--scheme-h:var(--h-base);--scheme-strong:var(--strong-base);--scheme-dim:var(--dim-base);--scheme-accent:var(--accent-base);--scheme-accent-hover:var(--accent-hover-base);--scheme-emphasis:var(--emphasis-base);--scheme-button:var(--button-base);--scheme-overlay:var(--overlay-base);--scheme-border-color:var(--border-color-base)}.scheme-contrast{--scheme-bg:var(--bg-contrast);--scheme-shade1:var(--shade1-contrast);--scheme-shade2:var(--shade2-contrast);--scheme-fg:var(--fg-contrast);--scheme-h:var(--h-contrast);--scheme-strong:var(--strong-contrast);--scheme-dim:var(--dim-contrast);--scheme-accent:var(--accent-contrast);--scheme-accent-hover:var(--accent-hover-contrast);--scheme-emphasis:var(--emphasis-contrast);--scheme-button:var(--button-contrast);--scheme-overlay:var(--overlay-contrast);--scheme-border-color:var(--border-color-contrast)}.scheme-theme{--scheme-bg:var(--bg-theme);--scheme-shade1:var(--shade1-theme);--scheme-shade2:var(--shade2-theme);--scheme-fg:var(--fg-theme);--scheme-h:var(--h-theme);--scheme-strong:var(--strong-theme);--scheme-dim:var(--dim-theme);--scheme-accent:var(--accent-theme);--scheme-accent-hover:var(--accent-hover-theme);--scheme-emphasis:var(--emphasis-theme);--scheme-button:var(--button-theme);--scheme-overlay:var(--overlay-theme);--scheme-border-color:var(--border-color-theme)}html{font-size:clamp(1rem,calc(.8333rem + .3472vw),1.5rem);line-height:var(--base-line-height)}@media only screen and (min-width:1921px){:root{--gap-v:calc(var(--vertical-rhythm) * 3)}}@media only screen and (max-width:430px){:root{--gap-h:var(--vertical-rhythm)}}@media only screen and (max-width:640px){:root{--gap-v:calc(var(--vertical-rhythm) * 1);--footer-height:calc(var(--vertical-rhythm) * 22)}}.gridcontainer{margin:auto;display:flex}.gridcontent{display:flex;width:100%;align-items:center;justify-content:center;text-align:center}.griditem{position:relative;flex:1 0}.icon{font:14px/1 icons;display:inline-block;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}span.icon{margin-right:.3rem}a>.icon{color:var(--scheme-fg);transition:color .2s ease-out;&:hover,&:not(.icon-menu):focus { color:var(--scheme-accent); }}.icon-2x{font-size:2rem}.icon-search:before{content:'\e800'}.icon-cancel:before{content:'\e806'}.icon-menu:before{content:'\f0c9'}.icon-mail-alt:before{content:'\f0e0'}.icon-linkedin:before{content:'\f0e1'}.icon-wechat:before{content:'\f1d7'}.icon-pinterest:before{content:'\f231'}.icon-whatsapp:before{content:'\f232'}.icon-telegram:before{content:'\f2c6'}@keyframes blink{from,to{color:transparent}50%{color:var(--scheme-fg)}}@keyframes scale-in-center{0%{transform:scale(0);opacity:1}100%{transform:scale(1);opacity:1}}@keyframes scale-out-center{0%{transform:scale(1);opacity:1}100%{transform:scale(0);opacity:1}}.scale-in-center{animation:scale-in-center .3s cubic-bezier(.25,.46,.45,.94)both}.scale-out-center{animation:scale-out-center .4s cubic-bezier(.895,.03,.685,.22)both}.blur-up{-webkit-filter:blur(3px);filter:blur(3px);transition:filter 600ms,-webkit-filter 600ms}.blur-up.lazyloaded{-webkit-filter:blur(0);filter:blur(0)}.show{transition:opacity 600ms}.hide{opacity:0}*{line-height:var(--base-line-height);color:inherit;vertical-align:baseline;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}:is(h1,h2,h3,h4,h5,h6,p,ul,ol,dl,pre,blockquote,summary,figure,table,small,time,.span-h2,.span-h3,.span-h4)+:not(pre,hr){margin-top:var(--vertical-rhythm)}::selection{background:var(--scheme-shade2)}p:empty,p:has(+figure){display:none}p,span,li{font-family:var(--font-body);& a { color: var(--scheme-accent); font-weight: 700; &:hover { color: var(--scheme-accent-hover); } }}a{transition:color .2s ease-out;text-decoration:none;&:hover { color:var(--scheme-accent-hover); } & img { border:0; }}h1,h2,h3,h4,h5,h6,.span-h2,.span-h3,.span-h4{text-transform:uppercase;color:var(--scheme-h);font-weight:400;line-height:1}h1,h2,h3,h4,.span-h2,.span-h3,.span-h4{font-family:var(--font-header)}h1{font-size:clamp(3.5rem,6vw,6rem)}h2,.span-h2{font-size:clamp(3rem,4.5vw,4.5rem)}h3,.span-h3{font-size:2rem}h4,.span-h4{font-size:1.5rem}h5,h6{font-family:var(--font-body);font-size:1rem}h5{font-weight:700}strong{font-weight:700;color:var(--scheme-strong)}em,dfn{font-style:italic;color:var(--scheme-emphasis)}mark{margin:-2px -4px;padding:2px 4px;border-radius:var(--corner-radii);background-color:var(--scheme-emphasis);color:#fff}del,s{text-decoration:line-through;color:var(--scheme-dim)}small,time{font-size:.85rem;line-height:var(--base-line-height);vertical-align:middle;font-family:var(--font-mono);color:var(--scheme-dim)}ul,ol{margin-top:calc(var(--vertical-rhythm)/2)}li{margin-left:3ch;margin-top:calc(var(--vertical-rhythm)/2)}li>ul,li>ol{margin-top:0}ul>li{list-style-type:disc}ol>li{list-style-type:decimal}table{width:100%;border:none;outline:var(--border-thickness)solid var(--scheme-bg);border-radius:var(--corner-radii);border-collapse:collapse;overflow:hidden}thead,th,td{padding:calc(var(--vertical-rhythm) * .25)1ch;outline:var(--border-thickness)solid var(--scheme-bg)}thead,th{background-color:var(--scheme-shade2);font-family:var(--font-body)}td{background-color:var(--scheme-shade1)}pre,code{border-radius:var(--corner-radii)}code{margin:-2px -4px;padding:2px 4px;background-color:var(--scheme-shade2);border:1px solid var(--scheme-shade2);color:var(--scheme-dim)}pre{max-width:var(--paragraph-width);margin:calc(var(--vertical-rhythm) * 4)auto;overflow:visible;word-wrap:normal;white-space:pre-wrap;overflow-wrap:break-word;& code { border: none; background-color: transparent; font-size: calc(clamp(1rem, calc(0.8333rem + 0.3472vw), 1.5rem) * 1.5); color: var(--scheme-fg); }}blockquote{max-width:50ch;margin:var(--vertical-rhythm)auto 0;padding:calc(var(--vertical-rhythm)/2)1ch calc(var(--vertical-rhythm)/2)1.5ch;background-color:color-mix(in hsl,transparent,var(--scheme-accent) 10%);border-left:.5ch solid var(--scheme-accent);border-radius:0 var(--corner-radii)var(--corner-radii)0;overflow-wrap:break-word}blockquote p{&:last-child { padding-bottom:0; }}details{width:100%;margin-top:0;padding:calc(var(--vertical-rhythm)/2)2ch;background-color:var(--scheme-bg);border-radius:var(--corner-radii);box-shadow:inset 0 0 0 1px var(--scheme-shade2);& summary { margin: 0; list-style: none; display: flex; justify-content: space-between; align-items: baseline; gap: 2ch; color: var(--scheme-dim); font-weight: 700; &::-webkit-details-marker { display: none; } &::after { content: "+"; flex-shrink: 0; font-family: var(--font-mono); transition: color 0.2s ease-out; } &:hover { color: var(--scheme-accent-hover); cursor: pointer; } } &[open] > summary::after { content: "−"; } &:hover { outline: var(--border-thickness) solid var(--scheme-bg); }}.p-summary{font-size:85%;margin-top:var(--vertical-rhythm)}hr{border-width:0;color:var(--scheme-shade2);background-color:var(--scheme-shade2);padding:calc(var(--border-thickness)/2)0;margin:calc(var(--vertical-rhythm) * 2 - 1px)0 calc(var(--vertical-rhythm) * 2)}figcaption,figcaption p{color:var(--scheme-dim);text-align:center;margin:calc(var(--vertical-rhythm) * .5)0}img{display:block;max-width:100%;margin-left:auto;margin-right:auto}.form{font-family:var(--font-body);display:grid;gap:calc(var(--vertical-rhythm)/2)}input,select,textarea{padding:calc(var(--vertical-rhythm)/2)1ch}button{background:0 0;border:none;font:inherit;color:inherit;cursor:pointer;text-transform:uppercase}.button,input[type=submit]{display:flex;align-items:center;justify-content:center;min-width:3ch;padding:calc(var(--vertical-rhythm)/4)3ch;margin-left:auto;margin-right:auto;outline:none;border:var(--border-thickness)solid var(--btn-color,var(--scheme-button));border-radius:var(--corner-radii);background-color:initial;color:var(--btn-color,var(--scheme-button));font-family:var(--font-mono);text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:.2s ease-out;&:hover { color:var(--scheme-bg); border-color:var(--btn-color,var(--scheme-button)); background-color:var(--btn-color,var(--scheme-button)); outline:none; cursor:pointer; }}input[type=text],input[type=email],textarea{margin:0 var(--border-thickness);background-color:hsla(0,0%,0%,3%);color:var(--scheme-fg);border-radius:var(--corner-radii);outline:var(--border-thickness)solid hsla(0,0%,0%,3%);&:focus,&:hover { outline:var(--border-thickness) solid hsla(0,0%,0%,3%); background-color:transparent; }}textarea{height:calc(var(--vertical-rhythm) * 2);min-height:calc(var(--vertical-rhythm) * 7.5);overflow:auto;resize:vertical}::placeholder{color:var(--scheme-dim);opacity:.5}.buttons-container{margin-top:calc(var(--vertical-rhythm) * 2);padding:var(--gap-v)var(--gap-h);background-color:var(--scheme-bg);& .buttons { display: flex; flex-direction: column; align-items: center; text-align: center; max-width: 50ch; gap: var(--vertical-rhythm); margin: var(--vertical-rhythm) auto; & button { height: auto; min-height: calc(var(--vertical-rhythm) * 1.5); white-space: normal; padding: calc(var(--vertical-rhythm) / 4) 2ch; } & span, & .p-alt { padding-bottom: 0; margin-top: 0; } & a { display: contents; } &:active, &:hover, &:focus { outline: none; } }}.taxonomies{& a { font-family: var(--font-mono); text-transform: uppercase; font-size: 0.75rem; line-height: var(--base-line-height); padding: 0 1ch; display: inline-block; transition: .2s ease-out; border-radius: var(--corner-radii); border: 1px solid var(--scheme-shade2); background-color: var(--scheme-shade1); color: var(--scheme-fg); &:hover { text-decoration: none; background-color: var(--scheme-bg); } }}.text-cols{column-count:var(--text-cols,2);column-gap:calc(var(--gap-h) * 2)}.bracket-hover{&::before { content:"["; margin-right:1ch; color:transparent; } &::after { content:"]"; margin-left:1ch; color:transparent; } &:hover::before,&:hover::after { color:inherit; }}.tagline-2col{display:flex;align-items:flex-start;justify-content:center;text-align:center}.tagline-col{display:flex;flex-direction:column;align-items:center;& .p-alt { margin-top: 0; }}.tagline-sep{height:clamp(3rem,4.5vw,4.5rem);width:auto;padding:0 .25ch;flex-shrink:0;align-self:flex-start;margin:0}.full-width{width:100vw;margin-left:calc(50% - 50vw);& img { width: 100%; height: auto; }}.cols{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap-v);@media(max-width:640px){grid-template-columns: 1fr;}}.p-alt{color:var(--scheme-dim);font-weight:400;& a { color: var(--scheme-accent); &:hover { color: var(--scheme-accent-hover); } }}.title-description{margin-bottom:var(--vertical-rhythm);& p, .p-alt { margin-top: calc(var(--vertical-rhythm) / 2); }}.big-title{display:flex;flex-direction:column;align-items:center;justify-content:center;height:calc(var(--vertical-rhythm) * 16);text-align:center;vertical-align:middle;& h1, & h2 { font-family: var(--font-header); font-weight: 400; font-size: 4.5rem; letter-spacing: 0.25ch; } & p, & span, & .p-alt { margin-top: calc(var(--vertical-rhythm) / 2); }}.btn-accent{--btn-color:var(--scheme-accent)}.btn-fg{--btn-color:var(--scheme-fg)}.btn-emphasis{--btn-color:var(--scheme-emphasis)}.btn-dim{--btn-color:var(--scheme-dim)}.btn-h{--btn-color:var(--scheme-h)}.center{text-align:center;margin-left:auto;margin-right:auto}.left{text-align:left}.right{text-align:right}.synopsis{font-size:85%;color:var(--scheme-fg)}.min-height{min-height:calc(100vh - var(--nav-height) - var(--footer-height))}.cf-stream{width:100%;& iframe { width: 100%; height: 100%; border: none; }}.sticky-top{position:sticky;top:calc(var(--nav-height) + var(--gap-v));align-self:start;@media(max-width:640px){position: static;}}*{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;margin:0;padding:0;border:0;font:inherit;&::before,&::after { box-sizing:border-box; }}html{box-sizing:inherit;scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-height) - 1px);height:100%;width:var(--site-width);max-width:var(--breakpoint-max);margin-left:auto;margin-right:auto;background-color:var(--scheme-shade2);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;overflow-x:clip}body{width:100%;margin-left:auto;margin-right:auto;min-height:100%;display:flex;flex-direction:column;background-color:var(--scheme-bg);color:var(--scheme-fg);font-family:var(--font-body);font-weight:400;overflow-x:clip}.site-header,.works-header{z-index:3;height:calc(100dvh - var(--nav-height));display:flex;flex-direction:column;text-align:center;background-color:var(--scheme-bg);color:var(--scheme-fg);& h1 { letter-spacing: 0.25ch; } & .header-logo { img { margin: calc(var(--vertical-rhythm) * 2) auto 0; width: 12ch; max-height: calc(var(--vertical-rhythm) * 6); } } & .header-tagline { flex: 1; display: flex; flex-direction: column; justify-content: center; margin-left: auto; margin-right: auto; padding: var(--vertical-rhythm) var(--gap-h); & #text { font-weight: 700; } & p, & hr { max-width: var(--paragraph-width); } } & .synopsis { text-align: left; max-width: var(--paragraph-width); margin-left: auto; margin-right: auto; } & .buttons { margin-top: calc(var(--vertical-rhythm) * 2); }}@media only screen and (max-width:768px){nav{& div:not(:first-child):not(:last-child) { display: none; } & div.nav-toggle a { display: inline-block; } & div.logo { padding-right: 33.333%; } & div.nav-toggle { padding-left: 33.333%; }}}@media only screen and (max-width:320px){nav{& .logo, & .nav-toggle { max-width: 50% !important; }}}nav{position:absolute;display:flex;align-items:center;z-index:100;bottom:0;left:0;right:0;width:var(--site-width);max-width:var(--breakpoint-max);margin-left:auto;margin-right:auto;height:var(--nav-height);background-color:var(--scheme-bg);text-align:center;box-shadow:0 var(--border-thickness)0 0 var(--scheme-border-color);& a { color: var(--scheme-fg); font-weight: 400; font-family: var(--font-mono); font-size: 1rem; text-transform: uppercase; } & .nav-item > a { display: flex; align-items: center; justify-content: center; gap: 1ch; width: 100%; height: var(--nav-height); } & img { display: inline-block; max-width: 10ch; max-height: calc(var(--nav-height) * 0.6); width: auto; vertical-align: middle; } & .logo, & .nav-toggle { visibility: hidden; } & .nav-toggle a { display: none; } & .nav-item, & .nav-toggle, & .logo { position: relative; flex: 1 0; margin: auto; } & .nav-item a:hover::before, & .nav-item-active a::before { content: "["; } & .nav-item a:hover::after, & .nav-item-active a::after { content: "]"; }}.nav-fixed{position:fixed;top:0;bottom:auto;left:0;right:0;max-width:var(--breakpoint-max);margin-left:auto;margin-right:auto;& .nav-toggle, & .logo { visibility: visible; } @media only screen and (max-width: 768px) { opacity: 1; transition: opacity 200ms; } & a > .icon { color: var(--scheme-fg); } & a.icon-active > .icon { color: var(--scheme-accent); }}.nav-full{position:fixed;top:0;right:-100%;bottom:0;width:100%;height:100%;text-transform:uppercase;transform:translate(0,0);transition:.3s ease-out;display:flex;flex-direction:column;gap:var(--gap-v);padding-top:var(--nav-height);& > div:first-child { flex: 1; display: flex; flex-direction: column; overflow-y: auto; padding: 0 var(--gap-h); margin: calc(var(--vertical-rhythm) * 4) auto; & > .griditem { flex: 1; display: flex; align-items: center; justify-content: center; margin: 0; } } & a, & .icon { color: var(--scheme-fg); line-height: 2; }}.nav-full-footer{display:flex;gap:calc(var(--vertical-rhythm)/2);padding:var(--vertical-rhythm)var(--gap-h);font-family:var(--font-mono);text-transform:uppercase;& a, & span { font-family: var(--font-mono); color: var(--scheme-dim); line-height: var(--base-line-height); }}.nav-full.active{z-index:90;transform:translate(-100vw,0);transition:.45s ease-in;background:var(--scheme-bg)}main{position:relative;z-index:10;min-height:calc( 100dvh - var(--nav-height) - var(--footer-height));margin-bottom:calc(var(--footer-height) + var(--border-thickness));padding-top:var(--nav-height);background-color:var(--scheme-shade1);border:none;box-shadow:0 var(--border-thickness)0 0 var(--scheme-border-color)}footer{position:fixed;bottom:0;left:0;right:0;width:var(--site-width);max-width:var(--breakpoint-max);z-index:1;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;min-height:var(--footer-height);margin:0 auto;background-color:var(--scheme-bg);padding:0;box-shadow:0 calc(var(--border-thickness) * -1)0 0 var(--scheme-border-color);& img { max-height: calc(var(--vertical-rhythm) * 3); max-width: 12ch; }}.footer-upper{display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;gap:var(--vertical-rhythm)}.footer-cta{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:left;padding-top:calc(var(--vertical-rhythm) * 3);gap:var(--vertical-rhythm);& a { margin-top: 0; margin-left: 0; } & button { max-width: 100%; }}.footer-back-top{font-family:var(--font-mono);font-size:calc(var(--vertical-rhythm) * 2);line-height:1;color:var(--scheme-accent)!important;padding:calc(var(--vertical-rhythm) * 3)1ch 0;margin:0 -1ch;&:hover { color:var(--scheme-accent-hover)!important; }}footer .container-big,footer .content{flex:1;display:flex;flex-direction:column}.footer-info{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;padding:var(--vertical-rhythm)0;margin-top:auto;gap:calc(var(--gap-v) * 2);@media(max-width:640px){flex-direction: column;}}.footer-left{display:flex;flex-direction:row;align-items:flex-end;gap:var(--gap-h);flex:1;@media(max-width:640px){flex-direction: column; align-items: flex-start; align-self: flex-start;}}.footer-center{display:flex;align-items:flex-end;justify-content:center}.footer-social{margin-left:-2ch;margin-right:-2ch;display:flex;flex-direction:column;align-items:flex-start;gap:0;& a { font-family: var(--font-mono); color: var(--scheme-dim); cursor: pointer; &:hover { color: var(--scheme-accent-hover); & .icon { color: var(--scheme-accent-hover); } } }}.footer-right{display:flex;flex-direction:column;align-items:flex-end;flex:1;gap:0;font-family:var(--font-mono);margin-right:-2ch;& p, & .p-alt, & span, & a { font-family: var(--font-mono); color: var(--scheme-dim); } & a:hover { color: var(--scheme-accent-hover); }}.footer-links{display:flex;align-items:center;text-transform:uppercase}.footer-copy{padding:0 2ch}.container-small,.container-medium,.container-full{margin-left:auto;margin-right:auto;overflow-x:clip}.container-small{max-width:var(--breakpoint-small)}.container-medium{max-width:var(--breakpoint-medium)}.container-big{max-width:var(--breakpoint-fullhd);width:90%;margin:0 auto;@media(max-width:1440px){width: 100%;}}.content{margin:auto;padding:0 var(--gap-h);width:100%;max-width:var(--breakpoint-fullhd)}@media(min-aspect-ratio:5/2){html,nav,.nav-fixed{max-width:var(--ratio-1)}}.overflow-vertical{@media(min-aspect-ratio:1414/1000) and (pointer:fine){&::before,&::after{content:'';position:sticky;display:block;flex-shrink:0;width:100%;left:0;right:0;height:var(--gap-v);pointer-events:none;z-index:1}&::before{top:0;margin-bottom:calc(var(--gap-v) * -1);background:linear-gradient(to bottom,var(--scheme-bg) 10%,transparent)}&::after{bottom:0;margin-top:calc(var(--gap-v) * -1);background:linear-gradient(to top,var(--scheme-bg) 10%,transparent)}}}.overflow-vertical-x2{@media(min-aspect-ratio:1414/1000) and (pointer:fine){&::before,&::after{content:'';position:sticky;display:block;flex-shrink:0;width:100%;left:0;right:0;height:calc(var(--vertical-rhythm) * 2);pointer-events:none;z-index:1}&::before{top:0;margin-bottom:calc(var(--vertical-rhythm) * -2);background:linear-gradient(to bottom,var(--scheme-bg) 25%,transparent)}&::after{bottom:0;margin-top:calc(var(--vertical-rhythm) * -2);background:linear-gradient(to top,var(--scheme-bg) 25%,transparent)}}}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:var(--scheme-bg)}::-webkit-scrollbar-thumb{background:var(--scheme-emphasis)}::-webkit-scrollbar-thumb:hover{background:var(--scheme-accent)}section{background-color:var(--scheme-bg);color:var(--scheme-fg);padding-bottom:calc(var(--vertical-rhythm) * 4)}.section{background-color:var(--scheme-shade1)}.intro{margin:0 auto calc(var(--vertical-rhythm) * 4);& hr { margin: calc(var(--gap-v) * 3 - 2px) 0 calc(var(--gap-v) * 3); }}#process{padding-bottom:0}#contact{background-color:var(--scheme-bg)}.works{padding-bottom:0}.works-container{display:flex;flex-wrap:wrap}.works-item{position:relative;flex:1 0 25%;max-width:25%;aspect-ratio:1;&:hover { & .overlay { visibility:visible; opacity:1; } }}@media only screen and (max-width:1920px){.works-item{flex:1 0 33.333%;max-width:33.333%}}@media only screen and (max-width:1024px){.works-item{flex:1 0 50%;max-width:50%}}@media only screen and (max-width:640px){.works-item{flex:1 0 100%;max-width:100%}}.overlay{display:table;height:100%;width:100%;visibility:hidden;transition:.4s ease-out;opacity:0;background-color:var(--scheme-bg);cursor:pointer;position:absolute;& .overlay-text { display: table-cell; width: 100%; height: 100%; vertical-align: middle; text-align: center; padding: var(--vertical-rhythm) var(--gap-h); color: var(--scheme-dim); } & > a { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 10; }}.overlay-touch-hint{display:none}@keyframes overlay-reveal{from{opacity:0}to{opacity:1}}@media(pointer:coarse){.overlay{visibility:visible;background-color:color-mix(in srgb,var(--scheme-bg) 75%,transparent);opacity:0}.overlay--reveal{animation:overlay-reveal .8s ease 1.2s both}.overlay .overlay-text{color:var(--scheme-fg)}.overlay-touch-hint{display:block;margin-top:calc(var(--vertical-rhythm)/2);font-family:var(--font-mono);font-size:.75rem;text-transform:uppercase;color:var(--scheme-accent-hover)}}.works-img-container{position:absolute;height:100%;& img { object-fit: cover; }}.contact{width:100%;max-width:var(--breakpoint-fullhd);margin:0 auto;& .buttons { margin-top: calc(var(--vertical-rhythm) * 1.5); } & .social { margin: calc(var(--vertical-rhythm) * 3 - 1px) auto 0; padding: calc(var(--vertical-rhythm) * 3) 0 var(--vertical-rhythm); border-top: var(--border-thickness) solid var(--scheme-shade2); & .icon { font-size: 2rem; &:hover { cursor: pointer; } } & a { &:hover { color: var(--scheme-accent-hover); } } & p { padding-top: calc(var(--vertical-rhythm) / 2); } }}.list{gap:var(--gap-v)var(--gap-h);background-color:var(--scheme-shade1)}.error404{background-color:var(--scheme-shade1)}.reviews-carousel{overflow:hidden}.reviews-intro{max-width:calc(var(--paragraph-width) * 2);margin:calc(var(--vertical-rhythm) * 3)auto}.reviews-track{display:flex;transition:transform .4s ease}.review-slide{min-width:100%;padding:0 var(--gap-h);display:flex;flex-direction:column;gap:var(--vertical-rhythm)}.review-content{max-width:var(--paragraph-width);margin:0 auto;text-align:center;& video { max-width: 100%; max-height: 35dvh; } & audio { width: 100%; max-width: var(--paragraph-width); }}.review-author{display:flex;flex-direction:column;align-items:center;gap:calc(var(--vertical-rhythm)/4);& p { font-family: var(--font-mono); line-height: 1; } & span { color: var(--scheme-dim); margin: 0; }}.review-avatar{width:calc(var(--vertical-rhythm) * 4);height:calc(var(--vertical-rhythm) * 4);border-radius:50%;object-fit:cover;margin-bottom:calc(var(--vertical-rhythm)/4)}.reviews-nav{display:flex;align-items:center;justify-content:center;gap:var(--gap-v);margin-top:var(--gap-v)}.reviews-prev,.reviews-next{font-size:2rem;line-height:1;color:var(--scheme-accent);background:0 0;border:none;min-width:auto;height:auto;padding:0 1ch;cursor:pointer;&:hover { color:var(--scheme-accent-hover); background-color:transparent; }}.reviews-dots{display:flex;gap:1ch}.reviews-dot{width:.5rem;height:.5rem;border-radius:50%;background:var(--scheme-shade2);border:none;min-width:auto;padding:0;cursor:pointer;transition:background .2s;&.active { background: var(--scheme-accent); } &:hover { background: var(--scheme-accent-hover); }}.accordion{}.accordion-items{display:grid;grid-template-columns:1fr;gap:calc(var(--vertical-rhythm)/2)var(--gap-h);@media(max-width:640px){grid-template-columns: 1fr;}}article{max-width:var(--breakpoint-medium);margin:auto;padding:calc(var(--vertical-rhythm) * 3)0;& h1 { margin: 0; letter-spacing: 0; counter-reset: h2 h3; } & h2 { counter-increment: h2; counter-reset: h3; &::before { content: counter(h2) ". "; font-style: normal; } } & h3 { counter-increment: h3; &::before { content: counter(h2) "." counter(h3) ". "; font-style: normal; } } & .buttons { margin-top: calc(var(--gap-v) * 2); }}.article-header{margin:var(--gap-v)0 calc(var(--gap-v) * 2)}.article-footer{max-width:var(--breakpoint-medium);align-items:center;text-align:center;margin:var(--vertical-rhythm)auto;border-top:var(--border-thickness)solid var(--scheme-border-color);padding:var(--vertical-rhythm)0 0}.article-pagination{max-width:var(--breakpoint-medium);width:100%;padding:var(--vertical-rhythm)0;display:flex;justify-content:space-between;font-family:var(--font-h);font-size:2rem}.pagination-link-left{order:1;margin-right:auto;max-width:45%;padding-left:var(--gap-h)}.pagination-link-right{order:2;max-width:45%;padding-right:var(--gap-h)}.tiles-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(24ch,1fr));gap:var(--gap-v)var(--gap-h);align-items:stretch;margin-bottom:calc(var(--vertical-rhythm) * 3)}.tile-wrap{display:flex;flex-direction:column;max-width:40ch;margin-left:auto;margin-right:auto;width:100%;& .tile { flex: 1; }}.pretile-div{height:calc(var(--vertical-rhythm) * 3);display:flex;align-items:center;justify-content:center}.tile-pretile{color:var(--scheme-dim);font-family:var(--font-mono);text-align:center;max-width:29ch;margin:auto;line-height:1}.tile{margin:0;overflow:hidden;display:flex;flex-direction:column;background-color:var(--scheme-bg);color:var(--scheme-fg);border-radius:0 0 var(--corner-radii)var(--corner-radii);& .tile-image { aspect-ratio: 3; display: flex; justify-content: center; align-items: center; background-color: var(--bg-theme); & img { margin: auto; } & .span-h3 { color: var(--h-theme); } } & .tile-details { padding: calc(var(--gap-v) / 2) 7%; height: 100%; & div { margin-top: var(--vertical-rhythm); } } & .tile-footer { margin-top: auto; min-height: calc(var(--vertical-rhythm) * 2.5); background-color: var(--scheme-shade2); border: none; padding: calc(var(--vertical-rhythm) / 2) 7%; display: flex; flex-direction: column; align-items: center; justify-content: space-between; & a { font-family: var(--font-mono); margin-top:auto; margin-bottom: auto; } } & .tile-btn-open { margin: 0 -2ch 0 0; margin-left: auto; min-width: unset; padding: 0 1ch; border: none; flex-shrink: 0; white-space: normal; text-align: right; line-height: 1; text-transform: uppercase; } & .tile-author-time { text-align: right; } &:hover { box-shadow: inset 0 0 0 1px var(--scheme-shade2); & a { color: var(--scheme-fg); } & .tile-btn-open { color: var(--scheme-button); &::before, &::after { color: inherit; } } }}.tile--no-image{border-radius:var(--corner-radii)}.tile--static{cursor:default;&:hover { outline:none; }}.tile--mark{position:relative;justify-content:center;& .tile-mark { position: absolute; inset: 0; display: flex; align-items: center; justify-content: right; margin: var(--vertical-rhythm); font-family: var(--font-header); font-size: clamp(4rem, 12vw, 10rem); text-transform: uppercase; letter-spacing: 0.05ch; line-height: 1; color: var(--scheme-accent-hover); opacity: 0.1; pointer-events: none; overflow: hidden; white-space: nowrap; }}.tiles-footer{max-width:var(--paragraph-width);margin:calc(var(--gap-v) * 3)auto 0}.works-single{margin:0 auto;background-color:var(--scheme-shade1);overflow-x:clip;& .works-header { height: auto; padding: calc(var(--vertical-rhythm) * 2) var(--gap-h); & figure, & img { margin: 0 auto; } }}html:has(.works-single) main{padding-bottom:0}.slide{position:relative;width:100%;margin:var(--gap-slides)0;background-color:var(--scheme-shade1);color:var(--scheme-fg,inherit);& strong { color: var(--scheme-strong); } & h1, & h2, & h3, & h4, & h5, & h6 { color: var(--scheme-h); } & h2[data-counter]::before, & h3[data-counter]::before { content: attr(data-counter); font-style: normal; } & .slide-inner { background-color: var(--scheme-bg); } &.slide--bgimage .slide-inner { background-color: transparent; }}.slide-title{padding-top:0}.slide>.scroll-hint{display:none}.slide-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:safe center;padding:0 var(--gap-h);overflow-y:auto;overflow-x:hidden;height:100%;margin:auto;max-width:var(--breakpoint-fullhd);width:100%;& > *:first-child { margin-top: calc(var(--vertical-rhythm) * 2); } & > *:last-child { margin-bottom: calc(var(--vertical-rhythm) * 2); } & div { width: 100%; } & h2 { margin-bottom: calc(var(--vertical-rhythm) * 2); } & figure { width: 100%; margin-left: auto; margin-right: auto; & img { width: 100%; height: auto; } }}.slide-content--noscroll{overflow-y:hidden;& > *:first-child { margin-top: 0; } & > *:last-child { margin-bottom: 0; }}.slide-content-cols{display:flex;flex-direction:row;align-items:flex-start;gap:var(--gap-v)calc(var(--gap-h) * 2);@media(max-width:768px){flex-direction: column;}& .slide-content-body, & .slide-content-body-col2 { flex: 1; margin: 0; overflow-y: auto; max-width: none; } & .slide-content-body { flex: var(--col1-flex, 1); }}.slide-content-body{width:100%;margin-left:auto;margin-right:auto;& h2 { margin-bottom: calc(var(--vertical-rhythm) * 2); } & img { object-fit: contain; }}.slide-inner{display:flex;flex-direction:row;width:100%}.slide-media{position:relative;max-width:66.666%;flex-shrink:0;& img, & video { display: block; width: auto; height: auto; max-height: calc(100dvh - var(--nav-height)); }}.slide-media--svg{background-color:var(--scheme-shade1)}.slide--full{& .slide-media { width: 100%; height: 100%; max-width: 100%; background-color: var(--scheme-bg); } & .slide-media img { width: 100%; height: 100%; object-fit: cover; } & .slide-media video { width: 100%; }}.slide-caption{flex:1;position:relative;display:flex;flex-direction:column;justify-content:flex-start;padding:0 var(--gap-h);overflow-y:auto;& > *:first-child { margin-top: var(--gap-v); } & > *:last-child { margin-bottom: var(--gap-v); } &.caption-overflows > *:last-child { margin-bottom: calc(var(--gap-v) * 2); } & figure { width: 100%; margin: var(--gap-v) auto; & img { width: 100%; height: auto; max-height: 50dvh; object-fit: contain; } }}.slide--video{overflow:hidden;& video { min-height: 0; max-width: 100%; width: 100%; flex: 0 1 auto; }}.slide--video-bg{& .slide-inner { position: relative; overflow: hidden; } & video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; pointer-events: none; }}.slide--columns{& .slide-inner { flex-direction: column; position: relative; overflow-y: auto; }}.slide-columns{display:grid;grid-template-columns:repeat(var(--col-count,4),1fr);gap:var(--gap-slides);align-items:center;align-content:center;padding:var(--gap-v)var(--gap-h);flex:1;@media(orientation:portrait){grid-template-columns: 1fr;}}.slide-column{display:flex;flex-direction:column;align-items:center;text-align:center;& img { width: 100%; height: auto; } & p { margin: 0 var(--gap-h); }}.slide-column .slide-column-icon{width:3rem;height:auto}.slide-overlay{position:absolute;top:0;left:0;width:100%}.slide-overlay-body{width:fit-content;padding:var(--gap-v)calc(var(--gap-h)/2)var(--vertical-rhythm);color:var(--scheme-fg);& * { margin: 0; } & h2, & h3 { color: var(--scheme-h); }}.slide-title-description{margin:0;padding:calc(var(--vertical-rhythm)/2)0 0 1.5ch;border-left:.5ch solid var(--scheme-h);& p, & span { margin: 0; } & .synopsis { margin-top: var(--vertical-rhythm); }}.slide-review-wrap{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:visible;padding:calc(var(--vertical-rhythm) * 3)0;background-color:var(--scheme-bg);& hr { width: var(--paragraph-width); }}.slide--last{min-height:calc(100dvh - var(--nav-height) - var(--footer-height));display:flex;flex-direction:column;background-color:var(--scheme-bg);margin:0}.slide.slide--hidden{display:none}.slide--expand{& .slide-inner { flex-direction: column; align-items: stretch; }}.slide-expand-body{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--gap-v)var(--gap-h);gap:var(--gap-v)}.slide-expand-btn{margin:0}.slide-expand-bottom{display:none}.slide-expand-after{color:var(--scheme-dim);margin:0 0 calc(var(--vertical-rhythm)/2)}.slide-expand-hint{font-family:var(--font-mono);font-size:4rem;line-height:1;color:color-mix(var(--scheme-fg),transparent 60%)}@media(min-aspect-ratio:1414/1000) and (pointer:fine){.slide-expand-bottom{display:block;text-align:center;padding-bottom:calc(var(--gap-v) * 2)}}.last-logo{width:auto;max-width:16ch;max-height:calc(var(--vertical-rhythm) * 2);margin:auto}.slide--carousel .slide-inner{flex-direction:column!important}.wcarousel-content{width:100%;max-width:var(--breakpoint-fullhd);padding-top:calc(var(--vertical-rhythm) * 2);margin:0 var(--gap-h)}.wcarousel{position:relative;overflow:hidden;width:100%;padding:var(--vertical-rhythm)0 calc(var(--vertical-rhythm) * 3)}.wcarousel-track{display:flex;gap:var(--gap-h);transition:transform .5s ease}.wcarousel-item{flex:0 0 80%;aspect-ratio:3840/1810;position:relative;overflow:hidden;flex-shrink:0}.wcarousel-link{display:block;width:100%;height:100%;background-size:cover;background-position:50%;background-repeat:no-repeat;text-decoration:none}.wcarousel-overlay{position:absolute;inset:-2px;opacity:1;background-color:color-mix(in srgb,var(--scheme-bg) 90%,transparent);transition:opacity 0s,background-color 0s;display:flex;align-items:center;justify-content:center}.wcarousel-item--active .wcarousel-overlay{background-color:color-mix(in srgb,var(--scheme-bg) 50%,transparent)}.wcarousel-item:hover .wcarousel-overlay{opacity:0}.wcarousel-overlay-body{text-align:center;padding:var(--vertical-rhythm)var(--gap-h);color:var(--scheme-fg)}.wcarousel-prev,.wcarousel-next{position:absolute;top:0;height:100%;width:9%;z-index:2;font-size:3rem;line-height:1;background:0 0;border:none;min-width:auto;padding:0 1ch;color:var(--scheme-accent);cursor:pointer;display:flex;align-items:center;&:hover { color:var(--scheme-accent-hover); }}.wcarousel-prev{left:0;justify-content:flex-start}.wcarousel-next{right:0;justify-content:flex-end}.slide--boxed{margin-top:var(--vertical-rhythm);margin-bottom:var(--vertical-rhythm);margin-left:auto;margin-right:auto;padding:0 var(--gap-h);overflow:hidden;border:none;& .slide-content { padding-top: 0; padding-bottom: 0; } & .slide-caption { background-color: var(--scheme-shade1); }}@media(min-aspect-ratio:1414/1000) and (pointer:fine){.slide{border-bottom:none;margin-top:0;margin-bottom:0}html:has(.works-single):not(:has(.works-single--no-snap)){scroll-snap-type:y mandatory;scroll-padding-top:var(--nav-height)}.works-single .works-header,.slide{scroll-snap-align:start;height:calc(100dvh - var(--nav-height));overflow:hidden;display:flex;align-items:center;border-top:none}.slide--last{height:calc(100dvh - var(--nav-height) - var(--footer-height))}.slide-box{width:100%;aspect-ratio:3/1.4142;max-height:calc(100dvh - var(--nav-height));margin:auto;overflow:hidden}.slide-inner{width:100%;height:100%;overflow:hidden}.slide>.scroll-hint{display:block;position:absolute;bottom:0;left:50%;transform:translateX(-50%);font-family:var(--font-mono);font-size:4rem;color:color-mix(var(--scheme-fg),transparent 60%);pointer-events:none;z-index:2}.slide-caption{max-height:calc(100dvh - var(--nav-height))}.slide-column img{width:auto;max-width:100%;max-height:calc(100dvh - var(--nav-height) - var(--vertical-rhythm) * 4);object-fit:contain}.slide-media--svg,.slide--full .slide-media--svg{height:100%;& img { max-height: 100%; }}.slide-content-cols .slide-content-body,.slide-content-cols .slide-content-body-col2{overflow-y:hidden}.slide-content-cols img{max-height:calc(100dvh - var(--nav-height) - var(--vertical-rhythm) * 6);width:auto;max-width:100%}.slide-content--textcols{max-width:140ch}.slide-content--textcols .slide-content-body{column-count:2;column-gap:calc(var(--gap-h) * 2)}.slide-review-wrap .reviews-carousel{max-height:calc(100dvh - var(--nav-height) - 12rem);overflow:hidden}.slide-review-wrap video{max-height:25dvh}.slide--carousel .slide-inner{align-self:stretch;overflow:hidden}.slide--carousel .wcarousel{width:100%;flex:1;min-height:0;margin:0}.slide--carousel .wcarousel-track{height:100%;margin:0}.slide--carousel .wcarousel-item{aspect-ratio:unset;height:100%}.slide--boxed{width:100%;margin-top:0;margin-bottom:0}}@media(min-aspect-ratio:1414/1000){.slide-media--svg{width:var(--ratio-2);max-width:66.666%;display:flex;align-items:center;& img { width: 100%; height: auto; }}.slide--full .slide-media--svg{width:100%;& img { width: 100%; height: auto; max-width: none; }}.slide-overlay-body{margin:0 calc(var(--gap-h)/2);background-color:var(--scheme-overlay);border-radius:0 0 var(--corner-radii)var(--corner-radii)}}@media(min-aspect-ratio:1414/1000) and (not (pointer:fine)){.slide--full .slide-content{padding-top:calc(var(--gap-v) * 2);padding-bottom:calc(var(--gap-v) * 2)}.slide--html .slide-content{padding-top:0;padding-bottom:0}.slide--boxed .slide-caption{padding-top:0;padding-bottom:0}.slide--boxed .overflow-vertical,.slide--boxed .overflow-vertical-x2{--fade-size:0px}}@media(max-aspect-ratio:1414/1000){.slide-inner{flex-direction:column-reverse}.slide-caption>*:last-child{margin-bottom:var(--gap-v)}.slide-content>*:last-child{margin-bottom:calc(var(--gap-v) * 2)}.slide-media{width:100%;max-width:100%;& img, & video { width: 100%; max-height: none; }}.slide-overlay{position:static}.slide-overlay-body{padding:var(--gap-v)var(--gap-h);background-color:var(--scheme-bg)}.slide-title{padding-top:var(--gap-v)}.slide--boxed .slide-caption{padding-left:0;padding-right:0}}@media(min-aspect-ratio:5/2){.slide--full .slide-media img{height:auto;object-fit:contain}}#modal{display:none;position:fixed;inset:0;z-index:100;align-items:center;justify-content:center}#modal.modal-open{display:flex}#modal-inner{position:relative;background-color:var(--scheme-bg);color:var(--scheme-fg);width:100%;max-width:var(--breakpoint-medium);height:100%;display:flex;flex-direction:column;box-shadow:0 0 0 50vmax color-mix(in srgb,var(--scheme-bg),transparent 15%);outline:1px solid var(--scheme-shade2)}#modal-close{position:absolute;top:calc(var(--gap-v)/2);right:calc(var(--gap-h)/2);margin:0;color:var(--scheme-accent);background:0 0;cursor:pointer;transition:color .2s ease-out;z-index:1;font-size:2rem;&:hover { color:var(--scheme-accent-hover); outline:none; }}#modal-content{overflow-y:auto;overscroll-behavior:contain;padding:var(--gap-v)var(--gap-h)0}.modal-loading{width:2ch;height:2ch;border-radius:50%;border:2px solid var(--scheme-fg);border-top-color:transparent;animation:spin .6s linear infinite;margin:var(--gap-v)auto}@keyframes spin{to{transform:rotate(360deg)}}