:root{color-scheme:light dark;--bg:#fbfbf8;--surface:#fff;--surface-subtle:#f4f3ed;--ink:#111;--ink-soft:#56564f;--ink-muted:#74746c;--line:#deded6;--line-strong:#c9c7bc;--accent:#006039;--accent-warm:#a37e2c;--focus:#2d6cdf;--text-body:#24241f;--footer-ink:#33332d;--shadow-soft:0 24px 70px rgba(17,17,17,0.08);--container:min(1180px,92vw);--content-offset:clamp(0.2rem,6.4vw,5.8rem);--section-gutter:clamp(1.8rem,6vw,5.5rem);--night-overlay:0}@font-face{font-family:"Geist";font-style:normal;font-weight:400;font-display:swap;src:url("assets/fonts/geist-400.woff2") format("woff2"),url("assets/fonts/geist-400.ttf") format("truetype")}@font-face{font-family:"Geist";font-style:normal;font-weight:700;font-display:swap;src:url("assets/fonts/geist-700.woff2") format("woff2"),url("assets/fonts/geist-700.ttf") format("truetype")}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:"Geist",Arial,"Helvetica Neue",Helvetica,sans-serif;line-height:1.5;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}body::before{content:"";position:fixed;inset:0;background:#000;opacity:var(--night-overlay);pointer-events:none;z-index:15;transition:opacity 320ms ease}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.2em}.skip-link{position:fixed;top:.6rem;left:.6rem;z-index:200;padding:.55rem .75rem;border-radius:8px;background:#111;color:#fff;text-decoration:none;transform:translateY(-180%);transition:transform 140ms ease}.skip-link:focus-visible{transform:translateY(0)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.corner-logo{position:fixed;top:clamp(1.2rem,3.4vw,2.4rem);right:max(clamp(0.9rem,2vw,1.2rem),calc((100vw - var(--container)) / 2 + var(--content-offset)));z-index:20;display:block;width:clamp(58px,7.8vw,104px);text-decoration:none;transition:opacity 180ms ease,visibility 180ms ease}.corner-logo.is-hidden{opacity:0;visibility:hidden;pointer-events:none}img{-webkit-user-drag:none;user-select:none;-webkit-touch-callout:none}.corner-logo img{display:block;width:100%;height:auto}main,.site-footer{width:var(--container);margin-inline:auto}.intro{width:var(--container);margin-inline:auto;min-height:100svh;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(1.4rem,3.5vw,2.8rem) 0 clamp(1.1rem,2.6vw,1.8rem)}.intro-stage{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:center;gap:clamp(1.3rem,3.2vw,2.3rem);padding-inline:var(--content-offset);padding-block:clamp(0rem,4vh,3rem);position:relative}.intro-title{margin:0;line-height:.91;letter-spacing:0;font-size:clamp(2.6rem,9vw,120px);font-weight:700;max-width:none;width:max-content;transform-origin:left center;transition:opacity 320ms ease,transform 320ms ease}.intro-title>span{display:block}.intro-line{display:flex;flex-wrap:nowrap;margin-inline-start:var(--line-shift,0ch);white-space:nowrap;width:max-content}.trigger-button{display:inline-block;border:0;padding:0;margin:0;background:transparent;color:inherit;font:inherit;line-height:inherit;letter-spacing:inherit;vertical-align:baseline;white-space:inherit;appearance:none;-webkit-appearance:none}.wire-trigger,.comic-trigger{cursor:pointer;display:inline}.wire-trigger:focus-visible,.comic-trigger:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:2px}.line-1{--line-shift:0ch}.line-2{--line-shift:1ch}.line-3{--line-shift:2ch}.line-4{--line-shift:3ch}.wire-hero,.comic-hero{display:block;width:100%;height:100%;border:0;margin:0;padding:0;background:transparent;cursor:pointer;position:absolute;inset:0;opacity:0;pointer-events:none;transform:scale(0.985);transition:opacity 360ms ease,transform 360ms ease}.wire-hero img,.comic-hero img{width:100%;height:100%;object-fit:contain;object-position:center 54%;display:block}.comic-hero img{transform:scale(0.9);transform-origin:center}.comic-hero img.is-comic-entering{animation:comicImageEnter 220ms ease-out both}@keyframes comicImageEnter{from{opacity:.78;transform:translateY(2px) scale(0.89)}to{opacity:1;transform:translateY(0) scale(0.9)}}.intro-stage.show-wire .intro-title,.intro-stage.show-wire .comic-hero,.intro-stage.show-wire .slogan-hero{opacity:0;transform:scale(0.985);pointer-events:none}.intro-stage.show-wire .wire-hero{opacity:1;transform:scale(1);pointer-events:auto}.intro-stage.show-comic .intro-title,.intro-stage.show-comic .wire-hero,.intro-stage.show-comic .slogan-hero{opacity:0;transform:scale(0.985);pointer-events:none}.intro-stage.show-comic .comic-hero{opacity:1;transform:scale(1);pointer-events:auto;transition:opacity 650ms ease}.intro-stage.show-comic .comic-hero.comic-is-fading-out{opacity:0;transform:scale(1)}.intro-stage.show-comic .comic-hero.comic-is-preparing{transition:none}.slogan-hero{width:100%;height:100%;border:0;margin:0;padding:clamp(0.8rem,2.2vw,1.6rem) clamp(1.2rem,5vw,3.2rem);background:transparent;cursor:pointer;position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;opacity:0;pointer-events:none;transform:scale(0.985);transition:opacity 360ms ease,transform 360ms ease;text-align:left;color:var(--ink);font-family:inherit;font-size:clamp(3rem,10.6vw,8.8rem);font-weight:700;line-height:.93;letter-spacing:0}.slogan-hero span{display:block;width:max-content;max-width:100%;white-space:nowrap}.slogan-line{margin-inline-start:var(--slogan-shift,0ch)}.slogan-line.is-empty{display:none}.slogan-line-1{--slogan-shift:0ch}.slogan-line-2{--slogan-shift:1ch}.slogan-line-3{--slogan-shift:2ch}.slogan-line-4{--slogan-shift:3ch}.intro-stage.show-slogan .intro-title,.intro-stage.show-slogan .wire-hero,.intro-stage.show-slogan .comic-hero{opacity:0;transform:scale(0.985);pointer-events:none}.intro-stage.show-slogan .slogan-hero{opacity:1;transform:scale(1);pointer-events:auto;transition:opacity 650ms ease}.intro-stage.show-slogan .slogan-hero.slogan-is-fading-out{opacity:0;transform:scale(1)}.intro-stage.show-slogan .slogan-hero.slogan-is-preparing{transition:none}.hero-hint{flex:0 0 auto;order:30;margin:0 0 0 auto;font-size:clamp(0.72rem,1vw,0.82rem);letter-spacing:0;color:var(--ink-muted);opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity 420ms ease,transform 420ms ease;text-align:right}.hero-hint.is-visible{opacity:1;transform:translateY(0)}.intro-links{display:flex;align-items:center;justify-content:flex-start;flex-wrap:nowrap;gap:clamp(1.1rem,3.8vw,2.6rem);row-gap:.45rem;border-top:1px solid var(--line-strong);padding-top:1rem;padding-inline:var(--content-offset);font-size:clamp(0.82rem,1.15vw,0.94rem);letter-spacing:.02em;opacity:1;transform:translateY(0);pointer-events:auto;overflow-x:auto;scrollbar-width:none;transition:opacity 320ms ease,transform 320ms ease}.intro-links::-webkit-scrollbar{display:none}body.js-enhanced .intro-links{opacity:0;transform:translateY(10px);pointer-events:none}body.js-enhanced .intro-links.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}.intro-links a{flex:0 0 auto;text-decoration:none;color:var(--ink-soft);transition:color 180ms ease,transform 180ms ease}.intro-links a:hover,.intro-links a:focus-visible{color:var(--ink);outline:0;transform:translateY(-1px)}.lang-switch{margin-left:0;order:20;text-align:right;line-height:1.1;white-space:nowrap;padding-left:.4rem;transition:opacity 180ms ease,visibility 180ms ease}.lang-switch.is-hidden{opacity:0;visibility:hidden;pointer-events:none}[data-reveal]{opacity:1;transform:translateY(0)}body.js-enhanced [data-reveal]{opacity:0;transform:translateY(20px);transition:opacity 520ms ease,transform 520ms ease}body.js-enhanced [data-reveal].is-visible{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none !important;transition:none !important}[data-reveal],.reveal,.intro-links,.lang-switch{opacity:1 !important;transform:none !important;visibility:visible !important;pointer-events:auto !important}}.section{container-type:inline-size;display:grid;grid-template-columns:minmax(10rem,0.5fr) minmax(0,1.5fr);column-gap:var(--section-gutter);padding:clamp(5.2rem,9vw,8rem) var(--content-offset);border-top:1px solid var(--line)}.section h1,.section h2{margin:0;max-width:11ch;font-size:clamp(1.85rem,3.1vw,3.15rem);font-size:clamp(1.85rem,3.45cqw,3.15rem);line-height:1;letter-spacing:0;font-weight:700}.section-head,.text-flow{min-width:0}.text-flow{max-width:72ch;padding-right:clamp(0rem,3vw,2.5rem)}.text-flow h3,.text-flow h4{margin:clamp(2.5rem,4.5vw,3.4rem) 0 .72rem;padding-top:0;border-top:0;font-size:clamp(1.08rem,1.55vw,1.28rem);line-height:1.24;letter-spacing:0;font-weight:700;color:var(--accent)}.name-mail-link{display:inline-block;position:relative;z-index:1;color:inherit;text-decoration:none;border-bottom:1px solid transparent;transition:border-color 180ms ease;cursor:pointer}.name-mail-link:hover,.name-mail-link:focus-visible{border-bottom-color:currentColor}.text-flow p{margin:0 0 1.05rem;color:var(--text-body);line-height:1.78}#co-delame .text-flow>p:nth-of-type(-n+3),#what-we-do .text-flow>p:nth-of-type(-n+3),.text-flow>p:first-child{color:var(--ink);font-size:clamp(1.12rem,1.65vw,1.34rem);line-height:1.62}.text-flow ul{margin:.55rem 0 1.25rem;padding:0;list-style:none}.text-flow li{position:relative;margin-bottom:.46rem;padding-left:1.05rem;color:var(--text-body);line-height:1.66}.text-flow li::before{content:"";position:absolute;left:0;top:.75em;width:.32rem;height:.32rem;border-radius:999px;background:var(--accent-warm)}.text-flow ul.client-grid{list-style:none;margin:1.1rem 0 1.5rem;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:0;border-top:1px solid var(--line)}.text-flow .client-grid li{margin:0;padding:.62rem 1rem .62rem 0;border-bottom:1px solid var(--line);font-size:.95rem;line-height:1.35;color:var(--ink-soft)}.text-flow .client-grid li::before{display:none}.client-source{font-size:.92rem}.client-source a{color:var(--ink);text-decoration:underline;text-underline-offset:.18em}.text-flow .person{border-top:1px solid var(--line)}.text-flow .person:last-of-type{border-bottom:1px solid var(--line)}.text-flow .person summary{list-style:none;cursor:pointer;display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem 1rem;padding:1.15rem 2.4rem 1.15rem 0;position:relative;transition:color 180ms ease,padding-left 180ms ease}.text-flow .person summary::-webkit-details-marker{display:none}.text-flow .person-name{margin:0;padding:0;border:0;font-size:clamp(1.05rem,1.55vw,1.26rem);line-height:1.2;letter-spacing:0;color:var(--ink)}.text-flow .person-role{color:var(--ink-muted);font-size:.9rem}.text-flow .person summary::after{content:"";position:absolute;right:.35rem;top:50%;width:.6rem;height:.6rem;border-right:1px solid var(--ink-soft);border-bottom:1px solid var(--ink-soft);transform:translateY(-70%) rotate(45deg);transition:transform 220ms ease}.text-flow .person[open] summary::after{transform:translateY(-30%) rotate(225deg)}.text-flow .person summary:hover .person-name,.text-flow .person summary:focus-visible .person-name{color:var(--accent)}.text-flow .person summary:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:4px}.text-flow .person-body{padding:0 2.4rem 1rem 0}.text-flow .person-body>p:first-child{margin-top:0}.text-flow .person[open] .person-body{animation:personReveal 280ms ease both}@keyframes personReveal{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.text-flow .person-mail{margin:.5rem 0 0}.text-flow .team-more{margin-top:2.4rem}.section-accent{background:transparent;border-bottom:1px solid var(--line)}.site-footer{border-top:1px solid var(--line);padding:clamp(4.5rem,7vw,6.5rem) var(--content-offset) 3.2rem;padding-inline:var(--content-offset)}.site-footer h2{margin:0 0 .75rem;font-size:clamp(1.75rem,2.75vw,2.65rem);line-height:1}.site-footer p,.site-footer a{margin:0;color:var(--footer-ink);text-decoration:none;line-height:1.65}.site-footer address{font-style:normal;margin-bottom:.85rem}.contact-layout{display:grid;grid-template-columns:minmax(260px,0.62fr) minmax(320px,1fr);gap:var(--section-gutter);align-items:start}.contact-map-wrap{display:flex;flex-direction:column;gap:.45rem}.contact-map iframe{width:100%;min-height:clamp(320px,38vw,430px);border:0;border-radius:0}.map-card{position:relative;border-radius:0;overflow:hidden;border:1px solid var(--line);background:var(--surface-subtle);box-shadow:var(--shadow-soft)}.map-card:hover{border-color:#d8d8d8}.map-badge{position:absolute;top:.75rem;left:.75rem;z-index:2;display:inline-flex;align-items:center;padding:.35rem .62rem;border-radius:4px;background:rgba(17,17,17,0.78);color:#fff;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}.map-link{position:absolute;top:.75rem;right:.75rem;z-index:2;display:inline-flex;align-items:center;padding:.42rem .7rem;border-radius:4px;background:rgba(255,255,255,0.94);color:#1b1b1b;font-size:.8rem;text-decoration:none;border:1px solid rgba(0,0,0,0.08);backdrop-filter:blur(4px)}.map-link:hover,.map-link:focus-visible{background:var(--surface)}.map-fallback{margin:0;font-size:.9rem;color:#555}.map-fallback a{color:inherit;text-decoration:underline;text-underline-offset:.15em}.map-consent{position:absolute;inset:0;z-index:3;display:grid;align-content:center;justify-items:center;gap:.9rem;padding:1.1rem;text-align:center;background:rgba(251,251,248,0.96);opacity:0;pointer-events:none;transition:opacity 220ms ease}.map-consent p{margin:0;max-width:36ch;color:var(--text-body);font-size:.95rem;line-height:1.4}.map-consent-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.55rem}.map-consent-accept,.map-consent-decline{padding:.52rem .85rem;border-radius:6px;font:inherit;font-size:.86rem;cursor:pointer}.map-consent-accept{border:1px solid var(--ink);background:var(--ink);color:var(--bg)}.map-consent-decline{border:1px solid rgba(0,0,0,0.24);background:var(--surface);color:var(--ink)}.map-card.awaiting-consent iframe{opacity:0}.map-card.awaiting-consent{background:var(--surface-subtle);min-height:clamp(320px,38vw,430px)}.site-footer .copyright{margin-top:1.4rem;color:#6a6a6a;font-size:.85rem}.site-footer .copyright a{text-decoration:underline;text-underline-offset:.18em}.map-card.show-consent .map-consent{opacity:1;pointer-events:auto}.reveal{opacity:0;transform:translateY(18px);transition:opacity 500ms ease,transform 500ms ease}.reveal.visible{opacity:1;transform:translateY(0)}@media(max-width:720px){:root{--content-offset:clamp(0rem,3vw,1rem)}html,body{overflow-x:clip}.corner-logo{top:clamp(0.9rem,4.5vw,1.4rem);right:max(clamp(0.6rem,2.5vw,0.9rem),calc((100vw - var(--container)) / 2 + var(--content-offset)));width:clamp(44px,12vw,60px)}.intro{padding:1rem 0 .85rem}.intro-stage{flex:1;min-height:0;justify-content:center;padding-inline:var(--content-offset);padding-block:1.5vh;overflow:hidden}.intro-title{max-width:100%;width:100%;font-size:clamp(2.1rem,13vw,4.6rem)}.intro-line{max-width:100%;width:max-content}.intro-links{display:flex;flex-wrap:nowrap;justify-content:flex-start;gap:clamp(1rem,5vw,1.55rem);padding-inline:var(--content-offset);font-size:clamp(0.76rem,3vw,0.86rem)}.lang-switch{margin-left:0;text-align:left}.line-2{--line-shift:.7ch}.line-3{--line-shift:1.4ch}.line-4{--line-shift:2.1ch}.slogan-hero{font-size:clamp(2.2rem,12vw,4.8rem);line-height:.92;padding:clamp(0.5rem,3vw,1rem) clamp(0.8rem,4vw,1.4rem)}.slogan-line-2{--slogan-shift:.7ch}.slogan-line-3{--slogan-shift:1.4ch}.slogan-line-4{--slogan-shift:2.1ch}.contact-layout{grid-template-columns:1fr}.section{grid-template-columns:1fr;gap:clamp(1.35rem,5vw,2rem);padding:clamp(3.2rem,12vw,4.6rem) var(--content-offset)}.section h1,.section h2{max-width:100%}.text-flow{padding-right:0}.map-badge{font-size:.72rem;padding:.3rem .52rem}.map-link{font-size:.74rem;padding:.34rem .56rem}}.cookie-banner{position:fixed;left:clamp(0.8rem,3vw,1.5rem);right:clamp(0.8rem,3vw,1.5rem);bottom:clamp(0.8rem,3vw,1.5rem);z-index:240;max-width:540px;margin-left:auto;padding:clamp(1rem,2.2vw,1.4rem) clamp(1.1rem,2.6vw,1.6rem);background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 24px 70px rgba(17,17,17,0.16);display:flex;flex-direction:column;gap:.55rem;font-size:.95rem;line-height:1.45;color:var(--ink)}.cookie-banner[hidden]{display:none}.cookie-banner-title{margin:0;font-size:1.05rem;font-weight:700}.cookie-banner-body,.cookie-banner-more{margin:0;color:var(--ink-soft)}.cookie-banner-more a{color:inherit;text-decoration:underline;text-underline-offset:.2em}.cookie-banner-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end;margin-top:.25rem}.cookie-banner-actions button{min-height:2.45rem;min-width:clamp(7rem,18vw,9rem);padding:.55rem .95rem;border:1px solid var(--ink);border-radius:6px;font:inherit;font-weight:600;cursor:pointer;transition:border-color 180ms ease,background 180ms ease,color 180ms ease}.cookie-banner-decline{background:var(--surface);color:var(--ink)}.cookie-banner-decline:hover,.cookie-banner-decline:focus-visible{background:var(--surface-subtle);outline:0}.cookie-banner-accept{background:var(--ink);color:var(--bg);border-color:var(--ink)}.cookie-banner-accept:hover,.cookie-banner-accept:focus-visible{background:#000;border-color:#000;outline:0}.privacy-revoke-btn{display:inline-flex;align-items:center;min-height:2.4rem;padding:.5rem .9rem;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;transition:border-color 180ms ease}.privacy-revoke-btn:hover,.privacy-revoke-btn:focus-visible{border-color:var(--ink);outline:0}.privacy-revoke-btn[disabled]{cursor:default;opacity:.75}@media(max-width:720px){.cookie-banner{max-width:none;margin-left:0}}@media(prefers-color-scheme:dark){:root{--bg:#141512;--surface:#1b1c18;--surface-subtle:#20221d;--ink:#eeeeea;--ink-soft:#b0afa6;--ink-muted:#8e8d84;--line:#303127;--line-strong:#464536;--accent:#c2a15a;--text-body:#d2d1c9;--footer-ink:#c8c7bf;--shadow-soft:0 24px 70px rgba(0,0,0,0.34)}.site-footer .copyright{color:#8a8a92}.wire-hero,.comic-hero{background:transparent;display:flex;align-items:center;justify-content:center}.wire-hero img,.comic-hero img{width:auto;height:100%;max-width:100%;object-fit:contain;box-sizing:border-box;padding:clamp(0.5rem,1.2vw,0.9rem);background:#fafafa;border-radius:14px}.skip-link{background:#ededed;color:#111}.cookie-banner{background:var(--surface);box-shadow:0 18px 50px rgba(0,0,0,0.55)}.cookie-banner-decline{background:var(--surface);color:var(--ink);border-color:#4a4d57}.cookie-banner-decline:hover,.cookie-banner-decline:focus-visible{background:var(--surface-subtle)}.cookie-banner-accept{background:#ededed;color:#111;border-color:#ededed}.cookie-banner-accept:hover,.cookie-banner-accept:focus-visible{background:#fff;border-color:#fff}.privacy-revoke-btn{background:var(--surface);color:var(--ink)}.privacy-revoke-btn:hover,.privacy-revoke-btn:focus-visible{border-color:#8a8a92}.map-card.awaiting-consent,.map-card{background:var(--surface-subtle)}.map-consent{background:rgba(20,21,18,0.94)}.map-consent p{color:var(--text-body)}.map-consent-decline{background:var(--surface);color:var(--ink);border-color:var(--line-strong)}}