@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/atkinson-hyperlegible-next-latin-ext-400-normal.BalHKn7d.woff2)format("woff2"),url(/_astro/atkinson-hyperlegible-next-latin-ext-400-normal.qxMiU51n.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/atkinson-hyperlegible-next-latin-400-normal.FfmJh7DR.woff2)format("woff2"),url(/_astro/atkinson-hyperlegible-next-latin-400-normal.DPp7N0cD.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/atkinson-hyperlegible-next-latin-ext-700-normal.CBw-mJf_.woff2)format("woff2"),url(/_astro/atkinson-hyperlegible-next-latin-ext-700-normal.292QVhS1.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/atkinson-hyperlegible-next-latin-700-normal.Dpiyiu63.woff2)format("woff2"),url(/_astro/atkinson-hyperlegible-next-latin-700-normal.C2qZD_Q9.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-sign:"Overpass Variable", "Overpass", system-ui, sans-serif;--font-read:"Atkinson Hyperlegible Next", system-ui, sans-serif;--font-code:"Overpass Mono Variable", ui-monospace, monospace;--page-max:1200px;--gutter:clamp(1rem, 4vw, 3rem);--s-1:.25rem;--s-2:.5rem;--s-3:.75rem;--s-4:1rem;--s-5:1.5rem;--s-6:2rem;--s-7:3rem;--s-8:4rem;--s-9:6rem;--band-pad:clamp(4.5rem, 9vw, 8.5rem);--r-sign:10px;--r-small:6px;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);interpolate-size:allow-keywords}.theme-formal{--ground:#fff2ba;--ground-2:#f8e8a2;--ink:#0f3c65;--muted:#2d5577;--line:#0f3c6538;--line-strong:#0f3c658c;--panel:#0f3c65;--panel-2:#174a78;--panel-ink:#fff2ba;--panel-muted:#e3dcb0;--panel-line:#fff2ba33;--action:#0f3c65;--action-ink:#fff2ba;--totem-action:#fff2ba;--totem-action-ink:#0f3c65;--sheet:#fffae0;--field:#fffdf2;--focus:#0f3c65;--shadow:15, 60, 101;color-scheme:light}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:1.5rem}body{background:var(--ground);min-width:320px;color:var(--ink);font-family:var(--font-read);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;scrollbar-color:var(--line-strong) var(--ground);caret-color:var(--focus);margin:0;font-size:1.0625rem;line-height:1.6}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--font-sign);text-wrap:balance}p{text-wrap:pretty}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1.5px}ol,ul{margin:0;padding:0;list-style:none}button{font:inherit;color:inherit}::selection{background:var(--ink);color:var(--ground)}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:2px}.icon{flex:none;width:1.25em;height:1.25em;display:block}.skip-link{z-index:50;left:var(--s-4);padding:var(--s-3) var(--s-4);border-radius:var(--r-small);background:var(--panel);color:var(--panel-ink);font-family:var(--font-sign);font-weight:700;position:absolute;top:-120px}.skip-link:focus{top:var(--s-4)}.site-header{background:var(--panel);color:var(--panel-ink);view-transition-name:site-header}.header-inner{max-width:calc(var(--page-max) + 2 * var(--gutter));padding:var(--s-3) var(--gutter);align-items:center;gap:var(--s-5);min-height:4.25rem;margin-inline:auto;display:flex}.site-header :focus-visible,.totem :focus-visible,.band-start :focus-visible:not(.planner *),.site-footer :focus-visible,.service-door :focus-visible{outline-color:var(--panel-ink)}.brand{align-items:center;gap:var(--s-3);min-width:0;text-decoration:none;display:inline-flex}.brand-plate{border-radius:var(--r-small);background:var(--panel-ink);width:2.5rem;height:2.5rem;color:var(--panel);flex:none;place-items:center;display:grid}.brand-mark{width:1.85rem;height:1.85rem}.brand-cut{fill:var(--panel-ink)}.brand-name{font-family:var(--font-sign);letter-spacing:-.02em;white-space:nowrap;padding-top:.2em;font-size:1.3rem;font-weight:800;line-height:1}.brand-name span{opacity:.8;font-weight:500}.mode-switch{border:1.5px solid var(--panel-line);border-radius:calc(var(--r-small) + 3px);gap:2px;margin-left:auto;padding:3px;display:inline-flex}.mode-switch a{align-items:center;gap:var(--s-2);min-height:2.5rem;padding:0 var(--s-4);border-radius:var(--r-small);font-family:var(--font-sign);color:var(--panel-muted);font-size:.9rem;font-weight:700;text-decoration:none;transition:background-color .2s,color .2s;display:inline-flex}.mode-switch a .icon{width:1.1em;height:1.1em}.mode-switch a[aria-current=page]{background:var(--panel-ink);color:var(--panel)}@media (hover:hover) and (pointer:fine){.mode-switch a:not([aria-current]):hover{color:var(--panel-ink);background:var(--panel-2)}}.header-action{align-items:center;gap:var(--s-2);min-height:2.75rem;padding:0 var(--s-4);border-radius:var(--r-small);background:var(--totem-action);color:var(--totem-action-ink);font-family:var(--font-sign);white-space:nowrap;transition:transform .16s var(--ease-out);font-size:.95rem;font-weight:800;text-decoration:none;display:inline-flex}.header-action:active{transform:scale(.97)}@media (hover:hover) and (pointer:fine){.header-action .icon{transition:transform .2s var(--ease-out)}.header-action:hover .icon{transform:translate(3px)}}main{container-type:inline-size}main>section{--pad-x:max(var(--gutter), calc((100cqi - var(--page-max)) / 2));padding-inline:var(--pad-x)}.btn{justify-content:center;align-items:center;gap:var(--s-3);min-height:3.25rem;padding:0 var(--s-5);border-radius:var(--r-small);font-family:var(--font-sign);cursor:pointer;transition:transform .16s var(--ease-out), background-color .2s ease, box-shadow .2s ease;border:0;font-size:1.05rem;font-weight:800;line-height:1;text-decoration:none;display:inline-flex}.btn>span{padding-top:.12em}.btn:active{transform:scale(.97)}.btn-primary{background:var(--action);color:var(--action-ink);box-shadow:0 10px 24px -12px rgba(var(--shadow), .55)}.btn-quiet{padding-inline:var(--s-3);color:var(--ink);text-decoration:underline;text-decoration-color:var(--line-strong);background:0 0}@media (hover:hover) and (pointer:fine){.btn .icon{transition:transform .2s var(--ease-out)}.btn-primary:hover .icon{transform:translate(3px)}.btn-quiet:hover{text-decoration-color:currentColor}.btn-quiet:hover .icon{transform:translateY(3px)}}.hero{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(3rem,6vw,4.5rem) clamp(2rem,5vw,5rem);padding-top:clamp(3rem,6vw,5rem);padding-bottom:clamp(3.5rem,6vw,5rem);display:grid}.hero-copy{align-self:center}h1{letter-spacing:-.035em;max-width:13ch;margin-bottom:var(--s-5);font-size:clamp(2.6rem,5.4vw,5.25rem);font-weight:800;line-height:.98}.hero-subtitle{color:var(--muted);max-width:46ch;margin-bottom:var(--s-6);font-size:clamp(1.1rem,1.4vw,1.3rem);line-height:1.55}.hero-actions{align-items:center;gap:var(--s-3) var(--s-4);flex-wrap:wrap;display:flex}.hero-note{margin-top:var(--s-5);color:var(--muted);font-size:.95rem}.totem{background:var(--panel);color:var(--panel-ink);border-radius:var(--r-sign);padding:var(--s-5) var(--s-5) var(--s-4);box-shadow:0 30px 60px -30px rgba(var(--shadow), .6);view-transition-name:totem;align-self:center}.totem-head{justify-content:space-between;align-items:baseline;gap:var(--s-4);padding-bottom:var(--s-4);border-bottom:3px solid var(--panel-ink);display:flex}.totem-title{font-family:var(--font-sign);letter-spacing:-.02em;font-size:1.6rem;font-weight:800;line-height:1}.totem-sub{color:var(--panel-muted);font-size:.9rem}.totem-list{margin-top:var(--s-2)}.totem-list li+li{border-top:1px solid var(--panel-line)}.totem-row{align-items:center;gap:var(--s-4);min-height:4rem;padding:var(--s-2) var(--s-3);margin-inline:calc(-1 * var(--s-3));border-radius:var(--r-small);font-family:var(--font-sign);letter-spacing:-.01em;grid-template-columns:auto 1fr auto;font-size:1.2rem;font-weight:700;line-height:1.15;text-decoration:none;transition:background-color .2s;display:grid}.totem-label{padding-top:.12em}.totem-picto{border-radius:var(--r-small);background:var(--panel-ink);width:2.75rem;height:2.75rem;color:var(--panel);place-items:center;display:grid}.totem-row-action .totem-picto{background:var(--totem-action-ink);color:var(--totem-action)}.totem-picto .icon{stroke-width:2.6px;width:1.5rem;height:1.5rem}.totem-arrow{width:1.5rem;height:1.5rem}.totem-row-action{margin-top:var(--s-3);background:var(--totem-action);color:var(--totem-action-ink)}.totem-list li:has(.totem-row-action)+li{border-top-color:#0000}.totem-row-action{margin-bottom:var(--s-2)}.totem-foot{align-items:center;gap:var(--s-3);margin-top:var(--s-4);padding-top:var(--s-4);border-top:1px solid var(--panel-line);font-family:var(--font-sign);color:var(--panel-muted);font-size:.95rem;font-weight:700;text-decoration:none;display:flex}.totem-foot .totem-arrow{width:1.2rem;height:1.2rem;margin-left:auto}@media (hover:hover) and (pointer:fine){.totem-row .totem-arrow,.totem-foot .totem-arrow{transition:transform .2s var(--ease-out)}.totem-row:not(.totem-row-action):hover{background:var(--panel-2)}.totem-row:hover .totem-arrow{transform:translateY(3px)}.totem-row-action:hover .totem-arrow{transform:translate(3px)}.totem-foot:hover{color:var(--panel-ink)}.totem-foot:hover .totem-arrow{transform:translate(2px,-2px)}}.totem-row:active{transform:scale(.985)}.line-map{padding-top:var(--s-6);border-top:1px solid var(--line);grid-column:1/-1;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:relative}.line-map:before{content:"";left:10%;right:10%;top:calc(var(--s-6) + 1.25rem - 3px);background:var(--ink);transform-origin:0;border-radius:3px;height:6px;position:absolute}.line-stop{text-align:center;align-items:center;gap:var(--s-3);flex-direction:column;display:flex;position:relative}.stop-dot{z-index:1;place-items:center;width:2.5rem;height:2.5rem;display:grid;position:relative}.stop-dot:before{content:"";background:var(--ground);border:4px solid var(--ink);border-radius:50%;width:1.25rem;height:1.25rem}.is-here .stop-dot,.is-end .stop-dot{background:var(--ink);color:var(--ground);border-radius:50%}.is-here .stop-dot:before,.is-end .stop-dot:before{display:none}.is-here .stop-dot{box-shadow:0 0 0 6px var(--ground), 0 0 0 8px var(--ink)}.stop-dot .icon{width:1.25rem;height:1.25rem}.stop-text{flex-direction:column;gap:2px;display:flex}.stop-text strong{font-family:var(--font-sign);letter-spacing:-.01em;font-size:1.1rem;font-weight:800;line-height:1.2}.stop-text small{color:var(--muted);font-size:.9rem}.is-here small{color:var(--ink);font-weight:700}.band{padding-block:var(--band-pad);border-top:1px solid var(--line)}.band-head{gap:var(--s-5) clamp(2rem, 6vw, 5rem);grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:end;margin-bottom:clamp(3rem,6vw,4.5rem);display:grid}h2{letter-spacing:-.03em;max-width:17ch;font-size:clamp(2.1rem,3.9vw,3.6rem);font-weight:800;line-height:1.02}.band-head p,.tech-copy p,.start-copy>p:not(.start-status){color:var(--muted);max-width:58ch;font-size:1.125rem;line-height:1.65}.sign-head{align-items:flex-start;gap:clamp(.9rem,1.8vw,1.4rem);display:flex}.sign-plate{aspect-ratio:1;border-radius:var(--r-small);background:var(--panel);width:clamp(3rem,4.4vw,4.25rem);color:var(--panel-ink);flex:none;place-items:center;margin-top:.1em;display:grid}.band-start .sign-plate{background:var(--panel-ink);color:var(--panel)}.sign-plate .icon{stroke-width:2.6px;width:58%;height:58%}.next-sign{align-items:center;gap:var(--s-4);width:fit-content;min-height:3.5rem;padding:var(--s-2) var(--s-3) var(--s-2) var(--s-4);border-radius:var(--r-small);background:var(--panel);color:var(--panel-ink);font-family:var(--font-sign);transition:transform .16s var(--ease-out);margin:clamp(3rem,6vw,4.5rem) 0 0 auto;text-decoration:none;display:flex}.next-sign:active{transform:scale(.98)}.next-label{color:var(--panel-muted);padding-top:.12em;font-size:.9rem;font-weight:700}.next-dest{letter-spacing:-.01em;padding-top:.12em;font-size:1.15rem;font-weight:800}.next-arrow{background:var(--panel-ink);width:2.25rem;height:2.25rem;color:var(--panel);stroke-width:2.6px;border-radius:4px;padding:.45rem}.band-tech>.next-sign{grid-column:1/-1;margin-top:0}@media (hover:hover) and (pointer:fine){.next-arrow{transition:transform .2s var(--ease-out)}.next-sign:hover .next-arrow{transform:translateY(3px)}}.station-sign{align-items:center;gap:var(--s-3);padding:var(--s-2) var(--s-4) var(--s-2) var(--s-2);border-radius:var(--r-small);background:var(--panel-ink);color:var(--panel);align-self:flex-start;display:inline-flex}.station-picto{background:var(--panel);width:2.5rem;height:2.5rem;color:var(--panel-ink);border-radius:4px;place-items:center;display:grid}.station-picto .icon{stroke-width:2.6px;width:1.4rem;height:1.4rem}.station-sign h3{letter-spacing:-.01em;padding-top:.12em;font-size:clamp(1.2rem,1.8vw,1.55rem);font-weight:800;line-height:1.15}.station-you{padding-top:var(--s-4);border-top:1px dashed;max-width:44ch;font-size:1rem}.station-you span{font-family:var(--font-sign);margin-bottom:var(--s-1);font-size:.95rem;font-weight:800;display:block}.stack{margin-inline:calc(-1 * var(--pad-x));gap:0;display:grid}.stack-panel{top:calc(var(--n,0) * 1.25rem);isolation:isolate;align-items:end;gap:var(--s-6);min-height:min(72vh,36rem);padding:clamp(2rem, 5vw, 4.5rem) var(--pad-x);background:var(--panel);color:var(--panel-ink);transform-origin:50% 0;will-change:transform;border-radius:0;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);display:grid;position:sticky;overflow:hidden}.stack-panel.tone-1{background:var(--sheet);color:var(--ink);box-shadow:inset 0 2px 0 var(--ink)}.stack-panel.tone-1 .stack-shade{background:#b89a2e}.stack-panel.tone-1 .station-sign{background:var(--panel);color:var(--panel-ink)}.stack-panel.tone-1 .station-picto{background:var(--panel-ink);color:var(--panel)}.stack-panel.tone-2{background:var(--panel-2)}.stack-shade{z-index:2;opacity:0;pointer-events:none;background:#0f3c65;position:absolute;inset:0}.panel-num{font-family:var(--font-sign);letter-spacing:-.06em;align-self:stretch;align-items:flex-end;margin-bottom:-.06em;font-size:clamp(9rem,26vw,24rem);font-weight:900;line-height:.72;display:flex}.panel-body{gap:var(--s-5);padding-bottom:var(--s-2);flex-direction:column;display:flex}.panel-text{font-family:var(--font-sign);letter-spacing:-.015em;max-width:26ch;font-size:clamp(1.35rem,2.3vw,2rem);font-weight:600;line-height:1.25}.band-projects{background:var(--ground-2)}.notice{border:2px dashed var(--line-strong);border-radius:var(--r-sign);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(1.5rem,4vw,3.5rem);padding:clamp(1.25rem,3vw,2.25rem);display:grid}.notice-sign{gap:var(--s-4);align-items:flex-start;display:flex}.notice-sign>.icon{stroke-width:2.6px;border-radius:var(--r-small);background:var(--panel);width:3rem;height:3rem;color:var(--panel-ink);padding:.6rem}.notice-title{font-family:var(--font-sign);letter-spacing:-.015em;margin-bottom:var(--s-2);padding-top:.1em;font-size:clamp(1.35rem,2vw,1.65rem);font-weight:800;line-height:1.15}.notice-sign p:not(.notice-title){color:var(--muted);max-width:44ch}.slots{border-top:3px solid var(--ink)}.slot{justify-content:space-between;align-items:center;gap:var(--s-4);min-height:3.75rem;padding-block:var(--s-3);border-bottom:1px solid var(--line);display:flex}.slot-name{font-family:var(--font-sign);padding-top:.1em;font-size:1.15rem;font-weight:800}.slot-state{align-items:center;gap:var(--s-2);color:var(--muted);text-align:right;font-size:.95rem;display:inline-flex}.slot-dot{border:2px solid;border-radius:50%;flex:none;width:.7rem;height:.7rem}.band-tech{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(2.5rem,6vw,5.5rem);display:grid}.tech-copy .sign-head{margin-bottom:var(--s-5)}.service-door{background:var(--panel);color:var(--panel-ink);border-radius:var(--r-sign);box-shadow:0 30px 60px -34px rgba(var(--shadow), .55);padding:clamp(1.5rem,3vw,2.5rem)}.door-head{align-items:center;gap:var(--s-4);padding-bottom:var(--s-4);border-bottom:3px solid var(--panel-ink);display:flex}.door-picto{border-radius:var(--r-small);background:var(--panel-ink);width:3rem;height:3rem;color:var(--panel);flex:none;place-items:center;display:grid}.door-picto .icon{stroke-width:2.6px;width:1.6rem;height:1.6rem}.door-title{font-family:var(--font-sign);letter-spacing:-.02em;padding-top:.1em;font-size:clamp(1.5rem,2.4vw,2.1rem);font-weight:800;line-height:1.1}.door-line{font-family:var(--font-sign);margin:var(--s-4) 0 var(--s-6);color:var(--panel-muted);font-size:clamp(1.15rem,1.6vw,1.35rem);font-weight:700;line-height:1.3}.door-note{padding-top:var(--s-5);border-top:1px solid var(--panel-line)}.door-note h3{margin-bottom:var(--s-2);font-size:1.2rem;font-weight:800}.door-note p{color:var(--panel-muted);max-width:56ch;font-size:1rem;line-height:1.6}.faq-list{border-top:3px solid var(--ink);max-width:60rem}.faq{border-bottom:1px solid var(--line)}.faq summary{justify-content:space-between;align-items:center;gap:var(--s-5);min-height:4.5rem;padding-block:var(--s-4);cursor:pointer;font-family:var(--font-sign);letter-spacing:-.01em;font-size:clamp(1.1rem,1.6vw,1.35rem);font-weight:700;line-height:1.25;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq-q{padding-top:.12em}.faq-toggle{border-radius:var(--r-small);width:2.25rem;height:2.25rem;transition:transform .25s var(--ease-out), background-color .2s ease, color .2s ease;border:2px solid;flex:none;place-items:center;display:grid}.faq-toggle .icon{width:1.1rem;height:1.1rem}.faq[open] .faq-toggle{background:var(--ink);color:var(--ground);border-color:var(--ink);transform:rotate(45deg)}.faq-a p{padding-bottom:var(--s-5);color:var(--muted);max-width:62ch}@media (hover:hover) and (pointer:fine){.faq summary:hover .faq-q{text-decoration:underline;text-decoration-color:var(--line-strong)}}@supports selector(::details-content){@media (prefers-reduced-motion:no-preference){.faq::details-content{block-size:0;transition:block-size .3s var(--ease-out), content-visibility .3s allow-discrete;overflow:clip}.faq[open]::details-content{block-size:auto}}}.band-start{background:var(--panel);color:var(--panel-ink);border-top:0;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(2.5rem,6vw,5.5rem);display:grid}.start-copy{top:var(--s-6);position:sticky}.start-copy .sign-head{margin-bottom:var(--s-5)}.band-start .start-copy>p:not(.start-status){color:var(--panel-muted)}.start-status{gap:var(--s-3);margin-top:var(--s-6);padding:var(--s-4);border:1px solid var(--panel-line);border-radius:var(--r-small);color:var(--panel-ink);max-width:52ch;font-size:.97rem;line-height:1.55;display:flex}.start-status .icon{margin-top:.1em}.planner{background:var(--sheet);color:var(--ink);border-radius:var(--r-sign);box-shadow:0 30px 60px -30px rgba(var(--shadow), .45);padding:clamp(1.25rem,3vw,2.25rem)}.field+.field{margin-top:var(--s-6)}.field label{align-items:center;gap:var(--s-3);font-family:var(--font-sign);letter-spacing:-.01em;font-size:1.2rem;font-weight:800;line-height:1.2;display:flex}.field-num{background:var(--action);width:1.9rem;height:1.9rem;color:var(--action-ink);border-radius:50%;flex:none;place-items:center;padding-top:.12em;font-size:.95rem;display:grid}.field-hint{margin:var(--s-2) 0 var(--s-3);color:var(--muted);font-size:.95rem}.field textarea{resize:vertical;width:100%;min-height:4.75rem;padding:var(--s-3) var(--s-4);border:1.5px solid var(--line-strong);border-radius:var(--r-small);background:var(--field);color:var(--ink);font:inherit;field-sizing:content;scrollbar-color:var(--line-strong) transparent;max-height:14rem;font-size:1.0625rem;line-height:1.5;transition:border-color .2s,box-shadow .2s;display:block}@supports (field-sizing:content){.field textarea{resize:none}}.field textarea::-webkit-resizer{background:0 0}.field textarea:focus{border-color:var(--focus);box-shadow:0 0 0 3px var(--focus);outline:none}.field textarea[aria-invalid=true]{border-style:dashed;border-width:2.5px;border-color:var(--ink)}.planner-actions{align-items:center;gap:var(--s-3) var(--s-4);margin-top:var(--s-6);padding-top:var(--s-5);border-top:1px solid var(--line);flex-wrap:wrap;display:flex}.btn-invert{background:var(--action);color:var(--action-ink);display:inline-grid}.btn-invert .btn-face{justify-content:center;align-items:center;gap:var(--s-3);transition:opacity .2s ease, filter .2s ease, transform .2s var(--ease-out);grid-area:1/1;display:inline-flex}.btn-invert .btn-face>span{padding-top:.12em}.btn-invert [data-face=done]{opacity:0;filter:blur(2px);transform:translateY(4px)}.btn-invert[data-done] [data-face=idle]{opacity:0;filter:blur(2px);transform:translateY(-4px)}.btn-invert[data-done] [data-face=done]{opacity:1;filter:none;transform:none}.btn-ghost{color:var(--ink);padding-inline:var(--s-3);background:0 0;min-height:2.75rem;font-size:.98rem;font-weight:700}@media (hover:hover) and (pointer:fine){.btn-ghost:hover{text-underline-offset:.25em;text-decoration:underline}}.planner-msg{min-height:1.6em;margin-top:var(--s-4);font-weight:700}.planner-msg[data-kind=error]:before{content:"";background:currentColor;border-radius:1px;width:.55em;height:.55em;margin-right:.5em;display:inline-block;transform:rotate(45deg)translateY(-.1em)}.planner-privacy{margin-top:var(--s-2);color:var(--muted);font-size:.9rem}.planner :focus-visible{outline-color:var(--focus)}.ticker{background:var(--ink);color:var(--ground);border-block:1px solid var(--ink);font-family:var(--font-sign);font-size:.92rem;font-weight:700;overflow:hidden}.mq-track{will-change:transform;width:max-content;display:flex}.ticker-run{flex:none;display:flex}.ticker-item{align-items:center;gap:var(--s-2);white-space:nowrap;padding:.55rem 0 .45rem;display:inline-flex}.ticker-item b{background:var(--ground);color:var(--ink);border-radius:3px;padding:.1rem .45rem 0;font-weight:900}.ticker-item:after{content:"";opacity:.55;background:currentColor;border-radius:50%;width:.45rem;height:.45rem;margin-inline:1.75rem}.reveal-title .w{overflow-clip-margin:.12em;vertical-align:top;margin-bottom:-.06em;padding-bottom:.06em;display:inline-block;overflow:clip}.reveal-title .w>span{display:inline-block}@media (prefers-reduced-motion:no-preference){@keyframes word-rise{0%{transform:translateY(105%)}to{transform:none}}.reveal-title .w>span{animation:word-rise .9s var(--ease-out) both;animation-delay:calc(80ms + var(--i) * 55ms)}}.interlude{border-top:1px solid var(--line);gap:clamp(.5rem,1.5vw,1rem);padding-block:clamp(3.5rem,7vw,6rem);display:grid;position:relative;overflow:hidden}main>section.interlude{padding-inline:0}.giant-row{overflow:hidden}.giant-run{flex:none;align-items:center;display:flex}.giant-run>span:not(.giant-sep){font-family:var(--font-sign);letter-spacing:-.045em;white-space:nowrap;padding-top:.08em;font-size:clamp(3.25rem,9vw,8.5rem);font-weight:900;line-height:1}.giant-sep{aspect-ratio:1;border-radius:var(--r-small);background:var(--ink);width:clamp(2.5rem,6vw,5.5rem);color:var(--ground);flex:none;place-items:center;margin-inline:clamp(1rem,2.5vw,2.25rem);display:grid}.giant-sep .icon{stroke-width:2.6px;width:60%;height:60%}.giant-row-outline .giant-run>span:not(.giant-sep){color:#0000;-webkit-text-stroke:2px var(--ink);paint-order:stroke}.giant-row-outline .giant-sep{color:var(--ink);box-shadow:inset 0 0 0 3px var(--ink);background:0 0}.roundel{z-index:2;aspect-ratio:1;pointer-events:none;place-items:center;width:clamp(15rem,30vw,27rem);display:grid;position:absolute;top:50%;left:50%;translate:-50% -50%}.roundel-ring{width:100%;height:100%;position:absolute;inset:0}.roundel-band{fill:none;stroke:var(--panel);stroke-width:22px}.roundel-edge{fill:none;stroke:var(--panel);stroke-width:1.5px}.roundel-ring text{fill:var(--panel-ink);font-family:var(--font-sign);letter-spacing:.08em;font-size:12.5px;font-weight:800}.roundel-core{background:var(--panel);width:26%;height:26%;color:var(--panel-ink);box-shadow:0 0 0 .5rem var(--ground), 0 20px 40px -20px rgba(var(--shadow), .7);border-radius:50%;padding:4.5%}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.site-footer{background:var(--panel);color:var(--panel-ink);border-top:1px solid var(--panel-line)}.footer-inner{max-width:calc(var(--page-max) + 2 * var(--gutter));padding:var(--s-6) var(--gutter);align-items:center;gap:var(--s-3) var(--s-6);flex-wrap:wrap;margin-inline:auto;display:flex}.footer-brand{font-family:var(--font-sign);font-size:1.15rem;font-weight:800;text-decoration:none}.site-footer p{color:var(--panel-muted);margin-right:auto;font-size:.97rem}.footer-mode{align-items:center;gap:var(--s-2);min-height:2.75rem;font-family:var(--font-sign);font-weight:700;text-decoration:none;display:inline-flex}@media (hover:hover) and (pointer:fine){.footer-mode:hover,.footer-brand:hover{text-decoration:underline}}.here-bar{z-index:20;left:50%;bottom:max(.75rem, env(safe-area-inset-bottom));align-items:center;gap:var(--s-3);background:var(--panel);color:var(--panel-ink);font-family:var(--font-sign);white-space:nowrap;box-shadow:0 12px 30px -12px rgba(var(--shadow), .45);opacity:0;pointer-events:none;transition:opacity .2s ease, transform .3s var(--ease-out);border-radius:999px;padding:.45rem .9rem .45rem .45rem;font-size:.9rem;font-weight:600;display:flex;position:fixed;transform:translate(-50%,140%)}.here-bar.is-visible{opacity:1;transform:translate(-50%)}.here-pin{background:var(--totem-action);width:1.9rem;height:1.9rem;color:var(--totem-action-ink);border-radius:50%;place-items:center;display:grid}.here-pin .icon{stroke-width:2.6px;width:1.05rem;height:1.05rem}.here-bar strong{font-weight:800}.here-count{color:var(--panel-muted);padding-left:var(--s-3);border-left:1px solid var(--panel-line);font-weight:600}@media (width>=1024px){.here-bar{display:none}}@media (width<=1023px){.site-footer{padding-bottom:4.5rem}}.route-rail{display:none}@media (width>=1024px){.route-rail{z-index:10;left:max(.75rem, calc((100vw - var(--page-max)) / 2 - 9.5rem));width:2.5rem;height:min(56vh,30rem);padding-block:var(--s-3);background:var(--ground);box-shadow:0 0 0 1px var(--line), 0 18px 40px -20px rgba(var(--shadow), .5);border-radius:999px;display:block;position:fixed;top:50%;transform:translateY(-50%)}.rail-track{left:50%;top:var(--s-4);bottom:var(--s-4);background:var(--line);border-radius:2px;width:4px;margin-left:-2px;position:absolute;overflow:hidden}.rail-fill{background:var(--ink);transform-origin:top;position:absolute;inset:0;transform:scaleY(0)}.route-rail ol{left:0;right:0;top:var(--s-4);bottom:var(--s-4);position:absolute}.route-rail a{width:2.5rem;height:1.75rem;left:0;top:calc(var(--at,0) * 100%);place-items:center;text-decoration:none;display:grid;position:absolute;transform:translateY(-50%)}.rail-dot{background:var(--ground);border:3px solid var(--line-strong);width:.8rem;height:.8rem;transition:transform .25s var(--ease-out), background-color .2s ease, border-color .2s ease;border-radius:50%}.route-rail a.is-passed .rail-dot{border-color:var(--ink);background:var(--ink)}.route-rail a[aria-current] .rail-dot{background:var(--ground);transform:scale(1.35)}.rail-label{background:var(--panel);color:var(--panel-ink);font-family:var(--font-sign);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .18s ease, transform .2s var(--ease-out);border-radius:4px;padding:.3rem .6rem .2rem;font-size:.82rem;font-weight:700;position:absolute;top:50%;left:calc(100% + .5rem);transform:translate(-4px,-50%)}.route-rail a[aria-current] .rail-label,.route-rail a:hover .rail-label,.route-rail a:focus-visible .rail-label{opacity:1;transform:translateY(-50%)}.route-rail a:focus-visible{outline-offset:0;border-radius:999px}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:scroll()){@keyframes rail-grow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.rail-fill{animation:linear both rail-grow scroll(root)}}}}@media (width>=1024px) and (width<=1499px){main>section,.stack-panel{padding-left:max(calc(var(--gutter) + 3.5rem), calc((100% - var(--page-max)) / 2))}.route-rail a[aria-current]:not(:hover):not(:focus-visible) .rail-label{opacity:0}}@media (prefers-reduced-motion:no-preference){@keyframes draw-x{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes stop-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.line-map:before{animation:draw-x 1.1s var(--ease-in-out) .15s both}.line-stop{animation:stop-in .5s var(--ease-out) both}.line-stop:first-child{animation-delay:.1s}.line-stop:nth-child(2){animation-delay:.32s}.line-stop:nth-child(3){animation-delay:.54s}.line-stop:nth-child(4){animation-delay:.76s}.line-stop:nth-child(5){animation-delay:.98s}@view-transition{navigation:auto}::view-transition-group(*){animation-duration:.32s;animation-timing-function:var(--ease-out)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:0s!important;animation:none!important}.btn-invert .btn-face{transition:opacity .15s!important}}@media (width<=1080px){.hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}h1{font-size:clamp(2.5rem,6.4vw,4.25rem)}}@media (width<=860px){.header-action{display:none}.hero{grid-template-columns:minmax(0,1fr)}h1{max-width:14ch}.totem{width:100%;max-width:34rem}.band-head,.band-tech,.band-start,.notice{grid-template-columns:minmax(0,1fr)}.start-copy{position:static}.line-map{gap:var(--s-4);padding-top:var(--s-5);grid-template-columns:minmax(0,1fr)}.line-map:before{left:1.25rem;right:auto;top:calc(var(--s-5) + 1.25rem);transform-origin:top;width:6px;height:auto;margin-left:-3px;bottom:1.25rem}.line-stop{text-align:left;gap:var(--s-4);flex-direction:row}.stop-text{align-items:baseline;column-gap:var(--s-2);flex-flow:wrap}.stack-panel{align-items:start;gap:var(--s-4);grid-template-columns:minmax(0,1fr);min-height:0}.panel-num{font-size:clamp(6rem,30vw,9rem)}}@media (width<=860px) and (prefers-reduced-motion:no-preference){@keyframes draw-y{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.line-map:before{animation-name:draw-y}}@media (width<=560px){.header-inner{gap:var(--s-3);min-height:3.75rem}.brand-plate{width:2.25rem;height:2.25rem}.brand-mark{width:1.6rem;height:1.6rem}.brand-name{font-size:1.05rem}.mode-switch a{padding:0 var(--s-3);min-height:2.75rem}.mode-switch a span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.mode-switch a .icon{width:1.3rem;height:1.3rem}.hero-actions .btn{width:100%}.btn-quiet{justify-content:flex-start}.totem{padding-inline:var(--s-4)}.totem-row{gap:var(--s-3);font-size:1.1rem}.slot{align-items:flex-start;gap:var(--s-1);flex-direction:column}.slot-state{text-align:left}.next-sign{width:100%}.next-sign .next-arrow{margin-left:auto}.planner-actions .btn{width:100%}.planner-actions .btn-ghost{width:auto}.footer-inner{flex-direction:column;align-items:flex-start}}.field-row{gap:var(--s-5);margin-bottom:var(--s-6);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.field-row .field+.field{margin-top:0}.field-row .field label{margin-bottom:var(--s-2)}.field input{width:100%;min-height:3rem;padding:var(--s-2) var(--s-4);border:1.5px solid var(--line-strong);border-radius:var(--r-small);background:var(--field);color:var(--ink);font:inherit;font-size:1.0625rem;transition:border-color .2s,box-shadow .2s;display:block}.field input:focus{border-color:var(--focus);box-shadow:0 0 0 3px var(--focus);outline:none}.field input[aria-invalid=true]{border-style:dashed;border-width:2.5px;border-color:var(--ink)}.field-row .field-hint{margin:var(--s-2) 0 0}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.btn-send{display:inline-grid}.btn-send .btn-face{grid-area:1/1}.btn-send [data-face=sending]{opacity:0;filter:blur(2px);transform:translateY(4px)}.btn-send[data-state] [data-face=idle]{opacity:0;filter:blur(2px);transform:translateY(-4px)}.btn-send[data-state=sending] [data-face=sending],.btn-send[data-state=done] [data-face=done]{opacity:1;filter:none;transform:none}.btn-send:disabled{cursor:progress}.spin{border:2.5px solid;border-right-color:#0000;border-radius:50%;width:1.05em;height:1.05em}@media (prefers-reduced-motion:no-preference){@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:.7s linear infinite spin}}@media (width<=560px){.field-row{grid-template-columns:minmax(0,1fr)}}.case{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);align-items:center;gap:clamp(2rem,5vw,4.5rem);margin-bottom:clamp(3rem,6vw,4.5rem);display:grid}.case-media{perspective:1400px;padding-bottom:6%;padding-right:7%;position:relative}.case-browser{border-radius:var(--r-sign);background:var(--panel);color:var(--panel-ink);box-shadow:0 40px 80px -40px rgba(var(--shadow), .65), 0 0 0 1px rgba(var(--shadow), .12);transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transform-style:preserve-3d;will-change:transform;position:relative;overflow:hidden}.case-bar{align-items:center;gap:var(--s-4);padding:.6rem 1rem;display:flex}.case-dots{gap:6px;display:inline-flex}.case-dots i{background:var(--panel-ink);opacity:.35;border-radius:50%;width:10px;height:10px}.case-url{max-width:22rem;font-family:var(--font-sign);text-align:center;background:#ffffff1a;border-radius:999px;flex:1;margin-inline:auto;padding:.25rem .75rem;font-size:.82rem;font-weight:600}.case-viewport{aspect-ratio:16/10;background:#0b1f3a;overflow:hidden}.case-scroll{will-change:transform;width:100%;height:auto;display:block}.case-phone{background:var(--ink);width:24%;box-shadow:0 30px 60px -25px rgba(var(--shadow), .7);transform:translateZ(40px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));border-radius:22px;padding:6px;position:absolute;bottom:0;right:0}.case-phone img{border-radius:16px;width:100%;height:auto;display:block}.case-info{gap:var(--s-3);flex-direction:column;display:flex}.case-name{letter-spacing:-.03em;font-size:clamp(2rem,3.4vw,3rem);font-weight:800;line-height:1}.case-sector{font-family:var(--font-sign);color:var(--muted);font-weight:700}.case-summary{color:var(--muted);max-width:46ch}.case-built-title{margin:var(--s-3) 0 0;font-family:var(--font-sign);font-size:1rem;font-weight:800}.case-built{gap:var(--s-2);display:grid}.case-built li{max-width:48ch;padding-left:1.4rem;font-size:.98rem;position:relative}.case-built li:before{content:"";background:var(--ink);border-radius:2px;width:.6rem;height:.6rem;position:absolute;top:.55em;left:0}.case-link{align-self:flex-start;align-items:center;gap:var(--s-2);margin-top:var(--s-3);min-height:3rem;padding:0 var(--s-5);border-radius:var(--r-small);background:var(--action);color:var(--action-ink);font-family:var(--font-sign);transition:translate .35s var(--ease-out), transform .16s var(--ease-out);font-weight:800;text-decoration:none;display:inline-flex}.case-link:active{transform:scale(.97)}.slots-after{max-width:40rem}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()) and (animation-range:entry){@keyframes case-reveal{0%{clip-path:inset(14% 10% round 24px);opacity:.4}to{clip-path:inset(0 0 0 0 round var(--r-sign));opacity:1}}@keyframes case-pan{0%{transform:translateY(0)}to{transform:translateY(-75%)}}@keyframes phone-rise{0%{opacity:0;translate:0 40%}to{opacity:1;translate:0}}.case-browser{animation:linear both case-reveal view();animation-range:entry cover 40%}.case-scroll{animation:linear both case-pan view();animation-range:cover 30% cover 95%}.case-phone{animation:linear both phone-rise view();animation-range:entry 30% cover 45%}}}@media (width<=860px){.case{grid-template-columns:minmax(0,1fr)}}[data-magnetic]{transition:translate .35s var(--ease-out), transform .16s var(--ease-out), background-color .2s ease}.fx-cursor{z-index:90;pointer-events:none;opacity:0;transition:opacity .2s;position:fixed;top:0;left:0}.fx-cursor.is-on{opacity:1}.fx-cursor-ring,.fx-cursor-dot{border-radius:50%;position:absolute;top:0;left:0;translate:-50% -50%}.fx-cursor-ring{border:2px solid var(--ink);width:34px;height:34px;transition:width .25s var(--ease-out), height .25s var(--ease-out), background-color .2s ease, border-color .2s ease, opacity .2s ease}.fx-cursor-dot{background:var(--ink);width:6px;height:6px;transition:opacity .2s}.fx-cursor.is-link .fx-cursor-ring{background:#0f3c651f;width:58px;height:58px}.fx-cursor.is-media .fx-cursor-ring{border-style:dashed;width:84px;height:84px}.fx-cursor.is-down .fx-cursor-ring{width:26px;height:26px}.fx-cursor.is-text .fx-cursor-ring,.fx-cursor.is-text .fx-cursor-dot{opacity:0}.intro-overlay{display:none}html.intro .intro-overlay{z-index:100;pointer-events:none;display:block;position:fixed;inset:0}html.intro body{overflow:hidden}.intro-door{background:var(--panel);height:50.5%;position:absolute;left:0;right:0}.intro-door-top{top:0}.intro-door-bottom{bottom:0}.intro-formal .intro-mark{fill:none;width:clamp(5rem,12vw,8rem);stroke:var(--panel-ink);stroke-width:2.5px;stroke-linejoin:round;stroke-dasharray:320;stroke-dashoffset:320px;position:absolute;top:50%;left:50%;translate:-50% -50%}@keyframes draw{to{stroke-dashoffset:0}}@keyframes door-up{to{transform:translateY(-101%)}}@keyframes door-down{to{transform:translateY(101%)}}@keyframes mark-out{to{opacity:0;scale:.9}}html.intro .intro-formal .intro-mark{animation:draw .55s var(--ease-out) 50ms forwards, mark-out .2s ease .6s forwards}html.intro .intro-door-top{animation:door-up .5s var(--ease-in-out) .62s forwards}html.intro .intro-door-bottom{animation:door-down .5s var(--ease-in-out) .62s forwards}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()) and (animation-range:entry){@keyframes heading-rise{0%{clip-path:inset(0 0 100%);translate:0 .35em}to{clip-path:inset(0 0 -10%);translate:0}}.band-head h2{animation:linear both heading-rise view();animation-range:entry 10% entry 90%}}}
