@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Serif Display Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-serif-display-cyrillic-ext-wght-normal-H0EkCrRc.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Noto Serif Display Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-serif-display-cyrillic-wght-normal-BkRNFNOU.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Noto Serif Display Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-serif-display-greek-ext-wght-normal-C8BmqigA.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Noto Serif Display Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-serif-display-greek-wght-normal-fF26NVkV.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Noto Serif Display Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-serif-display-vietnamese-wght-normal-BF64gvp4.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Noto Serif Display Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-serif-display-latin-ext-wght-normal-DZej46sE.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Serif Display Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/noto-serif-display-latin-wght-normal-DZCd2g7q.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Mynerve;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/mynerve-greek-400-normal-DMLBeL6h.woff2)format("woff2"),url(/assets/mynerve-greek-400-normal-B2BIqoDT.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Mynerve;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/mynerve-vietnamese-400-normal-CEjR_8vK.woff2)format("woff2"),url(/assets/mynerve-vietnamese-400-normal-Cum-0I-D.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Mynerve;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/mynerve-latin-ext-400-normal-DmRtTBc2.woff2)format("woff2"),url(/assets/mynerve-latin-ext-400-normal-KldZl5zq.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Mynerve;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/mynerve-latin-400-normal-DRcN-1LR.woff2)format("woff2"),url(/assets/mynerve-latin-400-normal-Dm4UbVdI.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--petrol:#0e3036;--petrol-2:#154650;--petrol-3:#0a2429;--violet:#3b215c;--violet-2:#4c2c76;--paper:#f6f5f1;--paper-2:#edebe4;--white:#fff;--ink:#0e3036;--ink-2:#3e5557;--ink-3:#62777a;--mint:#8ee3cf;--mint-ink:#17705c;--mint-soft:#d9f5ec;--lilac:#c9b8ff;--lilac-ink:#5b3e96;--line:#0e30361f;--line-strong:#0e303647;--line-light:#f6f5f12e;--focus:#17705c;--font-display:"Noto Serif Display Variable", "Noto Serif Display", Georgia, "Times New Roman", serif;--font-body:"Manrope Variable", "Manrope", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--fs-display:clamp(2.9rem, 1.7rem + 5vw, 6.4rem);--fs-h1:clamp(2.4rem, 1.6rem + 3vw, 4.25rem);--fs-h2:clamp(1.85rem, 1.35rem + 1.7vw, 2.9rem);--fs-h3:clamp(1.25rem, 1.1rem + .5vw, 1.55rem);--fs-lead:clamp(1.15rem, 1.05rem + .5vw, 1.45rem);--fs-body:1.0625rem;--fs-kicker:.78rem;--gutter:clamp(1rem, 4vw, 3rem);--container:76rem;--space-section:clamp(4.5rem, 5vw + 2rem, 8rem);--radius:1.25rem;--radius-lg:1.75rem;--pill:999px;--header-h:4.5rem;--shadow:0 1px 2px #0e30360d, 0 18px 40px -20px #0e30364d;--ease:cubic-bezier(.2, .7, .2, 1);--dot-ink:var(--petrol);--dot-violet:var(--violet);--dot-mint:var(--mint-ink);--dot-lilac:var(--lilac-ink)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 1rem)}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.6;overflow-x:clip}img,svg{max-width:100%;display:block}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.015em;text-wrap:balance;margin:0;font-weight:500;line-height:1.08}p{margin:0}a{color:inherit}button{font:inherit;color:inherit}ul,ol{margin:0}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:4px}.main:focus{outline:none}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.container{width:min(100% - 2 * var(--gutter), var(--container));margin-inline-start:auto;margin-inline-end:auto}.skip-link{z-index:100;background:var(--petrol);color:var(--paper);border-radius:0 0 .6rem .6rem;padding:.75rem 1rem;font-weight:700;text-decoration:none;position:absolute;top:-100px;left:1rem}.skip-link:focus{top:0}.kicker{font-size:var(--fs-kicker);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);align-items:center;gap:.6rem;margin-bottom:1.1rem;font-weight:700;display:inline-flex}.kicker:before{content:"";background:var(--mint-ink);border-radius:50%;flex:none;width:.5rem;height:.5rem}.kicker--light{color:#f6f5f1c7}.kicker--light:before{background:var(--mint)}.lead{font-size:var(--fs-lead);color:var(--ink-2);max-width:60ch;line-height:1.45}.h2{font-size:var(--fs-h2)}.h3{font-size:var(--fs-h3)}.accent{color:var(--mint-ink)}.section{padding-block:var(--space-section)}.section--tint{background:var(--paper-2)}.section--petrol{background:var(--petrol);color:var(--paper);--focus:var(--mint)}.section-head{max-width:46rem;margin-bottom:clamp(2rem,4vw,3.5rem)}.section-head h2{font-size:var(--fs-h2)}.section-head p:not(.kicker){color:var(--ink-2);margin-top:1rem;font-size:1.1rem}.section--petrol .section-head h2,.method .section-head h2{color:var(--paper)}.section--petrol .section-head p:not(.kicker),.method .section-head p:not(.kicker){color:#f6f5f1bf}.prose{color:var(--ink-2);gap:1.1rem;max-width:66ch;font-size:1.08rem;line-height:1.72;display:grid}.btn{border-radius:var(--pill);cursor:pointer;text-align:center;transition:transform .25s var(--ease), background-color .25s, color .25s, border-color .25s, box-shadow .25s;border:1.5px solid #0000;justify-content:center;align-items:center;gap:.55rem;padding:.85rem 1.35rem;font-size:.95rem;font-weight:700;line-height:1.1;text-decoration:none;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn svg{width:1.05em;height:1.05em;transition:transform .25s var(--ease);flex:none}.btn:hover .icon-arrow{transform:translate(3px)}.btn--primary{background:var(--petrol);color:var(--paper)}.btn--primary:hover{background:var(--petrol-2);box-shadow:var(--shadow)}.btn--ghost{color:var(--petrol);border-color:var(--line-strong);background:0 0}.btn--ghost:hover{border-color:var(--petrol);background:#0e30360a}.btn--light{background:var(--paper);color:var(--petrol)}.btn--light:hover{background:var(--white)}.btn--mint{background:var(--mint);color:var(--petrol)}.btn--mint:hover{background:#a5ecdc}.btn--outline-light{color:var(--paper);background:0 0;border-color:#f6f5f16b}.btn--outline-light:hover{border-color:var(--paper);background:#f6f5f114}.btn--lg{padding:1.05rem 1.6rem;font-size:1.02rem}.btn--sm{padding:.65rem 1.05rem;font-size:.88rem}.textlink{color:var(--petrol);border-bottom:1.5px solid var(--line-strong);align-items:center;gap:.4rem;padding-bottom:.15rem;font-weight:700;text-decoration:none;transition:border-color .2s;display:inline-flex}.textlink:hover{border-color:var(--petrol)}.textlink svg{width:1em;height:1em;transition:transform .25s var(--ease)}.textlink:hover svg{transform:translate(3px)}.textlink--light{color:var(--paper);border-color:#f6f5f159}.textlink--light:hover{border-color:var(--paper)}.header{z-index:50;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#f6f5f1db;position:sticky;top:0}.header__inner{min-height:var(--header-h);justify-content:space-between;align-items:center;gap:1.25rem;display:flex}.brand{color:var(--petrol);align-items:center;gap:.7rem;min-width:0;text-decoration:none;display:inline-flex}.brand__name{font-family:var(--font-display);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-size:1.2rem;font-weight:600;overflow:hidden}.brand-mark{flex:none;width:1.7rem;height:1.7rem}.nav{display:none}.nav__list{gap:.15rem;margin:0;padding:0;list-style:none;display:flex}.nav__link{border-radius:var(--pill);color:var(--ink-2);padding:.55rem .85rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:color .2s,background-color .2s;display:inline-block}.nav__link:hover{color:var(--petrol);background:#0e30360d}.nav__link[aria-current=page]{color:var(--petrol);background:#0e303614}.header__actions{align-items:center;gap:.6rem;display:flex}.header__cta{display:none}.lang{border:1px solid var(--line);border-radius:var(--pill);background:#fff6;gap:.1rem;padding:.2rem;display:inline-flex}.lang__link{letter-spacing:.06em;border-radius:var(--pill);color:var(--ink-2);padding:.42rem .65rem;font-size:.78rem;font-weight:700;line-height:1;text-decoration:none;transition:background-color .2s,color .2s}.lang__link.is-active{background:var(--petrol);color:var(--paper)}.lang__link:not(.is-active):hover{color:var(--petrol);background:#0e30360f}.menu-toggle{border:1px solid var(--line);border-radius:var(--pill);cursor:pointer;color:var(--petrol);white-space:nowrap;background:0 0;align-items:center;gap:.5rem;padding:.55rem .9rem;font-size:.85rem;font-weight:700;display:inline-flex}.menu-toggle__icon{flex-direction:column;gap:.3rem;width:1.05rem;display:flex}.menu-toggle__icon span{height:2px;transition:transform .25s var(--ease);background:currentColor;border-radius:2px}.menu-toggle[aria-expanded=true] .menu-toggle__icon span:first-child{transform:translateY(.25rem)rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-toggle__icon span:last-child{transform:translateY(-.25rem)rotate(-45deg)}.mobile-menu{inset:var(--header-h) 0 0 0;z-index:49;background:var(--paper);padding:1rem var(--gutter) 2rem;flex-direction:column;justify-content:space-between;gap:2rem;display:flex;position:fixed;overflow-y:auto}.mobile-menu[hidden]{display:none}.mobile-menu__list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.mobile-menu__link{font-family:var(--font-display);color:var(--petrol);border-bottom:1px solid var(--line);padding:1rem 0;font-size:2rem;text-decoration:none;display:block}.mobile-menu__link[aria-current=page]{color:var(--mint-ink)}.mobile-menu__footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}@media (min-width:62rem){.nav{display:block}.header__cta{display:inline-flex}.menu-toggle,.mobile-menu{display:none!important}}@media (max-width:36rem){.brand__name{font-size:1.05rem}.header__lang{display:none}.menu-toggle{padding:.6rem .7rem}.menu-toggle__label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.motif{--p:0;width:100%;height:auto;display:block;overflow:visible}.motif__dot{fill:var(--dot-ink);transform:translate(calc(var(--sx) + (var(--rx) - var(--sx)) * var(--p)), calc(var(--sy) + (var(--ry) - var(--sy)) * var(--p)))}.motif.is-intro .motif__dot{transition:transform 1.5s var(--ease)}.motif__dot--violet{fill:var(--dot-violet)}.motif__dot--mint{fill:var(--dot-mint)}.motif__dot--lilac{fill:var(--dot-lilac)}.reveal--pending{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);transition-delay:var(--reveal-delay,0s);transform:translateY(18px)}.reveal--pending.is-visible{opacity:1;transform:none}.hero{padding-block-start:clamp(2.5rem,6vw,6rem);padding-block-end:clamp(2.5rem,5vw,5rem);position:relative;overflow:hidden}.hero__grid{align-items:center;gap:2.5rem;display:grid}.hero__title{font-size:var(--fs-display);letter-spacing:-.03em;color:var(--petrol);margin:0 0 1.4rem;font-weight:500;line-height:.98}.hero__lead{font-size:var(--fs-lead);color:var(--petrol);max-width:32ch;font-weight:600;line-height:1.4}.hero__body{color:var(--ink-2);max-width:52ch;margin-top:1rem;font-size:1.05rem}.hero__actions{flex-wrap:wrap;gap:.75rem;margin-top:2rem;display:flex}.hero__visual{aspect-ratio:1;width:min(100%,22rem);margin-inline-start:auto;margin-inline-end:auto;position:relative}.hero__motif{width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.hero__portrait{object-fit:cover;border-radius:var(--radius-lg);width:72%;height:80%;box-shadow:var(--shadow);position:absolute;top:10%;bottom:10%;left:14%;right:14%}.hero__hint{color:var(--ink-3);align-items:center;gap:.5rem;font-size:.8rem;display:flex;position:absolute;bottom:-1.75rem;left:0}.hero__hint-dot{background:var(--mint-ink);width:.45rem;height:.45rem;animation:hint 2.4s var(--ease) infinite;border-radius:50%}@keyframes hint{0%,to{opacity:1;transform:translate(0)}50%{opacity:.4;transform:translate(.6rem)}}@media (min-width:56rem){.hero__grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:3rem}.hero__visual{width:100%;max-width:34rem}}.proof{background:var(--petrol);color:var(--paper);--focus:var(--mint);padding-block-start:clamp(3.5rem,5vw,5.5rem);padding-block-end:clamp(3.5rem,5vw,5.5rem)}.proof__grid{gap:2.5rem;display:grid}.proof__title{font-size:var(--fs-h2);color:var(--paper)}.proof__text{color:#f6f5f1b8;max-width:38ch;margin-top:1rem}.metrics{border-top:1px solid var(--line-light);border-left:1px solid var(--line-light);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.metric{border-right:1px solid var(--line-light);border-bottom:1px solid var(--line-light);padding:1.5rem 1.25rem}.metric__value{font-family:var(--font-display);color:var(--mint);letter-spacing:-.02em;font-size:clamp(2.4rem,2rem + 1.5vw,3.6rem);font-weight:400;line-height:1;display:block}.metric__label{color:#f6f5f1d1;margin-top:.6rem;font-size:.92rem;line-height:1.35;display:block}@media (min-width:40rem){.metrics{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:56rem){.proof__grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:4rem}}.services{padding-block:var(--space-section)}.services__grid{gap:1.25rem;display:grid}.service{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);transition:transform .3s var(--ease), box-shadow .3s, border-color .3s;flex-direction:column;padding:clamp(1.5rem,2.5vw,2.25rem);display:flex;position:relative}.reveal--pending.service{transition:opacity .7s var(--ease), transform .7s var(--ease), box-shadow .3s, border-color .3s}.service:hover{box-shadow:var(--shadow);border-color:#17705c73;transform:translateY(-4px)}.service__index{font-family:var(--font-display);color:var(--mint-ink);letter-spacing:.05em;align-items:center;gap:.75rem;margin-bottom:1.25rem;font-size:.95rem;display:flex}.service__index:after{content:"";background:var(--line);flex:1;height:1px}.service__title{font-size:var(--fs-h3);margin-bottom:.75rem}.service__summary{color:var(--ink-2)}.service__details{border-top:1px solid var(--line);gap:1rem;margin:1.5rem 0 0;padding:1.25rem 0 0;display:grid}.service__details dt{font-size:var(--fs-kicker);letter-spacing:.1em;text-transform:uppercase;color:var(--mint-ink);margin-bottom:.25rem;font-weight:700}.service__details dd{color:var(--ink-2);margin:0;font-size:.95rem;line-height:1.55}.service__link{align-self:flex-start;margin-top:auto;padding-top:1.5rem}@media (min-width:60rem){.services__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.method{background:var(--violet);color:var(--paper);padding-block:var(--space-section);--dot-ink:#f6f5f180;--dot-violet:var(--lilac);--dot-mint:var(--mint);--dot-lilac:var(--lilac);--focus:var(--mint)}.method .kicker{color:#f6f5f1bf}.method .kicker:before{background:var(--lilac)}.method__steps{gap:1rem;margin:0;padding:0;list-style:none;display:grid}.method-step{border-radius:var(--radius-lg);background:#f6f5f10f;border:1px solid #f6f5f124;padding:1.5rem;transition:background-color .3s,border-color .3s;position:relative}.method-step:hover{background:#f6f5f11a;border-color:#c9b8ff80}.method-step .motif{width:5.5rem;height:5.5rem;margin-bottom:1.25rem}.method-step:hover .motif{--p:1}.method-step__num{font-family:var(--font-display);color:var(--lilac);font-size:.95rem;position:absolute;top:1.35rem;right:1.35rem}.method-step__name{color:var(--paper);font-size:1.6rem}.method-step__q{font-family:var(--font-display);color:var(--lilac);margin-top:.35rem;font-size:1.08rem;font-style:italic}.method-step__text{color:#f6f5f1d1;margin-top:.9rem;font-size:.97rem}@media (min-width:40rem){.method__steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:64rem){.method__steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem}.method-step:not(:last-child):after{content:"→";color:var(--lilac);opacity:.9;font-size:1.1rem;position:absolute;top:3.5rem;right:-1.25rem}}.lab{padding-block:var(--space-section);background:var(--paper-2)}.lab__note{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink-2);align-items:flex-start;gap:.6rem;max-width:46rem;margin:-1rem 0 2rem;padding:.9rem 1.1rem;font-size:.93rem;display:flex}.lab__note svg{width:1.2rem;height:1.2rem;color:var(--mint-ink);flex:none;margin-top:.15rem}.lab__grid{gap:1.5rem;display:grid}.lab__form{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);gap:1.6rem;min-width:0;padding:clamp(1.25rem,2.5vw,2rem);display:grid}.chips{border:0;min-width:0;margin:0;padding:0}.chips legend{color:var(--petrol);margin-bottom:.75rem;padding:0;font-size:1rem;font-weight:700}.chips__list{flex-wrap:wrap;gap:.5rem;display:flex}.chip{max-width:100%;display:inline-flex;position:relative}.chip input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.chip span{border-radius:var(--pill);border:1.5px solid var(--line);color:var(--ink-2);cursor:pointer;padding:.55rem .9rem;font-size:.9rem;font-weight:600;line-height:1.3;transition:background-color .2s,color .2s,border-color .2s;display:inline-block}.chip:hover span{border-color:var(--line-strong);color:var(--petrol)}.chip:has(input:checked) span{background:var(--petrol);color:var(--paper);border-color:var(--petrol)}.chip:has(input:focus-visible) span{outline:3px solid var(--focus);outline-offset:2px}.field label{margin-bottom:.5rem;font-weight:700;display:block}.field input{border:1.5px solid var(--line);background:var(--paper);width:100%;font:inherit;color:var(--ink);border-radius:.85rem;padding:.85rem 1rem}.field input::placeholder{color:var(--ink-3)}.field input:focus-visible{border-color:var(--petrol);outline:3px solid var(--focus);outline-offset:2px}.lab__output{background:var(--petrol);color:var(--paper);border-radius:var(--radius-lg);--focus:var(--mint);flex-direction:column;gap:1rem;min-width:0;padding:clamp(1.25rem,2.5vw,2rem);display:flex}.lab__outhead{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.lab__outhead label{font-size:1.05rem;font-weight:700}.lab__hint{color:#f6f5f1b3;font-size:.85rem}.lab__textarea{resize:vertical;width:100%;min-height:22rem;color:var(--paper);font:inherit;background:#f6f5f10f;border:1px solid #f6f5f12e;border-radius:1rem;padding:1rem 1.1rem;font-size:.95rem;line-height:1.55}.lab__textarea:focus-visible{outline:3px solid var(--mint);outline-offset:2px}.lab__edited{color:var(--mint);font-size:.85rem}.lab__actions{flex-wrap:wrap;gap:.75rem;display:flex}.lab__status{color:var(--lilac);min-height:0;font-size:.9rem}.lab__status:empty{display:none}.lab__howto{max-width:46rem;margin-top:2.5rem}.lab__howto h3{margin-bottom:.75rem;font-size:1.3rem}.lab__howto ol{color:var(--ink-2);gap:.4rem;margin:0;padding-left:1.25rem;display:grid}@media (min-width:60rem){.lab__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.lab__output{top:calc(var(--header-h) + 1rem);position:sticky}}.work-preview{padding-block:var(--space-section)}.projects{gap:1.5rem;display:grid}.projects>.reveal{display:grid}.project{border-radius:var(--radius-lg);color:var(--paper);isolation:isolate;--focus:var(--mint);flex-direction:column;gap:1rem;height:100%;padding:clamp(1.5rem,3vw,2.5rem);display:flex;position:relative;overflow:hidden}.project--petrol{background:linear-gradient(160deg, var(--petrol-2), var(--petrol) 60%);--dot-ink:#f6f5f152;--dot-violet:#c9b8ffbf;--dot-mint:var(--mint);--dot-lilac:var(--lilac)}.project--violet{background:linear-gradient(160deg, var(--violet-2), var(--violet) 60%);--dot-ink:#f6f5f152;--dot-violet:#8ee3cfbf;--dot-mint:var(--lilac);--dot-lilac:var(--mint)}.project__motif{opacity:.55;z-index:-1;pointer-events:none;width:55%;height:auto;position:absolute;top:-10%;right:-8%}.project__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.project__head .kicker{margin:0}.project__title{color:var(--paper);font-size:clamp(2rem,1.6rem + 1.5vw,3rem)}.project__title a{color:inherit;text-decoration:none}.project__title a:hover{text-underline-offset:.15em;text-decoration:underline;text-decoration-thickness:2px}.project__subtitle{color:#f6f5f1e0;max-width:36ch;font-size:1.15rem}.project__role{color:#f6f5f1b8;font-size:.9rem}.project__role span{color:#f6f5f1eb;font-weight:700}.project__cr{border-top:1px solid var(--line-light);gap:1rem;margin:.5rem 0 0;padding-top:1.25rem;display:grid}.project__cr dt{font-size:var(--fs-kicker);text-transform:uppercase;letter-spacing:.1em;color:var(--mint);margin-bottom:.3rem;font-weight:700}.project--violet .project__cr dt{color:var(--lilac)}.project__cr dd{color:#f6f5f1db;margin:0;font-size:.95rem;line-height:1.55}.project__link{align-self:flex-start;margin-top:auto;padding-top:.75rem}.badge{border-radius:var(--pill);letter-spacing:.04em;color:var(--paper);white-space:nowrap;background:#f6f5f124;align-items:center;gap:.4rem;padding:.35rem .75rem;font-size:.78rem;font-weight:700;display:inline-flex}.badge--in-progress{background:var(--mint);color:var(--petrol)}.badge--in-progress:before{content:"";background:var(--petrol);border-radius:50%;width:.5rem;height:.5rem;animation:1.8s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.35}}.badge--upcoming{background:var(--lilac);color:var(--violet)}.section-foot{justify-content:center;margin-top:2rem;display:flex}@media (min-width:40rem){.project__cr{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:56rem){.projects:not(.projects--stack){grid-template-columns:repeat(2,minmax(0,1fr))}}.orgs{padding-block:var(--space-section);border-top:1px solid var(--line)}.orgs__grid{gap:2rem;display:grid}.org{border-top:2px solid var(--petrol);padding-top:1.25rem}.org h3{margin-bottom:.75rem;font-size:1.35rem}.org p{color:var(--ink-2)}.org .textlink{margin-top:1rem}@media (min-width:56rem){.orgs__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem}}.about-preview{padding-block:var(--space-section);background:var(--paper-2)}.about-preview__grid{align-items:center;gap:2.5rem;display:grid}.about-preview__img{max-width:26rem;margin-inline-start:auto;margin-inline-end:auto}.about-preview__text h2{font-size:var(--fs-h2)}.about-preview__text>p:not(.kicker){color:var(--ink-2);margin-top:1.25rem;font-size:1.12rem;line-height:1.65}.about-preview__text .textlink{margin-top:1.5rem}.imgslot{border-radius:var(--radius-lg);background:var(--petrol);width:100%;margin:0;position:relative;overflow:hidden}.imgslot img{object-fit:cover;width:100%;height:100%}.imgslot--empty{background:linear-gradient(160deg, var(--petrol-2), var(--petrol));--dot-ink:#f6f5f147;--dot-violet:var(--lilac);--dot-mint:var(--mint);--dot-lilac:var(--lilac);place-items:center;display:grid}.imgslot__motif{width:88%;height:88%;position:absolute;top:6%;bottom:6%;left:6%;right:6%}.imgslot__initials{font-family:var(--font-display);color:var(--paper);letter-spacing:-.04em;font-size:clamp(4rem,12vw,7rem);font-weight:400;line-height:1;position:relative}.imgslot__dev{color:#3b2d00;letter-spacing:.04em;font-size:.7rem;font-weight:700;font-family:var(--font-body);background:#ffd166;border-radius:.4rem;padding:.25rem .5rem;position:absolute;bottom:.75rem;left:.75rem}@media (min-width:56rem){.about-preview__grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:4rem}}.cta-band{color:var(--paper);--focus:var(--mint);--dot-ink:#f6f5f129;--dot-violet:#c9b8ff73;--dot-mint:#8ee3cfbf;--dot-lilac:#c9b8ffa6;padding-block-start:clamp(4rem,7vw,7rem);padding-block-end:clamp(4rem,7vw,7rem);position:relative;overflow:hidden}.cta-band--petrol{background:var(--petrol)}.cta-band--violet{background:var(--violet)}.cta-band__motif{opacity:.7;pointer-events:none;width:min(38rem,80vw);position:absolute;top:50%;right:-6rem;transform:translateY(-50%)}.cta-band__inner{max-width:44rem;position:relative}.cta-band h2{font-size:var(--fs-h2);color:var(--paper)}.cta-band p{color:#f6f5f1d1;margin-top:1.25rem;font-size:1.1rem}.cta-band__actions{flex-wrap:wrap;gap:.75rem;margin-top:2rem;display:flex}.cta-band__actions .btn{overflow-wrap:anywhere;max-width:100%}.page-hero{border-bottom:1px solid var(--line);padding-block-start:clamp(3rem,5vw,5rem);padding-block-end:clamp(2.5rem,4vw,4rem)}.page-hero h1{font-size:var(--fs-h1);color:var(--petrol);letter-spacing:-.025em;max-width:20ch}.page-hero .lead{margin-top:1.25rem}.page-hero__actions{flex-wrap:wrap;gap:.75rem;margin-top:2rem;display:flex}.split{gap:2rem;display:grid}.split .section-head,.split .split__head{margin-bottom:0}.split--dark .section-head h2{color:var(--paper)}@media (min-width:56rem){.split{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:4rem}}.checklist{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.checklist li{color:var(--ink-2);padding-left:1.85rem;line-height:1.55;position:relative}.checklist li:before{content:"";background:var(--mint-soft);border:2px solid var(--mint-ink);border-radius:50%;width:.75rem;height:.75rem;position:absolute;top:.5em;left:0}.checklist--lg li{border-bottom:1px solid var(--line);padding-block-start:.35rem;padding-block-end:.35rem;font-size:1.08rem}.checklist--lg li:last-child{border-bottom:0}.checklist--light li{color:#f6f5f1e0;border-color:var(--line-light)}.checklist--light li:before{border-color:var(--mint);background:#8ee3cf40}.tiles{gap:1rem;display:grid}.tile{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);transition:transform .3s var(--ease), box-shadow .3s, border-color .3s;padding:1.5rem;position:relative}.reveal--pending.tile{transition:opacity .7s var(--ease), transform .7s var(--ease), box-shadow .3s, border-color .3s}.tile:hover{box-shadow:var(--shadow);border-color:#17705c73;transform:translateY(-3px)}.tile h3{margin-bottom:.6rem;font-size:1.2rem}.tile p{color:var(--ink-2);font-size:.97rem}.tile__num{font-family:var(--font-display);color:var(--mint-ink);margin-bottom:.75rem;font-size:.9rem;display:block}.tile--link h3 a{color:var(--petrol);text-decoration:none}.tile--link h3 a:after{content:"";border-radius:inherit;position:absolute;top:0;bottom:0;left:0;right:0}.tile--link:has(a:focus-visible){outline:3px solid var(--focus);outline-offset:3px}.tile--link h3 a:focus-visible{outline:none}.tile__arrow{color:var(--mint-ink);transition:transform .25s var(--ease);position:absolute;top:1.25rem;right:1.25rem}.tile--link:hover .tile__arrow{transform:translate(4px)}@media (min-width:40rem){.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:64rem){.tiles{grid-template-columns:repeat(3,minmax(0,1fr))}.tiles--4{grid-template-columns:repeat(4,minmax(0,1fr))}}.steps-grid{counter-reset:step;gap:1rem;margin:0;padding:0;list-style:none;display:grid}.step{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);counter-increment:step;padding:1.5rem}.step:before{content:counter(step, decimal-leading-zero);font-family:var(--font-display);color:var(--mint-ink);margin-bottom:.75rem;font-size:.95rem;display:block}.step h3{margin-bottom:.5rem;font-size:1.18rem}.step p{color:var(--ink-2);font-size:.95rem}@media (min-width:40rem){.steps-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:64rem){.steps-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.pills__title{font-family:var(--font-body);font-size:var(--fs-kicker);text-transform:uppercase;letter-spacing:.1em;color:#f6f5f1b3;margin:2rem 0 .75rem}.pills{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.pills li{border-radius:var(--pill);color:var(--paper);border:1px solid #f6f5f14d;padding:.45rem .85rem;font-size:.88rem;font-weight:600}.linkcards{gap:1rem;display:grid}.linkcard{background:var(--petrol);color:var(--paper);border-radius:var(--radius);font-family:var(--font-display);transition:background-color .25s, transform .25s var(--ease);--focus:var(--mint);justify-content:space-between;align-items:center;gap:1rem;padding:1.35rem 1.5rem;font-size:1.3rem;text-decoration:none;display:flex}.linkcard:hover{background:var(--petrol-2);transform:translateY(-2px)}.linkcard svg{color:var(--mint);transition:transform .25s var(--ease);flex:none}.linkcard:hover svg{transform:translate(4px)}.linklist{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.case-hero{color:var(--paper);--focus:var(--mint);padding-block-start:clamp(2.5rem,5vw,5.5rem);padding-block-end:clamp(2.5rem,5vw,5.5rem);position:relative;overflow:hidden}.case-hero--petrol{background:var(--petrol);--dot-ink:#f6f5f138;--dot-violet:#c9b8ffa6;--dot-mint:var(--mint);--dot-lilac:var(--lilac)}.case-hero--violet{background:var(--violet);--dot-ink:#f6f5f138;--dot-violet:#8ee3cfa6;--dot-mint:var(--lilac);--dot-lilac:var(--mint)}.case-hero__motif{opacity:.6;pointer-events:none;width:min(34rem,80vw);position:absolute;top:-6rem;right:-6rem}.case-hero__inner{position:relative}.backlink{color:#f6f5f1cc;align-items:center;gap:.4rem;margin-bottom:2rem;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.backlink:hover{color:var(--paper)}.backlink svg{width:1em;height:1em;transform:rotate(180deg)}.case-hero__meta{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-bottom:1rem;display:flex}.case-hero__meta .kicker{margin:0}.case-hero h1{font-size:var(--fs-h1);color:var(--paper);letter-spacing:-.025em}.case-hero__sub{font-size:var(--fs-lead);color:#f6f5f1db;max-width:40ch;margin-top:1rem}.facts{border-top:1px solid var(--line-light);grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:1.25rem 2rem;margin:2.5rem 0 0;padding-top:1.75rem;display:grid}.facts div{min-width:0}.facts dt{font-size:var(--fs-kicker);text-transform:uppercase;letter-spacing:.1em;color:#f6f5f1a6;margin-bottom:.3rem;font-weight:700}.facts dd{margin:0;font-weight:600;line-height:1.4}.case-body{padding-block:var(--space-section);gap:clamp(2.5rem,5vw,4.5rem);display:grid}.case-opening{font-family:var(--font-display);color:var(--petrol);letter-spacing:-.01em;text-wrap:balance;max-width:32ch;font-size:clamp(1.5rem,1.2rem + 1.4vw,2.4rem);line-height:1.25}.case-section{gap:1rem;display:grid}.case-section h2{color:var(--petrol);font-size:1.6rem}.case-section__body{max-width:66ch;color:var(--ink-2);gap:1rem;font-size:1.05rem;line-height:1.7;display:grid}.case-section__intro{color:var(--ink-2);max-width:60ch;margin-top:.75rem;font-size:1.05rem}.case-updated{color:var(--ink-3);margin-top:.5rem;font-size:.85rem}.case-note{color:var(--ink-2);background:var(--paper-2);border-left:3px solid var(--mint-ink);border-radius:0 .75rem .75rem 0;padding:.75rem 1rem;font-size:.95rem}.gallery{grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.gallery figure{border-radius:var(--radius);aspect-ratio:4/3;background:var(--paper-2);margin:0;overflow:hidden}.gallery img{object-fit:cover;width:100%;height:100%}@media (min-width:56rem){.case-section{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:3rem}.case-section--wide{grid-template-columns:1fr}}.about-grid{gap:2.5rem;display:grid}.about-grid__media{width:100%;max-width:26rem;margin-inline-start:auto;margin-inline-end:auto}.about-grid__text h2{font-size:var(--fs-h2);margin-bottom:1.5rem}.bio{background:var(--petrol);color:var(--paper);border-radius:var(--radius-lg);--focus:var(--mint);gap:1.25rem;padding:clamp(1.5rem,3vw,2.75rem);display:grid}.bio__head h2{font-size:var(--fs-h3);color:var(--paper)}.bio__text{color:#f6f5f1e0;max-width:72ch;font-size:1.05rem;line-height:1.7}.bio__actions{flex-wrap:wrap;gap:.75rem;display:flex}.contact-grid{gap:2rem;display:grid}.email-card{background:var(--petrol);color:var(--paper);border-radius:var(--radius-lg);--focus:var(--mint);align-content:start;gap:1.5rem;min-width:0;padding:clamp(1.5rem,3vw,2.5rem);display:grid}.email-card .kicker{margin:0}.email-card__address{font-family:var(--font-display);color:var(--paper);overflow-wrap:anywhere;align-items:center;gap:.75rem;min-width:0;font-size:clamp(1.25rem,1rem + 1.2vw,1.9rem);text-decoration:none;display:flex}.email-card__address svg{color:var(--mint);flex:none;width:1.4rem;height:1.4rem}.email-card__address:hover span{text-underline-offset:.15em;text-decoration:underline}.email-card__actions{flex-wrap:wrap;gap:.75rem;display:flex}.email-card__meta{border-top:1px solid var(--line-light);margin:0;padding-top:1.25rem}.email-card__meta dt{font-size:var(--fs-kicker);text-transform:uppercase;letter-spacing:.1em;color:#f6f5f1a6;margin-bottom:.3rem;font-weight:700}.email-card__meta dd{margin:0;font-weight:600}.contact-side h2{margin-bottom:1rem}.contact-side__profiles{margin-top:2rem}@media (min-width:56rem){.about-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:4rem}.about-grid__media{top:calc(var(--header-h) + 1.5rem);position:sticky}.contact-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;gap:3rem}}.footer{background:var(--paper-2);border-top:1px solid var(--line);color:var(--ink-2);padding-block-start:3.5rem;padding-block-end:2rem;font-size:.95rem}.footer__grid{gap:2rem;display:grid}.footer__tagline{font-family:var(--font-display);color:var(--petrol);margin-top:1rem;font-size:1.5rem}.footer__desc{max-width:34ch;margin-top:.75rem}.footer__aff{color:var(--ink-3);margin-top:.75rem;font-size:.85rem}.footer__title{font-family:var(--font-body);font-size:var(--fs-kicker);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);margin-bottom:1rem;font-weight:700}.footer ul{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.footer a{color:var(--petrol);overflow-wrap:anywhere;text-decoration:none}.footer a:hover{text-decoration:underline}.footer__bottom{border-top:1px solid var(--line);color:var(--ink-3);flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.5rem;margin-top:3rem;padding-top:1.5rem;font-size:.85rem;display:flex}@media (min-width:48rem){.footer__grid{grid-template-columns:1.6fr 1fr 1fr 1fr;gap:2.5rem}}.notfound{padding-block:var(--space-section)}.notfound__inner{align-items:center;gap:2rem;display:grid}.notfound__motif{opacity:.8;width:min(16rem,60vw)}.notfound h1{font-size:var(--fs-h1);color:var(--petrol)}.notfound .lead{margin-top:1rem}.notfound__cta{margin-top:2rem}@media (min-width:56rem){.notfound__inner{grid-template-columns:minmax(0,4fr) minmax(0,8fr)}}@media print{.reveal--pending{opacity:1;transform:none}.header,.mobile-menu,.skip-link,.hero__hint{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.hero__hint-dot{animation:none}}:root{--font-note:"Mynerve", "Bradley Hand", "Segoe Print", cursive}.words__word{animation:word-in .8s var(--ease) both;animation-delay:calc(.1s + var(--i) * .13s);display:inline-block}@keyframes word-in{0%{opacity:0;transform:translateY(.35em)rotate(1.5deg)}to{opacity:1;transform:none}}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.hero__text>.hero__kicker,.hero__text>.hero__lead,.hero__text>.hero__body,.hero__text>.hero__actions{animation:rise .7s var(--ease) both}.hero__text>.hero__lead{animation-delay:.6s}.hero__text>.hero__body{animation-delay:.72s}.hero__text>.hero__actions{animation-delay:.84s}.hero__visual{aspect-ratio:auto;width:min(100%,19rem);padding-block-start:1.5rem;padding-block-end:0}.hero__motif{opacity:.9;width:128%;height:124%;top:-12%;bottom:-12%;left:-14%;right:-14%}.hero__hint{justify-content:center;margin-top:1.5rem;position:static}@media (min-width:56rem){.hero__visual{width:100%;max-width:29rem;padding-block-start:2rem;padding-block-end:0}}.page-hero .container>*{animation:rise .6s var(--ease) both}.page-hero .container>:nth-child(2){animation-delay:80ms}.page-hero .container>:nth-child(3){animation-delay:.16s}.page-hero .container>:nth-child(4){animation-delay:.24s}.tilt{perspective:1000px}.tilt__body{transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .6s var(--ease);transform-style:preserve-3d}.tilt.is-tilting .tilt__body{transition:transform .15s ease-out}.sticker{z-index:1;width:min(100%,19rem);animation:sticker-in .9s var(--ease) both;margin-inline-start:auto;margin-inline-end:auto;animation-delay:.4s;position:relative}.sticker--about{width:min(100%,16rem);animation-delay:.15s}@keyframes sticker-in{0%{opacity:0;transform:translateY(24px)rotate(-6deg)scale(.94)}to{opacity:1;transform:none}}.sticker__float{cursor:pointer;touch-action:manipulation;animation:6s ease-in-out 1.4s infinite float;position:relative}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}.sticker__float.is-wiggling{animation:wiggle .8s var(--ease) 1}@keyframes wiggle{0%{transform:rotate(0)}25%{transform:rotate(-3deg)scale(1.02)}50%{transform:rotate(3deg)}75%{transform:rotate(-1.5deg)}to{transform:rotate(0)}}.sticker__paper{rotate:-4deg}.sticker--about .sticker__paper{rotate:3deg}.sticker__img{filter:drop-shadow(0 2px #fff)drop-shadow(0 -2px #fff)drop-shadow(2px 0 #fff)drop-shadow(-2px 0 #fff)drop-shadow(12px 16px #3b215c4d);-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:auto;display:block}.sticker__empty{aspect-ratio:4/5;background:linear-gradient(160deg, var(--petrol-2), var(--petrol));--dot-ink:#f6f5f147;--dot-violet:var(--lilac);--dot-mint:var(--mint);--dot-lilac:var(--lilac);border-radius:46% 46% 40% 40%/38% 38% 62% 62%;place-items:center;display:grid;position:relative;overflow:hidden;box-shadow:0 0 0 3px #fff,12px 16px #3b215c4d}.sticker__motif{width:88%;height:88%;position:absolute;top:6%;bottom:6%;left:6%;right:6%}.sticker__initials{font-family:var(--font-display);color:var(--paper);letter-spacing:-.04em;font-size:clamp(4rem,10vw,6rem);line-height:1;position:relative}.sticker__note{color:var(--petrol);border:1.5px solid var(--petrol);font-family:var(--font-note);white-space:nowrap;animation:pop .6s var(--ease) both;background:#fff;border-radius:.6rem;padding:.3rem .75rem .35rem;font-size:1.3rem;line-height:1.1;animation-delay:1s;position:absolute;top:-.5rem;left:-.75rem;rotate:-7deg;box-shadow:4px 5px #3b215c59}.sticker--about .sticker__note{top:auto;bottom:-.75rem;left:auto;right:-.5rem;rotate:4deg}@keyframes pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:none}}.sticker__doodle{pointer-events:none;fill:none;stroke:var(--petrol);stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;position:absolute}.sticker__doodle--arrow{width:3.2rem;stroke:var(--violet);stroke-dasharray:90;animation:draw 1s var(--ease) both;animation-delay:1.2s;top:2.4rem;left:1.6rem}.sticker--about .sticker__doodle--arrow{display:none}@keyframes draw{0%{stroke-dashoffset:90px;opacity:0}to{stroke-dashoffset:0;opacity:1}}.sticker__doodle--spark{fill:var(--mint);stroke:none;width:1.4rem;animation:pop .6s var(--ease) both}.sticker__doodle--spark-1{animation-delay:1.3s;top:12%;right:-.6rem}.sticker__doodle--spark-2{width:1rem;fill:var(--lilac);animation-delay:1.5s;bottom:18%;left:-.9rem}.sticker__doodle--loop{width:4.5rem;stroke:var(--mint-ink);stroke-dasharray:160;animation:draw 1.2s var(--ease) both;animation-delay:1.4s;bottom:-1.2rem;right:.5rem}.sticker--about .sticker__doodle--loop{width:3.6rem;top:-1rem;bottom:auto;left:-.5rem;right:auto}.about-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);justify-items:center;gap:1.5rem;padding:2rem 1.5rem 1.5rem;display:grid;position:relative}.about-card__line{font-family:var(--font-note);color:var(--violet);text-align:center;font-size:1.35rem}.crumbs ol{flex-wrap:wrap;gap:.35rem .5rem;margin:0 0 1.75rem;padding:0;font-size:.88rem;font-weight:600;list-style:none;display:flex}.crumbs li+li:before{content:"/";opacity:.45;margin-right:.5rem}.crumbs a{opacity:.85;text-decoration:none}.crumbs a:hover{opacity:1;text-decoration:underline}.crumbs [aria-current]{opacity:1}.crumbs--light{color:#f6f5f1e0}.method__steps{--track:0;position:relative}.method-step{padding-top:2.4rem;transition:background-color .45s,border-color .45s}.method-step__num{border:1.5px solid var(--lilac);width:1.9rem;height:1.9rem;color:var(--lilac);font-family:var(--font-display);transition:background-color .45s, color .45s, border-color .45s, transform .45s var(--ease);background:0 0;border-radius:50%;place-items:center;font-size:.95rem;display:grid;position:absolute;top:1.1rem;left:1.35rem;right:auto}.method-step .motif{margin-top:.25rem}.method-step .motif__dot{transition:transform .9s var(--ease)}.method-step.is-active{background:#f6f5f11a;border-color:#8ee3cf99}.method-step.is-active .method-step__num{background:var(--mint);color:var(--petrol);border-color:var(--mint);transform:scale(1.1)}.method-step.is-active .motif{--p:1}@media (min-width:64rem){.method__steps{padding-top:3.4rem}.method__steps:before,.method__steps:after{content:"";border-radius:2px;height:2px;position:absolute;top:1.05rem;left:12.5%}.method__steps:before{background:#f6f5f12e;right:12.5%}.method__steps:after{width:calc(var(--track) * 75%);background:var(--mint);transition:width .8s var(--ease)}.method-step{padding-top:1.5rem}.method-step__num{background:var(--violet);width:2.1rem;height:2.1rem;top:-3.4rem;left:50%;translate:-50%}.method-step:not(:last-child):after{content:none}}.teaser{padding-block:var(--space-section);background:var(--paper-2)}.teaser__grid{align-items:center;gap:2rem;display:grid}.teaser__text h2{font-size:var(--fs-h2)}.teaser__text>p:not(.kicker){color:var(--ink-2);margin-top:1rem;font-size:1.08rem}.teaser__text .btn{margin-top:1.5rem}.teaser__card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);gap:1.25rem;min-width:0;padding:clamp(1.25rem,2.5vw,2rem);display:grid}.chips--compact .chip span{padding:.45rem .75rem;font-size:.84rem}.teaser__out{background:var(--petrol);color:var(--paper);border-radius:1rem;gap:.2rem;padding:1rem 1.15rem;font-size:.95rem;line-height:1.55;display:grid}.teaser__line{overflow-wrap:anywhere;display:block}.teaser__line--dim{opacity:.5}.teaser__line--live,.lab__line--live{animation:line-flash 1.1s var(--ease) both;border-radius:.35rem;margin-inline-start:-.3rem;margin-inline-end:-.3rem;padding-inline-start:.3rem;padding-inline-end:.3rem}@keyframes line-flash{0%{color:#fff;background-color:#8ee3cf8c;transform:translate(4px)}to{background-color:#8ee3cf00;transform:none}}@media (min-width:56rem){.teaser__grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:4rem}}.lab__outlabel{font-size:1.05rem;font-weight:700}.lab__mode{color:var(--paper);border-radius:var(--pill);cursor:pointer;background:#f6f5f114;border:1px solid #f6f5f140;align-items:center;gap:.4rem;padding:.4rem .8rem;font-size:.82rem;font-weight:700;transition:background-color .2s;display:inline-flex}.lab__mode:hover{background:#f6f5f124}.lab__mode svg{width:1em;height:1em}.lab__preview{white-space:pre-wrap;overflow-wrap:anywhere;background:#f6f5f10f;border:1px solid #f6f5f12e;border-radius:1rem;max-height:30rem;padding:1rem 1.1rem;font-size:.95rem;line-height:1.55;overflow-y:auto}.lab__preview:focus-visible{outline:3px solid var(--mint);outline-offset:2px}.lab__line{display:block}.project-tilt{height:100%;display:grid}.project--card{gap:1rem}.project__main{flex-direction:column;gap:1rem;display:flex}.project__motif{transform:translate(calc(var(--px,0) * -14px), calc(var(--py,0) * -14px));transition:transform .5s var(--ease)}.tilt.is-tilting .project__motif{transition:transform .15s ease-out}.project-tilt:hover .project,.project-tilt:focus-within .project{box-shadow:var(--shadow)}.project--gallery{gap:1.5rem;padding:clamp(1.5rem,3.5vw,3rem);display:grid}.project__index{font-family:var(--font-display);color:#f6f5f180;margin-right:.5rem;font-size:2rem;line-height:1}.project--gallery .project__title{font-size:clamp(2.4rem,1.8rem + 2.4vw,4rem)}@media (min-width:56rem){.project--gallery{grid-template-columns:minmax(0,6fr) minmax(0,6fr);align-items:center;gap:3rem}.project--gallery .project__cr{border:1px solid var(--line-light);border-radius:var(--radius);background:#f6f5f10d;grid-template-columns:1fr;margin:0;padding:1.5rem}}@media (hover:hover) and (pointer:fine){.project--gallery .project__cr{opacity:.55;transition:opacity .45s var(--ease), transform .45s var(--ease);transform:translateY(8px)}.project-tilt--gallery:hover .project__cr,.project-tilt--gallery:focus-within .project__cr{opacity:1;transform:none}}.wave{vertical-align:-.06em;width:.85em;height:.85em;color:var(--mint-ink);transform-origin:75% 90%;margin-left:.1em;animation:1.8s ease-in-out .6s both wave;display:inline-block}.page-hero--contact h1:hover .wave{animation:1.4s ease-in-out infinite wave}@keyframes wave{0%,to{transform:rotate(0)}20%{transform:rotate(16deg)}40%{transform:rotate(-8deg)}60%{transform:rotate(14deg)}80%{transform:rotate(-4deg)}}.email-card{isolation:isolate;--dot-ink:#f6f5f140;--dot-violet:#c9b8ffb3;--dot-mint:var(--mint);--dot-lilac:var(--lilac);position:relative;overflow:hidden}.email-card__motif{opacity:.75;z-index:-1;pointer-events:none;width:15rem;position:absolute;top:-3.5rem;right:-3.5rem}.bio--photo{grid-template-columns:minmax(0,1fr)}.bio__photo{max-width:16rem}@media (min-width:56rem){.bio--photo{grid-template-columns:16rem minmax(0,1fr);align-items:start;gap:2.5rem}}@media (prefers-reduced-motion:reduce){.words__word,.hero__text>*,.page-hero .container>*,.sticker,.sticker__float,.sticker__note,.sticker__doodle,.teaser__line--live,.lab__line--live,.wave{opacity:1;transform:none;animation:none!important}.sticker__doodle--arrow,.sticker__doodle--loop{stroke-dashoffset:0}.tilt__body,.project__motif{transition:none}}.page-hero__title--words{letter-spacing:-.03em}.page-hero__sub{max-width:60ch;color:var(--ink-2);margin-top:1rem;font-size:1.05rem}.journey{padding-block:var(--space-section)}.journey__chapters{--track:0;gap:clamp(3rem,5vw,4.5rem);margin:0;padding:0 0 0 2.75rem;list-style:none;display:grid;position:relative}.journey__chapters:before,.journey__chapters:after{content:"";border-radius:2px;width:2px;position:absolute;top:1.2rem;left:.95rem}.journey__chapters:before{background:var(--line);bottom:2.5rem}.journey__chapters:after{height:calc(var(--track) * (100% - 3.7rem));background:var(--mint-ink);transition:height .9s var(--ease)}.chapter{position:relative}.chapter__num{width:2rem;height:2rem;font-family:var(--font-display);background:var(--paper);border:1.5px solid var(--line-strong);color:var(--ink-2);transition:background-color .45s, color .45s, border-color .45s, transform .45s var(--ease);border-radius:50%;place-items:center;font-size:.95rem;display:grid;position:absolute;top:0;left:-2.75rem}.chapter.is-active .chapter__num{background:var(--mint-ink);border-color:var(--mint-ink);color:var(--paper);transform:scale(1.1)}.chapter__head{justify-content:space-between;align-items:flex-start;gap:1.5rem;min-height:2rem;margin-bottom:1.5rem;display:flex}.chapter__text .kicker{margin-bottom:.6rem}.chapter__name{font-size:var(--fs-h2)}.chapter__tagline{color:var(--ink-2);max-width:44ch;margin-top:.5rem;font-size:1.08rem}.chapter__motif{opacity:.9;flex:none;width:5.5rem;height:5.5rem}.topics{gap:1rem;margin:0;padding:0;list-style:none;display:grid}.topic{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);transition:border-color .3s, box-shadow .3s, transform .3s var(--ease);flex-direction:column;gap:.75rem;padding:clamp(1.35rem,2.5vw,1.75rem);display:flex}.reveal--pending.topic{transition:opacity .7s var(--ease), transform .7s var(--ease), border-color .3s, box-shadow .3s}.topic:hover,.topic:focus-within{box-shadow:var(--shadow);border-color:#17705c73}.topic__num{font-family:var(--font-display);color:var(--mint-ink);letter-spacing:.05em;align-items:center;gap:.75rem;font-size:.95rem;display:flex}.topic__num:after{content:"";background:var(--line);flex:1;height:1px}.topic__title{font-size:1.3rem;line-height:1.2}.topic__text{color:var(--ink-2);font-size:.97rem;line-height:1.6}.topic__example{background:var(--paper-2);border-left:3px solid var(--mint-ink);border-radius:0 .75rem .75rem 0;gap:.3rem;margin-top:auto;padding:.8rem 1rem;display:grid}.topic__example-label{font-size:var(--fs-kicker);text-transform:uppercase;letter-spacing:.1em;color:var(--mint-ink);font-weight:700}.topic__example p{color:var(--ink-2);font-size:.93rem;line-height:1.55}.topic__link{align-self:flex-start;margin-top:.25rem}@media (min-width:40rem){.journey__chapters{padding-left:3.75rem}.journey__chapters:before,.journey__chapters:after{left:1.2rem}.chapter__num{width:2.5rem;height:2.5rem;font-size:1.05rem;left:-3.75rem}.journey__chapters:before,.journey__chapters:after{top:1.25rem}}@media (min-width:64rem){.topics{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}}.flow{gap:1rem;margin:0;padding:0;list-style:none;display:grid}.flow__step{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem 1.5rem 1.5rem 4rem;position:relative}.flow__num{background:var(--petrol);width:1.9rem;height:1.9rem;color:var(--paper);font-family:var(--font-display);border-radius:50%;place-items:center;font-size:.95rem;display:grid;position:absolute;top:1.35rem;left:1.25rem}.flow__step h3{margin-bottom:.4rem;font-size:1.15rem}.flow__step p{color:var(--ink-2);font-size:.95rem}.flow__note{max-width:62ch;color:var(--ink-2);background:var(--white);border-left:3px solid var(--violet);border-radius:0 .75rem .75rem 0;margin-top:1.5rem;padding:.85rem 1.1rem;font-size:.97rem}@media (min-width:48rem){.flow{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:72rem){.flow{grid-template-columns:repeat(5,minmax(0,1fr))}.flow__step{padding:3.75rem 1.25rem 1.5rem}.flow__num{top:1.25rem;left:1.25rem}.flow__step:not(:last-child):after{content:"";background:var(--mint-ink);border-radius:50%;width:.5rem;height:.5rem;position:absolute;top:2.2rem;right:-.75rem}}.training-preview{padding-block:var(--space-section);border-top:1px solid var(--line)}.mini-topics{gap:1rem;margin:0;padding:0;list-style:none;display:grid}.mini-topic{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);transition:transform .3s var(--ease), box-shadow .3s, border-color .3s;gap:.5rem;padding:1.35rem;display:grid}.reveal--pending.mini-topic{transition:opacity .7s var(--ease), transform .7s var(--ease), box-shadow .3s, border-color .3s}.mini-topic:hover{box-shadow:var(--shadow);border-color:#17705c73;transform:translateY(-3px)}.mini-topic__num{font-family:var(--font-display);color:var(--mint-ink);letter-spacing:.05em;font-size:.9rem}.mini-topic__title{font-size:1.15rem;line-height:1.2}.mini-topic__text{color:var(--ink-2);font-size:.93rem;line-height:1.55}@media (min-width:40rem){.mini-topics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:64rem){.mini-topics{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.journey__chapters:after,.chapter__num{transition:none}}
