:root{--aube-50:#fff4ee;--aube-100:#ffe6da;--aube-200:#ffcbb4;--aube-300:#ffa985;--aube-400:#ff8559;--aube-500:#ff6b35;--aube-600:#e0521d;--aube-700:#b3410f;--aube-800:#7f2e0b;--aube-900:#4a1b08;--granit-50:#fafaf7;--granit-100:#f0f1ee;--granit-200:#dcdcd4;--granit-300:#b9bec9;--granit-400:#9aa3b2;--granit-500:#6f7787;--granit-600:#5a6272;--granit-700:#3a4150;--granit-800:#262b36;--granit-850:#171a21;--granit-900:#0f1115;--granit-text-dark:#e8eaf0;--granit-text-light:#15171c;--glacier-300:#b6d2e6;--glacier-400:#8fb8d6;--glacier-600:#2f6f9a;--glacier-800:#1d4663;--sapin-300:#a9d0bd;--sapin-400:#7fb89a;--sapin-600:#2c6b4c;--sapin-800:#1b4430;--font-display:"Archivo", "Helvetica Neue", Arial, sans-serif;--font-body:"Instrument Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, monospace;--text-xs:.8125rem;--text-sm:.875rem;--text-base:1rem;--text-md:1.125rem;--text-h4:1.25rem;--text-h3:1.5625rem;--text-h2:clamp(1.75rem, 1.2rem + 2.2vw, 2.44rem);--text-h1:clamp(2.75rem, 1.4rem + 5.2vw, 5rem);--leading-tight:1.05;--leading-snug:1.25;--leading-body:1.6;--tracking-display:-.025em;--tracking-eyebrow:.14em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--section-y:clamp(4rem, 2.5rem + 6vw, 8rem);--gutter:clamp(1.25rem, .5rem + 3vw, 2.5rem);--container:70rem;--tap-min:2.75rem;--radius-tag:6px;--radius-img:10px;--radius-card:14px;--radius-pill:999px;--shadow-none:none;--shadow-overlay:0 12px 40px #00000059;--dur-fast:.15s;--dur-base:.2s;--ease:cubic-bezier(.2, .6, .2, 1);--focus-width:2px;--focus-offset:3px}:root,:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#0f1115;--color-surface:#171a21;--color-text:#e8eaf0;--color-text-muted:#9aa3b2;--color-border:#262b36;--color-border-strong:#6b7385;--color-accent:#ff6b35;--color-accent-hover:#ff8559;--color-accent-soft:#2a1c16;--color-on-accent:#0f1115;--color-accent-text:#ff6b35;--color-focus:#ff6b35;--color-glacier:#8fb8d6;--color-glacier-soft:#14232e;--color-sapin:#7fb89a;--color-sapin-soft:#12241b;--color-overlay:#0f1115eb;--color-nav-bg:#0f1115c7;--color-image-veil:linear-gradient(to top, #0f1115d1, #0f111540 60%, #0f111500)}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#fafaf7;--color-surface:#fff;--color-text:#15171c;--color-text-muted:#5a6272;--color-border:#dcdcd4;--color-border-strong:#6f7787;--color-accent:#ff6b35;--color-accent-hover:#ff8559;--color-accent-soft:#ffe9df;--color-on-accent:#0f1115;--color-accent-text:#b3410f;--color-focus:#b3410f;--color-glacier:#2f6f9a;--color-glacier-soft:#e2eef6;--color-sapin:#2c6b4c;--color-sapin-soft:#e3f0e8;--color-overlay:#fafaf7f0;--color-nav-bg:#fafaf7cc;--color-image-veil:linear-gradient(to top, #0f1115b3, #0f111533 60%, #0f111500)}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#fafaf7;--color-surface:#fff;--color-text:#15171c;--color-text-muted:#5a6272;--color-border:#dcdcd4;--color-border-strong:#6f7787;--color-accent:#ff6b35;--color-accent-hover:#ff8559;--color-accent-soft:#ffe9df;--color-on-accent:#0f1115;--color-accent-text:#b3410f;--color-focus:#b3410f;--color-glacier:#2f6f9a;--color-glacier-soft:#e2eef6;--color-sapin:#2c6b4c;--color-sapin-soft:#e3f0e8;--color-overlay:#fafaf7f0;--color-nav-bg:#fafaf7cc;--color-image-veil:linear-gradient(to top, #0f1115b3, #0f111533 60%, #0f111500)}html{-webkit-text-size-adjust:100%}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-body);margin:0}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:var(--tracking-display);line-height:var(--leading-snug);margin:0}h1{font-size:var(--text-h1);font-weight:800;line-height:var(--leading-tight)}h2{font-size:var(--text-h2);font-weight:800}h3{font-size:var(--text-h3);font-weight:700}h4{font-size:var(--text-h4);font-weight:700}.num,time,[data-num]{font-variant-numeric:tabular-nums}.eyebrow{font-size:var(--text-xs);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--color-accent-text);font-weight:600}:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset);border-radius:var(--radius-tag)}a{color:inherit}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.container{max-width:var(--container);padding:0 var(--gutter);margin:0 auto}.section{padding:var(--section-y) 0;border-top:1px solid var(--color-border)}.section__head{gap:var(--space-2);max-width:40rem;margin-bottom:var(--space-12);flex-direction:column;display:flex}.section__lead{font-size:var(--text-md);color:var(--color-text-muted);margin:0}.skip-link{left:var(--space-4);z-index:20;padding:var(--space-3) var(--space-5);border-radius:var(--radius-pill);background:var(--color-accent);color:var(--color-on-accent);font-weight:600;position:absolute;top:-100px}.skip-link:focus{top:var(--space-4)}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap-min);padding:0 var(--space-6);border-radius:var(--radius-pill);font:600 .9375rem/1 var(--font-body);cursor:pointer;transition:background-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);border:1.5px solid #0000;text-decoration:none;display:inline-flex}.btn--lg{min-height:3.25rem;padding:0 var(--space-8);font-size:1rem}.btn--primary{background:var(--color-accent);color:var(--color-on-accent)}.btn--primary:hover{background:var(--color-accent-hover)}.btn--primary:active{background:var(--aube-600);transform:translateY(1px)}.btn--secondary{border-color:var(--color-text);color:var(--color-text);background:0 0}.btn--secondary:hover{border-color:var(--color-accent-text);color:var(--color-accent-text)}.btn--secondary:active{background:var(--color-accent-soft)}.btn--text{color:var(--color-text);padding:0 var(--space-2);border-radius:var(--radius-tag);background:0 0}.btn--text:hover{color:var(--color-accent-text);text-underline-offset:4px;text-decoration:underline}.btn--text:active{opacity:.7}.btn:disabled,.btn[aria-disabled=true]{cursor:not-allowed}.btn--primary:disabled,.btn--primary[aria-disabled=true]{background:var(--color-border);color:var(--color-text-muted)}.btn--secondary:disabled,.btn--text:disabled{opacity:.4}@media (width<=639px){.hero__actions{align-items:flex-start}.hero .btn{max-width:100%}}.badge{border-radius:var(--radius-pill);background:var(--color-accent-soft);color:var(--color-accent-text);white-space:nowrap;align-items:center;gap:6px;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.badge--sapin{background:var(--color-sapin-soft);color:var(--color-sapin)}.badge--glacier{background:var(--color-glacier-soft);color:var(--color-glacier)}.tag{border:1px solid var(--color-border);border-radius:var(--radius-tag);color:var(--color-text-muted);padding:3px 8px;font-size:.75rem;display:inline-block}.nav{z-index:10;background:var(--color-nav-bg);border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.nav{background:var(--color-bg)}}.nav__bar{justify-content:space-between;align-items:center;height:4rem;display:flex}.nav__brand{font:700 1.125rem var(--font-display);letter-spacing:var(--tracking-display);color:var(--color-text);text-decoration:none}.nav__toggle{width:var(--tap-min);height:var(--tap-min);border:1.5px solid var(--color-border-strong);border-radius:var(--radius-pill);color:var(--color-text);cursor:pointer;background:0 0;justify-content:center;align-items:center;display:inline-flex}.nav__links{margin:0;padding:0;list-style:none;display:none}.nav__links[data-open=true]{background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:var(--space-2) var(--gutter) var(--space-5);display:block}.nav__link{min-height:3.25rem;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);transition:color var(--dur-fast) var(--ease);justify-content:space-between;align-items:center;font-size:1.0625rem;font-weight:500;text-decoration:none;display:flex}.nav__link:hover{color:var(--color-text)}.nav__link[aria-current=true]{color:var(--color-text);box-shadow:inset 0 -2px 0 var(--color-accent)}@media (width>=640px){.nav__bar{height:4.5rem}.nav__toggle{display:none}.nav__links,.nav__links[data-open=true]{gap:var(--space-1);background:0 0;border:0;padding:0;display:flex}.nav__link{min-height:var(--tap-min);padding:0 var(--space-3);border-bottom:0;font-size:.9375rem}}.hero{align-items:center;min-height:clamp(35rem,80svh,51rem);display:flex;position:relative;overflow:hidden}.hero__inner{gap:var(--space-5);padding-block:var(--space-24);flex-direction:column;display:flex;position:relative}.hero__lead{max-width:34rem;font-size:var(--text-md);color:var(--color-text-muted);margin:0}.hero__actions{gap:var(--space-3);margin-top:var(--space-3);flex-direction:column;display:flex}@media (width>=640px){.hero__actions{flex-flow:wrap}}.hero__ridge{fill:none;width:100%;height:18rem;stroke:var(--color-border);stroke-width:1.5px;position:absolute;inset:auto 0 0}.hero--image{color:#fff}.hero--image:after{content:"";background:var(--color-image-veil);position:absolute;inset:0}.hero--image .hero__inner{z-index:1}.card{gap:var(--space-4);padding:var(--space-6);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);transition:border-color var(--dur-fast) var(--ease);flex-direction:column;display:flex}.card:hover{border-color:var(--color-border-strong)}.card__head{justify-content:space-between;align-items:flex-start;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.card__head .badge{white-space:normal;max-width:100%}.card__title{font-size:var(--text-h3);font-weight:700;line-height:1.2}.card__text{color:var(--color-text-muted);margin:0;font-size:.9375rem}.card__tags{flex-wrap:wrap;gap:6px;display:flex}.card__link{min-height:var(--tap-min);color:var(--color-text);align-self:flex-start;align-items:center;gap:6px;font-weight:600;text-decoration:none;display:inline-flex}.card__link:hover{text-underline-offset:4px;text-decoration:underline}.card--static:hover{border-color:var(--color-border)}.card__icon{width:2rem;height:2rem;stroke:var(--color-accent-text);fill:none;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.grid-cards{gap:var(--space-5);grid-template-columns:1fr;display:grid}@media (width>=640px){.grid-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){.grid-cards--passions{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cards--projects{grid-template-columns:repeat(3,minmax(0,1fr))}}.gallery{gap:var(--space-6);grid-template-columns:1fr;display:grid}@media (width>=640px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){.gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}.gallery__item{gap:var(--space-2);flex-direction:column;margin:0;display:flex}.gallery__frame{aspect-ratio:3/2;border-radius:var(--radius-img);display:block;position:relative;overflow:hidden}.gallery__frame img{object-fit:cover;filter:saturate(.9);width:100%;height:100%}.gallery__frame:after{content:"";transition:opacity var(--dur-fast) var(--ease);background:#0f11151a;position:absolute;inset:0}.gallery__frame:hover:after{opacity:0}.gallery__caption{font-size:var(--text-xs);color:var(--color-text-muted)}.lightbox{z-index:30;padding:var(--space-6);background:var(--color-overlay);place-items:center;display:grid;position:fixed;inset:0}.lightbox img{border-radius:var(--radius-img);max-width:90vw;max-height:80vh;box-shadow:var(--shadow-overlay)}.icon-btn{width:var(--tap-min);height:var(--tap-min);border:1.5px solid var(--color-border-strong);border-radius:var(--radius-pill);color:var(--color-text);cursor:pointer;background:0 0;justify-content:center;align-items:center;display:inline-flex}.link-list{border-top:1px solid var(--color-border);margin:0;padding:0;list-style:none}.link-list__item{justify-content:space-between;align-items:center;gap:var(--space-4);min-height:4rem;padding:0 var(--space-1);border-bottom:1px solid var(--color-border);color:var(--color-text);transition:background-color var(--dur-fast) var(--ease);text-decoration:none;display:flex}.link-list__item:hover{background:var(--color-surface)}.link-list__item:active{background:var(--color-border)}.link-list__item:hover .link-list__icon{stroke:var(--color-accent-text)}.link-list__item:hover .link-list__arrow{color:var(--color-accent-text);transform:translate(2px)}.link-list__icon{stroke:var(--color-text-muted);fill:none;stroke-width:1.5px;transition:stroke var(--dur-fast) var(--ease)}.link-list__arrow{transition:transform var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease)}.footer{border-top:1px solid var(--color-border);padding:var(--space-8) var(--gutter);text-align:center;font-size:var(--text-xs);color:var(--color-text-muted)}.flag{vertical-align:middle;width:1.5rem;height:1rem;box-shadow:0 0 0 1px var(--color-border);border-radius:2px;display:inline-block}:where(.icon){fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:1.25em;height:1.25em}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.nav__brand{align-items:center;gap:var(--space-2);display:inline-flex}.brand-mark{flex-shrink:0;width:2rem;height:2rem}.nav__menu{display:block}ul.card__tags,.plain-list,.stats{margin:0;padding:0;list-style:none}button.gallery__frame{cursor:zoom-in;width:100%;color:inherit;background:0 0;border:0;padding:0}.hero__actions,.actions{gap:var(--space-3);margin-top:var(--space-3);flex-direction:column;display:flex}@media (width>=640px){.hero__actions,.actions{flex-flow:wrap}}.hero__inner .eyebrow{margin:0}.hero__inner h1,.hero__lead{margin-top:var(--space-2)}.hero__ridge{pointer-events:none}.hero__ridge path{stroke:var(--color-border);stroke-width:1.5px;fill:none}@media (width<=639px){.nav__bar{flex-wrap:wrap;height:auto;min-height:4rem}.nav__menu{order:3;width:100%}}.stats{gap:var(--space-4);margin-top:var(--space-8);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.stat{gap:var(--space-1);padding:var(--space-5) var(--space-6);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);flex-direction:column;display:flex}.stat-value{font-family:var(--font-display);font-size:var(--text-h3);letter-spacing:var(--tracking-display);font-variant-numeric:tabular-nums;font-weight:800}.stat-label{font-size:var(--text-sm);color:var(--color-text-muted)}.subhead{font-size:var(--text-h4);margin:var(--space-12) 0 var(--space-4)}.plain-list{gap:var(--space-2);display:grid}.plain-list li{padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-tag)}.lightbox__dialog{align-items:center;gap:var(--space-4);flex-direction:column;max-width:100%;display:flex}.lightbox__controls{gap:var(--space-3);justify-content:center;display:flex}.lightbox__caption{color:var(--color-text);font-size:var(--text-sm);margin:0}.timeline{gap:var(--space-8);margin:0;padding:0;list-style:none;display:grid}.timeline__item{padding-left:var(--space-6);border-left:1px solid var(--color-border-strong);position:relative}.timeline__item:before{content:"";background:var(--color-border-strong);border-radius:50%;width:7px;height:7px;position:absolute;top:.6rem;left:-4px}.timeline__item .eyebrow{margin:0 0 var(--space-1)}.race-list{margin:0;padding:0;list-style:none}.race-list .race{align-items:center;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);display:flex}.race-list .race:last-child{border-bottom:0}.race__name{flex:1;order:-1;font-weight:500}.timeline__title{font-size:var(--text-h4);margin-bottom:var(--space-2);font-weight:700}.timeline__company{color:var(--color-text-muted);font-weight:500}.parcours-extra{gap:var(--space-8);margin-top:var(--space-12);display:grid}@media (width>=640px){.parcours-extra{grid-template-columns:repeat(3,minmax(0,1fr))}}.parcours-extra__stack{gap:var(--space-8);align-content:start;display:grid}.parcours-extra .subhead{margin-top:0}.demo-group+.demo-group{margin-top:var(--space-10)}.demo-group .subhead{margin-top:0;margin-bottom:var(--space-1)}.demo-group__lead{margin:0 0 var(--space-4);color:var(--color-text-muted)}.demo-list{border-top:1px solid var(--color-border);margin:0;padding:0;list-style:none}.demo{gap:var(--space-2);padding:var(--space-4) 0;border-bottom:1px solid var(--color-border);display:grid}@media (width>=768px){.demo{gap:var(--space-6);grid-template-columns:minmax(11rem,1fr) 3fr}}.demo__title{color:var(--color-text);align-self:start;align-items:center;gap:6px;font-weight:600;text-decoration:none;display:inline-flex}.demo__title:hover{text-underline-offset:4px;text-decoration:underline}.demo__body{gap:var(--space-3);display:grid}.demo__body .card__text{margin:0}.case-study .subhead{margin-top:var(--space-6);margin-bottom:var(--space-2);font-size:var(--text-base)}.case-study .card__link{margin-top:var(--space-2)}.detail-list{gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid}.detail-list--compact{gap:var(--space-3)}.detail-list li{gap:var(--space-1);padding-left:var(--space-4);border-left:3px solid var(--color-accent-text);display:grid}.detail-list__title{color:var(--color-text);font-weight:600}.case-study .badge{margin-top:var(--space-6);white-space:normal;border-radius:var(--radius-card);align-items:flex-start;max-width:100%;line-height:1.4}.case-study .badge:before{flex:0 0 6px;margin-top:.45em}.link-list__name{align-items:center;gap:var(--space-3);display:inline-flex}.link-list__item .link-list__icon{width:1.5rem;height:1.5rem}.card__link .icon,.btn .icon{width:1em;height:1em}.cloud{justify-content:center;align-items:baseline;gap:var(--space-3) var(--space-6);padding:var(--space-8) 0;text-align:center;flex-wrap:wrap;margin:0;list-style:none;display:flex}.cloud__word{font-family:var(--font-display);color:var(--color-text-muted);font-weight:700;line-height:1.1}.cloud__word--1{font-size:var(--text-sm);font-weight:500}.cloud__word--2{font-size:var(--text-base)}.cloud__word--3{font-size:var(--text-md);color:var(--color-text)}.cloud__word--4{font-size:var(--text-h4);color:var(--color-text)}.cloud__word--5{font-size:var(--text-h2);color:var(--color-accent-text);font-weight:800}.hero--page{padding-bottom:var(--space-8)}.footer__links{gap:var(--space-4);margin:var(--space-3) 0 0;justify-content:center;padding:0;list-style:none;display:flex}
