/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.start{inset-inline-start:var(--spacing)}.hidden{display:none}.table{display:table}}:root{--ink:#363535;--muted:#aeacac;--paper:#fff;--site-background:linear-gradient(145deg, #fff 0%, #bebebe 100%)}*{box-sizing:border-box}html{scroll-behavior:smooth}html.is-view-transitioning{overflow:hidden}html,body{background:var(--site-background);background-attachment:fixed;min-height:100%}body{color:var(--ink);font-family:var(--font-montserrat), Montserrat, sans-serif;margin:0}button,a{color:inherit;font:inherit}button{cursor:pointer}.site-shell{background:var(--site-background);background-attachment:fixed;min-height:100svh;position:relative;overflow-x:hidden}.page-transition-cover{z-index:200;background:var(--site-background);opacity:0;pointer-events:none;transition:opacity .36s cubic-bezier(.16,1,.3,1);position:fixed;inset:0}.site-shell.view-leaving .page-transition-cover{opacity:1;pointer-events:auto;transition-duration:.23s}.site-shell.view-entering .page-transition-cover{opacity:1;pointer-events:auto;transition:none}.topbar{z-index:10;pointer-events:none;justify-content:space-between;align-items:center;padding:20px 3.8vw 0;display:flex;position:fixed;inset:0 0 auto}.icon-button{pointer-events:auto;background:0 0;border:0;border-radius:50%;place-items:center;width:62px;height:62px;display:grid}.icon-button img{object-fit:contain;width:30px;height:30px}.icon-button{transition:transform .25s cubic-bezier(.2,.8,.2,1),background-color .25s,border-color .25s}.icon-button:hover{background:#ffffff6b;transform:scale(1.08)rotate(2deg)}.profile-button{border:1.5px solid var(--ink);background:0 0;width:52px;height:52px}.profile-button img{width:26px;height:26px}.dashboard{grid-template-columns:1fr 1fr;align-content:center;gap:18px;width:min(800px,100vw - 48px);min-height:100svh;margin:auto;padding:11vh 0 25vh;display:grid}.tile{border:1.5px solid var(--ink);text-align:left;opacity:0;background:#ffffff0d;border-radius:24px;min-height:190px;padding:24px 27px;text-decoration:none;transition:transform .28s cubic-bezier(.2,.8,.2,1),background .25s,color .25s,box-shadow .25s;animation:.75s cubic-bezier(.16,1,.3,1) forwards tile-arrive}.tile:first-child{animation-delay:80ms}.tile:nth-child(2){animation-delay:.16s}.tile:nth-child(3){animation-delay:.24s}.tile:nth-child(4){animation-delay:.32s}@keyframes tile-arrive{0%{opacity:0;transform:translateY(32px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.tile:hover{background:#ffffff4d;transform:translateY(-7px)scale(1.012);box-shadow:0 14px 34px #3635351a}.projects-tile{color:#fff;border-color:var(--ink);background:var(--ink);display:block;position:relative}.projects-tile:hover{background:#282727}.tile-title{font-size:clamp(1.65rem,2.5vw,2.35rem);font-weight:400;line-height:1;display:block;position:absolute;top:24px;left:27px}.projects-tile strong{font-size:clamp(2.5rem,3.7vw,3.6rem);line-height:1;position:absolute;bottom:26px;left:27px}.projects-tile img{filter:none;width:40px;height:40px;transition:transform .3s cubic-bezier(.2,.8,.2,1);position:absolute;bottom:26px;right:28px}.projects-tile:hover img{transform:translateY(-4px)rotate(-4deg)}.text-tile{align-items:center;padding-left:15%;font-size:clamp(2.5rem,4.1vw,4rem);font-weight:400;line-height:1.16;display:flex}.pager{background:0 0;border:0;place-items:center;width:76px;height:48px;padding:0;transition:opacity .18s,transform .18s;animation:.75s cubic-bezier(.2,.8,.2,1) .25s both pager-arrive;display:grid;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.pager:hover{transform:translate(-50%)scale(1.08)}.pager img{object-fit:contain;width:64px;height:38px}.pager.hidden{opacity:0;pointer-events:none}@keyframes pager-arrive{0%{opacity:0;transform:translate(-50%,16px)scale(.8)}to{opacity:1;transform:translate(-50%)scale(1)}}.dock-wrap{z-index:12;opacity:0;pointer-events:none;align-items:center;gap:14px;transition:opacity .28s,transform .45s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%,18px)scale(.94)}.dock-wrap.open{opacity:1;pointer-events:auto;transform:translate(-50%)scale(1)}.dock{border:1.5px solid var(--ink);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ebebebe6;border-radius:42px;align-items:center;gap:32px;height:70px;padding:0 34px;display:flex}.dock a,.dock button{background:0 0;border:0;border-radius:50%;place-items:center;width:42px;height:42px;padding:0;transition:transform .25s cubic-bezier(.2,.8,.2,1),background-color .25s;display:grid}.dock a:hover,.dock button:hover{background:#ffffffb8;transform:translateY(-4px)scale(1.08)}.dock img{object-fit:contain;width:28px;height:28px}.dock-toggle{background:var(--ink);color:#fff;opacity:0;border:0;border-radius:50%;width:68px;height:68px;transition:background-color .25s;position:relative;transform:translate(-60px)scale(.55)rotate(-90deg)}.dock-wrap.open .dock-toggle{animation:.55s cubic-bezier(.16,1,.3,1) .12s forwards close-emerge}.dock-toggle:hover{background:#262525}.dock-toggle span,.overlay-close span,.close-page span{background:currentColor;width:38%;height:2.5px;transition:transform .3s cubic-bezier(.2,.8,.2,1);position:absolute;top:calc(50% - 1px);left:31%}.dock-toggle span:first-child,.overlay-close span:first-child,.close-page span:first-child{transform:rotate(45deg)}.dock-toggle span:last-child,.overlay-close span:last-child,.close-page span:last-child{transform:rotate(-45deg)}.dock-toggle:hover span:first-child,.overlay-close:hover span:first-child,.close-page:hover span:first-child{transform:rotate(135deg)}.dock-toggle:hover span:last-child,.overlay-close:hover span:last-child,.close-page:hover span:last-child{transform:rotate(45deg)}@keyframes close-emerge{to{opacity:1;transform:translate(0)scale(1)rotate(0)}}.page-floating-nav{z-index:15;border:1.5px solid var(--ink);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#e1e1e1e0;border-radius:36px;align-items:center;gap:3px;height:60px;padding:0 11px;transition:height .38s cubic-bezier(.16,1,.3,1),padding .38s cubic-bezier(.16,1,.3,1),gap .38s cubic-bezier(.16,1,.3,1),transform .38s cubic-bezier(.16,1,.3,1),background .25s;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 10px 35px #3635351a}.page-floating-nav button{background:0 0;border:0;border-radius:24px;justify-content:center;align-items:center;gap:7px;min-width:40px;height:40px;padding:0 12px;transition:background .25s,transform .25s cubic-bezier(.2,.8,.2,1),padding .38s cubic-bezier(.16,1,.3,1);display:flex}.page-floating-nav button:hover{background:#ffffffc7;transform:translateY(-2px)}.page-floating-nav img{object-fit:contain;flex:none;width:21px;height:21px}.page-floating-nav span{opacity:1;max-width:90px;font-size:10px;font-weight:400;transition:max-width .35s,opacity .25s,margin .35s;overflow:hidden}.page-floating-nav.compact{background:#dadadad1;gap:0;height:43px;padding:0 6px;transform:translate(-50%)scale(.86)}.page-floating-nav.compact button{min-width:32px;height:32px;padding:0 6px}.page-floating-nav.compact img{width:18px;height:18px}.page-floating-nav.compact span{opacity:0;max-width:0;margin:0}.page-floating-nav.compact:hover,.page-floating-nav.compact:focus-within{background:#e1e1e1f0;gap:3px;height:60px;padding:0 11px;transform:translate(-50%)scale(1)}.page-floating-nav.compact:hover button,.page-floating-nav.compact:focus-within button{min-width:40px;height:40px;padding:0 12px}.page-floating-nav.compact:hover img,.page-floating-nav.compact:focus-within img{width:21px;height:21px}.page-floating-nav.compact:hover span,.page-floating-nav.compact:focus-within span{opacity:1;max-width:90px}.menu-overlay{z-index:20;background:var(--site-background);opacity:0;visibility:hidden;background-attachment:fixed;padding:14vh 4vw 6vh;transition:all .35s;position:fixed;inset:0;transform:translateY(-20px)}.menu-overlay.open{opacity:1;visibility:visible;transform:none}.overlay-close,.close-page{border:1.5px solid var(--ink);z-index:22;background:0 0;animation:.5s cubic-bezier(.16,1,.3,1) both page-close-arrive;top:20px;right:3.8vw}.overlay-close{position:fixed}.close-page{position:absolute}@keyframes page-close-arrive{0%{opacity:0;transform:translate(-24px)scale(.65)rotate(-70deg)}to{opacity:1;transform:none}}.menu-links{flex-direction:column;align-items:flex-start;gap:20px;display:flex}.menu-links button,.menu-links>a{letter-spacing:-.04em;background:0 0;border:0;padding:0;font-size:clamp(2rem,4vw,4rem);line-height:1.12;text-decoration:none;transition:transform .2s,opacity .2s}.menu-links button:hover,.menu-links>a:hover{opacity:.55;transform:translate(12px)}.content-page{width:min(1120px,91vw);min-height:100svh;margin:auto;padding:14vh 0 10vh;animation:.55s cubic-bezier(.16,1,.3,1) both page-enter}@keyframes page-enter{0%{opacity:0;filter:blur(3px);transform:translateY(18px)scale(.992)}to{opacity:1;filter:blur();transform:none}}.eyebrow{text-transform:uppercase;letter-spacing:.18em;margin:0 0 12px;font-size:14px;font-weight:600}.content-page>h1{letter-spacing:-.055em;margin:0 0 7vh;font-size:clamp(3rem,5.5vw,6rem);font-weight:400;line-height:.96}.about-page{height:100svh;padding-top:11vh;overflow:hidden}.about-page>h1{margin-bottom:4vh}.about-grid{grid-template-columns:.95fr 1.05fr;align-items:stretch;gap:5vw;display:grid}.portrait-card{border:1.5px solid var(--ink);background:#222;border-radius:28px;min-height:325px;position:relative;overflow:hidden}.portrait-card>img{object-fit:cover;object-position:center 30%;width:100%;height:100%;position:absolute;inset:0}.portrait-overlay{z-index:1;color:#fff;background:linear-gradient(#0000,#08080880 45%,#080808e6);padding:76px 28px 26px;position:absolute;inset:auto 0 0}.portrait-overlay p{letter-spacing:-.04em;margin:0 0 7px;font-size:clamp(1.6rem,2.5vw,2.35rem);font-weight:500}.portrait-overlay span{font-size:13px;line-height:1.55}.about-copy h2{letter-spacing:-.04em;max-width:730px;margin:0 0 28px;font-size:clamp(2rem,3.5vw,4rem);font-weight:500;line-height:1.08}.about-copy>p{max-width:760px;font-size:clamp(1rem,1.35vw,1.3rem);line-height:1.75}.mini-stats{border-top:1px solid var(--ink);gap:50px;margin-top:32px;padding-top:20px;display:flex}.mini-stats div{flex-direction:column;gap:7px;display:flex}.mini-stats strong{font-size:1.8rem}.mini-stats span{font-size:12px}.projects-page{width:min(1280px,94vw);padding-top:18vh}.project-group+.project-group{margin-top:9vh}.project-group-heading{border-bottom:1px solid var(--ink);grid-template-columns:1fr auto;align-items:end;gap:18px;margin:0 0 22px;padding-bottom:14px;display:grid}.project-group-heading>small{text-transform:uppercase;letter-spacing:.14em;font-size:10px}.project-group-heading h2{letter-spacing:-.04em;margin:0;font-size:clamp(1.8rem,3vw,3rem);font-weight:450;line-height:1}.project-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.project-card{text-align:left;border:1.5px solid var(--ink);opacity:0;background:#ffffff14;border-radius:24px;padding:0;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s;animation:.7s cubic-bezier(.16,1,.3,1) forwards tile-arrive;overflow:hidden}.project-card:nth-child(2){animation-delay:80ms}.project-card:nth-child(3){animation-delay:.16s}.project-card:nth-child(4){animation-delay:.24s}.project-card:nth-child(5){animation-delay:.32s}.project-card:nth-child(6){animation-delay:.4s}.project-card:hover{transform:translateY(-7px);box-shadow:0 18px 42px #3635351f}.project-cover{background-color:#aeacac;background-position:50%;background-size:cover;height:290px;position:relative;overflow:hidden}.blur-image{background:#aeacac;position:absolute;inset:0;overflow:hidden}.blur-image canvas,.blur-image img{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.blur-image canvas{filter:blur(10px);opacity:1;transition:opacity .55s;transform:scale(1.06)}.blur-image img{opacity:0;transition:opacity .65s,transform .8s cubic-bezier(.2,.8,.2,1);transform:scale(1.015)}.blur-image.loaded img{opacity:1;transform:scale(1)}.blur-image.loaded canvas{opacity:0}.project-card:hover .blur-image.loaded img{transform:scale(1.065)}.ewc-project-cover{background:#111}.ewc-project-cover:before{content:"";filter:blur(18px);opacity:.52;background:url(/project-images/ewc-rides-main.png) 50%/cover no-repeat;position:absolute;inset:-22px;transform:scale(1.08)}.ewc-project-cover .blur-image{background:#080808;border-radius:15px;inset:14px 29% 42px;box-shadow:0 15px 38px #0000006b}.ewc-project-cover .blur-image img{object-fit:contain}.project-card:hover .ewc-project-cover .blur-image.loaded img{transform:scale(1.025)}.detail-hero:before,.gallery-frame:before{content:"";aspect-ratio:1;opacity:.38;border:1.5px solid;border-radius:50%;width:62%;position:absolute;transform:translate(35%,-20%)}.cover-1{color:#fff;background:#696767}.cover-2{color:#fff;background:#8c8a8a}.cover-3{color:#fff;background:#5b5959}.cover-4{color:#fff;background:#969494}.cover-5{color:#fff;background:#747272}.cover-6{color:#fff;background:#474646}.project-cover:after{content:"";background:linear-gradient(#0000 0%,#16161614 24%,#16161661 46%,#121212c7 72%,#0c0c0cf5 100%);transition:opacity .3s;position:absolute;inset:0}.project-card:hover .project-cover:after{opacity:.94}.project-overlay{z-index:2;color:#fff;text-shadow:0 2px 12px #00000080;padding:26px 24px 23px;transition:transform .3s cubic-bezier(.2,.8,.2,1);position:absolute;bottom:0;left:0;right:0;transform:translateY(4px)}.project-card:hover .project-overlay{transform:translateY(0)}.project-overlay h2{letter-spacing:-.025em;margin:0 0 9px;font-size:clamp(1.2rem,1.75vw,1.7rem);font-weight:300;line-height:1.08}.project-overlay strong{opacity:.95;font-size:10px;font-weight:300;line-height:1.5;display:block}.project-detail{padding-bottom:12vh}.detail-back{text-transform:uppercase;letter-spacing:.12em;background:0 0;border:0;margin:0 0 28px;padding:0;font-size:13px}.project-detail>h1{margin-bottom:5vh}.detail-meta{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);grid-template-columns:repeat(3,1fr);margin-bottom:34px;display:grid}.detail-meta div{flex-direction:column;gap:10px;min-height:100px;padding:22px 24px;display:flex}.detail-meta div+div{border-left:1px solid var(--ink)}.detail-meta span{text-transform:uppercase;letter-spacing:.14em;font-size:10px}.detail-meta strong{font-size:14px;font-weight:500;line-height:1.45}.project-links{flex-wrap:wrap;gap:10px;margin:-12px 0 34px;display:flex}.project-links a{border:1.5px solid var(--ink);background:#ffffff29;border-radius:999px;align-items:center;gap:26px;padding:13px 18px;font-size:12px;font-weight:550;text-decoration:none;transition:transform .2s,background .2s,color .2s;display:inline-flex}.project-links a:hover{background:var(--ink);color:#fff;transform:translateY(-2px)}.project-links a span{font-size:15px;line-height:1}.detail-hero{border:1.5px solid var(--ink);border-radius:28px;justify-content:center;align-items:center;height:min(68vh,650px);display:flex;position:relative;overflow:hidden}.detail-hero>span{z-index:1;letter-spacing:-.1em;font-size:clamp(8rem,22vw,20rem);font-weight:500;line-height:.8;position:relative}.detail-hero>p{text-transform:uppercase;letter-spacing:.15em;margin:0;font-size:13px;position:absolute;bottom:26px;left:30px}.portrait-detail-hero{background:#080808!important}.portrait-detail-hero:before{display:none}.portrait-detail-hero .blur-image{background:#080808;inset:7%}.portrait-detail-hero .blur-image img{object-fit:contain}.portrait-detail-hero>p{z-index:2;color:#fff}.ewc-detail-hero .blur-image{border-radius:24px;width:min(34%,280px);height:82%;inset:9% auto auto 50%;transform:translate(-50%);box-shadow:0 24px 70px #0000008c}.detail-copy{grid-template-columns:1fr 1fr;gap:7vw;padding:9vh 0;display:grid}.detail-copy h2{letter-spacing:-.04em;margin:0 0 24px;font-size:clamp(2rem,3.2vw,3.5rem);font-weight:450}.detail-copy section>p:last-child{margin:0;font-size:16px;line-height:1.8}.detail-tools{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:35px 0}.detail-tools>div{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.detail-tools span{border:1px solid var(--ink);border-radius:30px;padding:10px 16px;font-size:13px}.detail-gallery{grid-template-columns:repeat(3,1fr);gap:16px;padding-top:6vh;display:grid}.gallery-frame{border:1.5px solid var(--ink);text-align:left;cursor:zoom-in;color:#fff;border-radius:20px;flex-direction:column;justify-content:flex-end;height:260px;padding:20px;display:flex;position:relative;overflow:hidden;background:#080808!important}.gallery-frame:before{display:none}.gallery-frame .blur-image{background:#080808}.gallery-frame .blur-image canvas{display:none}.gallery-frame .blur-image img{object-fit:contain;object-position:center}.gallery-frame>span{z-index:2;font-size:9px;font-weight:300;position:absolute;top:18px;left:20px}.gallery-frame strong{z-index:2;letter-spacing:-.02em;font-size:clamp(1rem,1.35vw,1.35rem);font-weight:300;line-height:1.15;position:relative}.gallery-frame small{z-index:2;margin-top:6px;font-size:9px;font-weight:300;position:relative}.gallery-frame:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(#0000,#000000d9);position:absolute;inset:48% 0 0}.gallery-frame:hover .blur-image.loaded img{transform:scale(1.02)}.image-lightbox{z-index:100;overscroll-behavior:contain;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);cursor:zoom-out;background:#0c0c0cf0;place-items:center;width:100vw;height:100dvh;padding:34px;animation:.3s both lightbox-in;display:grid;position:fixed;inset:0;overflow:hidden}.image-lightbox>img{object-fit:contain;cursor:default;border-radius:14px;width:auto;max-width:min(92vw,1200px);height:auto;max-height:88dvh;display:block;box-shadow:0 24px 80px #00000073}.lightbox-close{z-index:2;color:#fff;background:#1414148c;border:1px solid #fff9;border-radius:50%;width:52px;height:52px;position:fixed;top:22px;right:24px}.lightbox-close span{background:currentColor;width:38%;height:2px;position:absolute;top:calc(50% - 1px);left:31%}.lightbox-close span:first-child{transform:rotate(45deg)}.lightbox-close span:last-child{transform:rotate(-45deg)}@keyframes lightbox-in{0%{opacity:0}to{opacity:1}}.lightbox-arrow{z-index:2;color:#fff;background:#0000004d;border:1px solid #ffffff73;border-radius:50%;place-items:center;width:48px;height:48px;font-size:34px;font-weight:200;line-height:1;transition:background .2s,transform .2s;display:grid;position:fixed;top:50%;transform:translateY(-50%)}.lightbox-arrow:hover{background:#ffffff29;transform:translateY(-50%)scale(1.07)}.lightbox-arrow.previous{left:22px}.lightbox-arrow.next{right:22px}.lightbox-count{color:#fff;letter-spacing:.12em;font-size:11px;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}.image-lightbox>img{animation:.25s both lightbox-image-change}@keyframes lightbox-image-change{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}.skills-grid{grid-template-columns:repeat(2,1fr);gap:22px;display:grid}.skills-grid article{border:1.5px solid var(--ink);border-radius:26px;min-height:280px;padding:30px;position:relative}.skills-grid article.dark{background:var(--ink);color:#fff}.skills-grid article>span{font-size:12px;position:absolute;top:30px;right:30px}.skills-grid h2{margin:0 0 38px;font-size:clamp(2.1rem,3.2vw,3.5rem);font-weight:400}.skills-grid ul{flex-wrap:wrap;gap:9px;margin:0;padding:0;list-style:none;display:flex}.skills-grid li{border:1px solid;border-radius:30px;padding:9px 14px;font-size:13px}.contact-page{flex-direction:column;display:flex}.contact-page>h1{font-size:clamp(4rem,8.8vw,9rem)}.contact-grid{border-top:1.5px solid var(--ink);grid-template-columns:repeat(2,1fr);margin-top:auto;display:grid}.contact-grid>a,.contact-grid>div{border-bottom:1.5px solid var(--ink);flex-direction:column;justify-content:center;gap:10px;min-height:110px;text-decoration:none;display:flex}.contact-grid>:nth-child(odd){border-right:1.5px solid var(--ink)}.contact-grid>:nth-child(2n){padding-left:35px}.contact-grid span{text-transform:uppercase;letter-spacing:.12em;font-size:12px}.contact-grid strong{font-size:clamp(1rem,2vw,1.8rem);font-weight:500}.message-button{background:var(--ink);color:#fff;border-radius:40px;width:fit-content;margin-top:36px;padding:18px 25px;text-decoration:none}.message-button span{margin-left:30px}@media (max-width:760px){.topbar{padding:10px 20px 0}.icon-button{width:50px;height:50px}.icon-button img{width:27px;height:27px}.profile-button{width:44px;height:44px}.profile-button img{width:23px;height:23px}.dashboard{gap:10px;width:calc(100vw - 32px);padding:82px 0 102px}.tile{border-radius:20px;min-height:145px;padding:20px}.text-tile{padding-left:20px;font-size:clamp(1.55rem,7.5vw,2.4rem)}.tile-title{font-size:1.3rem;top:20px;left:20px}.projects-tile strong{font-size:2.5rem;bottom:20px;left:20px}.projects-tile img{width:32px;height:32px;bottom:18px;right:18px}.pager{width:70px;height:44px;bottom:14px}.pager img{width:60px;height:35px}.dock-wrap{gap:8px;width:max-content;max-width:calc(100vw - 24px);bottom:12px}.dock{flex:none;justify-content:center;gap:3px;height:54px;padding:0 7px}.dock-toggle{flex:none;width:52px;height:52px}.dock a,.dock button{width:38px;height:38px}.dock img{width:24px;height:24px}.page-floating-nav{gap:0;height:52px;padding:0 7px;bottom:12px}.page-floating-nav button{min-width:38px;height:38px;padding:0 9px}.page-floating-nav span{display:none}.page-floating-nav.compact{height:40px}.page-floating-nav.compact:hover,.page-floating-nav.compact:focus-within{gap:0;height:52px;padding:0 7px}.page-floating-nav.compact:hover button,.page-floating-nav.compact:focus-within button{min-width:38px;height:38px;padding:0 9px}.overlay-close,.close-page{top:10px;right:20px}.menu-overlay{padding:17vh 24px 8vh}.menu-links{gap:26px}.menu-links button,.menu-links>a{font-size:clamp(1.8rem,9vw,2.8rem)}.content-page{width:calc(100vw - 40px);padding:120px 0 90px}.content-page>h1{margin-bottom:42px}.about-page{height:auto;padding-top:120px;overflow:visible}.about-grid{grid-template-columns:1fr;gap:36px}.portrait-card{min-height:280px}.mini-stats{justify-content:space-between;gap:20px}.mini-stats strong{font-size:1.45rem}.project-grid{grid-template-columns:1fr;gap:16px}.project-cover{height:270px}.detail-meta{grid-template-columns:1fr}.detail-meta div+div{border-left:0;border-top:1px solid var(--ink)}.detail-hero{height:420px}.detail-copy{grid-template-columns:1fr;gap:52px;padding:70px 0}.detail-gallery{grid-template-columns:1fr}.gallery-frame{height:300px}.skills-grid{grid-template-columns:1fr}.skills-grid article{min-height:245px}.contact-grid{grid-template-columns:1fr}.contact-grid>:nth-child(odd){border-right:0}.contact-grid>:nth-child(2n){padding-left:0}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@media (max-width:760px){.detail-gallery{grid-template-columns:repeat(2,1fr);gap:10px}.gallery-frame{border-radius:15px;height:190px;padding:14px}.gallery-frame>span{top:13px;left:14px}.gallery-frame strong{font-size:.95rem}.gallery-frame small{font-size:8px}.portrait-detail-hero .blur-image{inset:8% 6%}.ewc-detail-hero .blur-image{width:min(52%,230px);height:82%;inset:9% auto auto 50%}.project-group+.project-group{margin-top:70px}.project-group-heading{gap:10px}.projects-page{padding-top:150px}}
