/* /privacy/ : the life of a draft (control/choreo/privacy.md). Prefix pv-. Animates transform, opacity, clip-path and
   filter only; pre-states live under :root[data-m-go]; scroll-driven rules are longhands inside @supports. Every
   state box is reserved (stacked panes in one grid cell), so no layout size changes with a control or the scroll. */
.pv-page{--pv-night:#072d2b;--pv-deep:#041f1e;--pv-forest:#0e4d4a;--pv-sage:#6bb68f;--pv-och:#c98a2b;--pv-och-l:#e0a850;--pv-peri:#b6c6ef;--pv-sand:#ece8df;--pv-mist:#e2ebe6;--pv-ink:#1d2b26;--pv-on:#e8f1ec;--pv-on2:#c5d8cd;overflow-x:clip;color:var(--pv-ink);background:var(--pv-mist)}
.pv-page p{max-width:62ch}
.pv-page h2{font-size:clamp(2.3rem,3.6vw,3.6rem);line-height:1.08;letter-spacing:-.045em;max-width:15ch;text-wrap:balance;margin:0}
.pv-page h3{line-height:1.12;text-wrap:balance}
.pv-page [data-m=split]:not(h1) .m-w{overflow:hidden;overflow-clip-margin:0;line-height:1.08;padding:.02em .08em .06em;margin:-.02em -.08em -.06em}
:root[data-m-go] .pv-page [data-m=split]:is([data-m-fx=drop],[data-m-fx=skew],[data-m-fx=rise]):not([data-m-in]) .m-c{translate:0 100%;opacity:0;transform:none}
:root[data-m-go] .pv-page [data-m=split]:is([data-m-fx=drop],[data-m-fx=skew],[data-m-fx=rise])[data-m-in] .m-c{animation-name:pv-line-rise;animation-duration:360ms;animation-timing-function:cubic-bezier(.16,1,.3,1);animation-delay:calc(var(--m-delay,0ms) + var(--m-d,0ms));animation-fill-mode:both;animation-iteration-count:1;animation-direction:normal}
@keyframes pv-line-rise{from{translate:0 100%;opacity:0}35%{opacity:1}to{translate:0 0;opacity:1}}
.pv-sec{position:relative}
.pv-lede{font-size:17px;line-height:1.62;margin-top:18px;max-width:50ch}
.pv-more{margin-top:20px;border-top:1px solid color-mix(in srgb,currentColor 28%,transparent)}
.pv-more summary{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;font:600 12px/1.4 var(--gft-font-mono);letter-spacing:.1em;text-transform:uppercase;list-style:none}
.pv-more summary::-webkit-details-marker{display:none}
.pv-more p{font-size:15px;line-height:1.6;margin:4px 0 12px}
.pv-more a{color:inherit;font-weight:650}
.pv-page :is(button,input,a,summary):focus-visible{outline:2px solid var(--pv-och-l);outline-offset:3px}

/* ---------- entrances: section shells hand their grammar to their parts ---------- */
:root[data-m-go] .pv-sec[data-m]:not([data-m-in]){opacity:1;transform:none;clip-path:none}
:root[data-m-go] .pv-sec[data-m][data-m-in]{animation-name:none}
:root[data-m-go] [data-pv-fx][data-m]:not([data-m-in]){opacity:0;transform:none;clip-path:none}
:root[data-m-go] [data-pv-fx][data-m][data-m-in]{animation-duration:780ms;animation-timing-function:var(--gft-ease-out);animation-iteration-count:1;animation-direction:normal;animation-fill-mode:backwards;animation-delay:var(--m-delay,0ms)}
:root[data-m-go] [data-pv-fx=slide-l][data-m]:not([data-m-in]){transform:translateX(-56px)}
:root[data-m-go] [data-pv-fx=slide-r][data-m]:not([data-m-in]){transform:translateX(56px)}
:root[data-m-go] :is([data-pv-fx=fade-up],[data-pv-fx=rise-in])[data-m]:not([data-m-in]){transform:translateY(36px)}
:root[data-m-go] [data-pv-fx=mask-up][data-m]:not([data-m-in]){opacity:1;clip-path:inset(100% 0 0 0);transform:translateY(48px)}
:root[data-m-go] [data-pv-fx=sweep][data-m]:not([data-m-in]){clip-path:inset(0 100% 0 0);transform:translateX(-48px)}
:root[data-m-go] [data-pv-fx=zoom][data-m]:not([data-m-in]){clip-path:inset(10%);transform:scale(.88)}
:root[data-m-go] [data-pv-fx=clip-l][data-m]:not([data-m-in]){opacity:1;clip-path:inset(0 0 0 100%);transform:translateX(40px)}
:root[data-m-go] [data-pv-fx=slide-l][data-m][data-m-in]{animation-name:pv-slide-l}
:root[data-m-go] [data-pv-fx=slide-r][data-m][data-m-in]{animation-name:pv-slide-r}
:root[data-m-go] :is([data-pv-fx=fade-up],[data-pv-fx=rise-in])[data-m][data-m-in]{animation-name:pv-rise}
:root[data-m-go] [data-pv-fx=mask-up][data-m][data-m-in]{animation-name:pv-mask-up;animation-duration:860ms}
:root[data-m-go] [data-pv-fx=sweep][data-m][data-m-in]{animation-name:pv-sweep}
:root[data-m-go] [data-pv-fx=zoom][data-m][data-m-in]{animation-name:pv-zoom}
:root[data-m-go] [data-pv-fx=clip-l][data-m][data-m-in]{animation-name:pv-clip-l}
@keyframes pv-slide-l{from{opacity:0;transform:translateX(-56px)}to{opacity:1;transform:none}}
@keyframes pv-slide-r{from{opacity:0;transform:translateX(56px)}to{opacity:1;transform:none}}
@keyframes pv-rise{from{opacity:0;transform:translateY(36px)}to{opacity:1;transform:none}}
@keyframes pv-mask-up{from{clip-path:inset(100% 0 0 0);transform:translateY(48px)}to{clip-path:inset(-10%);transform:none}}
@keyframes pv-sweep{from{opacity:0;clip-path:inset(0 100% 0 0);transform:translateX(-48px)}to{opacity:1;clip-path:inset(-10%);transform:none}}
@keyframes pv-zoom{from{opacity:0;clip-path:inset(10%);transform:scale(.88)}to{opacity:1;clip-path:inset(-10%);transform:none}}
@keyframes pv-clip-l{from{clip-path:inset(0 0 0 100%);transform:translateX(40px)}to{clip-path:inset(-10%);transform:none}}
/* the h1 tracks in: each word narrows from 1.3 to its set width */
:root[data-m-go] .pv-splash h1[data-m-load] .m-c{animation-name:pv-track;animation-duration:760ms;animation-timing-function:cubic-bezier(.19,1,.22,1);animation-delay:var(--m-d,0ms);animation-fill-mode:both;animation-iteration-count:1;animation-direction:normal;transform-origin:50% 100%}
.pv-splash h1 .m-w{overflow:visible}
@keyframes pv-track{from{opacity:0;transform:scaleX(1.3)}to{opacity:1;transform:none}}

/* ---------- 1 splash ---------- */
.pv-splash{min-height:calc(85svh - 88px);display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto 1fr auto;overflow:clip}
.pv-splash .gft-splash__ground{background:radial-gradient(ellipse at 66% 42%,#0f4f4b 0%,#072d2b 62%)}
.pv-splash__head,.pv-splash__act{position:relative;z-index:1}
.pv-splash__head{padding-top:30px}
.pv-splash__head>*{max-width:580px}
.pv-splash h1{margin-top:20px;font-size:clamp(3.5rem,5.5vw,5.1rem);line-height:1.02;letter-spacing:-.055em;font-weight:850}
.pv-splash h1 .gft-serif{color:var(--pv-sage)}
.pv-splash__lede{font-size:19px;line-height:1.62;color:#e0ede5;margin-top:22px}
.pv-splash .pv-splash__lede{max-width:29em}
.pv-splash__act{margin-top:26px}
.pv-hero-read{display:grid;grid-template-columns:1.5fr repeat(3,1fr);max-width:580px;margin:0;border:1px solid #6bb68f66;background:#083330b3}
.pv-hero-read>div{padding:10px 14px 12px;border-left:1px solid #ffffff24}
.pv-hero-read>div:first-child{border-left:0}
.pv-hero-read dt{font:600 12px/1.3 var(--gft-font-mono);letter-spacing:.08em;text-transform:uppercase;color:#b9cfc2}
.pv-hero-read dd{margin:6px 0 0;font-size:20px;font-weight:750;line-height:1.15;white-space:nowrap;color:#fff}
.pv-hero-read [data-yn=yes] dd{color:var(--pv-sage)}
.pv-hero-read [data-yn=no] dd{color:#e8d3b0}
.pv-splash .gft-splash__bottom{grid-row:4;position:relative;z-index:1;padding-block:14px}
/* the art owns the column right of the 560 px text column: no label can fall inside the copy */
.pv-splash__art{position:absolute;left:max(34vw,624px);right:3vw;top:6px;bottom:62px;z-index:0;color:#cfe3d7}
.pv-splash__press{height:100%}
.pv-splash__tag{display:none}
.pv-scene{display:block;width:100%;height:100%;overflow:visible;font-family:var(--gft-font-mono)}
.pv-scene__grid path{stroke:#cfe3d7;stroke-opacity:.07}
.pv-scene :is(.pv-th,.pv-apex,.pv-sc-x,circle[data-m-live]){transform-box:fill-box;transform-origin:center}
:root[data-m-go] .pv-th{animation-name:pv-th-in;animation-duration:820ms;animation-timing-function:var(--gft-ease-out);animation-delay:calc(var(--i) * 110ms + 60ms);animation-fill-mode:backwards;animation-iteration-count:1;animation-direction:normal}
:root[data-m-go] .pv-apex{animation-name:pv-rise;animation-duration:620ms;animation-timing-function:var(--gft-ease-out);animation-delay:calc(var(--i) * 90ms + 380ms);animation-fill-mode:backwards;animation-iteration-count:1;animation-direction:normal}
:root[data-m-go] .pv-sc-in,:root[data-m-go] .pv-sc-out{animation-name:pv-wire;animation-duration:780ms;animation-timing-function:var(--gft-ease-in-out);animation-delay:240ms;animation-fill-mode:backwards;animation-iteration-count:1;animation-direction:normal}
@keyframes pv-th-in{from{opacity:0;transform:scale(.82)}to{opacity:1;transform:none}}
@keyframes pv-wire{from{opacity:.2;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(-20%)}}
/* packets enter from the host and park at the draft (their HTML position) */
.pv-pkt{transform-box:fill-box}
:root[data-m-go] [data-m-live~=pv-flow][data-m-on]>.pv-pkt,:root[data-m-go] .pv-stage[data-pv-step="1"][data-m-on] .pv-pkt{animation-name:pv-pkt;animation-duration:4.5s;animation-timing-function:cubic-bezier(.3,.1,.3,1);animation-delay:var(--d,0s);animation-fill-mode:both;animation-iteration-count:infinite;animation-direction:normal}
@keyframes pv-pkt{0%{opacity:0;transform:translateX(var(--from))}10%{opacity:1}66%{opacity:1;transform:none}86%,100%{opacity:0;transform:none}}
:root[data-m-go] [data-m-live~=pv-breathe][data-m-on]{animation-name:pv-breathe;animation-duration:2.4s;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-direction:alternate}
@keyframes pv-breathe{from{opacity:.55;transform:scale(.88)}to{opacity:1;transform:scale(1.08)}}
/* the shield compresses as the splash leaves; its threads wipe away while the lanes below unroll; the draft drops */
@supports (animation-timeline:view()){
 :root[data-m-go] .pv-splash__press{transform-origin:60% 40%;animation-name:pv-press;animation-duration:1ms;animation-timing-function:linear;animation-fill-mode:both;animation-timeline:--gft-splash;animation-range-start:exit 0%;animation-range-end:exit 100%}
 :root[data-m-go] .pv-sc-shield{animation-name:pv-unthread;animation-duration:1ms;animation-timing-function:linear;animation-fill-mode:both;animation-timeline:--gft-splash;animation-range-start:exit 25%;animation-range-end:exit 95%}
 :root[data-m-go] .pv-sc-doc{animation-name:pv-drop;animation-duration:1ms;animation-timing-function:linear;animation-fill-mode:both;animation-timeline:--gft-splash;animation-range-start:exit 0%;animation-range-end:exit 90%}
}
@keyframes pv-press{to{transform:translateY(9%) scale(.92)}}
@keyframes pv-unthread{from{clip-path:inset(-4% -4% -4% -4%)}to{clip-path:inset(-4% 100% -4% -4%)}}
@keyframes pv-drop{to{transform:translateY(170px)}}

/* ---------- 2 instrument: the unrolled route ---------- */
.pv-sec--ins{background:var(--pv-night);color:var(--pv-on);padding:18px 0 150px}
.pv-ins{position:relative}
.pv-route{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(150px,auto) minmax(40px,1fr) minmax(150px,auto) minmax(40px,1fr) minmax(150px,auto) minmax(40px,1fr) minmax(150px,auto);align-items:center}
.pv-node{position:relative;min-height:88px;padding:12px 18px;display:flex;flex-direction:column;justify-content:center;border:1px solid #ffffff52;background:#0c3f3b}
.pv-node strong{font-size:16px;line-height:1.25;color:#fff}
.pv-node small{font-size:13px;line-height:1.35;color:#d5e6dc;margin-top:3px}
.pv-node--host,.pv-node--page{border-color:var(--pv-sage)}
.pv-node--inbox{border-style:dashed;border-color:#e0a85080;background:#06262466}
.pv-node__posts{position:absolute;inset:0;pointer-events:none}
.pv-node__posts i{position:absolute;left:-4px;right:-4px;height:7px;background:radial-gradient(circle 3.5px at 3.5px 50%,var(--c) 96%,transparent) ,radial-gradient(circle 3.5px at calc(100% - 3.5px) 50%,var(--c) 96%,transparent)}
.pv-node__posts i:nth-child(1){top:calc(50% - 19.5px)}.pv-node__posts i:nth-child(2){top:calc(50% - 3.5px)}.pv-node__posts i:nth-child(3){top:calc(50% + 12.5px)}
.pv-node--host .pv-node__posts i{left:auto;width:8px}
.pv-node--inbox .pv-node__posts i{right:auto;width:8px}
.pv-draft{position:absolute;right:12px;top:-24px;width:30px;height:37px}
.pv-link{position:relative;display:grid;grid-template-rows:repeat(3,3.5px);row-gap:13px;align-content:center;height:88px}
.pv-lane{position:relative;display:block;height:3.5px;background:var(--c);opacity:.54;transition:opacity .4s}
.pv-link--cut .pv-lane{background:repeating-linear-gradient(90deg,var(--c) 0 6px,transparent 6px 13px);opacity:.65}
.pv-cut{position:absolute;left:50%;top:50%;width:30px;height:30px;margin:-15px;background:var(--pv-night);border-radius:50%}
.pv-pk{position:absolute;inset:-3px 0;opacity:0;overflow-anchor:none}
.pv-pk::before{content:'';position:absolute;left:-5px;top:0;width:9px;height:9px;border-radius:50%;background:#fff;box-shadow:0 0 0 3px var(--c)}
.pv-ins[data-pv-tab="0"] [data-link="0"] .pv-lane:nth-child(1),.pv-ins[data-pv-tab="2"] [data-link="1"] .pv-lane:nth-child(2),.pv-ins[data-pv-tab="3"] [data-link="1"] .pv-lane:nth-child(3){opacity:1}
.pv-ins[data-pv-tab="2"] .pv-pk+.pv-pk{visibility:hidden}
:root[data-m-go] .pv-rail[data-m-on] :is(.pv-ins[data-pv-tab="0"] [data-link="0"] .pv-lane:nth-child(1),.pv-ins[data-pv-tab="2"] [data-link="1"] .pv-lane:nth-child(2),.pv-ins[data-pv-tab="3"] [data-link="1"] .pv-lane:nth-child(3)) .pv-pk{animation-name:pv-lane-run;animation-duration:2.2s;animation-timing-function:cubic-bezier(.45,0,.3,1);animation-delay:var(--d,0s);animation-fill-mode:both;animation-iteration-count:infinite;animation-direction:normal}
@keyframes pv-lane-run{0%{opacity:0;transform:translateX(0)}12%{opacity:1}82%{opacity:1;transform:translateX(100%)}100%{opacity:0;transform:translateX(100%)}}
:root[data-m-go] .pv-rail[data-m-on] .pv-cut{animation-name:pv-breathe;animation-duration:1.6s;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-direction:alternate}
:root[data-m-go] .pv-rail[data-m-on] .pv-ins[data-pv-tab="1"] .pv-draft,:root[data-m-go] .pv-ins[data-pv-tab="1"] .pv-rail[data-m-on] .pv-draft{animation-name:pv-breathe;animation-duration:1.2s;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-direction:alternate}
/* entrance: the lanes unroll from the host; the draft drops onto "This page" */
:root[data-m-go] .pv-rail[data-m]:not([data-m-in]){opacity:1;transform:none}
:root[data-m-go] .pv-rail[data-m][data-m-in]{animation-name:none}
:root[data-m-go] .pv-rail:not([data-m-in]) .pv-lane{clip-path:inset(0 100% 0 0)}
:root[data-m-go] .pv-rail:not([data-m-in]) .pv-draft{opacity:0;transform:translateY(-110px)}
:root[data-m-go] .pv-rail[data-m-in] .pv-lane{animation-name:pv-unroll;animation-duration:620ms;animation-timing-function:var(--gft-ease-out);animation-delay:calc(var(--l,0) * 150ms + var(--k) * 50ms);animation-fill-mode:backwards;animation-iteration-count:1;animation-direction:normal}
:root[data-m-go] .pv-rail[data-m-in] .pv-draft{animation-name:pv-draft-drop;animation-duration:760ms;animation-timing-function:cubic-bezier(.3,1.3,.5,1);animation-delay:200ms;animation-fill-mode:backwards;animation-iteration-count:1;animation-direction:normal}
.pv-link[data-link="1"]{--l:1}.pv-link[data-link="2"]{--l:2}
@keyframes pv-unroll{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes pv-draft-drop{from{opacity:0;transform:translateY(-110px)}to{opacity:1;transform:none}}
.pv-ins__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:56px;margin-top:44px;align-items:start}
.pv-ins h2{font-size:clamp(2.2rem,3.3vw,3.3rem)}
.pv-tabs{border:0;padding:0;margin:26px 0 0;min-inline-size:0}.pv-tabs__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pv-tabs legend{margin:0 0 12px;padding:0;font:600 12px/1.4 var(--gft-font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--pv-och-l)}
.pv-tabs label{position:relative;display:block}
.pv-tabs input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.pv-tabs span{display:flex;align-items:center;gap:12px;min-height:52px;padding:10px 16px;border:1px solid #ffffff4d;font-size:15px;font-weight:650;transition:background-color .3s,color .3s}
.pv-tabs b{font:600 12px var(--gft-font-mono);color:var(--pv-och-l)}
.pv-tabs input:checked+span{background:var(--pv-sage);border-color:var(--pv-sage);color:var(--pv-night)}
.pv-tabs input:checked+span b{color:var(--pv-night)}
.pv-tabs input:focus-visible+span{outline:2px solid var(--pv-och-l);outline-offset:3px}
.pv-ins__panel{background:var(--pv-forest);border:1px solid #ffffff2b;padding:28px 32px 26px}
.pv-panes,.pv-acc__panes,.pv-stage__states,.pv-mro,.pv-verdict,.pv-prep,.pv-seal-line,.pv-seal-btn,.pv-ends__outs{display:grid}
:is(.pv-panes,.pv-acc__panes,.pv-stage__states,.pv-mro,.pv-verdict,.pv-prep,.pv-seal-line,.pv-seal-btn,.pv-ends__outs)>*{grid-area:1/1}
.pv-pane,.pv-stop,.pv-verdict__v,.pv-ends__outs>span{visibility:hidden;opacity:0;transition:opacity .35s}
:is(.pv-pane,.pv-stop,.pv-verdict__v,.pv-ends__outs>span).is-on{visibility:visible;opacity:1}
.pv-badge{display:inline-flex;align-items:center;gap:10px;margin:0;padding:6px 12px;border:1px solid #ffffff40;font:600 12px var(--gft-font-mono);letter-spacing:.08em;text-transform:uppercase}
.pv-badge span{width:8px;height:8px;border-radius:50%;background:var(--pv-och-l)}
.pv-pane h3{font-size:clamp(1.5rem,2vw,1.9rem);margin:16px 0 10px;color:#fff}
.pv-pane__text{font-size:16px;line-height:1.6;color:var(--pv-on2)}
.pv-rows{margin:18px 0 0;display:grid;border-top:1px solid #ffffff2b}
.pv-rows>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:16px;padding:11px 0;border-bottom:1px solid #ffffff1f;align-items:baseline}
.pv-rows dt{font-size:14px;color:var(--pv-on2)}
.pv-rows dd{margin:0;font-size:14px;color:var(--pv-on)}
.pv-rows b{display:inline-block;min-width:3.2em;margin-right:10px;font-size:17px;font-weight:800}
.pv-rows [data-yn=yes] b{color:#95d6b2}
.pv-rows [data-yn=no] b{color:#efd9b4}
.pv-gather{position:absolute;left:0;bottom:-104px;width:100%;height:110px;pointer-events:none;overflow:visible}
.pv-gather__l{transform-box:view-box}
@supports (animation-timeline:view()){
 .pv-gather{view-timeline-name:--pv-gather;view-timeline-axis:block}
 :root[data-m-go] .pv-gather__l{animation-name:pv-gather;animation-duration:1ms;animation-timing-function:linear;animation-fill-mode:both;animation-timeline:--pv-gather;animation-range-start:cover 0%;animation-range-end:cover 60%}
}
@keyframes pv-gather{from{transform:translateY(calc((var(--k) - 1) * 26px))}to{transform:none}}

/* ---------- 3 account: the outer thread is the track ---------- */
.pv-sec--acc{background:var(--pv-sand);padding:0 0 64px}
.pv-acc{position:relative}
.pv-acc__card{position:relative;z-index:2;margin-top:-80px;display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:48px;padding:40px 48px 36px;background:#fbfaf6;border:1px solid #d6cfbf;box-shadow:0 34px 60px -34px #07232159}
.pv-acc__bridge{position:absolute;left:0;bottom:-64px;width:100%;height:68px;pointer-events:none;overflow:visible}
.pv-acc h2{font-size:clamp(2.2rem,3.2vw,3.2rem)}
.pv-acc__panes{margin-top:24px;padding-top:18px;border-top:2px solid #0e4d4a}
.pv-stop h3{font-size:clamp(1.4rem,1.8vw,1.7rem);margin:0 0 10px}
.pv-stop p{font-size:16px;line-height:1.6}
.pv-stop.is-caveat h3{color:#7a4f12}
.pv-acc__fig{position:relative;display:grid;grid-template-areas:"s" "r";align-content:start}
.pv-acc__shield{grid-area:s;position:relative;aspect-ratio:900/740}
.pv-acc__shield svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.pv-acc__shield :is(.pv-acc__pip,.pv-acc__knot,g[data-m-live]){transform-box:view-box}
.pv-acc__pip g{transform-box:fill-box;transform-origin:center}
.pv-acc__open,.pv-acc__seg{opacity:0;transition:opacity .4s}
.pv-acc__host{opacity:0;clip-path:inset(-30% 100% -30% -2%);transition:opacity .3s,clip-path .7s var(--gft-ease-out)}
[data-pv-stop="3"] .pv-acc__open,[data-pv-stop="3"] .pv-acc__host{opacity:1}
[data-pv-stop="3"] .pv-acc__host{clip-path:inset(-30% -10% -30% -2%)}
[data-pv-stop="3"] .pv-acc__closed{opacity:0}
[data-pv-stop="1"] .pv-acc__seg--1,[data-pv-stop="2"] :is(.pv-acc__seg--1,.pv-acc__seg--2),[data-pv-stop="3"] .pv-acc__seg{opacity:1}
.pv-acc__knot{transition:fill .3s}
[data-pv-stop="0"] .pv-acc__knot--0,[data-pv-stop="1"] .pv-acc__knot--1,[data-pv-stop="2"] .pv-acc__knot--2,[data-pv-stop="3"] .pv-acc__knot--3{fill:#c98a2b}
.pv-acc__count{grid-area:s;align-self:end;justify-self:start;margin:0 0 4px;display:grid;grid-template-columns:auto auto;align-items:baseline;column-gap:6px;line-height:1}
.pv-acc__count b{font-size:2.6rem;font-weight:850;letter-spacing:-.04em;color:#0e4d4a}
.pv-acc__count span{font:600 15px var(--gft-font-mono);color:#3d5a4f}
.pv-acc__count em{grid-column:1/-1;font:italic 600 16px var(--gft-font-serif);color:#7a4f12;margin-top:6px;min-height:1.3em}
.pv-acc__range{grid-area:r;margin-top:14px;display:grid;gap:6px}
.pv-acc__range label{font:600 12px/1.4 var(--gft-font-mono);letter-spacing:.08em;text-transform:uppercase;color:#3d5a4f}
.pv-acc__range input{width:100%;height:44px;margin:0;accent-color:#0e4d4a;cursor:pointer}
.pv-knots{position:absolute;left:0;right:0;top:0;aspect-ratio:900/740;list-style:none;margin:0;padding:0;pointer-events:none}
.pv-knots li{position:absolute;left:var(--x);top:var(--y)}
.pv-knots button{position:absolute;left:-22px;top:-22px;display:flex;align-items:center;gap:8px;min-height:44px;padding:0 14px 0 50px;white-space:nowrap;border:0;border-radius:22px;background:linear-gradient(90deg,transparent 0 42px,#fbfaf6eb 42px);color:#1d2b26;font:650 14px var(--gft-font-display);cursor:pointer;pointer-events:auto}
.pv-knots button b{font:600 12px var(--gft-font-mono);color:#7a4f12}
.pv-knots button[aria-pressed=true]{background:linear-gradient(90deg,transparent 0 42px,#0e4d4a 42px);color:#fff}
.pv-knots button[aria-pressed=true] b{color:#f0c27a}
.pv-knots [data-k="1"] button{top:-44px;left:-40px}
.pv-knots [data-k="3"] button{top:6px}
@supports (animation-timeline:view()){
 :root[data-m-go] .pv-acc__shield svg{transform-origin:60% 60%;animation-name:pv-grow;animation-duration:1ms;animation-timing-function:linear;animation-fill-mode:both;animation-timeline:view();animation-range-start:exit 0%;animation-range-end:exit 100%}
}
@keyframes pv-grow{to{transform:scale(1.16) translateY(8%)}}

/* ---------- 4 walk: the pinned stage ---------- */
.pv-sec--walk{background:var(--pv-mist);padding:0 0 34svh}
.pv-walk__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:56px;align-items:start;view-timeline-name:--pv-walk;view-timeline-axis:block}
.pv-steps{grid-column:1;grid-row:1}
.pv-step{position:relative;min-height:84svh;display:flex;align-items:center}
.pv-step--head{min-height:92svh}
.pv-step:last-child{min-height:125svh;align-items:flex-start;padding-top:28svh}
.pv-step__in{position:relative;padding:24px 0 24px 28px;max-width:540px}
.pv-step--head .pv-step__in{padding-left:0}
.pv-step__ghost{position:absolute;left:-6%;top:50%;width:min(92%,470px);transform:translateY(-50%);opacity:.18;pointer-events:none}
.pv-chips4{list-style:none;margin:24px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.pv-chips4 li{display:inline-flex;align-items:center;gap:9px;min-height:40px;padding:6px 14px;border:1px solid #9fb7aa;background:#f4f8f5;font:600 14px var(--gft-font-display)}
.pv-chips4 i{width:10px;height:10px;border-radius:50%;background:var(--c);box-shadow:0 0 0 2px #1d2b2633}
:root[data-m-go] .pv-chips4[data-m-in] i{animation-name:pv-chip-pulse;animation-duration:700ms;animation-timing-function:ease-out;animation-delay:calc(var(--i) * 200ms + 500ms);animation-iteration-count:1;animation-direction:normal;animation-fill-mode:backwards}
@keyframes pv-chip-pulse{0%{transform:scale(1)}40%{transform:scale(1.9)}100%{transform:scale(1)}}
.pv-step__k{font:600 13px/1.4 var(--gft-font-mono);letter-spacing:.12em;text-transform:uppercase;color:#3d5a4f;margin:0}
.pv-step__k b{color:#0e4d4a;font-size:15px}
.pv-step h3{font-size:clamp(1.7rem,2.3vw,2.15rem);margin:12px 0 14px}
.pv-step__p{font-size:17px;line-height:1.62}
.pv-step__ro{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.pv-step__thread{position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--c);overflow-anchor:none}
.pv-step__handoff{margin-top:136px;padding:16px 20px 14px;border:1px solid #9fb7aa;border-left:3px solid #5a6aa8;background:#f4f8f5}
.pv-step__hk{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0}
.pv-step__hk span{font:600 12px var(--gft-font-mono);letter-spacing:.1em;text-transform:uppercase;color:#3d5a4f}
.pv-step__hk b{font:700 14px var(--gft-font-display);color:#0e4d4a}
.pv-step__ht{margin:8px 0 6px;font-size:14px;line-height:1.5;color:#1d2b26}
.pv-step__hsvg{display:block;width:100%;height:42px}
.pv-stage{grid-column:2;grid-row:1;position:sticky;top:24px;height:min(calc(100svh - 48px),830px);display:grid;grid-template-rows:auto minmax(0,1fr) auto auto auto;gap:10px;padding:18px 24px 14px;background:var(--pv-night);color:var(--pv-on);border:1px solid #ffffff1f}
.pv-stage__top{display:grid;grid-template-columns:auto minmax(0,1fr);gap:20px;align-items:center}
.pv-stage__n{margin:0;font:800 2.1rem/1 var(--gft-font-display);letter-spacing:-.04em;color:#8fa79a}
.pv-stage__n b{color:var(--pv-sage)}
.pv-st{margin:0;font-size:15px;line-height:1.45;opacity:0;transition:opacity .35s}
.pv-stage__svg{display:block;width:100%;height:100%;min-height:0;font-family:var(--gft-font-mono)}
.pv-lay,.pv-lay__fill,.pv-w,.pv-w__shapes,.pv-lay__open,.pv-lay__closed{transition:opacity .45s}
.pv-lay{opacity:.36}.pv-lay__fill{opacity:0}.pv-lay__open{opacity:0}.pv-w{opacity:0}.pv-w--doc{opacity:1}
.pv-copy,.pv-lock,.pv-lock__s,.pv-ln-drop{transform-box:fill-box}
.pv-copy{opacity:0}
.pv-lock{opacity:0;transition:opacity .35s}
.pv-lock__s{transform:translateY(-8px);transition:transform .45s var(--gft-ease-out)}
.pv-ln-drop{transform-box:view-box;transition:transform .8s cubic-bezier(.5,0,.3,1.2)}
.pv-mro dl{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;opacity:0;transition:opacity .35s}
.pv-mro div{background:var(--pv-forest);padding:8px 12px}
.pv-mro dt{font:600 12px/1.3 var(--gft-font-mono);letter-spacing:.06em;text-transform:uppercase;color:#bcd3c6}
.pv-mro dd{margin:3px 0 0;font-size:17px;font-weight:750;line-height:1.2;color:#fff}
/* the five states */
[data-pv-step="0"] .pv-st[data-s="0"],[data-pv-step="1"] .pv-st[data-s="1"],[data-pv-step="2"] .pv-st[data-s="2"],[data-pv-step="3"] .pv-st[data-s="3"],[data-pv-step="4"] .pv-st[data-s="4"],
[data-pv-step="0"] .pv-mro [data-s="0"],[data-pv-step="1"] .pv-mro [data-s="1"],[data-pv-step="2"] .pv-mro [data-s="2"],[data-pv-step="3"] .pv-mro [data-s="3"],[data-pv-step="4"] .pv-mro [data-s="4"]{opacity:1}
[data-pv-step="0"] .pv-lay{opacity:.2}
[data-pv-step="0"] .pv-w--doc{opacity:.3}
[data-pv-step="1"] .pv-lay--0,[data-pv-step="2"] .pv-lay--1,[data-pv-step="3"] .pv-lay--2,[data-pv-step="4"] .pv-lay{opacity:1}
[data-pv-step="1"] .pv-lay--0 .pv-lay__fill,[data-pv-step="2"] .pv-lay--1 .pv-lay__fill,[data-pv-step="3"] .pv-lay--2 .pv-lay__fill{opacity:.09}
[data-pv-step="4"] .pv-lay__closed{opacity:0}
[data-pv-step="4"] .pv-lay__open{opacity:1}
[data-pv-step="1"] .pv-w--read,[data-pv-step="2"] .pv-w--mem,:is([data-pv-step="3"],[data-pv-step="4"]) .pv-w--trim,[data-pv-step="4"] .pv-w--copy{opacity:1}
[data-pv-step="4"] .pv-w__shapes{opacity:.5}
:is([data-pv-step="2"],[data-pv-step="3"],[data-pv-step="4"]) .pv-lock{opacity:1}
:is([data-pv-step="2"],[data-pv-step="3"],[data-pv-step="4"]) .pv-lock__s{transform:none}
:is([data-pv-step="3"],[data-pv-step="4"]) .pv-ln-drop--a{transform:translate(318px,160px)}
:is([data-pv-step="3"],[data-pv-step="4"]) .pv-ln-drop--b{transform:translate(318px,170px)}
:root[data-m-go] .pv-stage[data-pv-step="2"] .pv-ln-keep{animation-name:pv-write;animation-duration:900ms;animation-timing-function:steps(6,end);animation-iteration-count:1;animation-direction:normal}
@keyframes pv-write{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
:root[data-m-go] .pv-stage[data-pv-step="4"][data-m-on] .pv-copy{animation-name:pv-copy;animation-duration:3.4s;animation-timing-function:cubic-bezier(.45,0,.3,1);animation-iteration-count:infinite;animation-direction:normal}
@keyframes pv-copy{0%{opacity:0;transform:none}12%{opacity:1;transform:none}48%{opacity:1;transform:translate(224px,-96px) scale(.8)}82%{opacity:1;transform:translate(342px,-104px) scale(.8)}96%,100%{opacity:0;transform:translate(342px,-104px) scale(.8)}}
.pv-stage__ctl{display:grid;gap:8px}
.pv-prog{display:block;position:relative;height:3px;background:#ffffff26;overflow:hidden}
.pv-prog i{position:absolute;inset:0;background:var(--pv-sage);transform-origin:0 50%}
@supports (animation-timeline:view()){
 :root[data-m-go] .pv-prog i{animation-name:pv-prog;animation-duration:1ms;animation-timing-function:linear;animation-fill-mode:both;animation-timeline:--pv-walk;animation-range-start:contain 0%;animation-range-end:contain 100%}
}
@keyframes pv-prog{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.pv-ticks{display:grid;grid-template-columns:auto repeat(4,minmax(0,1fr));gap:6px;align-items:center}
.pv-tick0{font:600 12px var(--gft-font-mono);color:#bcd3c6;padding-right:6px}
.pv-ticks button{min-height:44px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid #ffffff4d;background:transparent;color:var(--pv-on);font:650 14px var(--gft-font-display);cursor:pointer}
.pv-ticks button b{font:600 12px var(--gft-font-mono);color:var(--pv-och-l)}
.pv-ticks button[aria-pressed=true]{background:var(--pv-sage);border-color:var(--pv-sage);color:var(--pv-night)}
.pv-ticks button[aria-pressed=true] b{color:var(--pv-night)}
.pv-stage__ticker{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;font:600 12px var(--gft-font-mono);letter-spacing:.06em;text-transform:uppercase;color:#c5d8cd}
.pv-stage__ticker i{width:8px;height:8px;border-radius:50%;background:var(--pv-och-l)}
.pv-stage__ticker b{color:#f0c27a;font-size:14px;margin-left:4px}

/* ---------- 5 interlude: the iris opens from the gap ---------- */
.pv-sec--int{z-index:1;margin-top:-30svh;background:var(--pv-deep);color:var(--pv-on)}
.pv-sec--int::before{content:'';position:absolute;inset:0;background-image:radial-gradient(#ffffff12 1px,transparent 1.4px);background-size:6px 6px;pointer-events:none}
:root[data-m-go] #pv-interlude[data-m]:not([data-m-in]){clip-path:circle(0% at 80% 0%)}
:root[data-m-go] #pv-interlude[data-m][data-m-in]{animation-name:pv-iris;animation-duration:900ms;animation-timing-function:cubic-bezier(.5,0,.2,1);animation-iteration-count:1;animation-direction:normal;animation-fill-mode:backwards}
@keyframes pv-iris{from{clip-path:circle(0% at 80% 0%)}to{clip-path:circle(150% at 80% 0%)}}
.pv-int__art{position:relative;aspect-ratio:16/10}
.pv-int__svg{display:block}
.pv-int__svg--wide{position:absolute;inset:0;width:100%;height:100%}
.pv-int__svg--narrow{display:none}
.pv-int__ring{transform-box:fill-box;transform-origin:center}
.pv-int__gap,.pv-int__light,.pv-int__park{transform-box:fill-box;transform-origin:center}
.pv-int__copy{position:absolute;left:0;right:0;top:8%}
.pv-int__copy>*{max-width:600px}
.pv-sec--int h2{font-size:clamp(2.4rem,4vw,4rem);max-width:12ch}
.pv-sec--int .pv-lede{color:#d3e2d9;max-width:46ch}
.pv-int__br{opacity:.35;transition:opacity .4s}
.pv-int__node rect{transition:stroke .3s}
.pv-int__park{opacity:0;transition:opacity .3s}
.pv-int__radios{position:absolute;inset:0;border:0;margin:0;padding:0;min-inline-size:0;pointer-events:none}
.pv-int__radios legend{position:absolute;left:66.7%;top:3%;padding:0;font:600 12px var(--gft-font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--pv-och-l)}
.pv-int__radios label{position:absolute;left:var(--x);top:var(--y);transform:translateY(-50%);display:flex;align-items:center;min-height:52px;min-width:300px;padding-left:86px;pointer-events:auto;cursor:pointer}
.pv-int__radios input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.pv-int__radios span{font:650 17px var(--gft-font-display);letter-spacing:.04em;text-transform:uppercase}
.pv-int__radios b{font:600 13px var(--gft-font-mono);color:var(--pv-och-l);margin-right:10px}
.pv-int__radios label:has(input:checked) span{color:#fff;text-decoration:underline;text-decoration-color:var(--pv-och-l);text-decoration-thickness:2px;text-underline-offset:6px}
.pv-int__radios label:has(input:focus-visible){outline:2px solid var(--pv-och-l);outline-offset:4px}
.pv-int__descs{position:absolute;inset:0;pointer-events:none}
.pv-int__desc{position:absolute;left:73%;top:var(--y);width:24.5%;margin:0;font-size:16px;line-height:1.55;color:#d3e2d9;visibility:hidden;clip-path:inset(0 0 100% 0);transition:clip-path .55s var(--gft-ease-out)}
.pv-int__desc.is-on{visibility:visible;clip-path:inset(-6px)}
.pv-int[data-pv-dest="0"] [data-dest="0"] .pv-int__br,.pv-int[data-pv-dest="1"] [data-dest="1"] .pv-int__br,.pv-int[data-pv-dest="2"] [data-dest="2"] .pv-int__br,.pv-int[data-pv-dest="3"] [data-dest="3"] .pv-int__br{opacity:1}
.pv-int[data-pv-dest="0"] [data-dest="0"] .pv-int__node rect,.pv-int[data-pv-dest="1"] [data-dest="1"] .pv-int__node rect,.pv-int[data-pv-dest="2"] [data-dest="2"] .pv-int__node rect,.pv-int[data-pv-dest="3"] [data-dest="3"] .pv-int__node rect{stroke:#e0a850}
.pv-int[data-pv-picked][data-pv-dest="0"] [data-dest="0"] .pv-int__park,.pv-int[data-pv-picked][data-pv-dest="1"] [data-dest="1"] .pv-int__park,.pv-int[data-pv-picked][data-pv-dest="2"] [data-dest="2"] .pv-int__park,.pv-int[data-pv-picked][data-pv-dest="3"] [data-dest="3"] .pv-int__park{opacity:1}
.pv-int__light{opacity:0}
:root[data-m-go] .pv-int:not([data-pv-picked]) [data-m-live~=pv-lights][data-m-on] .pv-int__light{animation-name:pv-light;animation-duration:6s;animation-timing-function:linear;animation-delay:calc(var(--i) * 1.5s);animation-fill-mode:both;animation-iteration-count:infinite;animation-direction:normal}
@keyframes pv-light{0%{opacity:0;transform:none}3%{opacity:1}12%{transform:translate(var(--hx),var(--hy))}24%{opacity:1;transform:translate(var(--nx),var(--ny))}25%,100%{opacity:0;transform:translate(var(--nx),var(--ny))}}

/* ---------- 6 preference: the woven band ---------- */
.pv-sec--pref{background:var(--pv-forest);color:var(--pv-on);padding-top:96px;overflow:clip}
.pv-pref__land{position:absolute;left:50%;top:0;height:72px;border-left:2.4px dashed var(--pv-peri)}
.pv-pref{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:56px;align-items:start}
.pv-pref .pv-lede{color:#d3e2d9}
.pv-dev{background:#0a3f3c;border:1px solid #ffffff30;padding:24px 32px 22px}
.pv-dev__k{display:flex;align-items:center;gap:10px;margin:0;font:600 12px var(--gft-font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--pv-och-l)}
.pv-dev__k i{width:8px;height:8px;border-radius:50%;background:var(--pv-sage)}
.pv-dev__key{margin:14px 0 0}
.pv-dev__key span{display:inline-block;padding:4px 14px;border:1.5px solid var(--pv-peri);background:var(--pv-night);font:600 1.6rem var(--gft-font-mono);color:#fff}
.pv-dev__val{margin:12px 0 0;display:flex;align-items:center;min-height:2.2rem;font:500 1.35rem var(--gft-font-mono);color:var(--pv-sage);white-space:nowrap}
.pv-caret{display:inline-block;width:.5em;height:1.1em;margin-left:6px;background:currentColor;overflow-anchor:none}
:root[data-m-go] [data-m-live~=pv-caret][data-m-on]{animation-name:pv-blink;animation-duration:1.1s;animation-timing-function:steps(2,jump-none);animation-iteration-count:infinite;animation-direction:normal}
@keyframes pv-blink{50%{opacity:.22}}
.pv-seg{display:grid;grid-template-columns:1fr 1fr;margin:18px 0 6px;border:1px solid #ffffff59}
.pv-seg button{min-height:48px;border:0;background:transparent;color:var(--pv-on);font:650 15px var(--gft-font-display);cursor:pointer;transition:background-color .3s,color .3s}
.pv-seg button[aria-pressed=true]{background:var(--pv-sage);color:var(--pv-night)}
.pv-dev__rows{margin:10px 0 0;display:grid}
.pv-dev__rows>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:10px 0;border-bottom:1px solid #ffffff1f;align-items:baseline}
.pv-dev__rows dt{font-size:14px;color:var(--pv-on2)}
.pv-dev__rows dd{margin:0;position:relative;font-size:17px;font-weight:750;color:#fff}
.pv-tick{position:absolute;right:-16px;top:50%;width:9px;height:9px;margin-top:-4px;border-radius:50%;border:2px solid var(--pv-och-l);opacity:0}
.pv-dev__note{font-size:13px;line-height:1.5;color:var(--pv-on2);margin:12px 0 0}
.pv-band{position:relative;height:210px;margin-top:44px;overflow:hidden}
.pv-band__th{position:absolute;left:0;top:calc(32px + var(--k) * 20px);width:200%;height:110px;overflow-anchor:none}
.pv-band__th svg{display:block;width:100%;height:100%}
.pv-band__dots{position:absolute;inset:0;width:100%;height:100%}
.pv-band__dots [data-pv-dots]{fill:#cfe3d7;fill-opacity:.5;overflow-anchor:none}
.pv-band__row{fill:var(--pv-peri)}
.pv-rowdot{transform-box:fill-box}
@supports (animation-timeline:view()){
 .pv-band{view-timeline-name:--pv-band;view-timeline-axis:block}
 :root[data-m-go] .pv-rowdot{animation-name:pv-row;animation-duration:1ms;animation-timing-function:linear;animation-fill-mode:both;animation-timeline:--pv-band;animation-range-start:cover 25%;animation-range-end:cover 80%}
}
@keyframes pv-row{from{opacity:.45;transform:translate(var(--dx),var(--dy))}to{opacity:1;transform:none}}

/* ---------- 7 search: the inner thread alone ---------- */
.pv-sec--srch{background:var(--pv-night);color:var(--pv-on);padding:64px 0 96px}
.pv-srch{position:relative;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:56px;align-items:start}
.pv-srch__bridge{position:absolute;left:58%;top:-64px;height:56px;border-left:2.4px dashed var(--pv-peri);pointer-events:none}
.pv-srch h3{font-size:clamp(1.9rem,2.8vw,2.7rem);margin:0;max-width:14ch}
.pv-srch .pv-lede{color:#d3e2d9}
.pv-srch__label{display:block;font:600 12px var(--gft-font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--pv-och-l)}
.pv-srch__field{position:relative;margin-top:10px}
.pv-srch__field input{width:100%;box-sizing:border-box;min-height:54px;padding:12px 16px 12px 32px;border:1.5px solid #b6c6ef99;background:#0a3734;color:#fff;font:500 18px var(--gft-font-mono)}
.pv-srch__field input::placeholder{color:#a9bdb3}
.pv-srch__caret{position:absolute;left:16px;top:50%;width:2px;height:22px;margin-top:-11px;color:var(--pv-peri);transition:opacity .2s}
.pv-srch__field:focus-within .pv-srch__caret,[data-pv-q=on] .pv-srch__caret{opacity:0}
.pv-srch__note{font-size:13px;color:var(--pv-on2);margin:8px 0 0}
.pv-srch__path{list-style:none;margin:24px 0 0;padding:0;display:grid;grid-template-columns:minmax(0,auto) minmax(30px,1fr) minmax(0,auto) minmax(30px,1fr) minmax(0,auto);align-items:center}
.pv-sn{padding:12px 14px;border:1px solid #ffffff3d;background:#0a3734;min-width:0;transition:border-color .3s}
.pv-sn span{display:block;font:600 12px var(--gft-font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--pv-on2)}
.pv-sn b{display:block;margin-top:4px;font-size:15px;max-width:15ch;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.pv-sn--x{border-style:dashed;background:transparent}
.pv-sn--x b{color:#efd9b4}
.pv-sl{position:relative;height:30px;display:flex;align-items:center}
.pv-sl i{display:block;width:100%;height:3px;background:var(--pv-peri);opacity:.4;transition:opacity .3s}
.pv-sl--cut i{background:repeating-linear-gradient(90deg,var(--pv-peri) 0 6px,transparent 6px 13px)}
.pv-sl svg{position:absolute;left:50%;top:50%;width:28px;height:28px;margin:-14px;background:var(--pv-night);border-radius:50%}
[data-pv-q=on] .pv-sl:not(.pv-sl--cut) i{opacity:1}
[data-pv-q=on] :is(.pv-sn--q,.pv-sn--i){border-color:var(--pv-peri)}
.pv-srch__meter{margin:22px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#ffffff26;border:1px solid #ffffff26}
.pv-srch__meter>div{background:var(--pv-night);padding:12px 16px}
.pv-srch__meter dt{font-size:13px;line-height:1.4;color:var(--pv-on2)}
.pv-srch__meter dd{margin:6px 0 0;display:flex;align-items:baseline;gap:10px}
.pv-srch__meter b{font-size:2rem;font-weight:850;color:var(--pv-sage);line-height:1}
.pv-srch__meter small{font:600 12px var(--gft-font-mono);color:var(--pv-on2)}

/* ---------- 8 closing: the envelope, the seal, the thread-ends ---------- */
.pv-sec--close{background-color:#0e4d4a;background-image:linear-gradient(180deg,#0e4d4a 0%,#0b3e3b 46%,#072d2b 100%);color:var(--pv-on);padding-top:56px}
.pv-cl{position:relative;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);grid-template-areas:"lead board" "held board" "seal board";column-gap:56px;row-gap:22px;align-items:start}
.pv-cl__bridge{position:absolute;left:0;top:-56px;width:100%;height:54px;pointer-events:none;overflow:visible}
.pv-cl__lead{grid-area:lead}
.pv-cl .pv-lede{color:#d3e2d9}
.pv-verdict{margin-top:20px;padding:12px 16px;border-left:3px solid var(--pv-och-l);background:#0a3a37}
.pv-verdict__k{display:flex;align-items:center;gap:10px;margin:0;font:600 13px var(--gft-font-mono);letter-spacing:.08em;text-transform:uppercase;color:#f0c27a}
.pv-verdict__k i{width:8px;height:8px;border-radius:50%;background:currentColor}
.pv-verdict__v p:last-child{font-size:15px;line-height:1.5;margin:6px 0 0}
.pv-verdict__v[data-v=sealed] .pv-verdict__k{color:var(--pv-sage)}
.pv-cl__board{grid-area:board;align-self:stretch;position:relative;display:grid;grid-template-columns:min(520px,calc(100% - 204px)) minmax(180px,1fr);gap:20px;align-items:start}
.pv-env{position:relative;aspect-ratio:640/700}
.pv-env__svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.pv-env__gap{transform-box:fill-box;transform-origin:center;transition:opacity .4s}
.pv-env__gap circle{transform-box:fill-box;transform-origin:center}
.pv-env__closed{opacity:0;clip-path:inset(0 0 0 100%);transition:opacity .2s,clip-path .9s var(--gft-ease-out)}
.pv-env__open{transition:opacity .5s}
.pv-env__label{position:absolute;top:10.5%;left:0;right:0;margin:0 auto;text-align:center;font:600 12px var(--gft-font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--pv-on2)}
.pv-chips{position:absolute;top:16%;left:22%;right:22%;list-style:none;margin:0;padding:0;display:grid;gap:4px}
.pv-chips button{position:relative;width:100%;min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 12px;border:1px solid #ffffff3d;background:#105450;color:#fff;font:600 15px var(--gft-font-display);text-align:left;cursor:pointer;transition:background-color .3s,border-color .3s}
.pv-chips small{font:600 12px var(--gft-font-mono);text-transform:uppercase;letter-spacing:.04em;color:#a6e0c0;white-space:nowrap}
.pv-chips [data-risky="1"] small{color:#f0c27a}
.pv-chip__t{position:relative}
.pv-chip__t::after{content:'';position:absolute;left:-2px;right:-2px;top:55%;height:2px;background:#f0c27a;transform:scaleX(0);transform-origin:0 50%;transition:transform .45s var(--gft-ease-out)}
.pv-chips [data-out] button{background:transparent;border-style:dashed;color:#d3e2d9}
.pv-chips [data-out] .pv-chip__t::after{transform:none}
:root[data-m-go] .pv-cl__board:not([data-m-in]) .pv-chips li{opacity:0}
:root[data-m-go] .pv-cl__board[data-m-in] .pv-chips li{animation-name:pv-cascade;animation-duration:520ms;animation-timing-function:var(--gft-ease-out);animation-delay:calc(var(--n,0) * 34ms + 260ms);animation-fill-mode:backwards;animation-iteration-count:1;animation-direction:normal}
.pv-chips li:nth-child(2){--n:1}.pv-chips li:nth-child(3){--n:2}.pv-chips li:nth-child(4){--n:3}.pv-chips li:nth-child(5){--n:4}.pv-chips li:nth-child(6){--n:5}.pv-chips li:nth-child(7){--n:6}
@keyframes pv-cascade{from{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:none}}
.pv-env__draft{position:absolute;left:50%;top:78%;width:34px;height:44px;margin-left:-17px;padding:8px 6px;display:grid;align-content:start;gap:5px;background:#fcfbf8;border:1.5px solid #0e4d4a;transition:opacity .3s .7s}
.pv-env__draft i{display:block;height:3px;background:#0e4d4a;opacity:.6}
.pv-prep{margin-top:150px;border:1px dashed #ffffff59;padding:16px 16px 18px;background:#0a3a37}
.pv-prep__v{transition:opacity .4s,clip-path .6s var(--gft-ease-out)}
.pv-prep__k{margin:0;font:600 12px var(--gft-font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--pv-och-l)}
.pv-prep__v p:not(.pv-prep__k){font-size:15px;line-height:1.5;margin:8px 0 0}
.pv-prep .gft-button{margin-top:14px;min-height:46px;gap:14px}
.pv-prep__v[data-v="1"]{visibility:hidden;opacity:0;clip-path:inset(0 0 100% 0)}
.pv-cl:is([data-pv-sealed="1"],:not([data-pv-live])) .pv-prep__v[data-v="1"]{visibility:visible;opacity:1;clip-path:inset(-8px)}
.pv-cl:is([data-pv-sealed="1"],:not([data-pv-live])) .pv-prep__v[data-v="0"]{visibility:hidden;opacity:0}
.pv-cl:is([data-pv-sealed="1"],:not([data-pv-live])) .pv-prep{border-style:solid;border-color:var(--pv-sage)}
.pv-cl[data-pv-sealed="1"] .pv-env__closed{opacity:1;clip-path:inset(-4%)}
.pv-cl[data-pv-sealed="1"] :is(.pv-env__open,.pv-env__gap,.pv-env__draft){opacity:0}
.pv-cl__drop{position:absolute;left:calc(min(520px,calc(100% - 204px)) * .9375);top:calc(min(520px,calc(100% - 204px)) * 1.09375 * .307);bottom:-40px;border-left:2.6px dashed #6bb68f8c}
.pv-held{grid-area:held}
.pv-held__n{display:flex;align-items:baseline;gap:12px;margin:0}
.pv-held__n span{font:600 13px var(--gft-font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--pv-on2)}
.pv-held__n b{font-size:2.6rem;font-weight:850;line-height:1;color:#f0c27a}
.pv-held__n i{font-style:normal;font-size:1.05rem;font-weight:650}
.pv-tray{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.pv-tray li{position:relative;height:118px;padding:9px 10px;border:1px dashed #e0a85099;background:#06262480}
.pv-tray li>*{display:block;visibility:hidden;clip-path:inset(0 0 100% 0);transition:clip-path .5s var(--gft-ease-out)}
.pv-tray li[data-on]{border-style:solid;border-color:#e0a850}
.pv-tray li[data-on]>*{visibility:visible;clip-path:inset(-4px)}
.pv-tray span{font-size:14px;font-weight:700;color:#fff;line-height:1.3}
.pv-tray em{margin-top:6px;font-style:normal;font-size:12px;line-height:1.4;color:var(--pv-on2)}
.pv-sealbox{grid-area:seal}
.pv-seal-btn{width:100%;min-height:56px;align-items:center;padding:10px 20px;border:1.5px solid var(--pv-sage);background:var(--pv-sage);color:var(--pv-night);font:750 16px var(--gft-font-display);cursor:pointer;text-align:left}
.pv-seal-btn>span{visibility:hidden}
.pv-seal-btn[data-s="0"]>[data-s="0"],.pv-seal-btn[data-s="1"]>[data-s="1"],.pv-seal-btn[data-s="2"]>[data-s="2"]{visibility:visible}
.pv-seal-btn[data-s="2"]{background:transparent;color:var(--pv-on);border-style:dashed}
.pv-seal-line{margin:16px 0 0}
.pv-seal-line span{font-size:1.5rem;line-height:1.3;color:#fff;transition:opacity .45s}
.pv-seal-line [data-s="1"],.pv-cl[data-pv-sealed="1"] .pv-seal-line [data-s="0"]{opacity:0}
.pv-cl[data-pv-sealed="1"] .pv-seal-line [data-s="1"]{opacity:1}
.pv-ends{position:relative;padding:40px 0 150px}
.pv-ends__web{display:block;width:100%;height:72px;margin-bottom:-12px}
.pv-ends__br{opacity:.32;transition:opacity .5s}
.pv-ends__title{font-size:clamp(1.5rem,2vw,1.9rem);margin:28px 0 8px}
.pv-ends__read{display:flex;gap:14px;align-items:baseline;margin:0 0 18px;max-width:none;min-height:3em;font-size:14px;line-height:1.5;color:var(--pv-on2)}
.pv-ends__read b{white-space:nowrap;font:600 12px var(--gft-font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--pv-och-l)}
.pv-ends__cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.pv-end{position:relative;padding-left:26px}
.pv-end::before{content:'';position:absolute;left:8px;top:6px;bottom:0;width:3px;background:var(--c);opacity:.35;transform-origin:50% 0;transition:opacity .5s}
.pv-end__k{margin:0 0 12px;font:600 13px var(--gft-font-mono);letter-spacing:.1em;text-transform:uppercase}
.pv-end__k b{color:var(--c);margin-right:8px}
.pv-end ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.pv-end li{position:relative}
.pv-end li::before{content:'';position:absolute;left:-23px;top:20px;width:9px;height:9px;border-radius:50%;background:var(--pv-night);border:2px solid var(--c)}
.pv-end__n{display:grid;gap:3px;padding:12px 14px;min-height:44px;border:1px solid #ffffff33;background:#0a3532;color:#fff;text-decoration:none;transition:border-color .3s}
.pv-end__n span{font-size:15px;font-weight:650;line-height:1.3}
.pv-end__n small{font:12px var(--gft-font-mono);color:var(--pv-on2);overflow-wrap:anywhere}
a.pv-end__n:hover{border-color:var(--c)}
.pv-ends[data-pv-sealed="1"] :is(.pv-ends__br,.pv-end::before){opacity:1}
:root[data-m-go] .pv-ends[data-pv-sealed="1"] .pv-ends__br{animation-name:pv-draw-down;animation-duration:900ms;animation-timing-function:var(--gft-ease-out);animation-delay:calc(var(--k) * 120ms + 600ms);animation-iteration-count:1;animation-direction:normal;animation-fill-mode:backwards}
@keyframes pv-draw-down{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0)}}
.pv-ends[data-pv-lit="0"] [data-pv-col="0"]::before,.pv-ends[data-pv-lit="1"] [data-pv-col="1"]::before,.pv-ends[data-pv-lit="2"] [data-pv-col="2"]::before{opacity:1}
.pv-ends__more{max-width:62ch}
.pv-cl__rail{position:absolute;left:0;bottom:0;height:120px;width:3px;background:linear-gradient(#6bb68f59,#6bb68f)}
.pv-cl__rail i{position:absolute;left:-3px;top:0;width:9px;height:9px;border-radius:50%;background:#fff;opacity:0;overflow-anchor:none}
:root[data-m-go] .pv-ends[data-pv-sealed="1"] .pv-cl__rail [data-m-on]{animation-name:pv-rail;animation-duration:2.2s;animation-timing-function:cubic-bezier(.5,0,.5,1);animation-iteration-count:infinite;animation-direction:normal}
@keyframes pv-rail{0%{opacity:0;transform:none}15%{opacity:1}85%{opacity:1;transform:translateY(110px)}100%{opacity:0;transform:translateY(110px)}}

/* ---------- tablets ---------- */
@media (max-width:1100px){
 .pv-route{grid-template-columns:minmax(118px,auto) minmax(24px,1fr) minmax(118px,auto) minmax(24px,1fr) minmax(118px,auto) minmax(24px,1fr) minmax(118px,auto)}
 .pv-node{padding:10px 12px}
 .pv-acc__card{grid-template-columns:1fr;gap:28px}
 .pv-int__radios label{min-width:0}
 .pv-cl{grid-template-columns:1fr;grid-template-areas:"lead" "board" "held" "seal"}
}

/* ---------- hero, small desktops and tablets: labels as 12 px HTML tags; stacked below 1024 ---------- */
@media (max-width:1279px){
 .pv-splash__art{left:max(40vw,624px);right:2vw;top:28px;bottom:84px;display:flex;flex-direction:column;gap:8px}
 .pv-splash__press{flex:1 1 auto;min-height:0;height:auto}
 .pv-splash__tag{display:block;margin:0;font:600 12px/1.3 var(--gft-font-mono);letter-spacing:.1em;text-transform:uppercase;color:#cfe3d7}
 .pv-splash__tag--out{color:#f0c27a;align-self:flex-end}
 .pv-sc-t{display:none}
 .pv-apex text{font-size:30px}
}
@media (max-width:1023px){
 .pv-splash{display:flex;flex-direction:column;min-height:0}
 .pv-splash__art{position:relative;inset:auto;margin-top:16px;align-items:center}
 .pv-splash__press{flex:none;width:min(100%,620px);aspect-ratio:960/760}
 .pv-splash__tag--out{align-self:center}
 .pv-apex text{font-size:24px}
 .pv-splash .gft-splash__bottom{margin-top:18px}
}

/* ---------- phones ---------- */
@media (max-width:760px){
 .pv-page h2{font-size:clamp(2rem,9vw,2.6rem)}
 .pv-splash{display:flex;flex-direction:column;min-height:0}
 .pv-splash__head{padding-top:26px}
 .pv-splash h1{font-size:2.6rem;margin-top:16px;line-height:1.04}
 .pv-splash__lede{font-size:17px;margin-top:16px}
 .pv-splash__art{position:relative;inset:auto;margin-top:12px;display:flex;flex-direction:column;align-items:center;gap:0}
 .pv-splash__press{flex:none;width:127vw;height:auto;aspect-ratio:960/760;margin-left:-9.6vw;align-self:flex-start}
 .pv-splash__tag{display:block;margin:0;font:600 12px var(--gft-font-mono);letter-spacing:.1em;text-transform:uppercase;color:#cfe3d7}
 .pv-splash__tag--out{color:#f0c27a;margin-top:-6px}
 .pv-sc-t{display:none}
 .pv-apex text{font-size:28px}
 .pv-splash__act{margin-top:20px}
 .pv-hero-read{grid-template-columns:1fr 1fr;max-width:none}
 .pv-hero-read>div:nth-child(3){border-left:0}
 .pv-hero-read>div:nth-child(n+3){border-top:1px solid #ffffff24}
 .pv-splash .gft-splash__bottom{margin-top:18px}
 .pv-sec--ins{padding:26px 0 120px}
 .pv-ins{display:grid;grid-template-columns:30% minmax(0,1fr);grid-template-areas:"side side" "rail panel";column-gap:12px}
 .pv-ins__grid{display:contents}
 .pv-ins__side{grid-area:side}
 .pv-rail{grid-area:rail;margin-top:24px}
 .pv-ins__panel{grid-area:panel;margin-top:24px;padding:16px 14px}
 .pv-route{grid-template-columns:1fr;grid-template-rows:none}
 .pv-node{min-height:0;padding:9px 8px}
 .pv-node strong{font-size:14px}
 .pv-node small{font-size:12px}
 .pv-node__posts{display:none}
 .pv-draft{right:4px;top:-18px;width:22px;height:27px}
 .pv-link{height:44px;grid-template-rows:none;grid-template-columns:repeat(3,3px);column-gap:11px;justify-content:center;align-content:stretch}
 .pv-lane{height:auto;width:3px}
 .pv-link--cut .pv-lane{background:repeating-linear-gradient(180deg,var(--c) 0 6px,transparent 6px 13px)}
 .pv-pk{inset:0 -3px}
 .pv-pk::before{left:-3px;top:-5px}
 @keyframes pv-lane-run{0%{opacity:0;transform:translateY(0)}12%{opacity:1}82%{opacity:1;transform:translateY(100%)}100%{opacity:0;transform:translateY(100%)}}
 @keyframes pv-unroll{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}
 :root[data-m-go] .pv-rail:not([data-m-in]) .pv-lane{clip-path:inset(0 0 100% 0)}
 .pv-pane h3{font-size:1.3rem}
 .pv-pane__text{font-size:15px}
 .pv-rows>div{grid-template-columns:1fr;gap:4px}
 .pv-rows b{font-size:18px}
 .pv-gather{display:none}
 .pv-acc__card{margin-top:-60px;padding:24px 18px 22px;display:flex;flex-direction:column;gap:0}
 .pv-acc__lead{display:contents}
 .pv-acc__lead>.gft-eyebrow{order:1}.pv-acc h2{order:2}.pv-acc__lead>.pv-lede{order:3}.pv-acc__fig{order:4;margin-top:18px}.pv-acc__panes{order:5}.pv-more{order:6}
 .pv-acc__fig{grid-template-columns:64vw minmax(0,1fr);grid-template-areas:"s c" "r r" "k k";column-gap:8px}
 .pv-acc__count{grid-area:c;align-self:center;justify-self:start;grid-template-columns:auto}
 .pv-acc__count b{font-size:2rem}
 .pv-knots{grid-area:k;position:static;aspect-ratio:auto;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
 .pv-knots li{position:static}
 .pv-knots button,.pv-knots [data-k] button{position:static;width:100%;padding:0 12px;background:#f1eee6;border-radius:0;border:1px solid #cfc6b4}
 .pv-knots button[aria-pressed=true]{background:#0e4d4a}
 .pv-acc__shield :is(text){display:none}
 .pv-sec--walk{padding-bottom:30svh}
 .pv-walk__grid{grid-template-columns:minmax(0,1fr);gap:0}
 .pv-stage{grid-column:1;grid-row:1;top:0;z-index:3;height:42svh;margin:0 -20px;padding:8px 14px 10px;gap:6px;grid-template-rows:auto minmax(0,1fr) auto}
 .pv-stage__top{grid-template-columns:auto minmax(0,1fr);gap:12px}
 .pv-stage__n{font-size:1.5rem}
 .pv-st{font-size:14px;line-height:1.35}
 .pv-stage__svg :is(text,.pv-trim-cap){display:none}
 .pv-mro,.pv-stage__ticker,.pv-prog{display:none}
 .pv-ticks{gap:4px}
 .pv-ticks button{min-height:40px;font-size:13px;gap:4px;padding:0 2px}
 .pv-ticks button b{display:none}
 .pv-steps{grid-column:1;grid-row:2}
 .pv-step{min-height:72svh}
 .pv-step--head{min-height:80svh}
 .pv-step:last-child{min-height:100svh;padding-top:12svh}
 .pv-step__handoff{margin-top:28px}
 .pv-step__ro{position:static;width:auto;height:auto;overflow:visible;clip-path:none;white-space:normal;margin:8px 0 0;font:600 13px/1.45 var(--gft-font-mono);color:#0e4d4a}
 .pv-step__ghost{left:auto;right:-20%;width:80%}
 .pv-sec--int{margin-top:-24svh}
 :root[data-m-go] #pv-interlude[data-m]:not([data-m-in]){clip-path:circle(0% at 50% 0%)}
 @keyframes pv-iris{from{clip-path:circle(0% at 50% 0%)}to{clip-path:circle(150% at 50% 0%)}}
 .pv-int__art{aspect-ratio:auto;padding:64px 0 40px;display:flex;flex-direction:column}
 .pv-int__copy{order:-1}
 .pv-int__copy{position:static}
 .pv-int__svg--wide{display:none}
 .pv-int__svg--narrow{display:block;width:100%;height:auto;max-height:55svh;margin-top:18px}
 .pv-int__radios{position:static;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 20px;pointer-events:auto}
 .pv-int__radios legend{position:static;grid-column:1/-1;margin-bottom:8px}
 .pv-int__radios label{position:static;transform:none;min-width:0;padding:8px 12px;border:1px solid #ffffff4d}
 .pv-int__radios span{font-size:14px}
 .pv-int__radios label:has(input:checked){border-color:var(--pv-och-l)}
 .pv-int__descs{position:static;display:grid;padding:16px 20px 0}
 .pv-int__desc{position:static;grid-area:1/1;width:auto}
 .pv-sec--pref{display:flex;flex-direction:column;padding-top:0}
 .pv-pref__land{display:none}
 .pv-band{order:-1;height:30svh;margin:0 0 32px}
 .pv-band__th{top:calc(18% + var(--k) * 16px)}
 .pv-pref{grid-template-columns:1fr;gap:28px;padding-bottom:56px}
 .pv-dev{padding:20px 18px}
 .pv-srch{grid-template-columns:1fr;gap:28px}
 .pv-srch__path{grid-template-columns:1fr;justify-items:start}
 .pv-sl{height:34px;width:3px;margin-left:24px}
 .pv-sl i{width:3px;height:100%}
 .pv-sl--cut i{background:repeating-linear-gradient(180deg,var(--pv-peri) 0 6px,transparent 6px 13px)}
 .pv-sn{width:100%;box-sizing:border-box}
 .pv-sn b{max-width:none}
 .pv-cl__board{display:flex;flex-direction:column;gap:18px}
 .pv-env{aspect-ratio:auto;display:flex;flex-direction:column;align-items:center}
 .pv-env__svg{position:static;width:72vw;height:auto;aspect-ratio:640/700}
 .pv-env__label{position:static;margin-top:10px;align-self:flex-start}
 .pv-chips{position:static;width:100%;margin-top:8px}
 .pv-env__draft{top:26vw}
 .pv-prep{margin-top:0}
 .pv-cl__drop,.pv-ends__web,.pv-acc__bridge,.pv-srch__bridge,.pv-cl__bridge{display:none}
 .pv-tray em{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .pv-tray li{height:72px;padding:7px}
 .pv-tray span{font-size:13px}
 .pv-held__n b{font-size:2.4rem}
 .pv-ends__cols{grid-template-columns:1fr;gap:26px}
}
