@font-face{font-family:Geist Mono;font-weight:400;font-style:normal;src:url(/fonts/GeistMono-Regular.ttf) format("truetype");font-display:swap}@font-face{font-family:Geist Mono;font-weight:500;font-style:normal;src:url(/fonts/GeistMono-Medium.ttf) format("truetype");font-display:swap}:root{--pt-paper: #fafaf7;--pt-paper-warm: #f4f2ec;--pt-mist: #edeae3;--pt-fog: #dad7cf;--pt-ink: #0a0b0d;--pt-ink-soft: #1f232b;--pt-ink-mute: #5b626c;--pt-ink-faint: #8a8f98;--pt-ink-ghost: #b8bcc3;--pt-sky-50: #eff7fc;--pt-sky-100: #dcedf7;--pt-sky-200: #bbdcef;--pt-sky-300: #88c5e4;--pt-sky-400: #6fb8df;--pt-sky-500: #3f9cce;--pt-sky-600: #1e7fb4;--pt-sky-700: #155d86;--pt-sky-800: #0f4564;--pt-sky-900: #0a2e45;--pt-highlight-gold: #ffb81c;--pt-highlight-gold-soft: rgba(255, 184, 28, .48);--pt-highlight-gold-tint: rgba(255, 184, 28, .2);--pt-highlight-cherry: #ec1a47;--pt-highlight-cherry-soft: rgba(236, 26, 71, .42);--pt-highlight-cherry-tint: rgba(236, 26, 71, .16);--pt-sky-tint: rgba(63, 156, 206, .1);--pt-sky-tint-2: rgba(63, 156, 206, .18);--pt-sky-ring: rgba(63, 156, 206, .32);--pt-night: #0e1320;--pt-night-raised: #161b2a;--pt-night-line: rgba(255, 255, 255, .08);--pt-night-line-2: rgba(255, 255, 255, .14);--pt-night-fg: #f5f7fb;--pt-night-fg-mute: #a8aec0;--pt-night-fg-faint: rgba(245, 247, 251, .45);--pt-success: #2f9e6b;--pt-success-bg: rgba(47, 158, 107, .1);--pt-warn: #b5841f;--pt-warn-bg: rgba(181, 132, 31, .12);--pt-danger: #b5392f;--pt-danger-bg: rgba(181, 57, 47, .1);--pt-info: var(--pt-sky-500);--pt-info-bg: var(--pt-sky-tint);--fg1: var(--pt-ink);--fg2: var(--pt-ink-soft);--fg3: var(--pt-ink-mute);--fg4: var(--pt-ink-faint);--bg1: var(--pt-paper);--bg2: var(--pt-paper-warm);--bg3: var(--pt-mist);--line: rgba(10, 11, 13, .08);--line-strong: rgba(10, 11, 13, .14);--line-bold: rgba(10, 11, 13, .22);--brand: var(--pt-sky-500);--brand-soft: var(--pt-sky-300);--brand-deep: var(--pt-sky-700);--ff-display: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--ff-sans: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--ff-mono: "Geist Mono", ui-monospace, "JetBrains Mono", "SF Mono", Menlo, monospace;--fs-0: 11px;--fs-1: 12px;--fs-2: 13px;--fs-3: 15px;--fs-4: 17px;--fs-5: 21px;--fs-6: 26px;--fs-7: 34px;--fs-8: 44px;--fs-9: 60px;--fs-10: 84px;--lh-tight: 1.08;--lh-snug: 1.22;--lh-normal: 1.45;--lh-loose: 1.65;--tracking-tight: -.022em;--tracking-snug: -.012em;--tracking-normal: 0;--tracking-wide: .06em;--tracking-overline: .22em;--sp-0: 0;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-7: 28px;--sp-8: 32px;--sp-10: 40px;--sp-12: 48px;--sp-16: 64px;--sp-20: 80px;--sp-24: 96px;--sp-32: 128px;--r-xs: 2px;--r-sm: 4px;--r-md: 6px;--r-lg: 8px;--r-xl: 12px;--r-2xl: 16px;--r-3xl: 24px;--r-full: 999px;--shadow-xs: 0 1px 2px rgba(10, 11, 13, .04);--shadow-sm: 0 2px 6px rgba(10, 11, 13, .05);--shadow-md: 0 8px 20px rgba(10, 11, 13, .06);--shadow-lg: 0 18px 42px rgba(10, 11, 13, .09);--shadow-key: 0 1px 0 rgba(10, 11, 13, .04), 0 2px 4px rgba(10, 11, 13, .04), 0 12px 28px rgba(10, 11, 13, .06);--shadow-night: 0 1px 0 rgba(255, 255, 255, .04) inset, 0 20px 48px rgba(0, 4, 14, .55);--ease-out: cubic-bezier(.16, .84, .44, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-fast: .12s;--dur-base: .2s;--dur-slow: .32s;--container-narrow: 720px;--container-base: 1040px;--container-wide: 1280px;--gutter: 32px}.pt-display{font-family:var(--ff-display);font-size:var(--fs-10);line-height:var(--lh-tight);font-weight:500;letter-spacing:var(--tracking-tight);color:var(--fg1)}.pt-h1{font-family:var(--ff-display);font-size:var(--fs-8);line-height:var(--lh-tight);font-weight:500;letter-spacing:var(--tracking-snug);color:var(--fg1)}.pt-h2{font-family:var(--ff-display);font-size:var(--fs-7);line-height:var(--lh-snug);font-weight:500;letter-spacing:var(--tracking-snug);color:var(--fg1)}.pt-h3{font-family:var(--ff-display);font-size:var(--fs-6);line-height:var(--lh-snug);font-weight:500;color:var(--fg1)}.pt-h4{font-family:var(--ff-sans);font-size:var(--fs-5);line-height:var(--lh-snug);font-weight:600;color:var(--fg1)}.pt-lede{font-family:var(--ff-sans);font-size:var(--fs-4);line-height:var(--lh-loose);font-weight:400;color:var(--fg2)}.pt-p{font-family:var(--ff-sans);font-size:var(--fs-3);line-height:var(--lh-loose);font-weight:400;color:var(--fg2)}.pt-p-sm{font-family:var(--ff-sans);font-size:var(--fs-2);line-height:var(--lh-normal);font-weight:400;color:var(--fg2)}.pt-caption{font-family:var(--ff-sans);font-size:var(--fs-1);line-height:var(--lh-normal);color:var(--fg3)}.pt-micro{font-family:var(--ff-sans);font-size:var(--fs-0);line-height:var(--lh-normal);color:var(--fg3)}.pt-overline{font-family:var(--ff-sans);font-size:var(--fs-0);font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-overline);color:var(--fg3)}.pt-code{font-family:var(--ff-mono);font-size:var(--fs-2);color:var(--fg1);font-feature-settings:"ss01","cv11"}.pt-wordmark{font-family:var(--ff-display);font-size:var(--fs-7);font-weight:500;letter-spacing:-.02em;color:var(--pt-ink)}.pt-wordmark>.twin{color:var(--pt-sky-400)}.pt-paper{background:var(--pt-paper);color:var(--pt-ink)}.pt-paper-card{background:var(--pt-paper);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow-sm)}.pt-paper-card-warm{background:var(--pt-paper-warm);border:1px solid var(--line);border-radius:var(--r-xl)}.pt-night{background:var(--pt-night);color:var(--pt-night-fg)}.pt-night-card{background:var(--pt-night-raised);border:1px solid var(--pt-night-line);border-radius:var(--r-xl);box-shadow:var(--shadow-night);color:var(--pt-night-fg)}:where(button,a,input,textarea,select,[tabindex]):focus-visible{outline:2px solid var(--pt-sky-400);outline-offset:2px;border-radius:var(--r-sm)}:root{--wash-top: #1a2034;--on-gold: #7a5e05;--on-cherry: #a8123a}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--pt-paper);overflow-x:hidden}html{scroll-behavior:smooth}body{min-width:320px;font-family:var(--ff-sans);font-size:var(--fs-3);line-height:var(--lh-loose);color:var(--fg2);-webkit-font-smoothing:antialiased;text-wrap:pretty}a{color:var(--pt-sky-700);text-decoration:none;transition:color var(--dur-fast) var(--ease-out)}a:hover{color:var(--pt-ink)}img{max-width:100%}p{margin:0}h1,h2,h3{margin:0;text-wrap:balance}::selection{background:var(--pt-sky-tint-2);color:var(--pt-ink)}section[id]{scroll-margin-top:calc(64px + var(--sp-6))}.skip{position:fixed;left:var(--sp-4);top:var(--sp-3);z-index:100;transform:translateY(-200%);background:var(--pt-paper);color:var(--pt-ink);padding:var(--sp-3) var(--sp-4);border:1px solid var(--line-bold);border-radius:var(--r-lg);font-size:var(--fs-2);font-weight:600}.skip:focus{transform:none}.sec{position:relative;overflow:hidden;padding:var(--sp-24) var(--gutter)}.wrap{position:relative;z-index:1;max-width:var(--container-base);margin:0 auto}.wrap-narrow{max-width:var(--container-narrow)}.sec-warm{background:var(--pt-paper-warm)}.sec-tint{background:var(--pt-sky-tint)}.sec-night{background:var(--pt-night);color:var(--pt-night-fg-mute)}.sec-night a{color:var(--pt-sky-300)}.sec-night a:hover{color:var(--pt-night-fg)}.sec-night-wash{background-color:var(--pt-night);background-image:radial-gradient(circle at top,var(--wash-top) 0%,var(--pt-night) 60%)}.overline{font-size:var(--fs-0);font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-overline);color:var(--pt-sky-700)}.sec-night .overline{color:var(--pt-sky-300)}.h-display{font-family:var(--ff-display);font-size:clamp(38px,4.6vw,var(--fs-9));line-height:var(--lh-tight);font-weight:500;letter-spacing:var(--tracking-tight);color:var(--fg1)}.h1{font-family:var(--ff-display);font-size:clamp(32px,3.4vw,var(--fs-8));line-height:var(--lh-tight);font-weight:500;letter-spacing:var(--tracking-snug);color:var(--fg1)}.h2{font-family:var(--ff-display);font-size:clamp(26px,2.6vw,var(--fs-7));line-height:var(--lh-snug);font-weight:500;letter-spacing:var(--tracking-snug);color:var(--fg1)}.h3{font-family:var(--ff-display);font-size:var(--fs-6);line-height:var(--lh-snug);font-weight:500;color:var(--fg1)}.h4{font-size:var(--fs-5);line-height:var(--lh-snug);font-weight:600;color:var(--fg1)}.sec-night .h-display,.sec-night .h1,.sec-night .h2,.sec-night .h3,.sec-night .h4{color:var(--pt-night-fg)}.lede{font-size:var(--fs-4);line-height:var(--lh-loose);color:var(--fg2);max-width:62ch}.body{font-size:var(--fs-3);line-height:var(--lh-loose);color:var(--fg2);max-width:68ch}.caption{font-size:var(--fs-1);line-height:var(--lh-normal);color:var(--fg3)}.mono{font-family:var(--ff-mono);font-size:var(--fs-1);color:var(--fg3)}.sec-night .lede,.sec-night .body{color:var(--pt-night-fg-mute)}.sec-night .caption,.sec-night .mono{color:var(--pt-night-fg-faint)}.rows{display:flex;flex-direction:column}.row{display:grid;grid-template-columns:minmax(96px,132px) minmax(0,1fr);gap:var(--sp-6);padding:var(--sp-5) 0;border-top:1px solid var(--line)}.rows>.row:last-child{border-bottom:1px solid var(--line)}.row-key{font-size:var(--fs-0);font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-overline);color:var(--fg3);padding-top:3px}.row-text{font-size:var(--fs-3);line-height:var(--lh-loose);color:var(--fg2);max-width:68ch}.row-text strong{color:var(--fg1);font-weight:600}.sec-night .row{border-top-color:var(--pt-night-line)}.sec-night .rows>.row:last-child{border-bottom-color:var(--pt-night-line)}.sec-night .row-key{color:var(--pt-sky-300)}.sec-night .row-text{color:var(--pt-night-fg-mute)}.sec-night .row-text strong{color:var(--pt-night-fg)}.mt-2{margin-top:var(--sp-2)}.mt-4{margin-top:var(--sp-4)}.mt-6{margin-top:var(--sp-6)}.mt-8{margin-top:var(--sp-8)}.mt-12{margin-top:var(--sp-12)}.mt-16{margin-top:var(--sp-16)}@media(max-width:760px){:root{--gutter: 16px}.sec{padding-top:var(--sp-16);padding-bottom:var(--sp-16)}.row{grid-template-columns:minmax(0,1fr);gap:var(--sp-2)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:1ms!important;animation-duration:1ms!important}}.hdr{position:sticky;top:0;z-index:60;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-6);height:64px;padding:0 var(--gutter);Le ton papier-chaud,plus le filet à 14 %,donnent au bandeau son plan propre : la charte communique l'élévation par « bordure et ton de
surface »,jamais par la profondeur d'une ombre. Même ton que le pied de
page,pour que les deux extrémités se répondent. */ background: var(--pt-paper-warm);border-bottom:1px solid var(--line-strong)}.brand{display:inline-flex;align-items:center;gap:var(--sp-3);font-family:var(--ff-display);font-size:var(--fs-4);font-weight:500;letter-spacing:-.02em;color:var(--pt-ink);text-transform:lowercase}.brand:hover{color:var(--pt-ink)}.brand-mark{width:26px;height:26px;object-fit:contain}.brand .twin{color:var(--pt-sky-500)}.hdr-end,.nav{display:flex;align-items:center;gap:var(--sp-6)}.nav-link{font-size:var(--fs-2);font-weight:500;color:var(--fg3);white-space:nowrap}.nav-link:hover,.nav-link.is-current{color:var(--fg1)}.lang{display:inline-flex;align-items:center;gap:var(--sp-2);padding-left:var(--sp-6);border-left:1px solid var(--line)}.lang-footer{padding-left:0;border-left:0}.lang-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.lang-sep{font-size:var(--fs-1);color:var(--pt-ink-ghost)}.lang-link{font-size:var(--fs-1);font-weight:600;letter-spacing:var(--tracking-wide);color:var(--fg3)}.lang-link:hover{color:var(--fg1)}.lang-link.is-current{color:var(--pt-sky-700)}.lang-link.is-off{color:var(--pt-ink-ghost);cursor:default}.sec-night .lang-link.is-current,.foot .lang-link.is-current{color:var(--pt-sky-700)}.lnk{display:inline-flex;align-items:baseline;gap:var(--sp-2);font-size:var(--fs-3);font-weight:500;color:var(--pt-sky-700);border-bottom:1px solid var(--pt-sky-ring);padding-bottom:2px;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.lnk:hover{color:var(--pt-ink);border-bottom-color:var(--line-bold)}.sec-night .lnk{color:var(--pt-sky-300);border-bottom-color:var(--pt-night-line-2)}.sec-night .lnk:hover{color:var(--pt-night-fg);border-bottom-color:var(--pt-night-fg-faint)}.btn{display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-5);border:1px solid transparent;border-radius:var(--r-lg);background:var(--pt-ink);color:var(--pt-paper);font-size:var(--fs-3);font-weight:600;line-height:1.2;transition:background var(--dur-fast) var(--ease-out)}.btn:hover{background:var(--pt-sky-700);color:var(--pt-paper)}.sec-night .btn{background:var(--pt-sky-400);color:var(--pt-night)}.sec-night .btn:hover{background:var(--pt-night-fg);color:var(--pt-night)}.pill{display:inline-flex;align-items:center;gap:var(--sp-2);padding:5px var(--sp-3) 5px var(--sp-2);border:1px solid var(--line-strong);border-radius:var(--r-full);font-size:var(--fs-0);font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--fg3);background:var(--pt-paper)}.pill-dot{width:6px;height:6px;border-radius:var(--r-full);background:var(--pt-sky-500)}.card{display:block;padding:var(--sp-6);background:var(--pt-paper);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow-sm);transition:border-color var(--dur-base) var(--ease-out)}.card:hover{border-color:var(--line-bold)}.foot{padding:var(--sp-16) var(--gutter) var(--sp-8);border-top:1px solid var(--line);background:var(--pt-paper-warm)}.foot-grid{display:grid;grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr));gap:var(--sp-8);max-width:var(--container-base);margin:0 auto}.foot-brand{display:flex;flex-direction:column;gap:var(--sp-3)}.foot-sign{font-family:var(--ff-display);font-size:var(--fs-4);font-weight:500;letter-spacing:-.02em;color:var(--pt-ink);text-transform:lowercase}.foot-sign .twin{color:var(--pt-sky-500)}.foot-base{font-size:var(--fs-1);line-height:var(--lh-normal);color:var(--fg3);max-width:34ch}.foot-col{display:flex;flex-direction:column;gap:var(--sp-3)}.foot-col-title{font-size:var(--fs-0);font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-overline);color:var(--pt-ink-faint)}.foot-lnk{font-size:var(--fs-2);color:var(--fg3)}.foot-lnk:hover,.foot-lnk.is-current{color:var(--fg1)}.foot-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-4);max-width:var(--container-base);margin:var(--sp-12) auto 0;padding-top:var(--sp-5);border-top:1px solid var(--line)}.foot-copy{font-size:var(--fs-1);color:var(--fg3)}@media(max-width:900px){.hdr-end{gap:var(--sp-4);min-width:0}.nav{gap:var(--sp-5);overflow-x:auto;scrollbar-width:none}.nav::-webkit-scrollbar{display:none}.lang{padding-left:var(--sp-4);flex:0 0 auto}}@media(max-width:900px){.foot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-8) var(--sp-6)}.foot-brand{grid-column:1 / -1}}@media(max-width:520px){.foot-grid{grid-template-columns:minmax(0,1fr)}}.hero{padding-top:var(--sp-24);padding-bottom:var(--sp-24)}.hero-rule{display:block;width:64px;height:4px;background:var(--pt-sky-500)}.hero-title{max-width:18ch}mark{background:transparent;color:inherit;padding:0 .15em;border-radius:var(--r-xs)}.hero mark{background:var(--pt-highlight-gold-soft)}#confiance mark{background:var(--pt-highlight-cherry-soft)}.triplet{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-4)}.tile{display:flex;flex-direction:column;padding:var(--sp-6);border-radius:var(--r-2xl)}.tile-sky{background:var(--pt-sky-tint);--tile-key: var(--pt-sky-700)}.tile-gold{background:var(--pt-highlight-gold-tint);--tile-key: var(--on-gold)}.tile-cherry{background:var(--pt-highlight-cherry-tint);--tile-key: var(--on-cherry)}.tile-key{font-size:var(--fs-0);font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-overline);color:var(--tile-key)}.tile-text{font-size:var(--fs-3);line-height:var(--lh-loose);color:var(--fg2)}.tile-text strong{color:var(--fg1);font-weight:600}.tile-note{margin-top:auto;padding-top:var(--sp-4);border-top:1px solid var(--line);font-size:var(--fs-1);line-height:var(--lh-normal);color:var(--fg3)}.page-hero{padding-top:var(--sp-20);padding-bottom:var(--sp-16)}.path{margin:0;padding:0;list-style:none}.path-step{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr);gap:var(--sp-5);padding-bottom:var(--sp-10)}.path-step:last-child{padding-bottom:0}.path-step:before{content:"";position:absolute;left:11px;top:26px;bottom:0;width:1px;background:var(--line-strong)}.path-step:last-child:before{display:none}.path-num{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--r-full);background:var(--pt-paper);border:1px solid var(--line-bold);font-family:var(--ff-mono);font-size:10px;color:var(--fg3)}.path-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--sp-3);margin:0}.path-badge{padding:3px var(--sp-2);border-radius:var(--r-full);background:var(--pt-highlight-gold-tint);font-size:var(--fs-0);font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--on-gold)}.path-tag{display:block;margin-top:var(--sp-2);color:var(--pt-sky-700)}.path-text{font-size:var(--fs-2);line-height:var(--lh-loose);color:var(--fg2);max-width:72ch}.line{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--sp-4);margin:0;padding:0;list-style:none}.line-stage{position:relative;display:flex;flex-direction:column;gap:var(--sp-2);padding-top:var(--sp-6)}.line-stage:before{content:"";position:absolute;top:5px;left:0;right:0;height:1px;background:var(--pt-night-line-2)}.line-stage:last-child:before{display:none}.line-dot{position:absolute;top:0;left:0;width:11px;height:11px;border-radius:var(--r-full);background:var(--pt-sky-400)}.line-title{font-size:var(--fs-2);font-weight:600;color:var(--pt-night-fg)}.line-text{font-size:var(--fs-1);line-height:var(--lh-normal);color:var(--pt-night-fg-mute)}.janus-plates{display:flex;align-items:center;gap:clamp(20px,3vw,44px)}.janus-plate{display:flex;flex-direction:column;align-items:center;gap:var(--sp-4);margin:0;width:200px}.janus-coin,.janus-mark{width:148px;height:auto}.janus-cap{text-align:center}.janus-arrow{font-size:var(--fs-5);color:var(--pt-sky-500);line-height:1}.janus-statement{position:relative;max-width:24ch;padding-top:var(--sp-6);font-family:var(--ff-display);font-size:clamp(21px,2vw,30px);font-weight:500;line-height:var(--lh-snug);letter-spacing:var(--tracking-snug);color:var(--pt-ink)}.janus-statement:before{content:"";position:absolute;top:0;left:0;width:64px;height:4px;background:var(--pt-sky-500)}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-8);margin:0;padding:0;list-style:none;counter-reset:none}.step{display:flex;flex-direction:column}.step-num{font-family:var(--ff-display);font-size:var(--fs-7);font-weight:500;line-height:1;letter-spacing:var(--tracking-tight);color:var(--pt-ink-faint)}.step-rule{display:block;width:56px;height:6px;margin:var(--sp-3) 0 var(--sp-5)}.step-sky{background:var(--pt-sky-500)}.step-gold{background:var(--pt-highlight-gold)}.step-cherry{background:var(--pt-highlight-cherry)}.step-title{margin:0}.step-text{font-size:var(--fs-2);line-height:var(--lh-loose);color:var(--fg2)}.table-scroll{overflow-x:auto}.pt-table{width:100%;min-width:680px;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--r-2xl);font-family:var(--ff-sans);text-align:left}.pt-table thead th{background:var(--pt-ink);color:var(--pt-paper);font-family:var(--ff-display);font-weight:500;font-size:var(--fs-5);letter-spacing:-.005em;padding:var(--sp-5);vertical-align:bottom}.pt-table thead th:first-child{font-family:var(--ff-sans);font-size:var(--fs-0);font-weight:600;letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--pt-sky-300)}.pt-table thead th.is-self:after{content:"";display:block;height:4px;width:64px;margin-top:var(--sp-3);background:var(--pt-sky-300)}.pt-table tbody th,.pt-table tbody td{padding:var(--sp-5);font-size:var(--fs-3);line-height:var(--lh-normal);color:var(--fg2);border-top:1px solid var(--line);vertical-align:top}.pt-table tbody tr:nth-child(odd) th,.pt-table tbody tr:nth-child(odd) td{background:var(--pt-sky-tint)}.pt-table tbody th{font-family:var(--ff-mono);font-size:var(--fs-1);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--pt-ink-mute);white-space:nowrap}.pt-table tbody td.is-self{color:var(--pt-sky-700);font-weight:500}.shots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-6);align-items:start}.shot{margin:0}.shot-img{display:block;width:100%;height:auto;background:var(--pt-paper);border:1px solid var(--line);border-radius:var(--r-xl)}.shot-cap{display:flex;flex-direction:column;gap:var(--sp-2);margin-top:var(--sp-4)}.shot-tag{color:var(--pt-sky-700)}.shot-text{font-size:var(--fs-2);line-height:var(--lh-normal);color:var(--fg3)}.ledger{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-6)}.ledger-col{padding:var(--sp-6);background:var(--pt-paper);border:1px solid var(--line);border-radius:var(--r-xl)}.ledger-title{display:flex;align-items:center;gap:var(--sp-2);margin:0;font-size:var(--fs-0);font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-overline);color:var(--fg3)}.ledger-dot{width:8px;height:8px;border-radius:var(--r-full)}.ledger-dot-built{background:var(--pt-sky-500)}.ledger-dot-pending{background:var(--pt-highlight-gold)}.ledger-list{margin:0;padding-left:1.15em;display:flex;flex-direction:column;gap:var(--sp-3);font-size:var(--fs-2);line-height:var(--lh-normal);color:var(--fg2)}.horizon-status{display:inline-flex;align-items:center;gap:var(--sp-2);margin-top:var(--sp-3);padding:4px var(--sp-3) 4px var(--sp-2);border:1px solid var(--pt-night-line);border-radius:var(--r-full);font-size:var(--fs-0);font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--pt-night-fg-mute)}.horizon-status:before{content:"";width:6px;height:6px;border-radius:var(--r-full);background:var(--horizon-dot)}.horizon-on-light{border-color:var(--line-strong);color:var(--fg3)}.horizon-now{--horizon-dot: var(--pt-sky-400)}.horizon-on-light.horizon-now{--horizon-dot: var(--pt-sky-500)}.horizon-next{--horizon-dot: var(--pt-highlight-gold)}.horizon-far{--horizon-dot: var(--pt-highlight-cherry)}.gap-fig{margin:0}.gap-svg{display:block;width:100%;max-width:960px;height:auto}.gap-cap{margin-top:var(--sp-4)}.gap-rail{stroke:var(--pt-night-line-2);stroke-width:1.5}.gap-rail-lab{font-family:var(--ff-sans);font-size:11px;font-weight:600;letter-spacing:.22em;fill:var(--pt-night-fg-faint)}.gap-node{fill:var(--pt-sky-400)}.gap-lab{font-family:var(--ff-sans);font-size:13px;fill:var(--pt-night-fg-mute)}.gap-link{fill:none;stroke:var(--pt-sky-500);stroke-width:1.5}.gap-miss{fill:none;stroke:var(--pt-highlight-cherry);stroke-width:1.5;stroke-dasharray:4 6}.gap-miss-ring{fill:none;stroke:var(--pt-highlight-cherry);stroke-width:1.5}.gap-gap-lab{font-family:var(--ff-sans);font-size:11px;font-weight:600;letter-spacing:.22em;fill:var(--pt-night-fg)}@media(max-width:1000px){.toc{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.triplet,.shots,.steps{grid-template-columns:minmax(0,1fr)}.line{grid-template-columns:minmax(0,1fr);gap:0}.line-stage{padding:0 0 var(--sp-6) var(--sp-7)}.line-stage:last-child{padding-bottom:0}.line-stage:before{inset:5px auto 0 5px;width:1px;height:auto}.line-dot{top:0;left:0}.janus-plate{width:auto;flex:1 1 0}.janus-coin,.janus-mark{width:min(120px,100%)}.step-rule{margin-bottom:var(--sp-3)}.tile-note{margin-top:var(--sp-4)}.shots{gap:var(--sp-10)}}@media(max-width:760px){.ledger{grid-template-columns:minmax(0,1fr)}}@media(max-width:760px){.hero-title{max-width:none}.gap-fig{overflow-x:auto}.gap-svg{min-width:680px}}
