.tp-hero{gap:var(--s-5);padding-block:clamp(3.5rem,12vh,8rem) clamp(3rem,8vh,5.5rem);display:grid}.tp-hero h1{letter-spacing:var(--track-poster);font-size:clamp(2.8rem,8vw,7.4rem);font-weight:600;line-height:var(--lh-display);max-width:12ch}.tp-lede{font-size:var(--t-lg);max-width:44ch;line-height:1.45}.tp-sec{border-top:1px solid var(--line);padding-block:clamp(3.5rem,9vh,6rem)}.tp-sec h2{font-size:var(--t-2xl);letter-spacing:var(--track-display);max-width:20ch;font-weight:600;line-height:1.02}.tp-answer{font-size:var(--t-lg);max-width:52ch;margin-top:var(--s-4);line-height:1.5}.tp-proof{gap:var(--s-5);margin-top:var(--s-6);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tp-time{gap:var(--s-5);margin:var(--s-6) 0 0;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.tp-time div{border-top:2px solid var(--accent);padding-top:var(--s-3)}.tp-time dt{font:600 var(--t-2xl)/1 var(--font-display);letter-spacing:-.03em}.tp-time dd{margin:var(--s-2) 0 0;color:var(--ink-soft);font-size:var(--t-sm)}.tp-faq{margin-top:var(--s-5);border-top:1px solid var(--line);max-width:52rem}.tp-faq details{border-bottom:1px solid var(--line)}.tp-faq summary{cursor:pointer;font:600 var(--t-lg)/1.3 var(--font-text);align-items:center;min-height:56px;list-style:none;display:flex}.tp-faq summary::-webkit-details-marker{display:none}.tp-faq summary:after{content:"+";color:var(--accent);font:500 var(--t-xl)/1 var(--font-display);margin-left:auto}.tp-faq details[open] summary:after{content:"−"}.tp-faq details p{color:var(--ink-soft);padding-bottom:var(--s-5);max-width:62ch}.tp-close .scan{align-items:end;gap:var(--s-4) var(--s-5);margin-top:var(--s-6);flex-wrap:wrap;display:flex}.tp-close .field input{border:1px solid var(--line-strong);min-height:48px;padding:.75rem .9rem}.tp-close .field input:focus-visible{border-color:var(--accent);outline:2px solid var(--accent);outline-offset:0}.tp-close .scan__note{font-size:var(--t-sm);color:var(--ink-soft);margin-top:var(--s-4);min-height:1.4em}.tp-text{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:clamp(1.5rem,5vw,5rem);display:grid}.tp-body{gap:var(--s-4);display:grid}.tp-body p{font-size:var(--t-lg);max-width:60ch;line-height:1.55}.tp-body .tp-lead{font:600 var(--t-2xl)/1.08 var(--font-display);letter-spacing:var(--track-display);max-width:22ch;color:var(--ink)}.tp-body .tp-lead:before{content:"";border-top:3px solid var(--accent);width:2.5rem;margin-bottom:var(--s-4);display:block}.tp-steps{counter-reset:step;margin:var(--s-6) 0 0;gap:0 var(--s-6);grid-template-columns:repeat(2,minmax(0,1fr));padding:0;list-style:none;display:grid}.tp-steps li{counter-increment:step;gap:var(--s-4);padding-block:var(--s-5);border-top:1px solid var(--line);grid-template-columns:3.25rem minmax(0,1fr);display:grid}.tp-steps li:before{content:counter(step, decimal-leading-zero);font:700 var(--t-xl)/1 var(--font-display);color:var(--accent);letter-spacing:-.03em}.tp-steps h3,.tp-links h3{font-size:var(--t-lg);letter-spacing:-.01em;font-weight:600}.tp-steps p,.tp-links p{color:var(--ink-soft);margin-top:var(--s-2);max-width:44ch}.tp-links{margin:var(--s-6) 0 0;gap:0 var(--s-6);grid-template-columns:repeat(3,minmax(0,1fr));padding:0;list-style:none;display:grid}.tp-links li{border-top:1px solid var(--line)}.tp-links a{padding-block:var(--s-4) var(--s-5);color:inherit;min-height:48px;text-decoration:none;display:block}.tp-links a h3:after{content:"";vertical-align:.02em;background:var(--accent);width:.7em;height:.7em;margin-left:.3em;display:inline-block;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M1 8h12M8 2.5 13.5 8 8 13.5' fill='none' stroke='black' stroke-width='2.4'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M1 8h12M8 2.5 13.5 8 8 13.5' fill='none' stroke='black' stroke-width='2.4'/%3E%3C/svg%3E") 50%/contain no-repeat}.tp-links a:hover h3,.tp-links a:focus-visible h3{text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:.18em}.tp-links a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tp-chips{margin:var(--s-2) 0 0;gap:var(--s-2);flex-wrap:wrap;max-width:44rem;padding:0;list-style:none;display:flex}.tp-chips li{border:1px solid var(--line-strong);font-size:var(--t-sm);color:var(--ink);padding:.45rem .7rem}@media (max-width:1080px){.tp-links{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:860px){.tp-text,.tp-steps,.tp-links,.tp-time,.tp-proof{grid-template-columns:minmax(0,1fr)}}.pc-slot{border-top:1px solid var(--line);padding-block:clamp(2.5rem,7vh,4.5rem)}.pc{max-width:46rem;margin:0}.pc-head{align-items:center;gap:var(--s-3) var(--s-4);margin-bottom:var(--s-5);flex-wrap:wrap;display:flex}.pc-caption{margin-top:var(--s-5);color:var(--ink-soft);font-size:var(--t-base);max-width:52ch}@keyframes tp-from{0%{transform:var(--pc-t,none);opacity:var(--pc-o,1);clip-path:var(--pc-c,none)}}@media (prefers-reduced-motion:reduce){.pc *{animation:none!important}}.pc-flow{max-width:56rem}.pc-flowbox{padding-top:1.75rem;position:relative;overflow-x:clip}.pc-nodes{gap:var(--s-2);z-index:2;grid-template-columns:repeat(5,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid;position:relative}.pc-node{text-align:center;font-size:var(--t-sm);color:var(--ink-soft);justify-items:center;gap:.6rem;display:grid}.pc-node b{color:var(--ink);font-weight:600;display:block}.pc-ic{border:1px solid var(--line-strong);background:var(--canvas);place-items:center;width:64px;height:64px;display:grid}.pc-ic svg{fill:none;width:30px;height:30px;stroke:var(--ink);stroke-width:1.6px}.pc-node--ai .pc-ic{border-style:dashed}.pc-node--person .pc-ic{border-color:var(--accent)}.pc-node--person .pc-ic svg{stroke:var(--accent)}.pc-track{background:var(--line);z-index:1;height:2px;position:absolute;top:calc(1.75rem + 32px);left:10%;right:10%}.pc-traveller{z-index:3;pointer-events:none;height:14px;position:absolute;top:calc(1.75rem + 25px);left:10%;right:10%;transform:translate(100%)}.pc-traveller i{background:var(--accent);width:14px;height:14px;position:absolute;top:0;left:-7px}.pc-gate{z-index:4;font:600 var(--t-xs)/1 var(--font-text);letter-spacing:.08em;text-transform:uppercase;background:var(--accent);color:var(--accent-ink);white-space:nowrap;padding:.35rem .5rem;position:absolute;top:0;left:70%;transform:translate(-50%)}@keyframes tp-travel{0%{transform:translate(0)}18%,26%{transform:translate(25%)}44%,52%{transform:translate(50%)}62%,82%{transform:translate(75%)}to{transform:translate(100%)}}@keyframes tp-gate{0%,66%{opacity:0}70%,to{opacity:1}}.js-motion .pc:not(.pc--play) .pc-traveller{transform:translate(0)}.js-motion .pc:not(.pc--play) .pc-gate{opacity:0}.pc--play .pc-traveller{animation:tp-travel 4.2s var(--ease-out) .3s backwards}.pc--play .pc-gate{animation:4.2s linear .3s backwards tp-gate}@media (max-width:560px){.pc-node{font-size:var(--t-xs)}.pc-ic{width:46px;height:46px}.pc-ic svg{width:22px;height:22px}.pc-track{top:calc(1.75rem + 23px)}.pc-traveller{top:calc(1.75rem + 16px)}}.pc-map{max-width:60rem}.pc-mapgrid{gap:var(--s-5);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;display:grid}.pc-mapsvg{aspect-ratio:4/3;background:var(--surface);width:100%;height:auto;display:block}.bf-map .bf__body{padding:0}.bf-map .pc-mapgrid{gap:0}.bf-map .pc-pack{border-top:0;border-left:1px solid var(--line);padding:0 var(--s-4)}.pc-mapsvg .pc-land{fill:var(--map-land)}.pc-mapsvg .pc-blocks{fill:var(--map-block)}.pc-mapsvg .pc-park{fill:var(--map-park)}.pc-mapsvg .pc-water{fill:var(--map-water)}.pc-mapsvg .pc-streets{stroke:var(--map-road);stroke-width:5px;fill:none}.pc-mapsvg .pc-hw-edge{stroke:var(--map-highway-edge);stroke-width:13px;fill:none;stroke-linecap:round}.pc-mapsvg .pc-hw{stroke:var(--map-highway);stroke-width:9px;fill:none;stroke-linecap:round}.pc-mapsvg .pc-others{fill:var(--map-pin);stroke:#fff;stroke-width:1.5px}.pc-mapsvg .pc-ring{fill:none;stroke:var(--accent);stroke-width:2px;opacity:0;transform-box:fill-box;transform-origin:50%}.pc-mapsvg .pc-pin{fill:var(--accent);stroke:#7a2700;stroke-width:1.5px}.pc-mapsvg .pc-pin-e{fill:#fff}@media (max-width:700px){.bf-map .pc-pack{border-left:0;border-top:1px solid var(--line)}}.pc-pack{border-top:1px solid var(--line)}.pc-pack .label{padding-block:var(--s-3)}.pc-row{border-bottom:1px solid var(--line);grid-template-columns:1.4rem minmax(0,1fr);align-items:center;gap:.7rem;min-height:4.2rem;display:grid}.pc-row b{font:600 var(--t-base)/1 var(--font-display);color:var(--ink-soft)}.pc-row i{background:var(--line-strong);width:70%;height:8px;display:block}.pc-row i+i{background:var(--line);width:40%;margin-top:6px}.pc-slot3{border-bottom:1px solid var(--line);min-height:4.2rem;position:relative;overflow:hidden}.pc-slot3 .pc-row{border:0;position:absolute;inset:0}.pc-slot3 .pc-old{opacity:0}.pc-you b{color:var(--accent)}.pc-you span{font:600 var(--t-base)/1.2 var(--font-text);color:var(--ink)}.pc-you small{color:var(--ink-soft);font-size:var(--t-xs);margin-top:.2rem;display:block}@keyframes tp-ring{0%{opacity:.9;transform:scale(.2)}to{opacity:0;transform:scale(1)}}.js-motion .pc:not(.pc--play) .pc-drop{opacity:0;transform:translateY(-140px)}.js-motion .pc:not(.pc--play) .pc-slot3 .pc-you{opacity:0;transform:translateY(100%)}.js-motion .pc:not(.pc--play) .pc-slot3 .pc-old{opacity:1}.pc--play .pc-drop{--pc-t:translateY(-140px);--pc-o:0;animation:tp-from 1.1s var(--ease-out) .3s backwards}.pc--play .pc-ring{animation:tp-ring 1.2s var(--ease-out) 1.3s}.pc--play .pc-slot3 .pc-old{--pc-o:1;animation:tp-from .7s var(--ease-out) 1.8s backwards}.pc--play .pc-slot3 .pc-you{--pc-t:translateY(100%);--pc-o:0;animation:tp-from .8s var(--ease-out) 2s backwards}@media (max-width:700px){.pc-mapgrid{grid-template-columns:minmax(0,1fr)}}.pc-sheet{max-width:56rem}.pc-strip{background:var(--canvas);border:1px solid var(--line);padding:2.1rem .9rem;position:relative}.pc-strip:before,.pc-strip:after{content:"";background:repeating-linear-gradient(90deg, var(--line) 0 14px, transparent 14px 26px);height:10px;position:absolute;left:.6rem;right:.6rem}.pc-strip:before{top:.65rem}.pc-strip:after{bottom:.65rem}.pc-frames{z-index:1;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;margin:0;padding:0;list-style:none;display:grid;position:relative}.pc-fr{aspect-ratio:4/5;background:var(--surface);border:1px solid var(--line);place-items:center;display:grid;position:relative}.pc-fr-in{text-align:center;justify-items:center;gap:.8rem;display:grid}.pc-fr svg{fill:none;width:3.4rem;height:auto;stroke:var(--ink);stroke-width:1.4px}.pc-fr b{font:600 var(--t-base)/1.1 var(--font-display);letter-spacing:-.01em;color:var(--ink)}.pc-fr--ai{border-color:var(--accent)}.pc-fr--ai svg{stroke:var(--accent)}.pc-fr-no{font:500 var(--t-xs)/1 var(--font-text);letter-spacing:.08em;color:var(--ink-soft);position:absolute;bottom:.35rem;left:.45rem}.pc-thread{background:var(--accent);z-index:0;transform-origin:0;height:2px;position:absolute;top:50%;left:1.5rem;right:1.5rem}.js-motion .pc:not(.pc--play) .pc-fr-in{opacity:0}.js-motion .pc:not(.pc--play) .pc-thread{transform:scaleX(0)}.pc--play .pc-fr-in{--pc-o:0;animation:tp-from 1.1s ease-out calc(.4s + var(--i) * .7s) backwards}.pc--play .pc-thread{--pc-t:scaleX(0);animation:tp-from 1.2s var(--ease-out) 3.3s backwards}@media (max-width:560px){.pc-frames{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem .6rem}.pc-fr{aspect-ratio:5/4}.pc-fr svg{width:2.4rem}}.hseq{border-top:1px solid var(--line);padding-block:clamp(3.5rem,9vh,6rem)}.hseq h2{font-size:var(--t-2xl);letter-spacing:var(--track-display);max-width:20ch;font-weight:600;line-height:1.02}.lseq{border-top:1px solid var(--line)}.lseq .tp-sec{border-top:0;padding-block:0}.tp-hero--portrait{grid-template-columns:minmax(0,1.5fr) minmax(13rem,.6fr);align-items:center;column-gap:clamp(2rem,6vw,5rem)}.tp-hero--portrait>div{gap:var(--s-5);display:grid}.tp-portrait{background:var(--surface);border:1px solid var(--line-strong);margin:0;padding:14px 14px 34px;position:relative}.tp-portrait figcaption{font:500 var(--t-xs)/1 var(--font-text);letter-spacing:.08em;color:var(--ink-soft);position:absolute;bottom:10px;left:14px}.tp-portrait img{object-fit:cover;width:100%;height:100%;display:block}@media (max-width:767px){.tp-hero--portrait{grid-template-columns:minmax(0,1fr)}.tp-portrait{max-width:16rem}}.tp-read .tp-body{position:relative}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference) and (min-width:768px) and (pointer:fine){.tp-read .tp-body:before{content:"";background:var(--accent);transform-origin:50% 0;width:2px;animation:linear both tp-rail;animation-timeline:view();animation-range:cover 18% cover 62%;position:absolute;top:.4em;bottom:.4em;left:calc(-1*clamp(.75rem,2.5vw,2.5rem))}.tp-read .tp-body>p{animation:tp-rise var(--ease-out) both;animation-timeline:view();animation-range:entry entry 70%}}}@keyframes tp-rail{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes tp-rise{0%{transform:translateY(1.1rem)}to{transform:none}}
.seq-skip{left:var(--gutter,1.25rem);opacity:0;z-index:2;background:var(--ink);color:var(--canvas);padding:.6rem .9rem;font-weight:600;text-decoration:none;position:absolute;transform:translateY(-120%)}.seq-skip:focus-visible{opacity:1;transform:none}.seq-end{height:0;display:block}.lseq{position:relative}.lseq__panel{border-top:1px solid var(--line);padding-block:clamp(2.5rem,7vh,4.5rem)}.lseq__panel:first-child{border-top:0}.hseq{position:relative}.hseq__head{padding-bottom:var(--s-5)}.hseq__row{padding:0 var(--gutter);max-width:var(--maxw);gap:var(--s-5);margin:0 auto;list-style:none;display:grid}.hseq__item{min-width:0}.seq-panel{background:var(--surface);border:1px solid var(--line);height:100%;color:inherit;grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:center;gap:clamp(1.5rem,4vw,4rem);padding:clamp(1.5rem,4vw,4rem);text-decoration:none;display:grid}.seq-panel__n{font:700 var(--t-3xl)/1 var(--font-display);letter-spacing:-.04em;color:var(--accent);margin-bottom:var(--s-4);display:block}.seq-panel h3{font-size:var(--t-2xl);letter-spacing:var(--track-display);max-width:16ch;font-weight:600;line-height:1.02}.seq-panel p{color:var(--ink-soft);margin-top:var(--s-4);max-width:40ch;font-size:var(--t-lg);line-height:1.45}.seq-panel .panel-visual{object-fit:contain;width:100%;height:100%;max-height:min(52svh,30rem)}a.seq-panel{min-height:48px}a.seq-panel h3:after{content:"";vertical-align:.02em;background:var(--accent);width:.7em;height:.7em;margin-left:.3em;display:inline-block;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M1 8h12M8 2.5 13.5 8 8 13.5' fill='none' stroke='black' stroke-width='2.4'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M1 8h12M8 2.5 13.5 8 8 13.5' fill='none' stroke='black' stroke-width='2.4'/%3E%3C/svg%3E") 50%/contain no-repeat}a.seq-panel:hover,a.seq-panel:focus-visible{border-color:var(--accent)}a.seq-panel:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (max-width:767px),(pointer:coarse){.hseq__row{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;max-width:none;scroll-padding-inline:var(--gutter);gap:var(--s-3);padding-bottom:var(--s-3);scrollbar-width:thin;display:flex;overflow-x:auto}.hseq__item{scroll-snap-align:start;flex:0 0 100%}.hseq__row:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.seq-panel{grid-template-columns:minmax(0,1fr);align-content:start;min-height:72svh}.seq-panel .panel-visual{order:-1;max-height:30svh}.seq-panel__n{font-size:var(--t-2xl);margin-bottom:var(--s-3)}.seq-panel p{font-size:var(--t-base)}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference) and (min-width:768px) and (min-height:600px) and (pointer:fine){.lseq{--n:3;height:min(calc(var(--n) * 70svh + 30svh), 300svh);view-timeline:--lseq block}.lseq__stage{align-items:center;height:100svh;display:grid;position:sticky;top:0;overflow:clip}.lseq__panel{animation:linear both lseq-mid;animation-timeline:--lseq;animation-range:contain calc(var(--i) * 100% / var(--n)) contain calc((var(--i) + 1) * 100% / var(--n));border-top:0;grid-area:1/1;padding-block:0}.lseq__panel:first-child{animation-name:lseq-first}.lseq__panel:last-of-type{animation-name:lseq-last}.lseq__progress{background:var(--line);width:min(12rem,30vw);height:2px;position:absolute;bottom:clamp(1.5rem,5vh,3rem);left:0}.lseq__progress:after{content:"";background:var(--accent);transform-origin:0;animation:linear both seq-progress;animation-timeline:--lseq;animation-range:contain;position:absolute;inset:0}.hseq{--n:6;height:calc((var(--n) - 1) * 75svh + 100svh);view-timeline:--hseq block}.hseq__stage{flex-direction:column;height:100svh;padding-block:clamp(4.5rem,10svh,6.5rem) clamp(1rem,3svh,2rem);display:flex;position:sticky;top:0;overflow-x:clip;container-type:inline-size}.hseq__head{flex:none;width:100%}.hseq__stage>.wrap{width:100%}.hseq__clip{flex:1;min-height:0;display:flex}.hseq__row{gap:var(--gutter);width:max-content;max-width:none;height:100%;animation:var(--hseq-anim) linear both;margin:0;animation-timeline:--hseq;animation-range:contain;display:flex}.hseq__item{flex:0 0 calc(100cqw - 2 * var(--gutter));height:100%}.hseq__progress{margin-top:var(--s-4);background:var(--line);width:min(12rem,30vw);height:2px;display:block;position:relative}.hseq__progress:after{content:"";background:var(--accent);transform-origin:0;animation:linear both seq-progress;animation-timeline:--hseq;animation-range:contain;position:absolute;inset:0}}}@keyframes lseq-first{0%,92%{opacity:1;transform:none}to{opacity:0;transform:translateY(-10px)}}@keyframes lseq-mid{0%{opacity:0;transform:translateY(10px)}8%,92%{opacity:1;transform:none}to{opacity:0;transform:translateY(-10px)}}@keyframes lseq-last{0%{opacity:0;transform:translateY(10px)}8%,to{opacity:1;transform:none}}@keyframes seq-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.lseq__progress,.hseq__progress{display:none}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference) and (min-width:768px) and (min-height:600px) and (pointer:fine){.lseq__progress,.hseq__progress{display:block}}}.lseq--film .lseq__panel{border-top:0;padding-block:0}.film-frame{isolation:isolate;box-sizing:border-box;min-height:72svh;padding:clamp(5rem, 12svh, 7rem) var(--gutter) clamp(3rem, 10svh, 6rem);background:radial-gradient(60% 55% at 82% 28%, #ff510012, transparent 70%), var(--surface);border-top:1px solid var(--line);align-content:end;display:grid;position:relative;overflow:hidden}.lseq__panel:nth-child(2) .film-frame{background:radial-gradient(55% 50% at 70% 72%, #ff51000f, transparent 70%), var(--surface)}.lseq__panel:nth-child(3) .film-frame{background:radial-gradient(50% 60% at 88% 60%, #ff510014, transparent 70%), var(--surface)}.lseq__panel:nth-child(4) .film-frame{background:radial-gradient(70% 60% at 76% 40%, #ff51001c, transparent 72%), var(--surface)}.film-frame__scene{z-index:-1;position:absolute;inset:0}.film-frame__scene img{object-fit:cover;width:100%;height:100%}.film-frame__scene:after{content:"";background:linear-gradient(90deg,#0a0a0aeb 0%,#0a0a0a99 45%,#0a0a0a1a 100%);position:absolute;inset:0}.film-frame__big{z-index:0;right:var(--gutter);pointer-events:none;width:min(46vw,44rem);height:auto;position:absolute;top:50%;overflow:visible;transform:translateY(-58%)}.film-frame__big text{font:600 128px var(--font-display);letter-spacing:-.05em;fill:none;stroke:var(--line-strong);stroke-width:1.2px}.lseq__panel:last-of-type .film-frame__big text{stroke:var(--accent)}.film-frame__words{z-index:1;max-width:min(48rem,88vw);position:relative}@media (max-width:767px){.film-frame__big{width:62vw;top:1.5rem;transform:none}}.film-frame__n{font:500 var(--t-sm)/1 var(--font-text);letter-spacing:.1em;color:var(--accent);display:block}.film-frame__word{font:600 clamp(3.4rem, 11vw, 12rem)/.86 var(--font-display);letter-spacing:-.045em;color:var(--ink);margin:.15em 0 .2em}.lseq__panel:last-of-type .film-frame__word{color:var(--accent)}.film-frame__line{font-size:var(--t-xl);max-width:28ch;color:var(--ink);line-height:1.25}.craft__tag{padding-block:var(--s-6) var(--s-4)}.film-sprockets{display:none}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference) and (min-width:768px) and (min-height:600px) and (pointer:fine){.lseq--film .lseq__stage{align-items:stretch}.lseq--film .lseq__panel{animation-name:lseq-film;animation-range:contain calc(var(--i) * 100% / var(--n)) contain calc((var(--i) + 1.18) * 100% / var(--n));align-self:stretch}.lseq--film .lseq__panel:first-child{animation-name:lseq-film-first}.lseq--film .lseq__panel:last-of-type{animation-name:lseq-film-last;animation-range:contain calc(var(--i) * 100% / var(--n)) contain calc((var(--i) + 1) * 100% / var(--n))}.lseq--film .film-frame{border-top:0;height:100svh;min-height:0}.lseq--film .film-frame__words{animation:film-words-in var(--ease-out) both, film-words-out var(--ease-out) forwards;animation-timeline:--lseq,--lseq;animation-range:contain calc((var(--i) + .16) * 100% / var(--n)) contain calc((var(--i) + .32) * 100% / var(--n)), contain calc((var(--i) + .93) * 100% / var(--n)) contain calc((var(--i) + 1.01) * 100% / var(--n))}.lseq--film .lseq__panel:first-child .film-frame__words{animation-name:none,film-words-out}.lseq--film .lseq__panel:last-of-type .film-frame__words{animation-name:film-words-in,none}.film-sprockets{z-index:2;pointer-events:none;background:repeating-linear-gradient(90deg, transparent 0 12px, var(--canvas) 12px 26px, transparent 26px 40px) 0 50% / 40px 8px repeat-x, var(--surface);border-block:1px solid var(--line);height:18px;animation:linear both film-roll;animation-timeline:--lseq;animation-range:contain;display:block;position:absolute;left:-40px;right:-200px}.film-sprockets--top{top:0}.film-sprockets--bottom{bottom:0}}}@keyframes lseq-film-first{0%,97%{opacity:1}to{opacity:0}}@keyframes lseq-film{0%{opacity:0;clip-path:inset(0 0 0 100%)}.1%{opacity:1;clip-path:inset(0 0 0 100%);animation-timing-function:var(--ease-out)}15.25%,97%{opacity:1;clip-path:inset(0)}to{opacity:0;clip-path:inset(0)}}@keyframes lseq-film-last{0%{opacity:0;clip-path:inset(0 0 0 100%)}.1%{opacity:1;clip-path:inset(0 0 0 100%);animation-timing-function:var(--ease-out)}18%,to{opacity:1;clip-path:inset(0)}}@keyframes film-words-in{0%{opacity:0;transform:translateY(.5em)}to{opacity:1;transform:none}}@keyframes film-words-out{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(-.35em)}}@keyframes film-roll{0%{transform:translate(0)}to{transform:translate(-160px)}}@property --sf-x{syntax:"<number>";inherits:false;initial-value:0}.sf{--s:calc(7 / var(--n));border-top:1px solid var(--line);padding-top:clamp(3.5rem,9vh,6rem);position:relative}.sf__head{padding-bottom:var(--s-5)}.sf__track{display:none}.sf__frames{gap:2px;margin:0;padding:0;list-style:none;display:grid}.sf__frame{isolation:isolate;box-sizing:border-box;min-height:72svh;padding:clamp(4rem, 10svh, 6rem) var(--gutter) clamp(3rem, 9svh, 5rem);align-content:end;display:grid;position:relative;overflow:hidden}.sf__scene{z-index:0;background:radial-gradient(60% 55% at 80% 40%, #ff51000f, transparent 70%), var(--surface);position:absolute;inset:0}.sf__scene .panel-visual{right:var(--gutter);width:min(40vw,34rem);height:auto;max-height:56svh;position:absolute;top:50%;transform:translateY(-50%)}.sf__txt{z-index:2;max-width:min(40rem,50vw);position:relative}.sf__num{width:clamp(6rem,13vw,11rem);height:auto;display:block;overflow:visible}.sf__num text{font:600 128px var(--font-display);letter-spacing:-.05em;fill:none;stroke:var(--accent);stroke-width:1.4px}.sf__headrow{align-items:center;gap:var(--s-4);flex-wrap:wrap;margin:.2em 0 .35em;display:flex}.sf__frame h3{font:600 clamp(2.2rem, 5.4vw, 5.2rem)/.95 var(--font-display);letter-spacing:-.035em;color:var(--ink)}.sf__stamp{background:var(--accent);color:var(--accent-ink);font:600 var(--t-xs)/1.2 var(--font-text);letter-spacing:.06em;text-transform:uppercase;padding:.2rem .5rem;display:inline-block;transform:rotate(-8deg)}.sf__body{font-size:var(--t-lg);max-width:40ch;color:var(--ink);line-height:1.45}.sf__track{background:repeating-linear-gradient(90deg, var(--line-strong) 0 4px, transparent 4px 12px);height:2px;container-type:inline-size}.sf__st{top:-4px;left:calc(7px + var(--k) / (var(--n) - 1) * (100% - 14px));justify-items:center;gap:.55rem;display:grid;position:absolute;translate:-50%}.sf__st i{background:var(--surface);border:2px solid var(--line-strong);border-radius:50%;width:10px;height:10px;display:block;position:relative}.sf__st i:after{content:"";background:var(--accent);opacity:0;border-radius:50%;position:absolute;inset:-2px}.sf__st em{font:500 var(--t-xs)/1 var(--font-text);letter-spacing:.08em;color:var(--ink-soft);font-style:normal}.sf__st:first-child i:after{opacity:1}.sf__dot{width:14px;height:14px;transform:translateX(calc(var(--sf-x) / (var(--n) - 1) * (100cqw - 14px)));position:absolute;top:-6px;left:0}.sf__dot i{background:var(--accent);transform-origin:50% 100%;width:100%;height:100%;display:block}@media (max-width:767px),(pointer:coarse){.sf__frames{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;gap:0;display:flex;overflow-x:auto}.sf__frame{scroll-snap-align:start;flex:0 0 100%}.sf__frames:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.sf__scene .panel-visual{top:var(--s-6);width:min(72vw,22rem);max-height:34svh;transform:none}.sf__txt{max-width:none}}@media (max-width:767px){.sf__num{width:5.5rem}}@supports (animation-timeline:scroll()){@media ((max-width:767px) or (pointer:coarse)) and (prefers-reduced-motion:no-preference){.sf__pin{timeline-scope:--sfrow}.sf__frames{scroll-timeline:--sfrow inline}.sf__track{margin:var(--s-5) var(--gutter) calc(var(--s-6) + .5rem);display:block;position:relative}.sf__dot{animation:linear both sf-dot-x-row;animation-timeline:--sfrow}.sf__dot i{animation:linear both sf-dot-y-row;animation-timeline:--sfrow}.sf__st:not(:first-child) i:after{animation:linear both sf-lit;animation-timeline:--sfrow;animation-range:calc(var(--k) * 100% / (var(--n) - 1) - 6%) calc(var(--k) * 100% / (var(--n) - 1))}}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference) and (min-width:768px) and (min-height:600px) and (pointer:fine){.sf{height:calc(var(--n) * 75svh + 100svh);view-timeline:--sf block;padding:0}.sf__pin{background:var(--surface);height:100svh;position:sticky;top:0;overflow:clip}.sf__head{z-index:3;top:var(--s-6);left:var(--gutter);right:var(--gutter);max-width:none;margin:0;padding:0;position:absolute}.sf__track{z-index:3;left:var(--gutter);right:var(--gutter);top:calc(var(--s-6) + 2.75rem);display:block;position:absolute}.sf__frames{display:block;position:absolute;inset:0}.sf__frame{--at:calc(var(--k) * 100% / var(--n));--ix:calc(var(--gutter) + 7px + var(--k) / (var(--n) - 1) * (100% - 2 * var(--gutter) - 14px));--iy:calc(var(--s-6) + 2.75rem + 1px);min-height:0;padding-bottom:14svh;position:absolute;inset:0}.sf__frame:not(:first-child):before{content:"";z-index:1;left:var(--ix);top:var(--iy);border:3px solid var(--accent);opacity:0;pointer-events:none;width:300vmax;height:300vmax;animation:sf-ring var(--ease-out) both;animation-timeline:--sf;animation-range:contain var(--at) contain calc(var(--at) + 2.8% * var(--s));border-radius:50%;margin:-150vmax 0 0 -150vmax;position:absolute}.sf__frame:not(:first-child) .sf__scene{animation:sf-iris var(--ease-out) both;animation-timeline:--sf;animation-range:contain var(--at) contain calc(var(--at) + 2.8% * var(--s))}.sf__frame:not(:last-child) .sf__txt{animation:sf-out var(--ease-out) forwards;animation-timeline:--sf;animation-range:contain calc(var(--at) + 100% / var(--n) - 3% * var(--s)) contain calc(var(--at) + 100% / var(--n) - 1.6% * var(--s))}.sf__frame:not(:first-child) .sf__num{animation:sf-in var(--ease-out) both;animation-timeline:--sf;animation-range:contain calc(var(--at) + 1.6% * var(--s)) contain calc(var(--at) + 3.8% * var(--s))}.sf__frame:not(:first-child) .sf__headrow{animation:sf-in var(--ease-out) both;animation-timeline:--sf;animation-range:contain calc(var(--at) + 1.95% * var(--s)) contain calc(var(--at) + 4.15% * var(--s))}.sf__frame:not(:first-child) .sf__body{animation:sf-in var(--ease-out) both;animation-timeline:--sf;animation-range:contain calc(var(--at) + 2.3% * var(--s)) contain calc(var(--at) + 4.5% * var(--s))}.sf__frame:not(:first-child) .sf__stamp{animation:sf-stamp var(--ease-out) both;animation-timeline:--sf;animation-range:contain calc(var(--at) + 4% * var(--s)) contain calc(var(--at) + 5% * var(--s))}.sf__st:not(:first-child) i:after{animation:linear both sf-lit;animation-timeline:--sf;animation-range:contain calc(var(--k) * 100% / var(--n) + 0.4% * var(--s)) contain calc(var(--k) * 100% / var(--n) + 0.9% * var(--s))}.sf__dot{animation:linear both sf-dot-x;animation-timeline:--sf;animation-range:contain}.sf__dot i{animation:linear both sf-dot-y;animation-timeline:--sf;animation-range:contain}}}@keyframes sf-iris{0%{clip-path:circle(0px at var(--ix) var(--iy))}to{clip-path:circle(150% at var(--ix) var(--iy))}}@keyframes sf-ring{0%{opacity:0;transform:scale(.02)}8%{opacity:.85}to{opacity:0;transform:scale(1)}}@keyframes sf-in{0%{opacity:0;transform:translateY(.9em)}to{opacity:1;transform:none}}@keyframes sf-out{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(-.5em)}}@keyframes sf-stamp{0%{opacity:0;transform:rotate(-8deg)scale(1.5)}to{opacity:1;transform:rotate(-8deg)scale(1)}}@keyframes sf-lit{0%{opacity:0}to{opacity:1}}
.amap{border-top:1px solid var(--line);position:relative}.amap__stage{grid-template-columns:minmax(16rem,.8fr) minmax(0,1.5fr);align-items:center;gap:clamp(1.5rem,5vw,4.5rem);padding-block:clamp(3.5rem,9vh,6rem);display:grid}.amap__txt h2{font-size:var(--t-2xl);letter-spacing:var(--track-display);max-width:14ch;margin-bottom:var(--s-4);font-weight:600;line-height:1.02}.amap__txt p{font-size:var(--t-lg);max-width:40ch;margin-bottom:var(--s-5);line-height:1.55}.amap__list{font-size:var(--t-sm);color:var(--ink-soft);flex-wrap:wrap;gap:.35rem .9rem;max-width:30rem;margin:0;padding:0;list-style:none;display:flex}.amap__fig{margin:0}.amap__map{width:100%;height:auto;max-height:76svh;display:block;overflow:visible}.amap__bay{fill:url(#amap-bay)}.amap__bay-in{stop-color:#16232b;stop-opacity:1}.amap__bay-out{stop-color:#16232b;stop-opacity:0}.amap__ring{fill:none;stroke:var(--line);stroke-dasharray:3 7}.amap__route-bg{fill:none;stroke:var(--line-strong);stroke-width:1.2px;stroke-dasharray:2 6}.amap__route{fill:none;stroke:var(--accent);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0}.amap__dot{fill:var(--canvas);stroke:var(--line-strong);stroke-width:2px}.amap__fill{fill:var(--accent);opacity:1}.amap__town text{font:500 16px var(--font-text);fill:var(--ink-soft)}.amap__pin{fill:var(--accent)}.amap__pin-e{fill:var(--canvas)}.amap__sample rect{fill:none;stroke:var(--ink);stroke-width:2px}.amap__sample text{font:600 17px var(--font-text);fill:var(--ink);letter-spacing:.02em}.amap__legend p{margin-top:var(--s-3);font-size:var(--t-sm);color:var(--ink-soft);text-align:center}@media (max-width:767px){.amap__stage{grid-template-columns:minmax(0,1fr)}.amap__town text{display:none}.amap__sample text{font-size:30px}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference) and (min-width:768px) and (min-height:600px) and (pointer:fine){.amap{view-timeline:--amap block;height:240svh}.amap__stage{box-sizing:border-box;height:100svh;padding-block:clamp(2rem,6vh,4rem);position:sticky;top:0}.amap__route{animation:linear both amap-draw;animation-timeline:--amap;animation-range:contain contain 85%}.amap__fill{animation:linear both amap-lit;animation-timeline:--amap;animation-range:contain calc(var(--at) * 85% - 0.5%) contain calc(var(--at) * 85% + 0.5%)}}}@keyframes amap-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes amap-lit{0%{opacity:0}to{opacity:1}}.scards{border-top:1px solid var(--line);padding-block:clamp(3.5rem,9vh,6rem)}.scards h2{font-size:var(--t-2xl);letter-spacing:var(--track-display);max-width:20ch;font-weight:600;line-height:1.02}.scards__row{margin:var(--s-5) auto 0;padding:0 var(--gutter) var(--s-4);max-width:var(--maxw);box-sizing:border-box;gap:var(--s-4);overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);scrollbar-width:thin;grid-auto-columns:minmax(17rem,23%);grid-auto-flow:column;list-style:none;display:grid;overflow-x:auto}.scards__row:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.scard{scroll-snap-align:start;border:1px solid var(--line-strong);background:var(--surface);flex-direction:column;min-width:0;display:flex}.scard--sheet{grid-column:span 1}.scard__link{gap:var(--s-3);padding:var(--s-5);color:inherit;align-content:start;min-height:48px;text-decoration:none;display:grid}.scard__link:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.scard__n{font:500 var(--t-xs)/1 var(--font-text);color:var(--accent);letter-spacing:.1em}.scard h3{font:600 var(--t-xl)/1 var(--font-display);letter-spacing:-.02em}.scard__link p{color:var(--ink-soft);font-size:var(--t-sm)}.scard .panel-visual{object-fit:contain;width:100%;height:auto;max-height:9rem}@media (hover:hover) and (pointer:fine){.scard:hover{border-color:var(--accent)}}.scard__samples{padding:var(--s-4) var(--s-5) var(--s-5);border-top:1px solid var(--line);gap:var(--s-2);font-size:var(--t-xs);color:var(--ink-soft);letter-spacing:.03em;margin-top:auto;display:grid}.scard__samples .tag-sample{justify-self:start}.scard__samples ul{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.scard__samples li:before{content:"";background:var(--line-strong);width:.5rem;height:.5rem;margin-right:.5rem;display:inline-block}.scard__ours{color:var(--ink)}@media (max-width:767px){.scards__row{grid-auto-columns:86%}}.bsheet{width:100%;height:auto;margin-top:var(--s-3);display:block}.bsheet #bsheet-mark,.bsheet use{fill:var(--ink)}.bsheet__slab{fill:var(--accent)}.bsheet__clear{fill:none;stroke:var(--accent);stroke-width:1.5px;stroke-dasharray:5 4}.bsheet__unit{fill:#ff51002e;stroke:var(--accent);stroke-width:1.5px}.bsheet__tick,.bsheet__dim{stroke:var(--ink-soft);stroke-width:1.5px}.bsheet__lbl,.bsheet__rule{font:500 20px var(--font-text);fill:var(--ink-soft)}.bsheet__rule{fill:var(--ink)}.bsheet__x{font:600 20px var(--font-text);fill:var(--ink)}
