:root{color-scheme:light;--page:#f5f7fc;--ink:#142039;--muted:#546075;--line:#d4dae5;--accent:#254bdc;--surface:#fff;scroll-behavior:smooth;scroll-padding-top:125px}*{box-sizing:border-box}body{margin:0;background:var(--page);color:var(--ink);font:16px/1.55 Inter,Segoe UI,sans-serif;--c-content:var(--ink);--c-action:var(--accent)}body:has(input[value=dark]:checked){color-scheme:dark;--page:#111722;--ink:#eef2fa;--muted:#aab8ce;--line:#364151;--accent:#9cb7ff;--surface:#192332;--c-content:var(--ink);--c-action:var(--accent)}body:has(input[value=dim]:checked){color-scheme:dark;--page:#152433;--ink:#e0f1ee;--muted:#a5c3c9;--line:#3a5261;--accent:#94e2dc;--surface:#1c3242;--c-content:var(--ink);--c-action:var(--accent)}a{color:inherit;text-decoration:none}button,input{font:inherit}button,summary,a{-webkit-tap-highlight-color:transparent}button{color:inherit}button,a,summary{touch-action:manipulation}:focus-visible{outline:3px solid var(--accent)!important;outline-offset:5px}::selection{background:#b9d5ff;color:#142039}figure,h1,h2,h3,p{margin:0}button{cursor:pointer}button:disabled{cursor:default}main,section{min-width:0}.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%)}.skip-link:focus{position:fixed;top:5px;left:5px;z-index:100;padding:14px;background:var(--surface)}.experiment-rail{padding:0 3.5%;display:flex;align-items:center;justify-content:space-between;min-height:42px;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.025em;gap:16px}.variant-links{display:flex;gap:24px}.variant-links a{padding:12px 0;color:var(--muted)}.variant-links a[aria-current]{color:var(--ink);box-shadow:inset 0 -2px var(--accent)}.effects-toggle{background:none;border:0;min-height:40px;padding:0 8px;font-size:11px}.site-header{position:sticky;z-index:20;top:0;padding:16px 3.5%;display:flex;align-items:center;justify-content:space-between;gap:16px;pointer-events:none}.site-header>*{pointer-events:auto}.wordmark{display:flex;align-items:start;letter-spacing:-2px;font-weight:850;font-size:30px;min-width:244px;line-height:1}.wordmark span{margin-left:4px;font-size:11px;letter-spacing:0;padding-top:3px}.nav-glass{border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);border-radius:40px}nav{display:flex;padding:4px 8px;align-items:center;gap:2px}nav a{padding:12px 18px;border-radius:30px;font-size:13px;font-weight:550;white-space:nowrap}nav a:hover{color:var(--accent)}nav a:last-child{color:var(--accent)}.theme-switcher{position:relative;width:244px;height:70px;flex-shrink:0}.theme-switcher .switcher{position:relative;top:0;left:0;translate:none;margin:0;backdrop-filter:blur(2px) url(#switcher) saturate(var(--saturation));-webkit-backdrop-filter:blur(2px) url(#switcher) saturate(var(--saturation))}.switcher__option:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:-3px}.switcher__option svg{max-width:36px}.switcher__filter>svg{width:0;height:0}.hero{max-width:1500px;margin:24px auto 0;padding:0 3.5%;display:grid;grid-template-columns:1.08fr 1fr;gap:5.2%;align-items:center}.hero-copy{padding:38px 0 34px}.eyebrow{display:block;font:600 10px/1.5 Inter,Segoe UI,sans-serif;letter-spacing:.14em}.hero-copy>.eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:28px}.status-dot{width:6px;height:6px;display:inline-block;background:var(--accent);border-radius:50%}h1{font-size:clamp(48px,5.8vw,88px);line-height:1.015;letter-spacing:-.065em;font-weight:530}h1 em,h2 em{color:var(--accent);font-style:normal;font-weight:440}.hero-copy>p{color:var(--muted);font-size:16px;line-height:1.75;margin-top:28px}.hero-actions{display:flex;gap:30px;align-items:center;margin:32px 0 42px}.hero-actions>a{font-size:13px;text-decoration:underline;text-underline-offset:5px}.petr-action{--anim--hover-time:.4s;--anim--hover-ease:cubic-bezier(.25,1,.5,1);font-size:15px;flex-shrink:0}.petr-action button>span{color:var(--ink);font-family:inherit;font-weight:550;letter-spacing:0}.hero-location{font-size:9px;letter-spacing:.15em;display:flex;gap:30px;color:var(--muted)}.hero-material{position:relative;align-self:stretch;min-height:520px;padding-bottom:40px}.material-scene{position:relative;overflow:hidden;width:100%;height:100%;min-height:520px;border-radius:16px;background:#1e64b1;isolation:isolate}.material-backdrop,.material-scene canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.material-scene canvas{z-index:1}.material-caption{pointer-events:none;position:absolute;top:26px;left:26px;right:26px;z-index:2;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#fff;text-shadow:0 1px 4px #174278}.scene-instruction{font-size:10px;opacity:.85}.scene-status{position:absolute;bottom:16px;left:24px;z-index:2;font:9px/1.5 ui-monospace,monospace;color:#fff;text-shadow:0 1px 4px #123}.identity-badge{position:absolute!important;z-index:3;bottom:70px;left:24px;right:24px;display:flex;align-items:center;gap:18px;padding:18px 24px;border-radius:28px;border:1px solid #ffffff66;color:#fff;min-height:102px}.badge-monogram{color:inherit;font-size:36px;font-weight:650;letter-spacing:-3px}.identity-badge div{display:flex;flex-direction:column;gap:3px}.identity-badge strong{font-size:15px;font-weight:600}.identity-badge div span{font-size:12px}.identity-badge>span:last-child{margin-left:auto;font-size:25px}.discipline-strip{max-width:1500px;margin:50px auto 0;padding:24px 3.5%;display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);font-size:11px;letter-spacing:.03em}.discipline-strip a{color:var(--ink);font-size:25px;line-height:1}.section{max-width:1500px;margin:auto;padding:96px 3.5%}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:46px}h2{font-size:clamp(38px,4.2vw,64px);line-height:1.08;font-weight:500;letter-spacing:-.055em}.section-heading h2,.about-intro h2,.toolkit h2{margin-top:20px}.section-aside{max-width:390px}.section-aside>p{color:var(--muted);font-size:14px;max-width:290px;margin-bottom:24px}.plain-filters{display:flex;gap:5px;border:1px solid var(--line);border-radius:30px;padding:4px;width:fit-content}.plain-filters button{border:0;background:transparent;padding:10px 15px;border-radius:22px;font-size:12px;min-height:44px;white-space:nowrap}.plain-filters button[aria-pressed=true]{color:var(--page);background:var(--ink)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:42px 30px;align-items:start}.project{min-width:0}.project-shell{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.project-top{display:flex;justify-content:space-between;padding:19px 24px;font-size:9px;letter-spacing:.1em;border-bottom:1px solid var(--line)}.project-art{height:220px;position:relative;overflow:hidden;display:grid;place-items:center;background:#e3eaff;color:#254bdc}.project-art>span{font-size:150px;letter-spacing:-.09em;font-weight:400;line-height:.9;font-family:Georgia,serif}.project-art.legal{background:#e5ebf8;color:#3155ad}.project-art.sign{background:#dbece9;color:#255c53}.project-art.sign>span{font-family:inherit;font-size:132px;font-weight:350}.project-art.pillow{background:#d8e8fa;color:#236197}.project-art.expense{background:#e8e2f3;color:#62428b}.art-label{position:absolute;bottom:16px;left:24px;font-size:10px;letter-spacing:.03em}.project-body{padding:27px 26px 22px}h3{font-size:30px;line-height:1.15;letter-spacing:-.04em;font-weight:530}.project-body>p{font-size:14px;color:var(--muted);margin:17px 0;max-width:420px}.tags{display:flex;flex-wrap:wrap;list-style:none;margin:22px 0 24px;padding:0;gap:8px}.tags li{font-size:10px;padding:5px 10px;border:1px solid var(--line);border-radius:20px}details{border-top:1px solid var(--line)}summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;min-height:44px;padding:14px 0 0;font-size:12px;list-style:none}summary::-webkit-details-marker{display:none}details[open] summary{color:var(--accent)}details>p{padding-top:18px;font-size:13px;color:var(--muted)}details>small{display:block;margin-top:12px;font-size:11px;color:var(--muted)}.about-section{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:9%}.about-intro>p{color:var(--muted);max-width:460px;font-size:15px;line-height:1.8;margin:28px 0 36px}.education{display:flex;flex-direction:column;gap:9px}.education>span:first-child{font-size:9px;letter-spacing:.12em;margin-bottom:5px}.education>strong{font-size:13px;font-weight:550}.education>span:last-child{font-size:11px;color:var(--muted)}.experience>article{padding:26px 0;border-bottom:1px solid var(--line)}.experience-date{color:var(--muted);font-size:10px}.experience h3{font-size:26px;margin:10px 0 6px}.experience-role{font-size:12px}.experience p{margin-top:16px;color:var(--muted);font-size:13px;line-height:1.8}.toolkit{border-top:1px solid var(--line)}.toolkit-layout{display:grid;grid-template-columns:1fr 1fr;gap:9%}.toolkit dl{margin:0}.toolkit dl>div{padding:22px 0;border-bottom:1px solid var(--line)}.toolkit dt{font-size:14px;font-weight:550}.toolkit dd{margin:9px 0 0;color:var(--muted);font-size:12px;line-height:1.8}.contact{background:var(--accent);color:var(--page);padding-top:66px;padding-bottom:44px;max-width:none}.contact>.eyebrow{opacity:.85}.contact h2{font-size:clamp(50px,7vw,110px);margin:28px 0 40px;position:relative}.contact h2 em{color:inherit;opacity:.72}.contact h2>span{position:absolute;right:0;top:0}.contact-bottom{border-top:1px solid currentColor;padding-top:28px;display:flex;gap:30px;justify-content:space-between;font-size:12px}.contact-bottom>div{display:flex;gap:30px}.contact a{text-decoration:underline;text-underline-offset:6px}footer{padding:28px 3.5%;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted)}.implementation-note{padding:0 3.5% 25px}.implementation-note summary{font-size:11px;color:var(--muted);padding-top:8px}.implementation-note p{max-width:1000px;font-size:12px}.implementation-note a{text-decoration:underline}.reduced-panel{background:var(--surface)!important}.identity-badge.reduced-panel{color:var(--ink)}html[data-effects=off]{scroll-behavior:auto}html[data-effects=off] *,html[data-effects=off] *:before,html[data-effects=off] *:after{animation:none!important;transition:none!important}html[data-effects=off] .switcher,html[data-effects=off] .switcher:after,html[data-effects=off] .petr-action button{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:var(--surface)}html[data-variant=favourites] .hero{display:block;margin-top:0}html[data-variant=favourites] .hero-copy{text-align:center;padding:28px 0 45px}html[data-variant=favourites] .hero-copy>.eyebrow{justify-content:center;margin-bottom:24px}html[data-variant=favourites] h1{font-size:clamp(52px,7.6vw,112px)}html[data-variant=favourites] .hero-break{display:none}html[data-variant=favourites] .hero-copy>p{margin-top:24px}html[data-variant=favourites] .hero-copy>p br{display:none}html[data-variant=favourites] .hero-actions{justify-content:center;margin:24px 0 0}html[data-variant=favourites] .hero-location{display:none}html[data-variant=favourites] .hero-material{height:410px;min-height:0;padding-bottom:0}html[data-variant=favourites] .material-scene{min-height:0}html[data-variant=favourites] .identity-badge{bottom:28px;right:auto;left:28px;width:340px;color:#fff;border-color:#fff6}html[data-variant=favourites] .badge-monogram{color:#fff}html[data-variant=favourites] .identity-badge.reduced-panel{color:var(--ink)}html[data-variant=favourites] .identity-badge.reduced-panel .badge-monogram{color:var(--accent)}html[data-variant=favourites] .work-section{background:linear-gradient(145deg,transparent 25%,color-mix(in srgb,var(--accent) 9%,transparent),transparent 75%)}html[data-variant=favourites] .project-shell{border-radius:28px}html[data-variant=favourites] .project-art{margin:14px 14px 0;border-radius:16px}.lens-feature{margin:0 3.5% 80px;height:390px;position:relative;overflow:hidden;border-radius:24px}.ybouane-scene{position:absolute;inset:0 0 0 52%}.ybouane-scene>img{width:100%;height:100%;object-fit:cover}.ybouane-lens{position:absolute;z-index:1;top:40px;right:10%;width:80%;height:calc(100% - 80px);border-radius:28px;background:transparent}.lens-copy{position:relative;z-index:2;pointer-events:none;width:52%;height:100%;padding:52px 5%;color:var(--ink);background:var(--surface)}.lens-copy>p{margin:20px 0;font-size:clamp(30px,4vw,56px);line-height:1.1;letter-spacing:-.045em}.lens-copy>span:last-child{font-size:14px;line-height:1.7}.lens-status{position:absolute;bottom:16px;right:24px;font:9px/1.4 monospace;color:#fff;text-shadow:0 1px 4px #123}.bhavya-filter{max-width:100%}.bhavya-tabs #tabsDemoArea{background:transparent;box-shadow:none}.bhavya-tabs .tabs-container{background:#142039}[hidden]{display:none!important}@media(min-width:1500px){.contact>*{max-width:1395px;margin-left:auto;margin-right:auto}}@media(max-width:1000px){.wordmark{min-width:60px}.theme-switcher{width:210px}.theme-switcher .switcher{position:absolute;right:0;left:auto;transform:scale(.86);transform-origin:right center}h1{font-size:58px}.hero{gap:30px}.hero-material,.material-scene{min-height:500px}.hero-actions{gap:20px}.material-caption{flex-direction:column;gap:5px}.identity-badge{padding:16px;gap:12px;left:12px;right:12px}.section{padding-top:72px;padding-bottom:72px}.section-heading{gap:20px}.section-aside{max-width:330px}}@media(max-width:720px){:root{scroll-padding-top:150px}.experiment-rail{gap:6px;padding:0 16px;font-size:9px}.variant-links{gap:12px}.effects-toggle{font-size:9px;padding:0}.site-header{padding:12px 20px 8px;flex-wrap:wrap;gap:4px;align-items:center;background:var(--page)}.wordmark{font-size:28px;flex:1}.theme-switcher{width:200px;height:60px;order:1}.theme-switcher .switcher{transform:scale(.82);transform-origin:right top}.nav-glass{order:2;flex:0 0 100%;margin-top:4px}nav{justify-content:space-around;padding:0 4px}nav a{padding:11px 16px;font-size:12px}.hero{display:block;padding:0 20px;margin-top:6px}.hero-copy{padding:30px 0}.hero-copy>.eyebrow{font-size:9px;letter-spacing:.07em;margin-bottom:22px}h1{font-size:clamp(45px,12vw,77px)}.hero-break{display:none}.hero-copy>p{margin-top:22px;font-size:14px}.hero-copy>p br.desktop-break{display:none}.hero-actions{margin:24px 0 30px;gap:28px}.hero-location{font-size:8px;gap:20px}.hero-material{height:420px;min-height:0;padding-bottom:34px;margin-top:10px}.material-scene{min-height:0}.material-caption{top:22px;left:20px}.identity-badge{left:14px;right:14px;min-height:86px}.discipline-strip{margin-top:32px;padding:20px;gap:14px;font-size:9px;line-height:1.6}.discipline-strip span{max-width:90px}.section{padding:60px 20px}.section-heading{display:block;margin-bottom:28px}h2{font-size:44px}.section-aside{margin-top:24px;max-width:100%}.section-aside>p{margin-bottom:18px}.project-grid{grid-template-columns:1fr;gap:24px}.project-top{padding:16px 20px;font-size:8px}.project-art{height:200px}.project-body{padding:22px}.project-body h3{font-size:30px}.about-section,.toolkit-layout{display:block}.experience{margin-top:44px}.toolkit dl{margin-top:24px}.contact h2{font-size:clamp(40px,10vw,68px);padding-right:15px}.contact h2>span{font-size:30px}.contact-bottom{flex-direction:column;gap:20px;font-size:11px}.contact-bottom>div{gap:22px;flex-wrap:wrap}footer{padding:22px 20px;flex-wrap:wrap;font-size:9px}footer>span:nth-child(2){order:3;flex-basis:100%}.implementation-note{padding:0 20px 20px}html[data-variant=favourites] .hero-copy{padding-top:25px;padding-bottom:28px;text-align:left}html[data-variant=favourites] .hero-copy>.eyebrow,html[data-variant=favourites] .hero-actions{justify-content:flex-start}html[data-variant=favourites] h1{font-size:clamp(45px,12vw,77px)}html[data-variant=favourites] .hero-material{height:370px}html[data-variant=favourites] .identity-badge{width:auto;left:14px;right:14px;bottom:22px}.lens-feature{height:550px;margin:0 20px 60px}.lens-copy{padding:32px 24px;width:100%;height:250px}.ybouane-scene{inset:250px 0 0}.lens-copy>p{font-size:36px}.lens-copy>span:last-child{font-size:12px}.ybouane-lens{top:30px;bottom:30px;right:10%;width:80%;height:auto}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}@property --angle-1{syntax: "<angle>"; inherits: false; initial-value: -75deg;}@property --angle-2{syntax: "<angle>"; inherits: false; initial-value: -45deg;}.petr-action .button-wrap{position:relative;z-index:2;border-radius:999vw;background:transparent;pointer-events:none;transition:all var(--anim--hover-time) var(--anim--hover-ease)}.petr-action .button-shadow{--shadow-cuttoff-fix: 2em;position:absolute;width:calc(100% + var(--shadow-cuttoff-fix));height:calc(100% + var(--shadow-cuttoff-fix));top:calc(0% - var(--shadow-cuttoff-fix) / 2);left:calc(0% - var(--shadow-cuttoff-fix) / 2);filter:blur(clamp(2px,.125em,12px));-webkit-filter:blur(clamp(2px,.125em,12px));-moz-filter:blur(clamp(2px,.125em,12px));-ms-filter:blur(clamp(2px,.125em,12px));overflow:visible;pointer-events:none}.petr-action .button-shadow:after{content:"";position:absolute;z-index:0;inset:0;border-radius:999vw;background:linear-gradient(180deg,#0003,#0000001a);width:calc(100% - var(--shadow-cuttoff-fix) - .25em);height:calc(100% - var(--shadow-cuttoff-fix) - .25em);top:calc(var(--shadow-cuttoff-fix) - .5em);left:calc(var(--shadow-cuttoff-fix) - .875em);padding:.125em;box-sizing:border-box;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;transition:all var(--anim--hover-time) var(--anim--hover-ease);overflow:visible;opacity:1}.petr-action button{--border-width: clamp(1px, .0625em, 4px);all:unset;cursor:pointer;position:relative;-webkit-tap-highlight-color:rgba(0,0,0,0);pointer-events:auto;z-index:3;background:linear-gradient(-75deg,#ffffff0d,#fff3,#ffffff0d);border-radius:999vw;box-shadow:inset 0 .125em .125em #0000000d,inset 0 -.125em .125em #ffffff80,0 .25em .125em -.125em #0003,0 0 .1em .25em inset #fff3,0 0 #fff;backdrop-filter:blur(clamp(1px,.125em,4px));-webkit-backdrop-filter:blur(clamp(1px,.125em,4px));-moz-backdrop-filter:blur(clamp(1px,.125em,4px));-ms-backdrop-filter:blur(clamp(1px,.125em,4px));transition:all var(--anim--hover-time) var(--anim--hover-ease)}.petr-action button:hover{transform:scale(.975);backdrop-filter:blur(.01em);-webkit-backdrop-filter:blur(.01em);-moz-backdrop-filter:blur(.01em);-ms-backdrop-filter:blur(.01em);box-shadow:inset 0 .125em .125em #0000000d,inset 0 -.125em .125em #ffffff80,0 .15em .05em -.1em #00000040,0 0 .05em .1em inset #ffffff80,0 0 #fff}.petr-action button span{position:relative;display:block;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;font-family:Inter,sans-serif;letter-spacing:-.05em;font-weight:500;font-size:1em;color:#323232;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-shadow:0em .25em .05em rgba(0,0,0,.1);transition:all var(--anim--hover-time) var(--anim--hover-ease);padding-inline:1.5em;padding-block:.875em}.petr-action button:hover span{text-shadow:.025em .025em .025em rgba(0,0,0,.12)}.petr-action button span:after{content:"";display:block;position:absolute;z-index:1;width:calc(100% - var(--border-width));height:calc(100% - var(--border-width));top:calc(0% + var(--border-width) / 2);left:calc(0% + var(--border-width) / 2);box-sizing:border-box;border-radius:999vw;overflow:clip;background:linear-gradient(var(--angle-2),rgba(255,255,255,0) 0%,rgba(255,255,255,.5) 40% 50%,rgba(255,255,255,0) 55%);z-index:3;mix-blend-mode:screen;pointer-events:none;background-size:200% 200%;background-position:0% 50%;background-repeat:no-repeat;transition:background-position calc(var(--anim--hover-time) * 1.25) var(--anim--hover-ease),--angle-2 calc(var(--anim--hover-time) * 1.25) var(--anim--hover-ease)}.petr-action button:hover span:after{background-position:25% 50%}.petr-action button:active span:after{background-position:50% 15%;--angle-2: -15deg}@media(hover:none)and (pointer:coarse){.petr-action button span:after,.petr-action button:active span:after{--angle-2: -45deg}}.petr-action button:after{content:"";position:absolute;z-index:1;inset:0;border-radius:999vw;width:calc(100% + var(--border-width));height:calc(100% + var(--border-width));top:calc(0% - var(--border-width) / 2);left:calc(0% - var(--border-width) / 2);padding:var(--border-width);box-sizing:border-box;background:conic-gradient(from var(--angle-1) at 50% 50%,rgba(0,0,0,.5),rgba(0,0,0,0) 5% 40%,rgba(0,0,0,.5) 50%,rgba(0,0,0,0) 60% 95%,rgba(0,0,0,.5)),linear-gradient(180deg,#ffffff80,#ffffff80);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;transition:all var(--anim--hover-time) var(--anim--hover-ease),--angle-1 .5s ease;box-shadow:inset 0 0 0 calc(var(--border-width) / 2) #ffffff80}.petr-action button:hover:after{--angle-1: -125deg}.petr-action button:active:after{--angle-1: -75deg}@media(hover:none)and (pointer:coarse){.petr-action button:after,.petr-action button:hover:after,.petr-action button:active:after{--angle-1: -75deg}}.petr-action .button-wrap:has(button:hover) .button-shadow{filter:blur(clamp(2px,.0625em,6px));-webkit-filter:blur(clamp(2px,.0625em,6px));-moz-filter:blur(clamp(2px,.0625em,6px));-ms-filter:blur(clamp(2px,.0625em,6px));transition:filter var(--anim--hover-time) var(--anim--hover-ease)}.petr-action .button-wrap:has(button:hover) .button-shadow:after{top:calc(var(--shadow-cuttoff-fix) - .875em);opacity:1}.petr-action .button-wrap:has(button:active){transform:rotateX(25deg)}.petr-action .button-wrap:has(button:active) button{box-shadow:inset 0 .125em .125em #0000000d,inset 0 -.125em .125em #ffffff80,0 .125em .125em -.125em #0003,0 0 .1em .25em inset #fff3,0 .225em .05em #0000000d,0 .25em #ffffffbf,inset 0 .25em .05em #00000026}.petr-action .button-wrap:has(button:active) .button-shadow{filter:blur(clamp(2px,.125em,12px));-webkit-filter:blur(clamp(2px,.125em,12px));-moz-filter:blur(clamp(2px,.125em,12px));-ms-filter:blur(clamp(2px,.125em,12px))}.petr-action .button-wrap:has(button:active) .button-shadow:after{top:calc(var(--shadow-cuttoff-fix) - .5em);opacity:.75}.petr-action .button-wrap:has(button:active) span{text-shadow:.025em .25em .05em rgba(0,0,0,.12)}.story-navigation{--c-glass: #bbbbbc;--c-light: #fff;--c-dark: #000;--c-content: #224;--c-action: #0052f5;--c-bg: #E8E8E9;--glass-reflex-dark: 1;--glass-reflex-light: 1;--saturation: 150%}.story-navigation{position:fixed;z-index:1;top:40px;left:50%;translate:-50%;display:flex;align-items:center;gap:8px;width:244px;max-width:244px;height:70px;box-sizing:border-box;padding:8px 12px 10px;margin:0 auto;border:none;border-radius:99em;font-size:var(--fz);background-color:color-mix(in srgb,var(--c-glass) 12%,transparent);backdrop-filter:blur(2px) url(#story-nav-switcher) blur(2px) saturate(var(--saturation));-webkit-backdrop-filter:blur(2px) saturate(var(--saturation));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--c-light) calc(var(--glass-reflex-light) * 10%),transparent),inset 1.8px 3px 0 -2px color-mix(in srgb,var(--c-light) calc(var(--glass-reflex-light) * 90%),transparent),inset -2px -2px 0 -2px color-mix(in srgb,var(--c-light) calc(var(--glass-reflex-light) * 80%),transparent),inset -3px -8px 1px -6px color-mix(in srgb,var(--c-light) calc(var(--glass-reflex-light) * 60%),transparent),inset -.3px -1px 4px color-mix(in srgb,var(--c-dark) calc(var(--glass-reflex-dark) * 12%),transparent),inset -1.5px 2.5px 0 -2px color-mix(in srgb,var(--c-dark) calc(var(--glass-reflex-dark) * 20%),transparent),inset 0 3px 4px -2px color-mix(in srgb,var(--c-dark) calc(var(--glass-reflex-dark) * 20%),transparent),inset 2px -6.5px 1px -4px color-mix(in srgb,var(--c-dark) calc(var(--glass-reflex-dark) * 10%),transparent),0 1px 5px color-mix(in srgb,var(--c-dark) calc(var(--glass-reflex-dark) * 10%),transparent),0 6px 16px color-mix(in srgb,var(--c-dark) calc(var(--glass-reflex-dark) * 8%),transparent);transition:background-color .4s cubic-bezier(1,0,.4,1),box-shadow .4s cubic-bezier(1,0,.4,1)}.story-navigation>a{--c: var(--c-content);display:flex;justify-content:center;align-items:center;padding:0 16px;width:68px;height:100%;box-sizing:border-box;border-radius:99em;opacity:1;transition:all .16s}.story-navigation>a:hover{--c: var(--c-action);cursor:pointer}.story-navigation:after{content:"";position:absolute;left:4px;top:4px;display:block;width:84px;height:calc(100% - 10px);border-radius:99em;background-color:color-mix(in srgb,var(--c-glass) 36%,transparent);z-index:-1;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--c-light) calc(var(--glass-reflex-light) * 10%),transparent),inset 2px 1px 0 -1px color-mix(in srgb,var(--c-light) calc(var(--glass-reflex-light) * 90%),transparent),inset -1.5px -1px 0 -1px color-mix(in srgb,var(--c-light) calc(var(--glass-reflex-light) * 80%),transparent),inset -2px -6px 1px -5px color-mix(in srgb,var(--c-light) calc(var(--glass-reflex-light) * 60%),transparent),inset -1px 2px 3px -1px color-mix(in srgb,var(--c-dark) calc(var(--glass-reflex-dark) * 20%),transparent),inset 0 -4px 1px -2px color-mix(in srgb,var(--c-dark) calc(var(--glass-reflex-dark) * 10%),transparent),0 3px 6px color-mix(in srgb,var(--c-dark) calc(var(--glass-reflex-dark) * 8%),transparent)}@keyframes storyNavScale{0%{scale:1 1}50%{scale:1.1 1}to{scale:1 1}}@keyframes storyNavScale2{0%{scale:1 1}50%{scale:1.2 1}to{scale:1 1}}@keyframes storyNavScale3{0%{scale:1 1}50%{scale:1.1 1}to{scale:1 1}}@keyframes storyNavScale4{0%{scale:1 1}50%{scale:1.1 1}to{scale:1 1}}@keyframes storyNavScale5{0%{scale:1 1}50%{scale:1.1 1}to{scale:1 1}}.story-navigation[data-selected="0"]:after{animation:storyNavScale .44s ease}.story-navigation[data-selected="1"]:after{animation:storyNavScale2 .44s ease}.story-navigation[data-selected="2"]:after{animation:storyNavScale3 .44s ease}.story-navigation[data-selected="3"]:after{animation:storyNavScale4 .44s ease}.story-navigation[data-selected="4"]:after{animation:storyNavScale5 .44s ease}.story-dock-glass,.story-project-disclosure{--c-light:#fff;--c-dark:#000;--glass-reflex-light:1;--glass-reflex-dark:1;--dock-rim:inset 0 0 0 1px color-mix(in srgb, var(--c-light) calc(var(--glass-reflex-light) * 10%), transparent), inset 1.8px 3px 0px -2px color-mix(in srgb, var(--c-light) calc(var(--glass-reflex-light) * 90%), transparent), inset -2px -2px 0px -2px color-mix(in srgb, var(--c-light) calc(var(--glass-reflex-light) * 80%), transparent), inset -3px -8px 1px -6px color-mix(in srgb, var(--c-light) calc(var(--glass-reflex-light) * 60%), transparent), inset -.3px -1px 4px 0px color-mix(in srgb, var(--c-dark) calc(var(--glass-reflex-dark) * 12%), transparent), inset -1.5px 2.5px 0px -2px color-mix(in srgb, var(--c-dark) calc(var(--glass-reflex-dark) * 20%), transparent), inset 0px 3px 4px -2px color-mix(in srgb, var(--c-dark) calc(var(--glass-reflex-dark) * 20%), transparent), inset 2px -6.5px 1px -4px color-mix(in srgb, var(--c-dark) calc(var(--glass-reflex-dark) * 10%), transparent), 0px 1px 5px 0px color-mix(in srgb, var(--c-dark) calc(var(--glass-reflex-dark) * 10%), transparent), 0px 6px 16px 0px color-mix(in srgb, var(--c-dark) calc(var(--glass-reflex-dark) * 8%), transparent)}.glass-surface{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:opacity .26s ease-out}.glass-surface__filter{width:100%;height:100%;pointer-events:none;position:absolute;inset:0;opacity:0;z-index:-1}.glass-surface__content{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:.5rem;border-radius:inherit;position:relative;z-index:1}.glass-surface--svg{background:light-dark(hsl(0 0% 100% / var(--glass-frost, 0)),hsl(0 0% 0% / var(--glass-frost, 0)));backdrop-filter:var(--filter-id, url(#glass-filter)) saturate(var(--glass-saturation, 1));box-shadow:0 0 2px 1px light-dark(color-mix(in oklch,black,transparent 85%),color-mix(in oklch,white,transparent 65%)) inset,0 0 10px 4px light-dark(color-mix(in oklch,black,transparent 90%),color-mix(in oklch,white,transparent 85%)) inset,0 4px 16px #11111a0d,0 8px 24px #11111a0d,0 16px 56px #11111a0d,0 4px 16px #11111a0d inset,0 8px 24px #11111a0d inset,0 16px 56px #11111a0d inset}.glass-surface--fallback{background:#ffffff40;backdrop-filter:blur(12px) saturate(1.8) brightness(1.1);-webkit-backdrop-filter:blur(12px) saturate(1.8) brightness(1.1);border:1px solid rgba(255,255,255,.3);box-shadow:0 8px 32px #1f268733,0 2px 16px #1f26871a,inset 0 1px #fff6,inset 0 -1px #fff3}@media(prefers-color-scheme:dark){.glass-surface--fallback{background:#ffffff1a;backdrop-filter:blur(12px) saturate(1.8) brightness(1.2);-webkit-backdrop-filter:blur(12px) saturate(1.8) brightness(1.2);border:1px solid rgba(255,255,255,.2);box-shadow:inset 0 1px #fff3,inset 0 -1px #ffffff1a}}@supports not (backdrop-filter: blur(10px)){.glass-surface--fallback{background:#fff6;box-shadow:inset 0 1px #ffffff80,inset 0 -1px #ffffff4d}.glass-surface--fallback:before{content:"";position:absolute;inset:0;background:#ffffff26;border-radius:inherit;z-index:-1}}@supports not (backdrop-filter: blur(10px)){@media(prefers-color-scheme:dark){.glass-surface--fallback{background:#0006}.glass-surface--fallback:before{background:#ffffff0d}}}.glass-surface:focus-visible{outline:2px solid light-dark(#007aff,#0a84ff);outline-offset:2px}.story-navigation{touch-action:none;user-select:none;-webkit-user-select:none;--glass-reflex-light:.18;--glass-reflex-dark:.18}.story-navigation{backdrop-filter:blur(2px) saturate(var(--saturation));-webkit-backdrop-filter:blur(2px) saturate(var(--saturation));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--c-light) calc(var(--glass-reflex-light) * 10%),transparent),inset 0 1px color-mix(in srgb,var(--c-light) calc(var(--glass-reflex-light) * 24%),transparent),inset 0 -1px 1px color-mix(in srgb,var(--c-dark) calc(var(--glass-reflex-dark) * 10%),transparent),0 1px 8px color-mix(in srgb,var(--c-dark) calc(var(--glass-reflex-dark) * 8%),transparent)}.story-navigation[data-backdrop=light]{--nav-active-ink:#173b58;background-color:#e9eceba8;backdrop-filter:blur(18px) saturate(105%);-webkit-backdrop-filter:blur(18px) saturate(105%)}.story-navigation[data-backdrop=dark]{--saturation:20%;--c-glass:#bbb;background:color-mix(in srgb,var(--c-glass) 20%,transparent)}.story-navigation[data-backdrop=dark]:after{--c-glass:#000;--glass-reflex-light:.06}.story-navigation[data-gesture=held],.story-navigation[data-gesture=settling]{cursor:grabbing}.story-navigation[data-selected]:after{translate:var(--nav-gesture-x, 0px) 0;scale:var(--nav-gesture-scale-x, 1) var(--nav-gesture-scale-y, 1);transform-origin:center;animation:none!important;transition:none}.story-navigation[data-gesture]:after{will-change:translate,scale}.story-header:has(.story-nav-prism>.glass-surface--svg) .story-navigation[data-gesture]:after{opacity:var(--nav-resting-opacity,1)}.story-navigation[data-gesture=held]>a{cursor:grabbing}.story-navigation>a{position:relative;z-index:3}.story-page .story-navigation[data-input=pointer]>a:focus{outline:none!important}.story-nav-overlays{position:absolute;inset:0;z-index:2;pointer-events:none;color-scheme:light}.story-nav-prism{position:absolute;left:var(--nav-lens-left,4px);top:5px;width:var(--nav-lens-width,calc((100% - 8px)/var(--nav-count)));height:calc(100% - 10px);border-radius:var(--nav-lens-radius-x,27px) / 27px;pointer-events:none;visibility:hidden;translate:clamp(var(--nav-lens-inset,0px),var(--nav-gesture-x,0px),calc(var(--nav-lens-travel,0px) - var(--nav-lens-inset,0px))) 0;scale:var(--nav-gesture-scale-x,1) var(--nav-gesture-scale-y,1)}.story-navigation[data-gesture]+.story-nav-overlays .story-nav-prism{visibility:visible}.story-nav-prism>.glass-surface{position:absolute;left:calc(-1 * var(--nav-optical-margin));top:calc(-1 * var(--nav-optical-margin));box-shadow:none;opacity:1;transition:none;padding:0;box-sizing:border-box;background:transparent;clip-path:inset(var(--nav-optical-margin) round var(--nav-lens-radius-x,27px) / 27px)}.story-nav-prism:after{content:"";position:absolute;inset:0;border-radius:inherit;background:url(/portfolio/assets/kube/specular-nav-edge.png) 0 0/100% 100% no-repeat;box-shadow:inset .7px 2px 5px #0000004d,inset -.7px -2px 5px #ffffff4d,0 2px 4px #0000001a;opacity:calc((1 - var(--nav-resting-opacity,1)) * .45);pointer-events:none}.story-header:has(.story-nav-prism>.glass-surface--fallback) .story-navigation{box-shadow:inset 0 1px #fff6,inset 0 -1px #fff3,0 4px 16px #11111a1f}.story-header:has(.story-nav-prism>.glass-surface--fallback) .story-navigation[data-backdrop=dark]{backdrop-filter:blur(8px) saturate(110%);-webkit-backdrop-filter:blur(8px) saturate(110%)}.story-navigation:not([data-gesture])+.story-nav-overlays .glass-surface{backdrop-filter:none;-webkit-backdrop-filter:none}.story-nav-prism>.glass-surface--fallback{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border:0}@media(prefers-reduced-motion:reduce){.story-navigation[data-gesture]:after{scale:1 1;transition:none;animation:none}}.story-back-top{position:fixed;left:max(24px,env(safe-area-inset-left));bottom:calc(24px + env(safe-area-inset-bottom));z-index:59;width:56px;height:56px;border-radius:50%}.story-back-top-optics{position:absolute;inset:0;pointer-events:none}.story-back-top button{position:relative;display:grid;place-items:center;width:100%;height:100%;border:0;border-radius:inherit;padding:0;background:transparent;color:#f5f7ff}.story-back-top button svg{filter:drop-shadow(0 1px 2px #080d1b)}.story-back-top button:hover{background:#ffffff12}.story-back-top button:active{background:#ffffff20}html[data-effects=off] .story-back-top{background:#152642;box-shadow:inset 0 1px #ffffff60}@media(max-width:760px){.story-back-top{left:max(16px,env(safe-area-inset-left));bottom:calc(94px + env(safe-area-inset-bottom))}}.content-prism{position:absolute;inset:0;border-radius:inherit;pointer-events:none}.content-prism-clip{position:absolute;inset:0;border-radius:inherit;overflow:hidden}.content-prism-clip>.glass-surface{position:absolute;left:calc(-1 * var(--content-margin));top:calc(-1 * var(--content-margin));padding:0;box-sizing:border-box;border:0;background:transparent;box-shadow:none;opacity:1;transition:none;clip-path:inset(var(--content-margin) round var(--content-radius))}.content-prism-clip>.glass-surface--fallback{backdrop-filter:none;-webkit-backdrop-filter:none}.content-prism[data-glass-kind=jw] .glass-surface--fallback{left:0;top:0;width:100%!important;height:100%!important;border-radius:inherit!important;clip-path:none;background:#ffffff0f;backdrop-filter:blur(8px) saturate(1.35);-webkit-backdrop-filter:blur(8px) saturate(1.35);box-shadow:inset 0 1px #fff6,inset 0 -1px #fff3}@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.content-prism[data-glass-kind=jw] .glass-surface--fallback{background:#4d5965}}.content-prism-vignette{position:absolute;inset:0;border-radius:inherit;pointer-events:none}.jw-assistant{position:fixed;top:0;left:0;z-index:90;max-width:calc(100vw - 24px);color:#f5f7ff;font:15px/1.5 var(--sc-font-text,system-ui,sans-serif);outline:none;isolation:isolate}.jw-assistant-shell{box-shadow:0 20px 64px #0005}.jw-assistant .jw-assistant-surface{--detail-fill:rgb(9 12 18 / .88);--detail-frost:18px;--glass-reflex-light:.22;--glass-reflex-dark:.4;width:100%;height:100%;border-radius:inherit;overflow:hidden;box-shadow:inset 0 1px 1px #ffffff3a,inset 0 0 0 1px #ffffff12,inset 0 -1px #0007}.jw-assistant:focus{outline:none!important}.jw-assistant :focus-visible{outline:2px solid #b8d9ff!important;outline-offset:2px}.jw-assistant .jw-assistant-content{height:100%;display:flex;flex-direction:column;padding:12px 16px 14px;gap:8px}.jw-assistant button,.jw-assistant input{font:inherit}.jw-assistant button{border:0;color:inherit;background:transparent;cursor:pointer}.jw-assistant button:disabled,.jw-assistant button[aria-disabled=true]{opacity:.5;cursor:default}.jw-assistant-header{display:flex;align-items:center;gap:4px;flex-shrink:0}.jw-assistant-grip{display:flex;align-items:center;gap:10px;flex:1;min-width:0;min-height:44px;text-align:left;cursor:grab!important;touch-action:none;user-select:none;padding:0 4px}.jw-assistant-grip:active{cursor:grabbing!important}.jw-assistant-grip>svg{margin-left:auto;color:#9299a6}.jw-assistant-brand{font-size:23px;font-weight:750;letter-spacing:-.04em}.jw-assistant-preview{color:#adb8ca;font-size:11px}.jw-assistant-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;flex-shrink:0}.jw-assistant-icon:hover{background:#ffffff16}.jw-assistant-composer{margin-top:auto;display:flex;align-items:center;gap:4px;min-height:48px;flex-shrink:0;border-radius:28px;padding:4px 5px 4px 16px;background:#ffffff0d;box-shadow:inset 0 1px #ffffff20}.jw-assistant-composer:has(input:focus){box-shadow:inset 0 0 0 1px #d6e2efb3}.jw-assistant-composer input{color:#fff;background:transparent;border:0;outline:none!important;width:0;flex:1;min-width:0;font-size:16px;padding:0;height:36px;caret-color:#a9cbff}.jw-assistant .jw-assistant-composer input:focus-visible{outline:none!important}.jw-assistant-composer input::placeholder{color:#a4afbf}.jw-assistant-composer input:disabled{cursor:not-allowed;opacity:1;-webkit-text-fill-color:#a4afbf}.jw-assistant-composer button{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;flex-shrink:0}.jw-assistant-composer .jw-assistant-send{color:#0b1423;background:#c5e1fc}.jw-assistant[data-expanded=false] .jw-assistant-content{padding:12px 60px 12px 88px}.jw-assistant[data-expanded=false] .jw-assistant-header{display:contents}.jw-assistant[data-expanded=false] .jw-assistant-grip{position:absolute;left:8px;top:12px;width:72px;height:52px;padding:0 8px;gap:5px}.jw-assistant[data-expanded=false] .jw-assistant-grip .jw-assistant-preview{display:none}.jw-assistant[data-expanded=false] .jw-assistant-grip>svg{width:14px;height:20px;flex-shrink:0}.jw-assistant[data-expanded=false] .jw-assistant-icon{position:absolute;right:12px;top:16px}.jw-assistant[data-expanded=false] .jw-assistant-composer{margin:0;padding:0;background:transparent;box-shadow:none;min-height:52px}.jw-assistant[data-expanded=false] .jw-assistant-composer:has(input:focus){border-radius:0;box-shadow:inset 0 -1px #d6e2efb3}.jw-assistant-shortcuts{margin-top:12px}.jw-assistant .jw-assistant-options{--detail-fill:rgb(9 12 18 / .88);--detail-frost:18px;border-radius:22px;overflow:hidden;padding:6px 14px 10px;box-shadow:0 10px 28px #0003}.jw-assistant-shortcuts .jw-assistant-disclaimer{margin-top:4px}.jw-assistant-shortcuts .jw-assistant-disclaimer span{font-weight:600}.jw-assistant-suggestions{display:flex;flex-direction:column}.jw-assistant-suggestions button{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:2px 8px;text-align:left;color:#c6d3e5;font-size:13px}.jw-assistant-suggestions button:enabled:hover{color:#fff}.jw-assistant-suggestions svg{width:16px;height:16px}.jw-assistant-disclaimer{margin:0;color:#a5b2c5;font-size:10px;text-align:center;flex-shrink:0}.jw-assistant-log{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#516071 transparent;padding:4px 6px 16px;display:flex;flex-direction:column;gap:20px}.jw-assistant-message p{margin:0}.jw-assistant-message.is-user{align-self:flex-end;max-width:90%;padding:10px 14px;background:#ffffff12;border-radius:18px 18px 5px}.jw-assistant-message.is-assistant{color:#e5edfa}.jw-assistant-message ul{padding:0;margin:14px 0 0;list-style:none}.jw-assistant-message li+li{border-top:1px solid #ffffff12}.jw-assistant-message a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:8px 0;font-size:13px;color:#b8d9ff}.jw-assistant-message a svg{flex-shrink:0}.jw-assistant-thinking{display:flex;align-items:center;gap:5px;height:24px}.jw-assistant-thinking>span:not(.sr-only){width:5px;height:5px;border-radius:50%;background:#bfdaff;animation:jw-thinking .8s ease-in-out infinite alternate}.jw-assistant-thinking>span:nth-child(2){animation-delay:.12s}.jw-assistant-thinking>span:nth-child(3){animation-delay:.24s}.jw-assistant[data-reduced=true] *{animation:none!important}.jw-assistant[data-state=closing]{user-select:none}.jw-assistant-caution{position:absolute;z-index:3;inset:88px 0 auto;height:110px;overflow:hidden;pointer-events:none;user-select:none}.jw-assistant[data-expanded=true] .jw-assistant-caution{top:100px;height:150px}.jw-assistant-tape{position:absolute;left:50%;top:50%;width:max-content;display:flex;align-items:center;gap:28px;height:35px;padding:0 16px;color:#191b16;background:#f5ce48;border-block:2px solid #24231c;box-shadow:0 4px 8px #0005;font-size:14px;font-weight:800;line-height:1;letter-spacing:.1em;white-space:nowrap}.jw-assistant-tape span{display:flex;align-items:center;gap:28px}.jw-assistant-tape span:after{content:"";display:block;width:18px;height:15px;background:repeating-linear-gradient(115deg,#24231c 0 4px,transparent 4px 8px)}.jw-assistant-tape--back{transform:translate(-50%,-50%) rotate(11deg);background:#dcb338}.jw-assistant-tape--front{transform:translate(-50%,-50%) rotate(-9deg)}@media(max-height:360px){.jw-assistant[data-expanded=true] .jw-assistant-caution{top:64px;height:90px}}@media(forced-colors:active){.jw-assistant-tape{color:CanvasText;background:Canvas;border-color:CanvasText}}.story-logo-layer[data-assistant-open=true] .kube-logo{visibility:hidden}.story-logo-layer[data-assistant-returning=true] .kube-logo{visibility:visible;animation:jw-return .32s linear both}.story-logo-static{background:transparent;border:0;padding:0}.story-logo-static[data-carried=true]{color:var(--ink)}@keyframes jw-thinking{to{opacity:.3;transform:translateY(-3px)}}@keyframes jw-return{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.jw-assistant *{animation:none!important}}@media(forced-colors:active){.jw-assistant .jw-assistant-composer:has(input:focus){outline:2px solid Highlight;outline-offset:2px}}@media(max-height:280px){.jw-assistant-shortcuts{display:none}}html[data-variant=favourites]{color-scheme:dark;--page:#080d1b;--surface:#111b30;--ink:#f5f7ff;--muted:#b6c7e3;--line:#465c80;--accent:#a9cbff;--sc-canvas:#080d1b;--sc-surface:#111b30;--sc-ink:#f5f7ff;--sc-ink-soft:#b6c7e3;--sc-accent:#a9cbff;--sc-accent-ink:#080d1b;--sc-font-text:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--sc-font-display:var(--sc-font-text);scroll-padding-top:0}.story-page :is(main,section)[tabindex="-1"]:focus{outline:none!important}.story-page{position:relative;background:#080d1b;color:#f5f7ff;font:17px/1.5 var(--sc-font-text);overflow-x:clip}.story-page h1,.story-page h2,.story-page h3{text-wrap:balance;font-weight:600;letter-spacing:-.055em}.story-page p{text-wrap:pretty}.story-page a,.story-page button,.story-page summary{min-height:44px}.story-page a:focus-visible,.story-page button:focus-visible,.story-page summary:focus-visible{outline-color:#82bcff!important}.story-header{position:fixed;top:18px;left:50%;translate:-50% 0;z-index:60;display:flex;align-items:center;gap:24px}.story-page[data-intro-state=waiting] :is(.story-header,.story-logo-layer,.story-logo-static){visibility:hidden}.story-page[data-intro-state=revealing] :is(.story-navigation,.story-logo-static,.kube-logo .glass-surface,.kube-logo .content-prism-vignette,.kube-logo-glass,.story-monogram){animation:story-intro-surface-arrival .6s cubic-bezier(.16,1,.3,1) .1s both}@keyframes story-intro-surface-arrival{0%{opacity:0}to{opacity:1}}.story-navigation{--nav-index:0;--nav-origin:right;--nav-active-ink:#2f6795;position:relative;top:auto;left:auto;translate:none;isolation:isolate;width:430px;max-width:calc(100vw - 28px);height:64px;gap:0;padding:4px;margin:0;color:var(--c-content);color-scheme:light}.story-navigation[data-backdrop=dark]{--c-content:#f5f7ff;--nav-active-ink:#91c9f7}.story-navigation>a{flex:1;width:0;min-width:0;padding:0;font:600 15px/1 var(--sc-font-text);color:var(--c-content);text-decoration:none}.story-navigation>a:hover{color:var(--c-content);text-decoration:none}.story-navigation>a>span{display:inline-block;font-size:1em}.story-navigation:not([data-preview])>a[aria-current=location],.story-navigation>a[data-nav-preview]{color:var(--nav-active-ink)}.story-navigation[data-preview]>a{transition:none}.story-page .story-navigation>a:focus-visible{outline:2px solid var(--c-content)!important;outline-offset:-4px}.story-navigation:after{width:calc((100% - 8px) / var(--nav-count));translate:calc(var(--nav-index) * 100%) 0;transform-origin:var(--nav-origin);transition:background-color .4s cubic-bezier(1,0,.4,1),box-shadow .4s cubic-bezier(1,0,.4,1),translate .4s cubic-bezier(1,0,.4,1)}.story-navigation-filters,.story-navigation-filters svg{position:absolute;width:0;height:0;pointer-events:none}.story-logo-layer{position:absolute;inset:0;z-index:65;pointer-events:none}.kube-logo{position:absolute;pointer-events:auto;border:0;padding:0;color:#fff;background:transparent;cursor:grab;touch-action:none;user-select:none}.kube-logo:active{cursor:grabbing}.kube-logo-glass{position:absolute;inset:0;border-radius:inherit;box-shadow:0 0 0 1px #ffffff1a;pointer-events:none}.story-monogram{position:absolute;inset:0;display:grid;place-items:center;z-index:4;font-weight:800;font-size:32px;letter-spacing:-3px;text-shadow:0 2px 6px #07102c}.story-logo-static{position:absolute;top:20px;left:20px;z-index:65;color:#1b2530;font-weight:800;font-size:28px}.story-hero{--sc-p:0}.story-hero>[data-sc-stage]{position:relative;display:flex;flex-direction:column;min-height:max(820px,100svh);height:auto;overflow:hidden;background:#e9eceb;color:#1b2530}.story-material-plane{position:relative;flex:1;min-height:340px;order:2}.story-material{position:absolute;inset:0;mask-image:linear-gradient(90deg,transparent 28%,#000 72%)}.story-intro-water{position:absolute!important;inset:-70px auto -28% 50%;width:min(116%,174svh);translate:-50% 0;overflow:hidden;mask-image:linear-gradient(180deg,transparent,#000 22%,#000),linear-gradient(90deg,transparent 4%,#000 22%,#000 78%,transparent 96%);mask-composite:intersect}.story-intro-water{container-type:size}.story-intro-water:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 10%,transparent 32%,#e9eceb40 80%,#e9eceb99);pointer-events:none}.story-material img,.story-material canvas,.story-material video{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.story-material img{object-position:70%}.story-intro-water>img,.story-intro-water>video{object-position:calc(50% + max(2.455cqw,4.364cqh)) top}.story-hero-copy{position:relative;z-index:3;padding:clamp(126px,14vh,170px) 7vw 0;width:100%;text-align:center;pointer-events:none}.story-hero-copy>*{pointer-events:auto}.story-hero-name{position:relative;width:fit-content;max-width:100%;margin:0 auto 34px}.story-page .story-hero h1{font-size:clamp(64px,8vw,112px);line-height:.98;letter-spacing:-.04em;margin:0}.story-hero-name .story-alias{position:absolute;top:calc(100% - 6px);left:calc(100% - 76px);color:#26343d;font:clamp(24px,2vw,30px)/1 "Reenie Beanie",cursive;rotate:-6deg;white-space:nowrap}.story-hero-copy>p:not(.story-byline){color:#49525a;font-size:19px;line-height:1.5}.story-primary{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px 28px;margin-top:14px;position:relative}.story-resume{display:inline-flex;align-items:center;gap:16px;padding:10px 0;font-size:15px;border-bottom:1px solid #13264250;color:#132642}.story-primary .petr-action{font-size:15px}.story-primary .petr-action button{background:linear-gradient(135deg,#fff9,#ffffff20);box-shadow:inset 0 1px 1px #fff,0 3px 9px #1b253014}.story-primary .petr-action button>span{color:#202b35;text-shadow:none;padding:15px 24px}.story-primary .petr-action .button-shadow{opacity:.22}.story-primary .petr-action button:after{opacity:.5}html[data-effects=off] .story-primary .petr-action button{background:#e4e8e9}.story-profile-links a span,.story-project summary span{display:inline-block;transition:transform .18s var(--sc-ease-out)}.story-profile-links a:active{translate:0 1px}.story-lens-home{position:absolute;z-index:2;right:max(5%,calc((100% - 174svh)/2));top:clamp(410px,42%,580px);width:240px;height:210px;pointer-events:none}.story-lens-invitation{position:absolute;top:154px;left:50%;translate:-50% 0;padding:10px 18px;color:#182128;background:radial-gradient(ellipse,#e9eceb 18%,#e9ecebcc 44%,#e9eceb00 72%);font:32px/1 Reenie Beanie,cursive;rotate:-5deg;white-space:nowrap}.story-intention{min-height:100svh;padding:clamp(100px,12vw,170px) min(8vw,115px);display:grid;grid-template-columns:minmax(230px,.72fr) minmax(360px,1fr);gap:clamp(48px,8vw,140px);align-content:center;align-items:center;max-width:1440px;margin-inline:auto}.story-intention>[data-sc-in]{text-align:left;max-width:620px;margin:0}.story-intention>[data-sc-in] p{margin-inline:0}.story-intention h2{font-size:clamp(36px,4.2vw,60px);line-height:1.05;margin:0}.story-intention h2 span{color:#8699b8}.story-intention p{color:#c1cfe3;font-size:20px;max-width:700px}.story-intention .story-intention-note{margin-top:30px;color:#92a9c9;font-size:16px}.story-portrait{margin:0;min-width:0;width:min(440px,100%);translate:none;max-width:440px;justify-self:end}.story-portrait:has([data-portrait-status=fallback]),html[data-effects=off] .story-portrait{translate:none}.story-portrait-stage{position:relative;aspect-ratio:6/7;overflow:hidden;border-radius:32px;background:#0e2345;isolation:isolate}.story-portrait-stage img,.story-portrait-stage canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.story-portrait-stage img{filter:none}.story-portrait-stage canvas{opacity:0;pointer-events:none;clip-path:inset(50%)}.story-portrait-stage[data-reveal=lens] canvas{opacity:1}.story-portrait-stage[data-reveal=original] img{filter:none}.story-portrait-instruction{position:absolute;bottom:20px;left:20px;right:20px;padding:10px 14px;border-radius:14px;background:#080d1be6;color:#fff;font-size:13px;pointer-events:none}.story-portrait-controls{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-top:18px;font-size:16px}.story-portrait-controls button{border:1px solid #84a5d16b;border-radius:24px;padding:8px 15px;background:#192e4f;white-space:nowrap;font-size:14px}.story-portrait figcaption{color:#8eabc9;font-size:12px;margin-top:14px;line-height:1.5}.story-portrait figcaption a{text-decoration:underline}.story-portrait-cycle-note{max-width:none;text-align:center}.story-work{--sc-p:0;position:relative;background:#142c5a}.story-work>[data-sc-stage]{min-height:0;overflow:hidden}.story-work-logo-track{position:absolute;inset:0;z-index:65;pointer-events:none}.story-work-logo-stage{position:sticky;top:0;height:100svh}.story-work-background{position:absolute;inset:0;background:#101d2b}.story-work-background img{width:100%;height:100%;object-fit:cover;filter:brightness(.32) saturate(.65)}.story-work-heading{position:relative;padding:105px 7vw 25px;display:flex;align-items:end;justify-content:space-between}.story-work-heading h2{font-size:clamp(38px,4.3vw,64px);line-height:1.03}.story-work-heading h2 span{color:#b9d6ff}.story-work-heading>p{font-size:16px}.story-project-track{display:flex;gap:30px;width:max-content;padding:10px 7vw 60px;position:relative}.story-project{width:min(620px,45vw);flex:0 0 auto}@media(min-width:761px){html[data-effects=on] .story-project{--curve-distance:calc(var(--curve-origin,0) - var(--sc-p) * var(--curve-travel,0));--curve-approach:clamp(0,calc((var(--curve-distance) + .52) / 1.52),1.5);--curve-exit:clamp(0,calc((-.52 - var(--curve-distance)) / .48),1.6);--curve-exit-y:min(250px,calc(clamp(140px,19svh,205px) * var(--curve-exit) * var(--curve-exit)));--curve-y:calc(clamp(96px,24svh,260px) * var(--curve-approach) * var(--curve-approach) + var(--curve-exit-y));translate:0 var(--curve-y)}@supports (width:round(nearest,1px,1px)){html[data-effects=on] .story-project-track{transform:translate(round(nearest,calc(-1px * var(--curve-pixels,0) * var(--sc-p)),var(--curve-pixel,1px)))!important;will-change:auto}html[data-effects=on] .story-project{translate:calc(round(nearest,var(--curve-base-x,0px),var(--curve-pixel,1px)) - var(--curve-base-x,0px)) calc(round(nearest,calc(var(--curve-base-y,0px) + var(--curve-y)),var(--curve-pixel,1px)) - var(--curve-base-y,0px))}}}.story-viewport-glass{position:relative}.story-glass-optics{position:absolute!important;inset:0;border-radius:inherit;pointer-events:none;z-index:0}.story-viewport-glass>:where(:not(.story-glass-optics):not(svg)){z-index:1;position:relative}.story-viewport-glass>.story-project-symbol{position:absolute}.story-project-surface{border-radius:44px;padding:28px 32px 20px;min-height:500px;display:flex;flex-direction:column;position:relative}.story-project-surface{--sc-p:0;--curve-distance:0;--curve-approach:0;--curve-exit:0;--curve-exit-y:0px;--curve-y:0px}.story-project-heading{display:flex;gap:30px;justify-content:space-between;font-size:14px;min-height:44px;padding-bottom:18px;color:#eef5ff}.story-project-heading[href]:hover{color:#b9d6ff}.story-project-symbol{position:absolute;right:28px;top:48px;font-size:clamp(80px,9vw,130px);font-weight:300;line-height:1;color:#c1deff4f;pointer-events:none}.story-project h3{white-space:pre-line;font-size:clamp(30px,2.8vw,42px);line-height:1.08;margin:80px 0 18px;position:relative}.story-project p{font-size:17px;max-width:54ch;color:#f0f5ff}.story-project ul{display:flex;flex-wrap:wrap;list-style:none;padding:0;gap:8px 18px;margin:22px 0;font-size:14px;color:#d7eaff}.story-project-surface>.story-project-disclosure{position:static;border:0;margin-top:auto}.story-project-surface>.story-project-disclosure[open]{position:static;z-index:auto}.story-project summary{list-style:none;display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-size:15px;min-height:48px;margin-top:20px;padding:10px 16px;border-radius:24px;position:relative;isolation:isolate;color:inherit;background:transparent;box-shadow:none}.story-project summary:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:#ffffff0a;box-shadow:var(--dock-rim),var(--disclosure-depth);transition:scale .2s cubic-bezier(.5,0,0,1),background-color .2s ease}.story-project-disclosure,.story-project-detail-glass.story-dock-glass{--glass-reflex-light:.28;--glass-reflex-dark:.45}.story-project-surface>.story-project-detail-panel{position:absolute;inset:0;z-index:5;border-radius:inherit}.story-project-detail-glass.story-dock-glass{height:100%;border-radius:inherit;overflow:hidden;box-shadow:var(--dock-rim),var(--disclosure-depth)}.story-project-detail-glass>.story-project-detail-caption{position:absolute;inset:auto 0 0;height:48px;display:flex;align-items:center;justify-content:space-between;padding:10px 16px;font-size:15px;pointer-events:none}.story-project-detail-content{height:100%;overflow:auto;overscroll-behavior:auto;padding:24px 32px 32px;scrollbar-width:thin;scrollbar-color:#ffffff60 transparent}.story-project-detail-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;color:#e2eaf3;font-size:15px}.story-project-detail-heading button{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:0;border-radius:50%;background:#ffffff12;box-shadow:inset 0 1px #ffffff40}.story-project-detail-heading button:hover{background:#ffffff24}.story-project-detail-content h4{font-size:clamp(22px,2vw,30px);line-height:1.15;margin:28px 0 22px}.story-project-detail-content p{margin:0 0 28px}.story-project-surface>.story-project-heading,.story-project-surface>.story-project-symbol,.story-project-surface>div:not(.story-glass-optics):not(.story-project-detail-panel){transition:opacity .18s ease}.story-project-surface:has(>.story-project-disclosure[data-expanded=true])>.story-project-heading,.story-project-surface:has(>.story-project-disclosure[data-expanded=true])>.story-project-symbol,.story-project-surface:has(>.story-project-disclosure[data-expanded=true])>div:not(.story-glass-optics):not(.story-project-detail-panel){opacity:0}.story-project .story-project-note{color:#bccce1;font-size:14px}.story-about{position:relative;padding:140px 8vw 110px;background:#080d1b;color:#f5f7ff;overflow:clip;isolation:isolate}.story-rain{position:absolute;inset:0;z-index:-1;mask-image:linear-gradient(90deg,transparent,#000 75%)}.story-rain img,.story-rain canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.story-rain canvas{opacity:0}.story-rain[data-rain-status=ready] canvas{opacity:1}.story-about:before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,#080d1b26,#080d1b26 45%,#080d1be6);pointer-events:none}.story-about-intro{position:relative;z-index:2;max-width:850px;margin-left:auto;text-align:right}.story-about h2{font-size:clamp(48px,7.2vw,108px);line-height:1.03;margin-bottom:30px}.story-about h2 span{color:#b3d7ff}.story-about-intro>p:last-child{max-width:480px;margin-left:auto;font-size:19px}.story-career-layout{position:relative;z-index:2;display:grid;grid-template-columns:1.3fr .7fr;gap:7vw;margin-top:80px}.story-career-heading{position:sticky;top:150px;align-self:start;order:2;text-align:right;font-size:clamp(30px,3.2vw,48px);line-height:1.15}.story-experience{position:relative;z-index:2;display:flex;flex-direction:column;gap:24px;min-width:0}.story-current-role{display:block;color:#b3d7ff;margin-top:8px}.story-arrival{position:relative;min-width:0}.story-arrival-plane{transform-origin:50% 100%}.story-experience article{min-width:0}.story-experience-motion{height:100%}.story-experience-surface{padding:32px;border-radius:36px;height:100%}.story-experience-surface--current.story-dock-glass{--glass-reflex-light:2.4}.story-experience-surface--current>.story-native-glass{box-shadow:var(--dock-rim)}.story-dock-glass{border:0;background:#ebeef211;box-shadow:var(--dock-rim),inset 0 2px 24px #0003,inset 0 -2px 24px #fff3}.story-native-glass{backdrop-filter:blur(8px) saturate(150%);-webkit-backdrop-filter:blur(8px) saturate(150%)}.story-dock-glass[data-glass-material=frost]>.story-native-glass{backdrop-filter:blur(var(--detail-frost,20px)) saturate(150%);-webkit-backdrop-filter:blur(var(--detail-frost,20px)) saturate(150%)}.story-dock-glass[data-glass-material=frost]{background:var(--detail-fill,rgb(18 24 32 / .48))}html[data-effects=off] .story-dock-glass{box-shadow:inset 0 1px #ffffff60}html[data-effects=off] .story-project-surface>div{transition:none}.story-experience h3{font-size:34px;margin:12px 0;line-height:1.12}.story-experience p{max-width:520px}.story-experience strong{display:block;margin-bottom:20px;font-size:16px}.story-date{color:#d0e5ff;font-size:14px}.story-education h3{font-size:clamp(23px,2.3vw,30px)}.story-education h3 span{color:#b3d7ff}.story-recognition{position:relative;padding:110px 7vw;background:#0a1225;color:#f5f7ff;overflow:clip;isolation:isolate}.story-recognition-material{position:absolute;inset:0;z-index:-1;pointer-events:none}.story-recognition-material img{position:sticky;top:0;width:100%;height:100svh;object-fit:cover;object-position:center 70%;filter:brightness(.27) saturate(.7)}.story-recognition-heading{position:relative;text-align:center;max-width:900px;margin:0 auto 60px}.story-recognition h2{font-size:clamp(50px,5.8vw,84px);line-height:1.04;margin:0 0 25px}.story-recognition h2 span{color:#b3d7ff}.story-recognition a{display:inline-flex;align-items:center;gap:24px;min-height:44px;border-bottom:1px solid #a9c9ff70;transition:translate .18s ease}.story-recognition h3{font-size:22px;margin:0 0 35px}.story-recognition-content{min-width:0;position:relative}.story-awards{display:grid;grid-template-columns:1.15fr 1fr;align-items:start;gap:28px}.story-awards>.story-arrival:nth-child(2){margin-top:80px}.story-award-surface{padding:36px;border-radius:36px}.story-award-event{color:#c6d6ed;font-size:15px}.story-award-result{font-size:clamp(64px,6.5vw,96px);line-height:1;letter-spacing:-.04em;margin:32px 0}.story-award-result span{font-size:18px;display:block;letter-spacing:0;margin-top:12px;color:#b3d7ff}.story-award-surface h4{font-size:27px;margin:0 0 16px}.story-award-surface>p:not(.story-award-result){max-width:48ch}.story-certificates{margin-top:70px;scroll-margin-top:100px}.story-certificates ul{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px;list-style:none;margin:0 0 30px;padding:0}.story-certificates li{grid-column:span 2;min-width:0}.story-certificates li:nth-child(-n+2){grid-column:span 3}.story-credential-surface{padding:25px;min-height:218px;border-radius:30px;display:grid;grid-template-columns:minmax(0,1fr) 92px;column-gap:16px;align-content:start}.story-certificates p{display:flex;justify-content:space-between;gap:14px;color:#b3c9e5;font-size:14px}.story-certificates .story-credential-header{grid-column:1/-1;align-items:center;margin:0 0 18px;min-height:34px}.story-credential-issuer{display:flex;align-items:center;gap:14px;min-width:0}.story-issuer-logo{display:block;flex:none;width:32px;height:32px;overflow:hidden}.story-issuer-logo img{display:block;height:32px;width:auto;max-width:none}.story-issuer-logo--aws{width:46px;height:32px;overflow:visible}.story-issuer-logo--aws img{width:46px;height:32px;object-fit:contain}.story-certificates h4{grid-column:1;font-size:22px;line-height:1.25;margin:4px 0 12px}.story-credential-surface>span{grid-column:1;color:#c6d6ed;font-size:14px}.story-credential-badge{grid-column:2;grid-row:2/4;width:92px;height:100px;object-fit:contain;align-self:center}@media(max-width:1100px){.story-credential-surface{grid-template-columns:minmax(0,1fr) 76px;column-gap:12px}.story-credential-badge{width:76px;height:88px}}@media(max-width:370px){.story-credential-surface{grid-template-columns:minmax(0,1fr)}.story-credential-badge{grid-column:1;grid-row:auto;width:84px;height:94px;margin-top:18px}}.story-contact{position:relative;min-height:max(760px,100svh);display:flex;flex-direction:column;justify-content:center;overflow:hidden}.story-contact-material{position:absolute;inset:0}.story-contact-tone-map{position:absolute;pointer-events:none}.story-contact-material,.story-contact-ripple{filter:url(#story-sea-highlights)}.story-contact-material>img{width:100%;height:100%;object-fit:cover;filter:brightness(.85)}.story-contact-lens{position:absolute;z-index:1;inset:15% 12% 25%;border-radius:40px}.story-contact-lens canvas{max-width:none}.story-contact-ripple{position:absolute!important;inset:15% 12% 25%;z-index:1!important;border-radius:40px;overflow:hidden;pointer-events:none;opacity:0;background-size:100% 100%;background-position:center;clip-path:inset(3px round 37px);mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent),linear-gradient(0deg,transparent,#000 24px,#000 calc(100% - 24px),transparent);mask-composite:intersect}.story-contact-ripple>canvas{z-index:0!important}.story-contact-content{position:relative;flex:1;display:flex;flex-direction:column;justify-content:center;padding:130px 16vw;z-index:2;pointer-events:none;text-align:center}.story-contact-content .story-profile-links{justify-content:center}.story-contact-content>p{font-size:18px}.story-contact h2{font-size:clamp(64px,10vw,150px);line-height:1;margin:24px 0 36px}.story-profile-links{display:flex;gap:20px;pointer-events:auto}.story-profile-links a{border-bottom:1px solid #fff8;display:flex;align-items:center;justify-content:space-between;gap:40px;padding:8px 0;min-width:175px;font-size:18px}.story-profile-links a{transition:translate .18s var(--sc-ease-out),color .18s}.story-profile-links a:hover{color:#c7e0ff}.story-footer{margin:0;padding:30px 7vw;position:relative;z-index:3;width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:24px;font-size:14px;color:#d9e8fb;border:0}.story-footer-socials{display:flex;align-items:center;gap:4px;padding:0}.story-footer-socials a{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;height:44px;padding:0;border-radius:8px;font:inherit;color:inherit}.story-footer-socials a:last-child{color:inherit}.story-footer-socials img{display:block;width:22px;height:22px;object-fit:contain;filter:brightness(0) invert(1);opacity:.85}.story-footer-socials [data-profile=kaggle] img{width:24px;height:24px}.story-footer-socials [data-profile=medium] img{width:30px;height:30px}.story-footer-socials a:hover img,.story-footer-socials a:focus-visible img{opacity:1}.story-footer>span{white-space:nowrap}.story-footer-toggle{justify-self:end;display:inline-flex;align-items:center;gap:12px;border:0;padding:8px 0;color:inherit;background:transparent;font:inherit}.story-footer-toggle:hover{color:#fff;text-decoration:underline;text-underline-offset:5px}.story-footer-toggle[aria-expanded=true] svg{rotate:180deg}html[data-variant=favourites][data-effects=off] .story-page .glass{background:#152642!important}html[data-variant=favourites][data-effects=off] .story-project-track{width:auto;display:grid;grid-template-columns:1fr 1fr;transform:none!important}html[data-variant=favourites][data-effects=off] .story-project{width:auto;transform:none}html[data-variant=favourites][data-effects=off] [data-sc-in]{opacity:1;transform:none}html[data-variant=favourites][data-effects=off] .story-contact-content[data-sc-stagger]>*{opacity:1;transform:none}html[data-variant=favourites][data-effects=off] .story-navigation{--c-content:#222244;--nav-active-ink:#2f6795;display:flex;width:min(430px,calc(100vw - 28px));background:#e8e8e9;padding:5px 4px;backdrop-filter:none;-webkit-backdrop-filter:none}html[data-variant=favourites][data-effects=off] .story-navigation>a{flex:1;display:flex;align-items:center;justify-content:center;font-size:13px;white-space:nowrap;color:#224}html[data-variant=favourites][data-effects=off] .story-navigation:not([data-preview])>a[aria-current=location],html[data-variant=favourites][data-effects=off] .story-navigation>a[data-nav-preview]{color:var(--nav-active-ink)}html[data-variant=favourites][data-effects=off] .story-navigation:after{animation:none;transition:none}html[data-variant=favourites][data-effects=off] .story-navigation>a>span{transition:none}html[data-variant=favourites][data-effects=off] .story-contact-lens{background:#152642}@media(hover:hover)and (pointer:fine){html[data-effects=on] .story-profile-links a:hover{translate:0 -5px}html[data-effects=on] .story-profile-links a:hover span{transform:translate(3px,-3px)}html[data-effects=on] .story-project summary:hover span{transform:rotate(90deg)}html[data-effects=on] .story-project summary:hover:before{scale:1.025;background-color:#ffffff13}}html[data-effects=on] .story-project summary:active:before{scale:.99}.story-page .petr-action button:hover{transform:none}.story-page .petr-action .button-wrap:has(button:active){transform:none;translate:0 1px}html[data-effects=off] .story-project summary{transition:none}html[data-effects=off] .story-profile-links a span,html[data-effects=off] .story-project summary span{transition:none;transform:none;scale:none;translate:none}@media(max-width:1100px){.story-project{width:64vw}}@media(min-width:761px)and (max-width:1100px){.story-intention{padding:90px 7vw 110px;grid-template-columns:1fr;gap:48px}.story-intention>[data-sc-in]{text-align:left;max-width:460px}.story-portrait{width:100%;max-width:440px;justify-self:center;translate:clamp(72px,10.5vw,116px) 0}.story-intention h2{font-size:46px}.story-intention p{font-size:17px}}@media(max-width:760px){html[data-variant=favourites]{scroll-padding-bottom:calc(110px + env(safe-area-inset-bottom))}.story-header{top:auto;bottom:calc(14px + env(safe-area-inset-bottom));left:50%;right:auto;translate:-50% 0}.story-navigation{width:min(350px,calc(100vw - 28px))}.story-navigation>a{font-size:12px;letter-spacing:-.02em;white-space:nowrap}.story-hero>[data-sc-stage]{min-height:max(740px,100svh)}.story-hero,.story-work{height:auto!important}.story-hero>[data-sc-stage],.story-work>[data-sc-stage]{position:relative!important}.story-hero-copy{transform:none!important}.story-hero-copy{width:100%;padding:126px 7vw 0}.story-page .story-hero h1{font-size:clamp(58px,16vw,84px)}.story-hero-name{margin-bottom:22px}.story-hero-name .story-alias{position:static;margin-top:8px;text-align:right;translate:8px 0}.story-primary{margin-top:26px}.story-hero-copy>p:not(.story-byline){font-size:17px}.story-material-plane{inset:0;transform:none}.story-material{mask-image:linear-gradient(180deg,transparent,#000 18%)}.story-intro-water{inset:-40px 0 0;width:auto;translate:none;mask-image:linear-gradient(180deg,transparent,#000 25%,#000)}.story-lens-home{right:50%;translate:50% 0;top:clamp(350px,39svh,510px);bottom:auto}.story-lens-invitation{font-size:28px}.story-intention{padding:90px 7vw 110px;grid-template-columns:1fr;gap:48px}.story-intention>[data-sc-in]{text-align:left;max-width:460px}.story-portrait{width:min(254px,60vw);max-width:none;translate:clamp(56px,14vw,64px) 0;justify-self:center}.story-portrait-controls{font-size:14px;gap:8px}.story-intention h2{font-size:46px}.story-intention p{font-size:17px}.story-work>[data-sc-stage]{min-height:0;height:auto}.story-work-logo-stage{position:relative;height:100%}.story-work-heading{padding:70px 7vw 30px;display:block}.story-work-heading h2{font-size:44px}.story-work-heading>p{margin-top:20px}.story-project-track{width:auto;display:flex;flex-direction:column;padding:10px 5vw 80px;gap:25px;transform:none!important}.story-project{width:100%;transform:none;translate:none}.story-project-surface{padding:22px;min-height:480px}.story-project-detail-content{padding:20px 24px 28px}.story-project h3{font-size:32px;margin-top:75px}.story-project-symbol{font-size:90px}.story-project-heading{max-width:100%;font-size:14px}.story-about{padding:90px 7vw 70px}.story-about h2{font-size:49px}.story-about-intro>p:last-child{font-size:17px}.story-rain{mask-image:linear-gradient(90deg,#0005,#000)}.story-about:before{background:#080d1b88}.story-experience-surface{padding:25px}.story-career-layout{grid-template-columns:1fr;margin-top:65px;gap:35px}.story-career-heading{position:static;order:0;font-size:32px}.story-experience{gap:20px}.story-experience h3{font-size:30px}.story-recognition{padding:80px 7vw}.story-recognition-heading{position:static}.story-recognition h2{font-size:52px}.story-award-surface{padding:24px}.story-awards{grid-template-columns:1fr;gap:24px}.story-awards>.story-arrival:nth-child(2){margin-top:0}.story-certificates ul{grid-template-columns:1fr}.story-certificates li,.story-certificates li:nth-child(-n+2){grid-column:auto}.story-credential-surface{padding:22px;min-height:0}.story-certificates h4{font-size:22px}.story-contact{min-height:max(650px,100svh);padding-bottom:110px}.story-contact-content{padding:110px 10vw 70px}.story-contact h2{font-size:64px}.story-contact-lens,.story-contact-ripple{inset:10% 5% calc(33% + 32px)}.story-profile-links{flex-direction:column;align-items:center;gap:16px}.story-profile-links a{font-size:17px;min-width:190px}.story-footer{grid-template-columns:1fr;gap:12px;text-align:center}.story-footer-socials{justify-content:center;gap:8px}.story-page .story-footer>span{order:initial;flex-basis:auto}.story-footer-toggle{justify-self:center}html[data-variant=favourites][data-effects=off] .story-project-track{grid-template-columns:1fr}}@media(min-width:761px)and (max-height:850px){.story-work-heading{padding-top:95px;padding-bottom:18px}.story-work-heading h2{font-size:42px}.story-project-surface{min-height:460px}.story-project h3{margin-top:48px;font-size:34px}.story-project-track{padding-bottom:28px}.story-hero-copy{padding-top:108px}.story-page .story-hero h1{font-size:clamp(64px,7.4vw,96px)}.story-hero>[data-sc-stage]{min-height:max(720px,100svh)}}@media(min-width:2000px){.story-intention{max-width:min(88vw,2640px);padding-inline:clamp(80px,4vw,160px);grid-template-columns:minmax(440px,1fr) minmax(620px,1fr);gap:clamp(120px,8vw,240px)}.story-intention>[data-sc-in]{max-width:720px}.story-intention h2{font-size:clamp(60px,3vw,88px)}.story-portrait{width:min(680px,50svh);max-width:none}.story-portrait figcaption{font-size:14px}.story-work{--wide-project-width:clamp(620px,22vw,780px)}.story-work-heading{padding-top:clamp(105px,10svh,170px)}.story-work-heading h2{font-size:72px}html[data-effects=on] .story-project-track{padding-inline:calc((100vw - var(--wide-project-width)) / 2);padding-top:clamp(10px,8svh,110px);gap:clamp(30px,1.5vw,64px)}html[data-effects=on] .story-project{width:var(--wide-project-width)}.story-project-surface{min-height:clamp(500px,42svh,620px)}.story-about{padding-inline:max(8vw,calc((100% - 1900px)/2))}.story-career-layout{grid-template-columns:1.2fr .8fr;gap:clamp(60px,5vw,160px)}.story-recognition{padding-inline:max(7vw,calc((100% - 1880px)/2))}.story-contact-lens,.story-contact-ripple{inset-inline:max(12%,calc((100% - 1800px)/2))}.story-footer{max-width:2140px;padding-inline:80px;margin-inline:auto}html[data-effects=off] .story-project-track{max-width:2060px;margin-inline:auto;padding-inline:80px}}.story-page .story-portrait-stage{width:150%;margin-left:-50%;aspect-ratio:9/7;border-radius:0;background:#080d1b;touch-action:pan-y}.story-page .story-portrait-stage>img{left:33.33333%;width:66.66667%;height:100%;border-radius:6.25%/5.35714%}.story-page .story-portrait-instruction{left:calc(33.33333% + 16px);right:16px;bottom:16px;font-size:12px}.story-intention{position:relative;overflow:clip}.story-portrait-overlay{position:absolute;inset:0;z-index:5;pointer-events:none}.story-portrait-overlay[data-disabled=true]{visibility:hidden}.story-portrait-lens-handle{position:absolute;top:0;left:0;width:204px;height:204px;cursor:grab;touch-action:none;user-select:none;pointer-events:auto;background:transparent;border:0;box-shadow:none}.story-portrait-overlay[data-lens-state=dragging] .story-portrait-lens-handle{cursor:grabbing}.story-portrait-glass{position:absolute;inset:0;border-radius:inherit;pointer-events:none;border:0}.story-page .story-portrait-stage>.story-portrait-original{filter:none;clip-path:inset(50%);pointer-events:none}.story-portrait-stage[data-reveal=original] .story-portrait-original{visibility:hidden}.story-page .story-portrait-stage[data-portrait-status=fallback],html[data-effects=off] .story-page .story-portrait-stage{aspect-ratio:6/7;width:100%;margin-left:0}.story-page .story-portrait-stage[data-portrait-status=fallback]>img,html[data-effects=off] .story-page .story-portrait-stage>img{height:100%;width:100%;left:0}.story-page .story-portrait-stage[data-portrait-status=fallback] .story-portrait-instruction,html[data-effects=off] .story-page .story-portrait-instruction{left:16px;top:auto;bottom:20px}@media(max-width:760px){.story-page .story-portrait-instruction{left:calc(33.33333% + 8px);right:8px;bottom:8px;padding:7px;font-size:10px}}.story-portrait-hint{position:absolute;left:-18px;top:16%;width:33.3333%;display:flex;flex-direction:column;align-items:center;color:#d5d9df;pointer-events:none;filter:url(#portrait-pencil);transform:translateY(calc(var(--portrait-hint-shift,0px) + 14px))}.story-portrait-hint span{font:400 clamp(28px,3.4vw,38px)/.82 "Reenie Beanie",cursive;rotate:-8deg}.story-portrait-hint svg{width:75%;height:auto;max-height:136px;margin-top:6px;overflow:visible}.story-portrait-hint path{stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}.story-portrait-hint .portrait-arrow-small,.story-portrait-hint[hidden]{display:none}@media(max-width:760px){.story-portrait-hint span{font-size:28px}.story-portrait-hint svg{width:66%;height:max(40px,calc(34vw - 64px));max-height:72px}.story-portrait-hint .portrait-arrow-wide{display:none}.story-portrait-hint .portrait-arrow-small{display:block}}@media(min-width:761px){.story-portrait-hint span{translate:-12px 0}}@media(min-width:761px)and (max-width:1100px){.story-portrait-hint span{font-size:clamp(32px,3.4vw,38px)}}@media(min-width:2000px){.story-portrait-hint{top:auto;bottom:calc(var(--portrait-lens-size,228px) + 32px);transform:none}}.story-portrait-stage[data-reveal=original] .story-portrait-hint,.story-portrait-stage[data-portrait-status=fallback] .story-portrait-hint,html[data-effects=off] .story-portrait-hint{display:none}@font-face{font-family:Reenie Beanie;src:url(/portfolio/assets/ReenieBeanie-latin.woff) format("woff");font-style:normal;font-weight:400;font-display:swap;unicode-range:U+0020-007E}.recognition-motion{min-width:0}.recognition-motion__hover-plane,.recognition-motion__entrance,.recognition-motion__reduced{min-width:0;height:100%}.recognition-motion__entrance{transform-origin:50% 70%}.recognition-motion__entrance[data-motion-state=entering]{will-change:transform}.recognition-motion--award .story-award-surface,.recognition-motion--credential .story-credential-surface{height:100%}@media(hover:hover)and (pointer:fine){.recognition-motion .story-award-event,.recognition-motion .story-award-result,.recognition-motion .story-award-surface h4,.recognition-motion .story-credential-surface>p,.recognition-motion .story-credential-surface>h4,.recognition-motion a,.recognition-motion a span{transition:color .22s ease,opacity .22s ease,translate .36s cubic-bezier(.16,1,.3,1)}.recognition-motion--award:hover .story-award-event{translate:6px 0}.recognition-motion--award:hover .story-award-result{translate:8px -4px}.recognition-motion--award:hover .story-award-surface h4,.recognition-motion--credential:hover .story-credential-surface>h4{translate:5px -3px}.recognition-motion--credential:hover .story-credential-surface>p{translate:3px 0}.recognition-motion:hover a{translate:4px 0}.recognition-motion:hover a span{translate:3px -3px}}@media(prefers-reduced-motion:reduce){.recognition-motion *,.recognition-motion *:before,.recognition-motion *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.site-notes{position:relative;z-index:0;overflow:hidden;overflow-anchor:none;background:var(--page);color:var(--ink)}.story-contact{z-index:1}.site-notes[hidden]{display:none}.site-notes-inner{max-width:1240px;padding:96px 48px 56px;margin:auto}.site-notes-heading{position:relative;display:grid;grid-template-columns:1.15fr 1fr;gap:64px;align-items:start;padding-bottom:64px}.story-page .site-notes h2{font-size:clamp(56px,6.5vw,88px);line-height:1;letter-spacing:-.04em;scroll-margin-top:28px}.site-notes h2 span{color:var(--accent)}.site-notes-intro{max-width:38ch;padding-right:24px}.site-notes-intro p{font-size:19px;line-height:1.6}.site-notes-intro p+p{color:var(--muted);font-size:16px;margin-top:16px}.site-notes button{background:transparent;border:0;padding:8px 0;display:inline-flex;align-items:center;gap:12px;font:inherit;color:var(--muted)}.site-notes button:hover{color:var(--ink)}.site-notes a:not(.site-notes-photos a){text-decoration:underline;text-decoration-color:#a9cbff70;text-underline-offset:4px}.site-notes a:hover{color:var(--accent);text-decoration-color:currentColor}.site-notes-tools article{display:grid;grid-template-columns:1fr 1.8fr;gap:48px;padding:32px 0;border-top:1px solid #465c8066}.story-page .site-notes h3{font-size:26px;line-height:1.2;letter-spacing:-.025em}.site-notes-tools p{max-width:68ch}.site-notes-tools .site-notes-credit{margin-top:12px;color:var(--muted);font-size:15px;line-height:1.7}.site-notes-photos{margin-top:56px}.site-notes-photo-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:24px}.site-notes-photo-heading p{color:var(--muted);font-size:15px}.site-notes-photos ul{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;list-style:none;margin:0;padding:0}.site-notes-photos a{display:block}.site-notes-photos img{width:100%;height:auto;aspect-ratio:16/11;object-fit:cover;border-radius:12px;margin-bottom:12px}.site-notes-photos li:first-child img{filter:grayscale(1)}.site-notes-photos span{display:block;font-size:15px;font-weight:600}.site-notes-photos small{display:block;color:var(--muted);font-size:13px;margin-top:4px}.site-notes-photo-note{color:var(--muted);font-size:14px;max-width:78ch;margin-top:24px}.site-notes-licences{border-block:1px solid #465c8066;margin-top:48px;font-size:15px}.site-notes-licences summary{display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer;padding:20px 0;list-style:none}.site-notes-licences summary::-webkit-details-marker{display:none}.site-notes-licences[open] summary svg{rotate:180deg}.site-notes-licence-body{max-width:76ch;padding:0 0 28px;color:var(--muted)}.site-notes-licence-body ul{padding-left:20px;margin:20px 0}.site-notes-licence-body li+li{margin-top:16px}.site-notes-licence-body strong{color:var(--ink)}.site-notes-end{margin-top:32px;display:flex;align-items:center;justify-content:space-between;gap:24px}.site-notes-end p{font:30px/1.1 Reenie Beanie,cursive;color:var(--accent)}.site-notes-end button{font-size:14px}.site-notes-end svg{rotate:180deg}@media(max-width:760px){.site-notes-inner{padding:80px 24px 124px}.site-notes-heading{grid-template-columns:1fr;gap:28px;padding-bottom:40px}.site-notes-intro{max-width:44ch;padding:0}.site-notes-intro p{font-size:18px}.site-notes-tools article{grid-template-columns:1fr;gap:16px;padding:28px 0}.site-notes-tools p{font-size:16px}.site-notes-photo-heading{display:block}.site-notes-photo-heading p{margin-top:12px}.site-notes-photos{margin-top:36px}.site-notes-photos ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.site-notes-photos li:last-child{grid-column:1/-1}.site-notes-photos li:last-child img{aspect-ratio:3/1}.site-notes-end{align-items:start;flex-direction:column;gap:16px}}@media(max-width:760px){.story-hero>[data-sc-stage]{min-height:max(960px,100svh)}.story-hero .story-lens-home{position:relative;inset:auto;translate:none;margin:clamp(18px,3svh,30px) auto 0}}
