

:root{
  
  --lime:rgb(230, 255, 50);
  --lime-glow:rgba(230, 255, 50, .5);

  
  --iris:#8E48F9;
  
  --iris-light:#A369FA;

  
  --iris-on-dark:#A975FA;

  
  --violet:var(--iris);
  --violet-light:var(--iris-light);

  
  --surface-inverse:rgba(38,40,72,.9);
  --text-inverse:#FFFFFF;

  
  --night:#262848;

  
  --surface:#EFF2F8;
  --ink:var(--surface-inverse);

  
  --surface-raised:var(--text-inverse);

  

  
  --ink-60:rgba(38,40,72,.70);
  
  --ink-38:rgba(38,40,72,.4);
  --ink-10:rgba(38,40,72,.12);
  --ink-06:rgba(38,40,72,.07);

  
  --text-inverse-62:rgba(255,255,255,.62);

  
  --text-on-accent:#262848;
  --black:var(--text-on-accent);

  

  --radius:28px;      
  --radius-lg:44px;   
  --radius-full:999px;
  
  --cadre-retrait:clamp(12px,2vw,24px);
  --cadre-rayon:clamp(28px,4.5vw,64px);
  --mono:"Source Code Pro",ui-monospace,"SF Mono",Monaco,Menlo,Consolas,"Courier New",monospace;

  
  --sans-santoku:"Santoku",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --sans-lexend:"Lexend",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --sans:var(--sans-santoku);

  
  
  --header-h:64px;

  --highlight:var(--lime);
  --highlight-glow:var(--lime-glow);
}

[data-theme=dark]{
  
  --surface-inverse:#E1E7F2;
  --text-inverse:#1D2B3A;
  --ink:#EFF2F8;
  --surface:#152436;
  --surface-raised:#1E3049;
  --ink-60:rgba(255,255,255,.62);
  --ink-38:rgba(255,255,255,.4);
  --ink-10:rgba(255,255,255,.14);
  --ink-06:rgba(255,255,255,.08);
  --text-inverse-62:rgba(38,40,72,.6);
}

html{overflow-x:clip}

*{
  box-sizing:border-box;
  --hatch:repeating-linear-gradient(135deg,
    var(--hatch-ink, var(--ink-06)) 0 10px,
    transparent 10px 20px);
}
body{
  margin:0;
  background:var(--surface);
  color:var(--ink);
  font-family:var(--mono);
  font-size:15px;
  line-height:1.5;
  
  letter-spacing:-.065em;
  -webkit-font-smoothing:antialiased;
}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}

.hatch{background-image:var(--hatch)}

.app-header{
  position:sticky;top:0;z-index:20;
  background:transparent;
  border-bottom:1px solid rgba(127,127,127,.25);
  transition:background .25s ease, backdrop-filter .25s ease, transform .32s cubic-bezier(.4,0,.2,1);
}

.app-header.is-scrolled{
  background:var(--iris);
  border-bottom-color:rgba(255,255,255,.14);
}

.app-header.is-over-dark:not(.is-scrolled){background:rgba(38,40,72,.18)}

.app-header.is-scrolled .mark .brand{background:#fff;color:var(--iris)}
.app-header.is-scrolled .mark:hover .brand{background:var(--lime);color:var(--text-on-accent)}
.app-header.is-scrolled .lang{border-left-color:rgba(255,255,255,.22)}

.app-header.is-hidden{transform:translateY(-100%);transition-duration:.25s,.25s,.16s;transition-timing-function:ease,ease,cubic-bezier(.4,0,1,1)}

.app-header:has(.app-nav[data-open="true"]),
.app-header:has(.lang[open]){transform:none}

@media (prefers-reduced-motion:reduce){
  .app-header{transition:background .25s ease, backdrop-filter .25s ease}
}

.app-header.is-over-dark:not(.is-scrolled) .nav-toggle:not([aria-expanded="true"]) span{background:#fff}

@media (min-width:861px){
  .app-header.is-over-dark .nav a:not([aria-current]),
  .app-header.is-scrolled .nav a:not([aria-current]){color:rgba(255,255,255,.78)}
  .app-header.is-over-dark .nav a:not([aria-current]):hover,
  .app-header.is-scrolled .nav a:not([aria-current]):hover{background:rgba(255,255,255,.14);color:#fff}

  
  .app-header.is-over-dark .nav-menu:not([data-current="true"]) summary,
  .app-header.is-scrolled .nav-menu:not([data-current="true"]) summary{color:rgba(255,255,255,.78)}
  .app-header.is-over-dark .nav-menu:not([data-current="true"]) summary:hover,
  .app-header.is-scrolled .nav-menu:not([data-current="true"]) summary:hover{background:rgba(255,255,255,.14);color:#fff}

  
  .app-header.is-over-dark .nav-menu__panel a:not([aria-current]),
  .app-header.is-scrolled .nav-menu__panel a:not([aria-current]){color:var(--ink-60)}
  .app-header.is-over-dark .nav-menu__panel a:not([aria-current]):hover,
  .app-header.is-scrolled .nav-menu__panel a:not([aria-current]):hover{background:var(--ink-06);color:var(--ink)}
}

.app-header__inner{display:flex;align-items:center;gap:20px;min-height:var(--header-h);flex-wrap:wrap}
.mark{
  font-family:var(--sans);font-weight:300;font-size:13px;
  letter-spacing:.16em;text-transform:uppercase;color:var(--ink-60);
  text-decoration:none;margin-right:auto;
}
.mark:hover .brand{background:var(--violet-light)}

.mark .brand{font-size:16px;letter-spacing:.01em}

.brand-name{  }

.brand{
  display:inline-block;
  font-family:var(--sans);font-weight:400;
  text-transform:none;letter-spacing:0;
  background:var(--violet);color:var(--text-inverse);
  padding:.08em .42em .14em;border-radius:var(--radius-full);
  transition:background .15s ease;
}

.nav{display:flex;gap:4px;align-items:center}
.nav a{
  font-family:var(--mono);font-size:14px;text-decoration:none;
  color:var(--ink-60);padding:8px 14px;border-radius:var(--radius-full);
  transition:background .15s ease,color .15s ease;
}
.nav a:hover{background:var(--ink-06);color:var(--ink)}
.nav a[aria-current="page"]{background:var(--lime);color:var(--text-on-accent)}

.nav-menu{position:relative}

.nav-menu summary{
  position:relative;
  list-style:none;cursor:pointer;user-select:none;
  font-family:var(--mono);font-size:14px;
  color:var(--ink-60);padding:8px 30px 8px 14px;border-radius:var(--radius-full);
  transition:background .15s ease,color .15s ease;
}
.nav-menu summary::-webkit-details-marker{display:none}

.nav-menu summary::after{
  content:"";position:absolute;right:13px;top:50%;
  width:5px;height:5px;margin-top:-4px;
  border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;
  transform:rotate(45deg);transition:transform .2s ease;
}
.nav-menu[open] summary::after{transform:rotate(-135deg);margin-top:-1px}
.nav-menu summary:hover{background:var(--ink-06);color:var(--ink)}

.nav-menu[data-current="true"] summary{background:var(--lime);color:var(--text-on-accent)}

.nav-menu__panel{
  position:absolute;top:calc(100% + 8px);left:0;z-index:25;
  min-width:210px;padding:6px;
  background:var(--surface-raised);border-radius:18px;
  box-shadow:0 20px 40px -24px rgba(38,40,72,.55);
  border:1px solid var(--ink-06);
}
.nav-menu__panel a{
  display:block;white-space:nowrap;
  font-family:var(--mono);font-size:13px;text-decoration:none;
  color:var(--ink-60);padding:8px 12px;border-radius:12px;
  transition:background .15s ease,color .15s ease;
}
.nav-menu__panel a:hover{background:var(--ink-06);color:var(--ink)}
.nav-menu__panel a[aria-current="page"]{background:var(--lime);color:var(--text-on-accent)}

.app-header[data-nav="drawer"] .nav-menu__panel{
  position:static;box-shadow:none;border:0;padding:6px 0 0 14px;min-width:0;
}

.lang{position:relative;padding-left:14px;border-left:1px solid var(--ink-10)}

.lang summary{
  position:relative;
  list-style:none;cursor:pointer;user-select:none;
  font-family:var(--mono);font-size:12px;letter-spacing:.06em;
  color:var(--ink-60);padding:6px 26px 6px 10px;border-radius:var(--radius-full);
  transition:background .15s ease,color .15s ease;
}
.lang summary::-webkit-details-marker{display:none}

.lang__globe{display:block;width:16px;height:16px}

.lang summary::after{
  content:"";position:absolute;right:10px;top:50%;
  width:5px;height:5px;margin-top:-4px;
  border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;
  transform:rotate(45deg);transition:transform .2s ease;
}
.lang[open] summary::after{transform:rotate(-135deg);margin-top:-1px}
.lang summary:hover{background:var(--ink-06);color:var(--ink)}

.lang summary{background:var(--lime);color:var(--text-on-accent)}

.app-header{--pill-h:34px}
.app-header[data-nav="drawer"]{--pill-h:32px}

.mark .brand,
.nav a,
.lang summary{
  height:var(--pill-h);
  display:inline-flex;align-items:center;
  padding-block:0;
}
.mark .brand{padding-inline:.72em}

.lang__panel{
  position:absolute;top:calc(100% + 8px);right:0;z-index:25;
  min-width:190px;padding:6px;
  background:var(--surface-raised);border-radius:18px;
  box-shadow:0 20px 40px -24px rgba(38,40,72,.55);
  border:1px solid var(--ink-06);
}
.lang__panel a,
.lang__panel .lang__soon{
  display:flex;align-items:center;gap:10px;
  font-family:var(--mono);font-size:13px;text-decoration:none;
  color:var(--ink-60);padding:8px 12px;border-radius:12px;
  transition:background .15s ease,color .15s ease;
}
.lang__panel a:hover{background:var(--ink-06);color:var(--ink)}
.lang__panel a[aria-current]{background:var(--lime);color:var(--text-on-accent)}
.lang__soon{opacity:.4;cursor:not-allowed}
.lang__code{
  font-size:10px;letter-spacing:.1em;opacity:.6;
  min-width:2.2em;flex:none;
}

.app-header[data-nav="drawer"] .lang__panel{
  position:static;box-shadow:none;border:0;padding:6px 0 0;min-width:0;
}

.app-nav{display:contents}

.nav-toggle{
  display:none;flex:none;
  width:var(--pill-h);height:var(--pill-h);
  padding:calc((var(--pill-h) - 10px) / 2) calc((var(--pill-h) - 14px) / 2);
  border:0;background:none;cursor:pointer;
  flex-direction:column;justify-content:space-between;
  position:relative;
}

.nav-toggle::after{content:"";position:absolute;inset:-6px}
.nav-toggle span{
  display:block;height:1.5px;border-radius:2px;background:var(--ink);
  transition:transform .25s ease,opacity .2s ease;transform-origin:center;
}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(4.25px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-4.25px) rotate(-45deg)}

.nav-toggle[aria-expanded="true"]{position:relative;z-index:31}

.js .app-header[data-nav="drawer"],
.js .app-header[data-nav="drawer"].is-scrolled{
  background:transparent;
  backdrop-filter:none;-webkit-backdrop-filter:none;
}

.js .app-header[data-nav="drawer"]::before{
  content:"";
  position:absolute;inset:0;z-index:-1;
  pointer-events:none;
  background:linear-gradient(to bottom, rgba(38,40,72,.42), rgba(38,40,72,0));
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
}

.app-header[data-nav="drawer"] .nav-toggle{
  background:var(--violet);
  border-radius:var(--radius-full);
  transition:background .2s ease;
}
.app-header[data-nav="drawer"] .nav-toggle:hover{background:var(--violet-light)}
.app-header[data-nav="drawer"] .nav-toggle span{background:var(--text-inverse)}

.nav-scrim{
  position:fixed;inset:0;z-index:15;
  background:var(--surface-inverse);opacity:0;
  transition:opacity .3s ease;pointer-events:none;
}
.nav-scrim[data-open="true"]{opacity:.55;pointer-events:auto}
.nav-scrim[hidden]{display:none}

.js .app-header[data-nav="drawer"]{backdrop-filter:none;-webkit-backdrop-filter:none}

.js .app-header[data-nav="drawer"] .app-header__inner{padding-top:12px;padding-bottom:12px;gap:12px}
.js .app-header[data-nav="drawer"] .nav-toggle{display:flex}

.js .app-header[data-nav="drawer"] .app-nav{
  display:flex;flex-direction:column;gap:28px;
  position:fixed;top:0;right:0;bottom:0;z-index:30;
  width:min(82vw,320px);padding:96px 26px 32px;
  background:var(--surface-raised);
  transform:translateX(101%);
  transition:transform .32s cubic-bezier(.22,1,.36,1);
  overflow-y:auto;
}
.js .app-header[data-nav="drawer"] .app-nav[data-open="true"]{transform:translateX(0)}

.js .app-header[data-nav="drawer"] .app-nav .nav{flex-direction:column;align-items:stretch;gap:2px}

.js .app-header[data-nav="drawer"] .app-nav .nav a{font-size:17px;height:auto;padding:13px 16px}

.js .app-header[data-nav="drawer"] .app-nav .nav-menu summary{font-size:17px;padding:13px 32px 13px 16px}
.js .app-header[data-nav="drawer"] .app-nav .nav-menu summary::after{right:18px}
.js .app-header[data-nav="drawer"] .app-nav .nav-menu__panel a{font-size:16px;padding:11px 16px}
.js .app-header[data-nav="drawer"] .app-nav .lang{padding-left:0;border-left:0;border-top:1px solid var(--ink-10);padding-top:22px}

.js .app-header[data-nav="drawer"] .app-nav .nav a:not([aria-current]){color:var(--ink-60)}

@media (prefers-reduced-motion:reduce){
  .js .app-header[data-nav="drawer"] .app-nav{transition:none}
  .nav-scrim{transition:none}
}

.hero{padding-block:88px 64px}

@media (prefers-reduced-motion: no-preference){
  .js .hero h1{animation:heroTitre .95s cubic-bezier(.22,1,.36,1) both}
  .js .hero .hero-sub,
  .js .hero--full > .wrap > p{animation:heroSub .8s cubic-bezier(.22,1,.36,1) .18s both}

  .js .story-hero h1,
  .js .story-hero .hero-sub{animation:none}

  
  .js .page-index .hero h1,
  .js .page-home-v1 .hero h1,
  .js .page-the-platform .hero h1,
  .js .page-for-partners .hero h1,
  .js .page-for-me .hero h1,
  .js .page-the-platform .hero .hero-sub,
  .js .page-for-partners .hero .hero-sub,
  .js .page-index .hero--full > .wrap > p,
  .js .page-home-v1 .hero--full > .wrap > p,
  .js .page-for-partners .hero--full > .wrap > p,
  .js .page-for-me .hero--full > .wrap > p{animation:none}
}

.hero h1 .mot{display:inline-block;white-space:nowrap}
.hero h1 .lettre{display:inline-block}

@keyframes heroTitre{
  from{opacity:0;filter:blur(16px);transform:scale(1.06)}
  to{opacity:1;filter:blur(0);transform:none}
}
@keyframes heroSub{
  from{opacity:0;filter:blur(10px)}
  to{opacity:1;filter:blur(0)}
}

.hero--full{
  margin-top:calc(-1 * var(--header-h));
  padding-block:calc(88px + var(--header-h)) 72px;
  margin-bottom:8px;
}
.hero--full > .wrap{width:100%}

.hero--full,
.story-hero{
  background-image:radial-gradient(var(--halo-pos, 120% 90% at 12% 0%),
    var(--halo, transparent) 0%, transparent 52%);
}

.hero:not(.hero--full):not(.story-hero){position:relative;--halo:color-mix(in srgb, var(--iris) 13%, transparent)}
.hero:not(.hero--full):not(.story-hero)::before{
  content:"";position:absolute;z-index:-1;pointer-events:none;
  top:calc(-1 * var(--header-h));bottom:0;
  left:50%;width:100vw;transform:translateX(-50%);
  background-image:radial-gradient(var(--halo-pos, 120% 90% at 12% 0%),
    var(--halo) 0%, transparent 52%);
}

body{overflow-x:clip}

.hero--night,
.story-hero{--halo:color-mix(in srgb, var(--iris) 52%, transparent)}

.hero--iris{background-image:none}

.hero--night{background-color:var(--night);color:var(--text-inverse)}
.hero--night h1,
.hero--night .hero-sub,
.hero--night p{color:var(--text-inverse)}
.hero--night .hero-sub,
.hero--night > .wrap > p{color:var(--text-inverse-62)}

.hero--iris{background-color:var(--iris);color:var(--text-inverse)}
.hero--iris h1,
.hero--iris .hero-sub,
.hero--iris p{color:var(--text-inverse)}

.hero--iris .hero-sub,
.hero--iris > .wrap > p{color:#fff}

.hero.hero--night h1 em{background:none;color:var(--iris-on-dark);font-style:normal}

.hero.hero--iris h1 em{background:none;color:inherit;font-style:normal}

.hero h1{
  font-family:var(--sans);font-weight:800;
  font-size:clamp(32px,5.6vw,68px);line-height:1.05;
  letter-spacing:-.04em;margin:0 0 22px;max-width:15ch;
}
.hero h1 em{
  font-style:normal;
  background:linear-gradient(transparent 60%,var(--lime) 60%);
}

.btn-cta{
  --cta-height:3rem;
  --cta-icon-size:3rem;
  --cta-link-height:var(--cta-height);
  --cta-link-width:4.5rem;
  --cta-gap:4rem;
  --cta-duration:.6s;
  --cta-easing:cubic-bezier(.92,0,.15,1.4);
  position:relative;display:inline-flex;align-items:center;
  height:var(--cta-height);padding:0;border:none;background:transparent;
  cursor:pointer;font-family:var(--mono);text-decoration:none;margin-right:.5rem;
}
.btn-cta__label{
  position:relative;height:var(--cta-height);padding:0 3rem 0 1.5rem;
  background:var(--highlight);color:var(--black);
  border-radius:var(--radius-full);font-weight:400;font-size:1rem;
  display:inline-flex;align-items:center;
  transition:padding .3s var(--cta-easing),box-shadow .2s ease;
}
.btn-cta__label::after{
  content:"";display:block;position:absolute;top:0;left:calc(100% - 1.5rem);
  width:0;height:var(--cta-link-height);background-color:var(--highlight);
  --mask-svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 80'%3E%3Cpath fill='%23000' d='M100.12,40c0-37.81,17.9-39.89,19.88-40c-15.01,0.16-30.2,8.32-36.72,19.35C76.75,30.4,70.24,33.98,60,34c-10.24-0.02-16.75-3.6-23.28-14.64C30.2,8.32,15.01,0.16,0,0c1.98,0.11,19.88,2.19,19.88,40C19.88,77.82,1.97,79.89,0,80c15.01-0.16,30.2-8.32,36.72-19.35C43.25,49.6,49.76,46.02,60,46c10.24,0.02,16.75,3.6,23.28,14.64C89.8,71.68,104.99,79.84,120,80C118.03,79.89,100.12,77.82,100.12,40z'/%3E%3C/svg%3E");
  -webkit-mask-image:var(--mask-svg);-webkit-mask-repeat:no-repeat;
  -webkit-mask-position:center center;-webkit-mask-size:100% 100%;
  mask-image:var(--mask-svg);mask-repeat:no-repeat;
  mask-position:center center;mask-size:100% 100%;
  transition:width var(--cta-duration) var(--cta-easing);
}
.btn-cta__icon{
  position:absolute;right:-.5rem;
  width:var(--cta-icon-size);height:var(--cta-icon-size);
  background:var(--highlight);color:var(--black);border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;font-size:1.25rem;
  transition:transform .6s var(--cta-easing),box-shadow .2s ease;
}
.btn-cta:hover .btn-cta__label{box-shadow:0 0 20px var(--highlight-glow)}
.btn-cta:hover .btn-cta__label::after{visibility:visible;width:var(--cta-link-width);box-shadow:0 0 20px var(--highlight-glow)}
.btn-cta:hover .btn-cta__icon,
.btn-cta:active .btn-cta__icon{transform:translateX(var(--cta-gap));box-shadow:0 0 20px var(--highlight-glow)}
.btn-cta:focus{outline:none}
.btn-cta:focus-visible .btn-cta__label{outline:2px solid var(--violet);outline-offset:2px}

.btn-icon.is-sending svg,
.btn-cta.is-sending .btn-cta__icon svg{
  width:1.05rem;height:1.05rem;display:block;
  animation:envoi-bat 1.05s ease-in-out infinite;
}

.btn-cta.is-sending .btn-cta__icon,
.btn-cta.is-sending:hover .btn-cta__icon{transform:none;box-shadow:none}
.btn-cta.is-sending:hover .btn-cta__label{box-shadow:none}
.btn-cta.is-sending .btn-cta__label::after,
.btn-cta.is-sending:hover .btn-cta__label::after{visibility:hidden;width:0;box-shadow:none}

.btn-icon:disabled,
.btn-cta:disabled{cursor:progress}

form[aria-busy="true"] input:disabled,
form[aria-busy="true"] select:disabled,
form[aria-busy="true"] textarea:disabled{opacity:.6;cursor:progress}

@keyframes envoi-bat{
  0%,100%{transform:scale(1);opacity:1}
  50%    {transform:scale(.78);opacity:.5}
}

@media (prefers-reduced-motion:reduce){
  @keyframes envoi-bat{
    0%,100%{opacity:1}
    50%    {opacity:.45}
  }
  .btn-icon.is-sending svg,
  .btn-cta.is-sending .btn-cta__icon svg{animation-duration:1.6s}
}

:lang(fr) q{quotes:"«\202F" "\202F»" "“" "”"}

.link-quiet{
  font-family:var(--mono);font-size:15px;color:var(--ink-60);
  text-decoration:none;border-bottom:1px solid var(--ink-10);padding-bottom:2px;
  display:inline-block;
}
.link-quiet:hover{color:var(--ink);border-bottom-color:var(--violet)}

.btn-icon{
  width:2.5rem;height:2.5rem;border-radius:50%;border:0;cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--violet);color:var(--text-inverse);
  text-decoration:none;line-height:1;
  transition:background .15s ease,transform .3s cubic-bezier(.25,-.8,.25,1.75);
}
.btn-icon svg{width:1.05rem;height:1.05rem;display:block}
.btn-icon:hover{background:var(--violet-light)}

.icon-sm{
  width:2.1rem;height:2.1rem;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--lime);color:var(--text-on-accent);
}
.icon-sm svg{width:1.1rem;height:1.1rem;display:block}

.scene,
.opening__media{
  background-image:
    var(--hatch),
    linear-gradient(140deg,
      color-mix(in srgb, var(--ink-10) 55%, transparent) 0%,
      var(--ink-06) 55%,
      color-mix(in srgb, var(--ink-10) 35%, transparent) 100%);
}
.scene::after,
.opening__media::after{
  content:"";position:absolute;inset:14px;
  border:1px dashed var(--ink-10);border-radius:calc(var(--radius-lg) - 12px);
  pointer-events:none;
}

.scene{
  position:relative;overflow:hidden;
  border-radius:var(--radius-lg);
}
.scene__media{
  position:absolute;left:0;right:0;top:-12%;bottom:-12%;
  display:grid;place-items:center;padding:40px;will-change:transform;
}

.scene__media:has(.scene__photo){padding:0}

.scene:has(.scene__photo)::after{content:none}
.scene__photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.scene--wide{aspect-ratio:21/9}
.scene--tall{aspect-ratio:4/5}
.scene__brief{max-width:38ch;text-align:center;margin:0}
.scene__brief strong{
  display:block;font-family:var(--sans);font-weight:600;font-size:16px;
  letter-spacing:-.015em;color:var(--ink-60);margin:0 0 8px;
}
.scene__brief span{display:block;font-size:13px;color:var(--ink-38);line-height:1.5}
.scene-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.scene-note{margin:16px 0 0;font-size:12px;color:var(--ink-38)}

.stage{
  position:relative;min-height:84vh;overflow:hidden;
  display:grid;place-items:center;
  background:var(--surface-inverse);color:var(--text-inverse);
}
.stage__media{
  position:absolute;left:0;right:0;top:-14%;bottom:-14%;
  display:grid;place-items:center;padding:40px;will-change:transform;
  
  background:
    radial-gradient(60% 55% at 22% 28%, rgba(230,255,50,.14), transparent 70%),
    radial-gradient(55% 50% at 78% 74%, rgba(162,105,250,.20), transparent 70%),
    var(--surface-inverse);
}

.stage__media:has(.stage__photo){padding:0;background:var(--surface-inverse)}
.stage__photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.stage__media:has(.stage__photo)::after{
  content:"";position:absolute;inset:0;
  background:
    radial-gradient(52% 42% at 50% 50%, color-mix(in srgb, var(--text-on-accent) 58%, transparent), transparent 100%),
    color-mix(in srgb, var(--text-on-accent) 22%, transparent);
}

.stage--left .stage__photo{object-position:80% 50%}

.stage--left .stage__media:has(.stage__photo)::after{
  background:linear-gradient(90deg,
    color-mix(in srgb, var(--text-on-accent) 74%, transparent) 0%,
    color-mix(in srgb, var(--text-on-accent) 50%, transparent) 45%,
    color-mix(in srgb, var(--text-on-accent) 10%, transparent) 75%);
}
.stage__brief{max-width:34ch;text-align:center;margin:0;opacity:.5}
.stage__brief strong{
  display:block;font-family:var(--sans);font-weight:600;font-size:15px;
  color:var(--text-inverse);margin:0 0 8px;letter-spacing:-.015em;
}
.stage__brief span{display:block;font-size:12px;line-height:1.5;color:var(--text-inverse-62)}
.stage__content{position:relative;z-index:1;text-align:center;padding:0 24px}
.stage__quote{
  font-family:var(--sans);font-weight:800;
  font-size:clamp(30px,5.6vw,68px);line-height:1.05;letter-spacing:-.04em;
  margin:0 auto 16px;max-width:14ch;
}
.stage__attr{margin:0;color:var(--text-inverse-62);font-size:14px}

.stage--left{place-items:center start}
.stage--left .stage__content{
  text-align:left;width:100%;max-width:1080px;margin:0 auto;padding:64px 24px;
}

.stage--left .stage__quote{margin-left:0}
.stage--left h2{
  font-family:var(--sans);font-weight:800;
  font-size:clamp(24px,3.4vw,40px);line-height:1.1;letter-spacing:-.04em;
  margin:0 0 18px;max-width:16ch;color:var(--text-inverse);
}

.stage--left > .stage__content > p:not(.stage__quote):not(.stage__attr){
  margin:0 0 36px;color:var(--text-inverse-62);max-width:54ch;font-size:17px;
}

@media (max-width:820px){
  .scene-pair{grid-template-columns:1fr}
  .scene--wide{aspect-ratio:3/2}
}

.band-cta{
  margin-top:96px;padding:clamp(72px,10vw,120px) 0;
  background-color:var(--surface);
  background-image:var(--hatch);
  color:var(--ink);
}
.band-cta h2{
  font-family:var(--sans);font-weight:800;
  font-size:clamp(26px,4vw,46px);line-height:1.1;letter-spacing:-.04em;
  margin:0 0 18px;max-width:18ch;color:var(--ink);
}
.band-cta p{margin:0 0 36px;color:var(--ink-60);max-width:44ch;font-size:17px}

.band-cta h2 + .btn-cta{margin-top:18px}
.band-cta + .site-footer{margin-top:0}

.wf{
  position:relative;border-radius:21px;padding:5px;
  background:var(--surface-inverse);
  box-shadow:0 30px 60px -36px rgba(38,40,72,.6);
}

.wf-fit{display:block;min-width:0}
.wf-fit:not(.is-fitted) > .wf{max-width:100%}
.wf-shell,
.wf-mobile{border-radius:16px;overflow:hidden}
.wf__chrome{display:flex;gap:5px;align-items:center;padding:5px 8px 7px}
.wf__chrome i{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.28)}

.wt,.wt-avatar{font-family:var(--sans);color:var(--ink);line-height:1.2;letter-spacing:.015em}
.wt b{font-weight:700}
.wt em,.wt i{font-style:normal}
.wt-h1{font-weight:800;font-size:12px;letter-spacing:-.02em;color:var(--ink)}
.wt-h1 small{margin-left:4px;font-weight:500;font-size:7px;letter-spacing:0;color:var(--ink-60)}
.wt-btn{
  display:inline-flex;align-items:center;justify-content:center;flex:none;
  height:17px;padding:0 10px;border-radius:999px;white-space:nowrap;
  background:var(--lime);color:var(--text-on-accent);font-weight:700;font-size:6.5px;
}
.wt-btn--ghost{background:var(--surface-raised);color:var(--ink)}
.wt-btn--iris{justify-self:start;background:var(--iris);color:#fff}
.wt-label{font-size:6px;font-weight:500;color:var(--ink-60)}

.wt-pill{
  display:inline-flex;align-items:center;justify-content:center;flex:none;
  height:11px;padding:0 6px;border-radius:999px;white-space:nowrap;
  font-size:5.5px;font-weight:700;
  background:color-mix(in srgb, var(--iris) 16%, var(--surface-raised));color:var(--iris);
}
.wt-pill.is-on{background:var(--lime);color:var(--text-on-accent)}
.wt-pill.is-off{background:var(--ink-10);color:var(--ink-60)}
.wt-tag{
  justify-self:start;display:inline-flex;align-items:center;height:10px;padding:0 5px;border-radius:999px;
  background:color-mix(in srgb, var(--iris) 16%, var(--surface-raised));color:var(--iris);
  font-size:5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;
}

.wf--console{
  --sans:var(--sans-lexend);
  --mk-w:586px;width:var(--mk-w);aspect-ratio:3 / 2;
  display:flex;flex-direction:column;
}
.wf-shell{flex:1;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);background:var(--surface)}
.wf-top{display:flex;align-items:center;justify-content:space-between;padding:9px 12px 4px}
.wf-brand{font-family:var(--sans);font-weight:800;font-size:9px;letter-spacing:-.02em;color:var(--ink);line-height:1}
.wt-avatar{
  display:flex;align-items:center;justify-content:center;width:15px;height:15px;border-radius:50%;
  background:color-mix(in srgb, var(--iris) 18%, var(--surface-raised));color:var(--iris);
  font-weight:700;font-size:5.5px;line-height:1;
}
.wf-cols{display:grid;grid-template-columns:40px 1fr;min-height:0}
.wf-rail{display:flex;flex-direction:column;align-items:center;gap:6px;padding:4px 0 10px}
.wf-rail__gap{flex:1;min-height:10px}
.wf-rail__sep{width:18px;height:1px;background:var(--ink-10)}
.wf-ico{
  width:23px;height:23px;border-radius:7px;
  display:flex;align-items:center;justify-content:center;color:var(--ink-38);
}
.wf-ico svg{width:13px;height:13px;display:block}

.wf-ico.is-on{background:var(--lime);color:var(--text-on-accent)}
.wf-body{padding:0 10px 10px 2px;display:grid;grid-template-rows:minmax(0,1fr);min-height:0}

.wf-page{
  background:var(--surface-raised);border-radius:12px;padding:11px;
  display:grid;gap:9px;align-content:start;min-height:0;overflow:hidden;
}
.wf-pagehead{display:flex;align-items:center;justify-content:space-between;gap:10px}

.wf-page--dashboard{grid-template-rows:auto minmax(0,1fr);align-content:stretch}
.wf-page--liste{grid-template-rows:auto auto minmax(0,1fr) auto;align-content:stretch}
.wf-page--fiche{grid-template-rows:auto auto minmax(0,1fr);align-content:stretch}
.wf-page--instance{grid-template-rows:minmax(0,1fr);align-content:stretch}
.wf-page--workflow{grid-template-rows:auto minmax(0,1fr);align-content:stretch}

.wf-dash{display:grid;grid-template-columns:.9fr 1.1fr;gap:9px;min-height:0}
.wf-kpis{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto minmax(0,1fr);gap:7px}
.wf-kpi{background:var(--surface);border-radius:9px;padding:9px;display:grid;gap:3px}
.wt-value{font-weight:800;font-size:15px;letter-spacing:-.03em;line-height:1}
.wt-meta{font-size:5.5px;color:var(--ink-60)}
.wf-kpi.is-on .wt-value{justify-self:start;padding:1px 4px;border-radius:4px;background:var(--lime);color:var(--text-on-accent)}
.wf-chart{
  grid-column:1 / -1;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:8px;
  background:var(--surface);border-radius:9px;padding:9px;
}
.wf-chart__bars{display:flex;align-items:flex-end;gap:5px;min-height:40px}
.wf-chart__bars i{flex:1;border-radius:3px 3px 0 0;background:var(--ink-10);display:block}
.wf-chart__bars i.is-on{background:var(--lime)}
.wt-months{display:flex;gap:5px}
.wt-months span{flex:1;text-align:center;font-size:5px;color:var(--ink-60)}
.wf-lists{display:grid;grid-template-rows:1fr 1fr;gap:7px}
.wf-list{background:var(--surface);border-radius:9px;padding:8px 9px;display:grid;gap:6px;align-content:space-between}
.wt-listhead{display:flex;justify-content:space-between;align-items:baseline}
.wt-listhead span{font-weight:700;font-size:7px}
.wt-listhead em{font-size:5.5px;font-weight:600;color:var(--iris)}
.wt-row{display:grid;grid-template-columns:7px 1fr auto;gap:6px;align-items:center;font-size:6px;color:var(--ink-60)}
.wt-row span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wt-row b{margin-right:4px;font-weight:600;color:var(--ink)}
.wt-row em{font-size:5.5px}
.wf-list__dot{width:7px;height:7px;border-radius:50%;background:var(--iris);opacity:.3}
.wf-list__dot.is-on{background:var(--lime);opacity:1}

.wt-toolbar{display:flex;align-items:center;gap:6px}
.wt-search{
  display:flex;align-items:center;gap:5px;height:16px;width:36%;padding:0 7px;border-radius:999px;
  background:var(--surface);color:var(--ink-38);font-size:6px;
}
.wt-search svg{width:8px;height:8px;flex:none;display:block}
.wt-chip{
  display:inline-flex;align-items:center;height:16px;padding:0 8px;border-radius:999px;
  background:var(--surface);font-size:6px;font-weight:600;color:var(--ink-60);
}
.wt-chip.is-on{background:var(--ink-10);color:var(--ink)}
.wt-grid{min-height:0;overflow:hidden;background:var(--surface);border-radius:9px;padding:2px 9px 4px}
.wt-tr{
  display:grid;grid-template-columns:7px 1.4fr 1.1fr .9fr 52px;gap:9px;align-items:center;
  height:21px;border-bottom:1px solid var(--ink-06);
  font-size:6.5px;color:var(--ink-60);white-space:nowrap;
}
.wt-tr:last-child{border-bottom:0}
.wt-tr > *{min-width:0;overflow:hidden;text-overflow:ellipsis}
.wt-tr b{font-weight:600;color:var(--ink)}
.wt-tr code{font-family:var(--mono);font-size:6px;color:var(--ink)}
.wt-tr--head{height:17px;font-size:5.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-38)}
.wt-check{display:block;width:7px;height:7px;border-radius:2px;background:var(--surface-raised)}
.wt-pager{display:flex;justify-content:space-between;align-items:center;font-size:6px;color:var(--ink-60)}
.wt-pager span:last-child{display:flex;gap:3px}
.wt-pager i{
  display:flex;align-items:center;justify-content:center;min-width:13px;height:13px;border-radius:4px;
  background:var(--surface);font-size:6px;color:var(--ink);
}
.wt-pager i.is-on{background:var(--lime);color:var(--text-on-accent);font-weight:700}

.wf-page--facture{grid-template-rows:auto auto minmax(0,1fr) auto;align-content:stretch}
.wf-page--facture .wf-pagehead{justify-content:flex-start}
.wt-recsub{margin-top:-5px;font-size:6px;color:var(--ink-60)}
.wt-recsub b{font-weight:700;color:var(--ink)}
.wt-grid--recon{display:grid;grid-template-rows:17px repeat(7,minmax(0,1fr));padding:2px 6px 4px}
.wt-grid--recon .wt-tr{
  grid-template-columns:11px minmax(0,1fr) 62px 62px 52px;gap:9px;
  height:auto;padding:0 5px;
}
.wt-grid--recon .wt-tr > :nth-child(n+3){text-align:right}
.wt-grid--recon .wt-tr span{color:var(--ink-60)}
.wt-grid--recon .wt-tr strong{font-weight:600;color:var(--ink)}
.wt-grid--recon .wt-tr em{font-weight:700;color:var(--ink)}
.wt-match{
  width:11px;height:11px;border-radius:50%;
  background:color-mix(in srgb, var(--iris) 16%, var(--surface-raised));color:var(--iris);
  display:flex;align-items:center;justify-content:center;
}
.wt-match svg{width:7px;height:7px;display:block}
.wt-tr.is-alert{
  border-bottom-color:transparent;border-radius:7px;background:var(--surface-raised);
  box-shadow:0 8px 18px -12px rgba(38,40,72,.45);
}
.wt-tr.is-alert .wt-match{background:var(--lime);color:var(--text-on-accent)}
.wt-tr.is-alert strong{
  justify-self:end;padding:2px 4px;border-radius:4px;
  background:var(--lime);color:var(--text-on-accent);font-weight:800;
}
.wt-grid--recon .wt-tr--total em{color:var(--ink-60)}
.wt-btns{display:flex;gap:5px}

.wf-page--facture .wt-btn--ghost{background:var(--surface)}

.wf-rec{display:flex;align-items:center;gap:8px}
.wf-rec__tile{
  width:28px;height:28px;flex:none;border-radius:8px;
  background:var(--surface);color:var(--iris);
  display:flex;align-items:center;justify-content:center;
}
.wf-rec__tile svg{width:16px;height:16px;display:block}
.wt-rectitle{flex:1;min-width:0;display:grid;gap:2px}
.wt-rectitle b{font-weight:800;font-size:11px;letter-spacing:-.02em}
.wt-rectitle em{font-size:6px;color:var(--ink-60)}

.wt-tabs{display:flex;gap:4px;padding-bottom:6px;border-bottom:1px solid var(--ink-06)}
.wt-tabs span{padding:4px 9px;border-radius:999px;font-size:6.5px;font-weight:600;color:var(--ink-60)}
.wt-tabs span.is-on{background:var(--lime);color:var(--text-on-accent)}
.wf-rec__cols{display:grid;grid-template-columns:1.3fr 1fr;gap:9px;min-height:0}
.wf-fields{
  background:var(--surface);border-radius:9px;padding:10px;
  display:grid;grid-template-columns:1fr 1fr;gap:11px 12px;align-content:space-evenly;
}
.wt-field{display:grid;gap:2px}
.wt-field i{font-size:5.5px;color:var(--ink-60)}
.wt-field b{font-size:7.5px;font-weight:600;color:var(--ink)}
.wf-side{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:7px}
.wf-media{
  border-radius:9px;background:var(--surface);color:var(--ink-38);
  display:flex;align-items:center;justify-content:center;
}

.wf-media img,
.wf-feat__img img{display:block;width:100%;height:100%;object-fit:contain}
.wf-media img{padding:6px}

.wf-run{
  --debord:14px;
  display:grid;grid-template-columns:76px minmax(0,1fr) 128px;gap:9px;min-height:0;
}

.wf-steps{
  position:relative;left:4px;z-index:2;
  width:calc(100% + var(--debord) - 4px);margin:18px 0;
  padding:9px 10px 9px 6px;border-radius:14px;
  background:var(--surface-raised);
  box-shadow:0 12px 26px -14px rgba(38,40,72,.45);
  display:flex;flex-direction:column;justify-content:space-between;
}
.wf-steps::before{
  content:"";position:absolute;left:6px;top:6px;bottom:6px;width:18px;border-radius:999px;
  background:color-mix(in srgb, var(--iris) 16%, var(--surface-raised));
}
.wf-step{position:relative;display:flex;align-items:flex-start;gap:9px;padding-left:3px}
.wf-step > i{
  width:12px;height:12px;flex:none;border-radius:50%;
  background:var(--surface-raised);box-shadow:inset 0 0 0 1px var(--ink-10);
  display:flex;align-items:center;justify-content:center;
}
.wf-step > i svg{width:7px;height:7px;display:block}
.wf-step.is-done > i{background:var(--iris);box-shadow:none;color:var(--surface-raised)}
.wf-step.is-on > i{background:var(--lime);box-shadow:none}

.wt-steplabel{
  flex:1;min-width:0;display:grid;gap:3px;padding-top:2px;
  font-size:6.5px;font-weight:600;color:var(--ink-60);
  hyphens:auto;overflow-wrap:break-word;line-height:1.25;
}
.wf-step.is-done .wt-steplabel{color:var(--ink)}
.wf-step.is-on .wt-steplabel{color:var(--ink);font-weight:700}

.wt-steplabel em{
  justify-self:start;display:inline-flex;align-items:center;height:10px;padding:0 5px;border-radius:999px;
  background:color-mix(in srgb, var(--iris) 22%, var(--surface-raised));color:var(--iris);
  font-size:5px;font-weight:700;
}

.wf-stepcard{
  min-width:0;border-radius:14px;background:var(--surface);
  padding:16px 14px 0 calc(14px + var(--debord) - 9px);
  display:flex;flex-direction:column;
}
.wt-stephead{display:grid;gap:3px;padding-bottom:9px;border-bottom:1px solid var(--ink-06)}
.wt-stephead b{font-size:10px;font-weight:800;letter-spacing:-.02em}
.wt-stephead em{font-size:6px;color:var(--ink-60)}
.wf-stepcard__body{flex:1;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:12px 0}
.wt-quote{
  display:grid;grid-template-columns:10px 1fr auto;gap:7px;align-items:center;
  padding:7px 8px;border-radius:7px;background:var(--surface-raised);
}
.wt-quote > i{
  width:10px;height:10px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--ink-10);
  display:flex;align-items:center;justify-content:center;color:var(--text-on-accent);
}
.wt-quote > i svg{width:7px;height:7px;display:block}
.wt-quote.is-on > i{background:var(--lime);box-shadow:none}
.wt-quote b{display:block;font-size:7px;font-weight:700}
.wt-quote em{display:block;font-size:5.5px;color:var(--ink-60)}
.wt-quote strong{font-size:10px;font-weight:800;letter-spacing:-.02em}
.wt-quote.is-off{opacity:.55}
.wt-stepfoot{display:flex;justify-content:space-between;align-items:center;padding:8px 0 9px;border-top:1px solid var(--ink-06)}

.wf-annex{
  border-radius:14px;background:var(--surface);padding:16px 10px;
  display:flex;flex-direction:column;gap:7px;
}
.wf-annex__sep{height:1px;background:var(--ink-06);margin:4px 0}
.wt-annexhead{font-size:7px;font-weight:700;color:var(--ink)}
.wt-file{display:flex;align-items:center;gap:6px}
.wt-file > i{
  width:15px;height:15px;flex:none;border-radius:4px;
  background:var(--surface-raised);color:var(--ink-38);
  display:flex;align-items:center;justify-content:center;
}
.wt-file > i svg{width:9px;height:9px;display:block}
.wt-file > span{min-width:0;font-size:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wt-note{display:flex;gap:6px;align-items:flex-start;font-size:6px}
.wt-note > i{
  width:13px;height:13px;flex:none;border-radius:50%;background:var(--surface-raised);
  display:flex;align-items:center;justify-content:center;font-size:4.5px;font-weight:700;color:var(--iris);
}
.wt-note > span{display:grid;gap:1px;line-height:1.25}
.wt-note em{font-size:5px;color:var(--ink-60)}

.wf-flow{display:grid;grid-template-columns:1.25fr 1fr;gap:9px;min-height:0}
.wf-canvas{
  background:var(--surface);border-radius:9px;padding:11px 10px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
}
.wf-node{
  width:82%;display:flex;align-items:center;gap:7px;
  padding:5px 7px;border-radius:8px;background:var(--surface-raised);
}
.wf-node > i{
  width:15px;height:15px;flex:none;border-radius:5px;
  background:var(--surface);color:var(--iris);
  display:flex;align-items:center;justify-content:center;
}
.wf-node > i svg{width:9px;height:9px;display:block}
.wf-node.is-on > i{background:var(--lime);color:var(--text-on-accent)}
.wt-node{flex:1;display:grid;gap:1px}
.wt-node b{font-size:6.5px;font-weight:700}
.wt-node em{font-size:5.5px;color:var(--ink-60)}
.wf-link{width:1px;height:8px;background:var(--ink-10);display:block}
.wf-add{
  width:15px;height:15px;border-radius:50%;background:var(--surface-raised);color:var(--ink-38);
  display:flex;align-items:center;justify-content:center;
}
.wf-add svg{width:8px;height:8px;display:block}
.wf-panel{background:var(--surface);border-radius:9px;padding:10px;display:grid;gap:8px;align-content:start}
.wt-input{display:grid;gap:3px}
.wt-input i{font-size:5.5px;color:var(--ink-60)}
.wt-input b{display:flex;align-items:center;height:16px;padding:0 6px;border-radius:5px;background:var(--surface-raised);font-size:6.5px;font-weight:500}

.wt-toggle{display:flex;justify-content:space-between;align-items:center;font-size:6.5px}
.wt-toggle i{position:relative;width:18px;height:10px;flex:none;border-radius:999px;background:var(--ink-10)}
.wt-toggle i::after{content:"";position:absolute;top:2px;left:2px;width:6px;height:6px;border-radius:50%;background:var(--surface-raised)}
.wt-toggle i.is-on{background:var(--lime)}
.wt-toggle i.is-on::after{left:auto;right:2px;background:var(--text-on-accent)}

.wf--mobile{--mk-w:168px;width:var(--mk-w);border-radius:26px;padding:5px;aspect-ratio:9 / 19.5}
.wf--mobile .wf-mobile{border-radius:21px}
.wf-mobile{
  height:100%;display:grid;
  
  grid-template-rows:auto minmax(0,1fr) auto;
  background:var(--surface);
}

.wf-mhead{
  background-color:var(--iris);
  
  background-image:radial-gradient(110% 62% at 50% 100%,
    color-mix(in srgb, var(--text-on-accent) 62%, transparent) 0%, transparent 70%);
  padding:13px 10px 18px;border-radius:0 0 18px 18px;display:grid;gap:7px;
}

.wf-mhead:has(> .wt-mbtn){padding-bottom:26px}
.wf-mtop{display:flex;justify-content:flex-end}
.wf-mprofile{display:block;width:14px;height:14px;color:#fff}
.wf-mprofile svg{width:100%;height:100%;display:block}

.wf .wf-welcome{font-family:var(--sans);font-weight:800;font-size:11px;line-height:1.15;letter-spacing:-.02em;color:#fff;margin:2px 0 0;max-width:none}
.wf .wf-mline{font-family:var(--mono);font-size:6.5px;line-height:1.4;letter-spacing:-.03em;color:rgba(255,255,255,.72);margin:2px 0 0;max-width:none}
.wt-mbtn{
  justify-self:start;display:inline-flex;align-items:center;justify-content:center;
  height:14px;padding:0 9px;margin-top:4px;border-radius:999px;
  background:var(--lime);color:var(--text-on-accent);font-size:6px;font-weight:700;
}

.wt-mbtn--wide{justify-self:stretch;height:17px;font-size:6.5px}
.wt-mtitle{display:block;margin-top:2px;font-weight:800;font-size:11px;letter-spacing:-.02em;color:#fff}
.wt-msub{display:block;margin-bottom:6px;font-size:6px;color:rgba(255,255,255,.75)}

.wf-mbody{margin-top:-13px;padding:0 9px 8px;display:grid;gap:9px;align-content:start;overflow:hidden}

.wf-reminder{
  background:var(--surface-raised);border-radius:13px;padding:8px;
  box-shadow:0 10px 24px -18px rgba(38,40,72,.55);display:grid;gap:4px;
}
.wt-remtitle{font-size:8.5px;font-weight:800;letter-spacing:-.02em}
.wf-reminder__sep{height:1px;background:var(--ink-06);margin:2px 0 1px}
.wf-act{display:flex;align-items:center;gap:6px;font-size:6px}
.wf-act > i{width:13px;height:13px;flex:none;color:var(--iris);display:flex;align-items:center;justify-content:center}
.wf-act > i svg{width:100%;height:100%;display:block}
.wf-reminder .wt-mbtn{margin-top:3px}

.wf-short{display:grid;grid-template-columns:1fr 1fr;gap:6px}

.wf-short__car{
  background:var(--surface-raised);border-radius:11px;padding:4px 4px 6px;
  display:grid;gap:1px;align-content:start;
}

.wf-short__img{aspect-ratio:16 / 9;border-radius:8px;background:var(--surface);margin-bottom:3px;overflow:hidden}

.wf-short__img img{display:block;width:100%;height:100%;object-fit:contain;padding:5px 9px}
.wf-short__car em{margin:0 2px;font-size:6px;font-weight:700}
.wf-short__car small{margin:0 2px;font-size:5px;color:var(--ink-60)}
.wf-short__stack{display:grid;grid-template-rows:1fr 1fr;gap:6px}

.wf-short__stack span{
  border-radius:11px;background:var(--surface-raised);
  display:flex;align-items:center;gap:6px;padding:0 9px;color:var(--ink-38);
}
.wf-short__stack svg{width:13px;height:13px;flex:none;display:block}
.wf-short__stack em{font-size:6px;font-weight:600;color:var(--ink)}

.wf-mphoto{display:block;aspect-ratio:16 / 9;margin:-4px -6px -2px}
.wf-mphoto img{display:block;width:100%;height:100%;object-fit:contain}
.wf-vcard{
  background:var(--surface-raised);border-radius:13px;padding:8px 7px;
  box-shadow:0 10px 24px -18px rgba(38,40,72,.55);display:grid;gap:4px;
}
.wt-vrow{display:flex;justify-content:space-between;align-items:center;padding:0 2px}
.wt-vrow b{font-family:var(--mono);font-size:8px;font-weight:700}
.wt-vsub{padding:0 2px;font-size:5.5px;color:var(--ink-60)}
.wf-mlist{background:var(--surface-raised);border-radius:11px;padding:2px 9px;display:grid}
.wf-mrow{display:flex;align-items:center;gap:7px;height:20px;border-bottom:1px solid var(--ink-06)}
.wf-mrow:last-child{border-bottom:0}
.wf-mrow > i{width:11px;height:11px;flex:none;color:var(--ink-38);display:flex}
.wf-mrow > i svg{width:100%;height:100%;display:block}
.wf-mrow span{flex:1;font-size:6px}
.wf-mrow em{font-size:6px;font-weight:700}

.wf-mrow.is-up{height:auto;padding:4px 0}
.wf-mrow.is-up > i{color:var(--iris)}
.wf-mrow small{display:block;margin-top:1px;font-size:5px;font-weight:600;color:var(--iris)}

.wt-uptag{
  display:table;margin:1px 0 1px;padding:0 3px;border-radius:999px;
  background:color-mix(in srgb, var(--iris) 14%, transparent);
  font-style:normal;font-size:4.5px;font-weight:700;line-height:7px;
}

.wt-mlink{
  display:inline-block;margin-left:5px;padding:0 4px;border-radius:999px;
  border:.5px solid rgba(255,255,255,.6);color:#fff;
  font-style:normal;font-weight:700;font-size:5px;line-height:8px;
}

.wf-contrib{
  background:var(--surface-raised);border-radius:13px;padding:8px 9px 9px;
  box-shadow:0 10px 24px -18px rgba(38,40,72,.55);display:grid;gap:2px;
}
.wt-contrib{font-size:20px;font-weight:800;letter-spacing:-.03em;line-height:1.05}

.wf-calc .wf-mrow:last-child{border-top:1px solid var(--ink-10)}
.wf-calc .wf-mrow:last-child span,
.wf-calc .wf-mrow:last-child em{font-weight:800}
.wf-sim{background:var(--surface-raised);border-radius:11px;padding:8px 9px;display:grid;gap:7px}

.wf-thread{
  background:var(--surface-raised);border-radius:13px;padding:8px 9px;
  box-shadow:0 10px 24px -18px rgba(38,40,72,.55);display:grid;gap:2px;
}
.wf-thread b{font-size:7px}
.wf-thread em{font-size:5.5px;color:var(--iris);font-weight:600}
.wt-day{justify-self:center;font-size:5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-38)}

.wt-bubble{max-width:84%;padding:6px 8px;border-radius:11px;font-size:6px;line-height:1.35}
.wt-bubble--me{justify-self:end;background:var(--iris);color:#fff;border-bottom-right-radius:3px}
.wt-bubble--them{justify-self:start;background:var(--surface-raised);border-bottom-left-radius:3px}
.wt-bubble em{display:block;margin-top:3px;font-size:5px;color:var(--ink-60)}
.wt-attach{
  justify-self:start;display:inline-flex;align-items:center;gap:4px;
  height:15px;padding:0 7px 0 5px;border-radius:999px;
  background:var(--surface-raised);font-size:5.5px;font-weight:600;
}
.wt-attach svg{width:8px;height:8px;color:var(--iris);display:block}

.wf-mbody:has(> .wf-composer){align-content:stretch;grid-template-rows:repeat(5, auto) minmax(0,1fr)}
.wf-composer{
  align-self:end;
  display:flex;align-items:center;justify-content:space-between;
  height:22px;padding:0 3px 0 9px;border-radius:999px;
  background:var(--surface-raised);font-size:6px;color:var(--ink-38);
}
.wf-composer i{
  width:16px;height:16px;border-radius:50%;background:var(--lime);color:var(--text-on-accent);
  display:flex;align-items:center;justify-content:center;
}
.wf-composer svg{width:8px;height:8px;display:block}

.wf-msearch{
  display:flex;align-items:center;gap:6px;height:22px;padding:0 9px;border-radius:999px;
  background:var(--surface-raised);color:var(--ink-38);font-size:6px;
  box-shadow:0 10px 24px -18px rgba(38,40,72,.55);
}
.wf-msearch svg{width:10px;height:10px;flex:none;display:block}
.wt-mchips{display:flex;gap:5px}
.wt-mchips i{
  display:inline-flex;align-items:center;height:13px;padding:0 7px;border-radius:999px;
  background:var(--surface-raised);font-size:5.5px;font-weight:600;color:var(--ink-60);
}
.wt-mchips i.is-on{background:var(--lime);color:var(--text-on-accent)}

.wf-mthumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px 0 6px}
.wf-mthumbs > span{
  aspect-ratio:4 / 3;border-radius:6px;overflow:hidden;
  background:var(--surface);display:flex;
}
.wf-mthumbs img{width:100%;height:100%;object-fit:cover;object-position:60% 55%;display:block}

.wf-mthumbs--near img{object-position:38% 62%;transform:scale(2.4)}
.wf-mthumbs__add{align-items:center;justify-content:center;color:var(--ink-38)}
.wf-mthumbs__add svg{width:9px;height:9px;display:block}

.wf-feat{background:var(--surface-raised);border-radius:13px;padding:7px 7px 9px;display:grid;gap:4px}
.wf-feat__img{aspect-ratio:16 / 9;border-radius:9px;background:var(--surface)}
.wf-feat .wt-tag{margin:2px 0 0 2px}

.wt-vrow .wt-featname{font-family:var(--sans);font-size:8.5px;font-weight:800;letter-spacing:-.02em}
.wt-featprice{font-size:8px;font-weight:800;letter-spacing:-.01em}
.wt-featprice small{font-size:5.5px;font-weight:500;color:var(--ink-60)}

.wf-tabs{
  display:flex;justify-content:space-around;align-items:center;
  margin:0 12px 10px;padding:7px 4px;
  background:var(--lime);border-radius:999px;
  box-shadow:0 10px 24px -14px rgba(38,40,72,.5);
}
.wf-tabs span{
  position:relative;display:flex;align-items:center;justify-content:center;
  width:19px;height:19px;border-radius:50%;color:var(--text-on-accent);
}
.wf-tabs svg{width:13px;height:13px;display:block}

.wf-tabs span.is-on{background:rgba(38,40,72,.14)}

.wf-tabs b{
  position:absolute;top:-3px;right:-4px;
  min-width:11px;height:11px;padding:0 2px;border-radius:999px;
  background:var(--text-on-accent);color:var(--lime);
  font-family:var(--sans);font-weight:800;font-size:7px;line-height:11px;text-align:center;letter-spacing:0;
}

.vg-fit{display:block;min-width:0;margin:-6px -6px 18px;container-type:inline-size}
.vg{
  position:relative;aspect-ratio:4 / 3;border-radius:20px;overflow:hidden;
  background:var(--surface);font-family:var(--sans);color:var(--ink);
  font-size:clamp(12px, 4.9cqw, 18px);letter-spacing:0;line-height:1.25;
}
.vg-card{
  position:absolute;z-index:1;left:8%;top:9%;width:70%;
  display:grid;gap:.55em;align-content:start;padding:.8em .9em;
  background:var(--surface-raised);border-radius:.8em;
  box-shadow:0 1px 2px rgba(38,40,72,.06),0 10px 28px rgba(38,40,72,.12);
}
.vg-head{margin:0;font-weight:600;font-size:.82em;color:var(--ink-60);white-space:nowrap}
.vg-strong{font-weight:600;font-size:.9em;white-space:nowrap}
.vg-big{margin:0;font-weight:600;font-size:1.9em;letter-spacing:-.02em;line-height:1}
.vg-row{display:flex;align-items:center;justify-content:space-between;gap:.5em}
.vg-bar{display:block;height:.5em;border-radius:999px;background:var(--ink-10)}
.vg-pill{height:auto;padding:.3em .65em;font-size:.68em}

.vg-chip{
  position:absolute;z-index:2;right:6%;bottom:9%;
  display:inline-flex;align-items:center;gap:.45em;padding:.45em .95em .45em .45em;
  border-radius:999px;white-space:nowrap;
  background:var(--iris);color:#fff;font-weight:600;font-size:.82em;
  box-shadow:0 8px 20px color-mix(in srgb, var(--iris) 38%, transparent);
}
.vg-chip i{width:1.55em;height:1.55em;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.22)}
.vg-chip svg{width:66%;height:66%;display:block}

.vg--order .vg-card{top:7%}
.vg-car{height:3.4em;border-radius:.55em;background:var(--surface);display:grid;place-items:center;overflow:hidden}

.vg-car img{display:block;height:4em;width:auto;max-width:none}

.vg--run .vg-card{width:56%}
.vg-steps{list-style:none;margin:0;padding:0;display:grid;gap:.5em}
.vg-steps li{display:grid;grid-template-columns:.9em 1fr;align-items:center;gap:.6em;font-size:.82em;color:var(--ink-60)}
.vg-steps li > i{width:.8em;height:.8em;border-radius:50%;border:1.5px solid var(--ink-38)}
.vg-steps li.is-done > i{background:var(--iris);border-color:var(--iris)}
.vg-steps li.is-now{color:var(--ink);font-weight:600}
.vg-steps li.is-now > i{border-color:var(--iris);box-shadow:0 0 0 3px color-mix(in srgb, var(--iris) 22%, transparent)}

.vg--cost .vg-card{width:60%}
.vg-chart{display:flex;align-items:flex-end;gap:6%;height:2.6em}
.vg-chart b{flex:1;border-radius:3px 3px 2px 2px;background:var(--ink-10)}
.vg-chart b.is-on{background:var(--iris)}

.vg-chat{top:12%;width:76%}
.vg-bub{margin:0;justify-self:start;padding:.55em .8em;border-radius:.9em .9em .9em .25em;background:var(--surface);font-size:.86em}
.vg-bub.is-me{justify-self:end;border-radius:.9em .9em .25em .9em;background:var(--iris);color:#fff}

.vg--extend .vg-card{top:10%;width:76%}
.vg-tiles{display:grid;grid-template-columns:1fr 1fr;gap:.45em}
.vg-tiles span{display:flex;align-items:center;gap:.5em;padding:.5em;border-radius:.6em;background:var(--surface);font-size:.8em;font-weight:600;white-space:nowrap;min-width:0}
.vg-tiles i{flex:none;width:1.8em;height:1.8em;border-radius:.5em;display:grid;place-items:center;background:var(--surface-raised);color:var(--iris)}
.vg-tiles svg{width:64%;height:64%;display:block}

.vg-flow{position:absolute;z-index:1;left:8%;right:8%;top:12%;display:flex;align-items:center}
.vg-node{
  display:inline-flex;align-items:center;gap:.4em;padding:.55em .8em;border-radius:.7em;
  background:var(--surface-raised);font-weight:600;font-size:.86em;white-space:nowrap;
  box-shadow:0 1px 2px rgba(38,40,72,.06),0 10px 28px rgba(38,40,72,.12);
}
.vg-node i{width:1.3em;height:1.3em;display:grid;place-items:center;color:var(--iris)}
.vg-node svg{width:100%;height:100%;display:block}
.vg-node--brand{background:var(--iris);color:#fff;font-weight:700}
.vg-node--brand .brand-name{background:none;color:inherit;padding:0;font-size:inherit}
.vg-wire{flex:1;height:2px;margin:0 .35em;background:repeating-linear-gradient(90deg, var(--iris) 0 5px, transparent 5px 9px)}

.vg-sync{top:40%;width:auto;min-width:66%;max-width:84%}

.reveal{opacity:0;transform:translateY(22px)}
.reveal.is-in{
  opacity:1;transform:none;
  transition:opacity .7s cubic-bezier(.22,1,.36,1) var(--d,0s),
             transform .7s cubic-bezier(.22,1,.36,1) var(--d,0s);
}
@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none}
}

.card{
  background:var(--surface-raised);
  border-radius:var(--radius);
  padding:32px 34px 38px;
  height:100%;
}

.site-footer{
  margin-top:96px;padding:72px 0 56px;
  background:var(--surface-raised);
  border-top:1px solid var(--ink-06);
}

.signup{
  display:grid;grid-template-columns:1fr minmax(20rem,24rem);
  gap:32px;align-items:start;margin:0 0 40px;
}
.signup h2{
  font-family:var(--sans);font-weight:600;
  font-size:clamp(20px,2.2vw,26px);line-height:1.18;letter-spacing:-.02em;
  margin:0 0 8px;
}
.signup p{margin:0;color:var(--ink-60);font-size:15px;max-width:40ch}
.signup__form{display:grid;gap:14px}
.signup__row{display:flex;gap:10px;align-items:center}

.signup__form input[type=email]{
  font-family:var(--mono);font-size:15px;letter-spacing:-.03em;
  color:var(--ink);background:var(--surface);
  border:1px solid var(--ink-10);border-radius:var(--radius-full);
  padding:12px 18px;min-width:0;flex:1;
}

.signup .consent{max-width:none}
.signup__form input[type=email]:focus{
  outline:none;border-color:var(--violet);
  box-shadow:0 0 0 3px rgba(162,105,250,.18);
}

.site-footer__bottom{
  display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;
  padding-top:24px;border-top:1px solid var(--ink-10);
}
.foot-nav{display:flex;gap:18px;flex-wrap:wrap}
.foot-nav a{font-size:13px;color:var(--ink-60);text-decoration:none}
.foot-nav a:hover{color:var(--ink)}

.foot-nav__legal{
  color:var(--ink-38) !important;
  padding-left:18px;border-left:1px solid var(--ink-10);
}
.foot-nav__legal:hover{color:var(--ink-60) !important}
.fine{margin:0;font-size:12px;color:var(--ink-60);max-width:52ch}

.consent{
  display:flex;gap:10px;align-items:flex-start;cursor:pointer;
  font-size:13px;color:var(--ink-60);line-height:1.45;
  
  max-width:58ch;
}
.consent input{
  flex:none;margin:2px 0 0;width:16px;height:16px;
  accent-color:var(--violet);cursor:pointer;
}
.flash{
  margin:0;font-size:14px;padding:9px 16px;border-radius:var(--radius-full);
}
.flash--ok{background:var(--lime);color:var(--text-on-accent)}
.flash--err{background:var(--ink-06);color:var(--ink)}

.visually-hidden{
  position:absolute;width:1px;height:1px;overflow:hidden;
  clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;
}

@media (max-width:820px){
  .signup{grid-template-columns:1fr;gap:22px}
}

.trio{margin-top:clamp(72px,9vw,110px)}
.trio h2{
  font-family:var(--sans);font-weight:800;
  font-size:clamp(24px,3.2vw,38px);line-height:1.12;letter-spacing:-.03em;
  margin:0 0 30px;max-width:22ch;
}
.trio__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-items:stretch}
.trio__card{
  padding:clamp(22px,2.6vw,30px);
  display:flex;flex-direction:column;
}
.trio__card h3{
  font-family:var(--sans);font-weight:600;
  font-size:19px;letter-spacing:-.01em;margin:0 0 8px;
}
.trio__card p{margin:0 0 18px;font-size:15px;color:var(--ink-60)}

.trio__card .btn-cta{margin-top:auto;align-self:flex-start}
@media (max-width:860px){ .trio__grid{grid-template-columns:1fr} }

.corner-cut-host{position:relative}
.corner-cut{
  --corner-cut-w:3.3rem;
  --corner-cut-h:3.3rem;
  --corner-cut-radius:1.5rem;
  height:100%;
  -webkit-mask:var(--corner-cut-mask);
  -webkit-mask-composite:xor,xor,source-over,source-over,source-over;
  mask:var(--corner-cut-mask);
  mask-composite:exclude,exclude,add,add,add;
}
.corner-cut--br{
  --corner-cut-mask:
    radial-gradient(var(--corner-cut-radius) at left top,#0000 99%,#000) right 0 bottom var(--corner-cut-h)/var(--corner-cut-radius) var(--corner-cut-radius) no-repeat,
    radial-gradient(var(--corner-cut-radius) at left top,#0000 99%,#000) right var(--corner-cut-w) bottom 0/var(--corner-cut-radius) var(--corner-cut-radius) no-repeat,
    radial-gradient(var(--corner-cut-radius) at right bottom,#0000 99%,#000) right calc(var(--corner-cut-w) - var(--corner-cut-radius)) bottom calc(var(--corner-cut-h) - var(--corner-cut-radius))/var(--corner-cut-radius) var(--corner-cut-radius) no-repeat,
    linear-gradient(#000 0 0) top left/100% calc(100% - var(--corner-cut-h)) no-repeat,
    linear-gradient(#000 0 0) top left/calc(100% - var(--corner-cut-w)) 100% no-repeat;
}

.corner-cut--tl{
  --corner-cut-mask:
    radial-gradient(var(--corner-cut-radius) at right bottom,#0000 99%,#000) left 0 top var(--corner-cut-h)/var(--corner-cut-radius) var(--corner-cut-radius) no-repeat,
    radial-gradient(var(--corner-cut-radius) at right bottom,#0000 99%,#000) left var(--corner-cut-w) top 0/var(--corner-cut-radius) var(--corner-cut-radius) no-repeat,
    radial-gradient(var(--corner-cut-radius) at left top,#0000 99%,#000) left calc(var(--corner-cut-w) - var(--corner-cut-radius)) top calc(var(--corner-cut-h) - var(--corner-cut-radius))/var(--corner-cut-radius) var(--corner-cut-radius) no-repeat,
    linear-gradient(#000 0 0) bottom right/100% calc(100% - var(--corner-cut-h)) no-repeat,
    linear-gradient(#000 0 0) bottom right/calc(100% - var(--corner-cut-w)) 100% no-repeat;
}
.corner-cut--sm{--corner-cut-w:2.4rem;--corner-cut-h:2.4rem;--corner-cut-radius:1.25rem}
.corner-cut--md{--corner-cut-w:3.3rem;--corner-cut-h:3.3rem}
.corner-block{position:absolute;z-index:1}
.corner-block--br{bottom:0;right:0;padding:.5rem 0 0 .5rem}
.corner-block--tl{top:0;left:0;padding:0 .5rem .5rem 0}
.corner-block--cutout{background:none;padding:.5rem 0 0 .5rem}
.corner-block--cutout::before,.corner-block--cutout::after{content:none}
