body:has(.kt4){--kt-night: #0b1d2f;--kt-night-2: #12304d;--kt-ice: #d9eefa;--kt-blue: #1a78c2;--kt-blue-d: #145f97;--kt-warm: #e8742c;--kt-warm-d: #a8481a;--kt-cool: #5db3e6;--ls-label: .04em}body:has(.kt4) .crumbs{max-width:none;padding-inline:0;background:var(--kt-night);color:#ffffffc7}body:has(.kt4) .crumbs ol{max-width:calc(var(--col) + 2 * var(--gut));min-height:40px;margin:0 auto;padding:var(--s4) var(--gut) var(--s3)}body:has(.kt4) .crumbs [aria-current]{color:var(--on-dark)}body:has(.kt4) .crumbs li+li:before{color:#ffffff4d}@media(hover:hover){body:has(.kt4) .crumbs a:hover{color:var(--on-dark)}}.kt4-hero{--kt4-top: calc(var(--hdr) + 1px + 60px);--kt4-gr: 24px;position:relative;display:flex;flex-direction:column;overflow:hidden;color:var(--on-dark);min-height:calc(100svh - var(--kt4-top) - var(--bar) - var(--safe-b));background:radial-gradient(110% 70% at 75% 20%,var(--kt-night-2),var(--kt-night))}.kt4-hero:after{content:"";position:absolute;inset:auto 0 0;z-index:5;height:4px;background:linear-gradient(90deg,var(--kt-warm),var(--kt-cool) 60%,var(--kt-ice))}.kt4-hero__in{position:relative;z-index:3;display:grid;gap:var(--s4);justify-items:start;align-content:start;padding-block:var(--s5) 0}.kt4-tag{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3);font:var(--w-sub) var(--t-micro)/1 var(--font);letter-spacing:var(--ls-label);text-transform:uppercase}.kt4-tag>span:first-child{padding:var(--s2) var(--s3);border:1px solid rgb(255 255 255 / .4);border-radius:var(--r-pill);color:#ffffffd9}.kt4-tag__m{color:#ffffffb3}.kt4-h{margin-top:var(--s1);font:var(--w-head) clamp(56px,16vw,72px)/.9 var(--font);letter-spacing:var(--ls-caps);text-transform:uppercase;text-wrap:balance}.kt4-lead{display:none}.kt4-dom{position:relative;display:inline-flex;align-items:center;gap:.3em;padding-bottom:var(--s2);font:var(--w-strong) var(--t-small)/1.2 var(--font);color:var(--on-dark);text-decoration:none;background:linear-gradient(90deg,var(--kt-cool),var(--kt-cool)) bottom / 100% 2px no-repeat;transition:background-size var(--dur)}.kt4-dom:before{content:"";position:absolute;inset:calc(-1 * var(--s3)) calc(-1 * var(--s2))}@media(hover:hover){.kt4-dom:hover{color:var(--on-dark);background-size:100% 4px}}.kt4-dom:active{translate:0 1px}.kt4-dom:focus-visible{outline:2px solid var(--kt-cool);outline-offset:4px;border-radius:4px}.kt4-wall{position:relative;z-index:2;flex:1;min-height:200px;margin-top:var(--s4);overflow:hidden;background:var(--kt-night-2);box-shadow:inset 0 1px #ffffff24}.kt4-wall:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#0b1d2fb3,#0b1d2f00 34%),linear-gradient(0deg,#0b1d2f59,#0b1d2f00 30%)}.kt4-par{position:absolute;inset:-6% 0}.kt4-in,.kt4-photo{display:block;width:100%;height:100%}.kt4-photo{object-fit:cover;object-position:50% 52%}@media(prefers-reduced-motion:no-preference){.kt4-hero__in>*{animation:kt4-up .4s var(--ease) backwards}.kt4-hero__in>:nth-child(2){animation-delay:.04s}.kt4-hero__in>:nth-child(3){animation-delay:.08s}.kt4-hero__in>:nth-child(4){animation-delay:.12s}.kt4-in{animation:kt4-in .7s .1s var(--ease) backwards}@supports (animation-timeline: scroll()){.kt4-par{animation-name:kt4-par;animation-timing-function:linear;animation-fill-mode:both;animation-timeline:scroll(root);animation-range:0 100vh}}}@keyframes kt4-up{0%{opacity:0;translate:0 40px}}@keyframes kt4-in{0%{opacity:0;scale:1.04}}@keyframes kt4-par{to{translate:0 5%}}@media(max-height:720px)and (max-width:899px){.kt4-h{font-size:clamp(44px,13vw,56px)}.kt4-wall{min-height:170px}}@media(min-width:760px){.kt4-lead{display:block;max-width:30em;margin-top:var(--s2);font-size:var(--t-body);line-height:var(--lh-text);color:#ffffffe0;text-wrap:pretty}}@media(min-width:900px){.kt4-hero{min-height:clamp(600px,calc(100svh - var(--kt4-top)),880px)}.kt4-hero__in{flex:1;align-content:center;gap:var(--s5);padding-block:var(--s6) var(--s8)}.kt4-hero__in>*{max-width:46%}.kt4-h{font-size:clamp(52px,5.2vw,76px);line-height:.92}.kt4-dom{font-size:var(--t-body)}.kt4-wall{position:absolute;inset:0 0 112px 50%;flex:none;min-height:0;margin:0;box-shadow:inset 1px 0 #ffffff24,inset 0 -1px #ffffff24}.kt4-photo{object-position:50% 38%}.kt4-wall:after{background:linear-gradient(90deg,#0b1d2feb,#0b1d2f00 42%),linear-gradient(0deg,#0b1d2f66,#0b1d2f00 30%)}}@media(min-width:600px)and (max-width:899px){.kt4-wall{min-height:240px}}.kt4{timeline-scope:--kt4-m}.kt4-body{display:grid;grid-template-columns:minmax(0,1fr)}.kt4-side{display:contents}.kt4-pass{display:grid;gap:var(--s4);margin-top:var(--s6);padding:var(--s5);border-radius:var(--r-m);background:var(--paper);box-shadow:inset 0 0 0 1px var(--line)}.kt4-pass>div{display:grid;gap:var(--s2)}.kt4-pass dt{font:var(--w-sub) var(--t-micro)/1 var(--font);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--muted)}.kt4-pass dd{margin:0;font-size:var(--t-small);line-height:1.5}.kt4-pass a{display:inline-flex;align-items:center;gap:.25em;min-height:var(--tap)}.kt4-toc{--ctoc-accent: var(--kt-cool)}.kt4-th{position:relative;display:block;width:8px;height:18px;border-radius:4px;box-shadow:inset 0 0 0 1px var(--line-field)}.kt4-th:before{content:"";position:absolute;left:2px;right:2px;bottom:4px;height:10px;border-radius:2px;background:var(--kt-warm);transition:height var(--dur),background var(--dur)}.kt4-th:after{content:"";position:absolute;left:-2px;bottom:-4px;width:12px;height:12px;border-radius:50%;background:var(--kt-warm);transition:background var(--dur)}.kt4-toc a.is-read .kt4-th:before,.kt4-toc a[aria-current] .kt4-th:before{height:3px;background:var(--kt-cool)}.kt4-toc a.is-read .kt4-th:after,.kt4-toc a[aria-current] .kt4-th:after{background:var(--kt-cool)}.kt4-toc a[aria-current] .kt4-th{box-shadow:0 0 0 2px var(--kt-blue)}.kt4-main{min-width:0}.kt4-s{padding-block:var(--s7) 0;scroll-margin-top:calc(var(--hdr) + 2 * var(--s2) + var(--tap) + 1px + var(--s5))}.kt4-n{font:var(--w-sub) var(--t-small)/1 var(--font);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--kt-blue-d)}.kt4-big{margin-top:var(--s3);font:var(--w-head) var(--t-h1)/var(--lh-head) var(--font);letter-spacing:var(--ls-head);text-wrap:balance}.kt4-s .lead{margin-top:var(--s3)}.kt4-h3{font:var(--w-sub) var(--t-h3)/var(--lh-head) var(--font)}.kt4-gap{margin-top:var(--s6)}.kt4-cap{margin-top:var(--s2);font-size:var(--t-small);max-width:40em}.kt4-four{display:grid;gap:var(--s5);margin-top:var(--s5)}.kt4-four>div{padding-top:var(--s4);border-top:1px solid var(--line-field)}.kt4-four dt{margin-bottom:var(--s2);font:var(--w-sub) var(--t-small)/1 var(--font);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--kt-blue-d)}.kt4-four dd{margin:0;color:var(--ink-2);max-width:34em}.kt4-time{display:grid;gap:var(--s1);margin:var(--s5) 0 0;padding:0;list-style:none}.kt4-time li{display:grid;gap:var(--s1);padding:var(--s4);background:color-mix(in srgb,var(--kt-ice) 45%,var(--bg))}.kt4-time li:first-child,.kt4-deck li:first-child{border-radius:var(--r-s) var(--r-s) 0 0}.kt4-time li:last-child,.kt4-deck li:last-child{border-radius:0 0 var(--r-s) var(--r-s)}.kt4-time b,.kt4-deck b{display:flex;align-items:center;gap:var(--s2);font:var(--w-sub) var(--t-small)/1.2 var(--font);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--kt-blue-d)}.kt4-dot{flex:none;width:10px;height:10px;border-radius:50%;background:var(--kt-warm)}.kt4-dot--1{background:var(--kt-blue)}.kt4-dot--2{background:var(--kt-cool)}.kt4-time span{color:var(--ink-2);line-height:1.45;text-wrap:pretty}.kt4-time__img{margin:var(--s3) 0 0;max-width:640px}.kt4-deck{display:grid;gap:var(--s1);margin:var(--s4) 0 0;padding:0;list-style:none}.kt4-deck li{display:grid;gap:var(--s1);padding:var(--s4);background:color-mix(in srgb,var(--kt-ice) 45%,var(--bg))}.kt4-deck span{line-height:1.45;text-wrap:pretty;color:var(--ink-2)}.kt4-two{display:grid;gap:var(--s3);margin-top:var(--s4)}.kt4-col{padding:var(--s5);border-radius:var(--r-m)}.kt4-col h3{font:var(--w-head) var(--t-h3)/var(--lh-head) var(--font);letter-spacing:var(--ls-head)}.kt4-col ul{display:grid;gap:var(--s2);margin:var(--s3) 0 0;padding:0 0 0 1.1em}.kt4-col--minus{background:color-mix(in srgb,var(--kt-warm) 14%,var(--bg))}.kt4-col--minus h3{color:var(--kt-warm-d)}.kt4-col--plus{background:color-mix(in srgb,var(--kt-cool) 16%,var(--bg))}.kt4-col--plus h3{color:var(--kt-blue-d)}.kt4-q{display:grid;gap:var(--s2);margin:var(--s4) 0 0;padding:0;list-style:none}.kt4-q li{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:var(--s3);row-gap:var(--s1)}.kt4-q__t{font-size:var(--t-small)}.kt4-q b{font:var(--w-sub) var(--t-small)/1 var(--font);font-variant-numeric:tabular-nums;color:var(--kt-blue-d)}.kt4-q__bar{grid-column:1 / -1;grid-row:2;height:8px;border-radius:4px;background:linear-gradient(90deg,var(--kt-cool),var(--kt-blue))}.kt4-q__bar[data-w="10"]{width:100%}.kt4-q__bar[data-w="5"]{width:54%}.kt4-q__bar[data-w="4"]{width:42%}.kt4-q__bar[data-w="1"]{width:14%}@supports (animation-timeline: view()){@media(prefers-reduced-motion:no-preference){.kt4-q__bar{transform-origin:left;animation:kt4-grow linear both;animation-timeline:view();animation-range:entry 10% cover 40%}}}@keyframes kt4-grow{0%{scale:0 1}}.kt4-brief{display:grid;gap:var(--s3);margin:var(--s4) 0 0;padding:0;list-style:none}.kt4-brief li{display:grid;gap:var(--s2);padding:var(--s4);border-radius:var(--r-m);background:var(--paper);box-shadow:inset 0 0 0 1px var(--line)}.kt4-brief__q{font:var(--w-sub) var(--t-micro)/1 var(--font);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--muted)}.kt4-brief__b{font:var(--w-sub) var(--t-body)/1.3 var(--font);text-wrap:pretty}.kt4-brief__s{display:grid;gap:var(--s1);margin-top:var(--s2);padding-top:var(--s3);border-top:1px solid var(--line-field);color:var(--ink-2)}.kt4-brief__s span{font:var(--w-sub) var(--t-micro)/1 var(--font);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--kt-blue-d)}.kt4-brief__img{margin:var(--s2) 0 0}.kt4-pair{display:grid;gap:var(--s3);margin-top:var(--s4)}.kt4-steps{display:grid;grid-template-columns:1fr 1fr;gap:var(--s3);margin:var(--s4) 0 0;padding:0;list-style:none}.kt4-steps li{display:grid;gap:var(--s2)}.kt4-steps img{display:block;width:100%;height:auto;border-radius:var(--r-s);box-shadow:0 0 0 1px var(--line)}.kt4-steps span{font:var(--w-strong) var(--t-micro)/1.2 var(--font);color:var(--muted)}.kt4-fix{display:grid;gap:var(--s3);margin:var(--s5) 0 0;padding:0;list-style:none}.kt4-fix__i{display:grid;grid-template-columns:auto 1fr;column-gap:var(--s4);row-gap:var(--s2);padding:var(--s5) var(--s4);border-radius:var(--r-m);background:var(--paper);box-shadow:inset 0 0 0 1px var(--line)}.kt4-fix__n{grid-row:span 2;font:var(--w-head) var(--t-h2)/var(--lh-head) var(--font);color:var(--kt-blue-d);font-variant-numeric:tabular-nums}.kt4-fix__q{font:var(--w-sub) var(--t-h2)/var(--lh-head) var(--font);letter-spacing:var(--ls-head)}.kt4-fix__a{color:var(--ink-2)}@media(max-width:759px){.kt4-fix__n{grid-row:auto}.kt4-fix__a{grid-column:1 / -1}}.kt4-fix__ph{grid-column:1 / -1;margin-top:var(--s3)}.kt4-fix__ph .ph__scr{box-sizing:border-box;width:calc(100% - var(--ph-w) * .09);height:calc(100% - var(--ph-w) * .09);padding-top:calc(var(--ph-w) * .12);background:var(--paper)}.kt4-team{display:grid;gap:var(--s3);margin:var(--s5) 0 0;padding:0;list-style:none}.kt4-team__i{padding:var(--s5);border-radius:var(--r-m);background:var(--paper);box-shadow:inset 0 0 0 1px var(--line)}.kt4-team h3{font:var(--w-head) var(--t-h3)/var(--lh-head) var(--font);letter-spacing:var(--ls-head)}.kt4-team ul{display:grid;gap:var(--s2);margin:var(--s3) 0 0;padding:0 0 0 1.1em;color:var(--ink-2)}.kt4-spam{display:grid;gap:var(--s4);margin-top:var(--s5)}.kt4-layers{display:grid;gap:var(--s1);margin:0;padding:0;list-style:none}.kt4-layers li{display:grid;grid-template-columns:auto 1fr;column-gap:var(--s3);padding:var(--s4);background:color-mix(in srgb,var(--kt-ice) 45%,var(--bg))}.kt4-layers li:first-child{border-radius:var(--r-s) var(--r-s) 0 0}.kt4-layers li:last-child{border-radius:0 0 var(--r-s) var(--r-s)}.kt4-layers span{grid-row:span 2;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--kt-blue);color:var(--on-dark);font:var(--w-head) var(--t-small)/1 var(--font)}.kt4-layers p{margin-top:var(--s1);font-size:var(--t-small);color:var(--ink-2)}.kt4-log{margin:0;padding:var(--s4);border-radius:var(--r-m);color:var(--kt-ice);background:var(--kt-night)}.kt4-log figcaption{display:grid;gap:var(--s1);margin-bottom:var(--s3);font-size:var(--t-small)}.kt4-log figcaption b{color:var(--on-dark)}.kt4-log ol{display:grid;gap:var(--s1);margin:0;padding:0;list-style:none}.kt4-log li{display:grid;grid-template-columns:auto 1fr auto;gap:var(--s3);align-items:center;padding:var(--s1) var(--s2);border-radius:6px;background:#ffffff0d;font-size:var(--t-small)}.kt4-log time{font-variant-numeric:tabular-nums;color:var(--kt-cool)}.kt4-log em{font-style:normal;font-weight:var(--w-sub);padding:2px var(--s2);border-radius:var(--r-pill);color:var(--kt-night);background:var(--kt-warm)}@supports (animation-timeline: view()){@media(prefers-reduced-motion:no-preference){.kt4-log li{animation:kt4-line linear both;animation-timeline:view();animation-range:entry 20% entry 90%}.kt4-log em{animation:kt4-stamp linear both;animation-timeline:view();animation-range:entry 70% cover 30%}}}@keyframes kt4-line{0%{opacity:0;translate:-24px 0}}@keyframes kt4-stamp{0%{opacity:0;scale:1.6}}.kt4-sum{display:flex;align-items:baseline;gap:var(--s3);margin-top:var(--s5);max-width:36em}.kt4-sum b{font:var(--w-head) 64px/.9 var(--font);letter-spacing:var(--ls-caps);color:var(--kt-blue-d)}.kt4-sum span{color:var(--ink-2)}.kt4-roads{display:grid;gap:var(--s3);margin-top:var(--s5)}.kt4-road{padding:var(--s5);border-radius:var(--r-m);color:var(--on-dark)}.kt4-road--seo{background:var(--kt-blue-d)}.kt4-road--ads{background:var(--kt-night-2)}.kt4-road h3{font:var(--w-head) var(--t-h2)/var(--lh-head) var(--font);letter-spacing:var(--ls-head)}.kt4-road ol{display:grid;gap:var(--s3);margin:var(--s4) 0 0;padding:0;list-style:none}.kt4-road li{display:grid;gap:var(--s1);font-size:var(--t-small);line-height:1.5;color:#ffffffe6}.kt4-road li b{color:var(--kt-ice)}.kt4-road__join{display:grid;gap:var(--s1);margin:0}.kt4-road__join span{padding:var(--s3) var(--s4);text-align:center;font-weight:var(--w-sub);background:color-mix(in srgb,var(--kt-ice) 60%,var(--bg))}.kt4-road__join span:first-child{border-radius:var(--r-s) var(--r-s) 0 0}.kt4-road__join span:nth-child(2){background:color-mix(in srgb,var(--kt-warm) 22%,var(--bg))}.kt4-road__join span:last-child{border-radius:0 0 var(--r-s) var(--r-s);color:var(--on-dark);background:var(--kt-blue-d)}.kt4-hint{margin-top:var(--s2);font-size:var(--t-small)}.kt4-duo{display:flex;gap:var(--s4);margin:var(--s5) calc(-1 * var(--gut)) calc(-1 * var(--s6));padding:0 var(--gut) var(--s7);overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gut);scrollbar-width:none}.kt4-duo::-webkit-scrollbar{display:none}.kt4-vp{scroll-snap-align:start}.kt4-vp .ph__cap{text-align:start}@media(max-height:620px)and (max-width:759px){.kt4-duo .kt4-vp{--ph-w: 184px}}.kt4-vp .ph__vp{overflow:auto;background:var(--paper)}@supports (animation-timeline: view()){.kt4-scroll{view-timeline-name:--kt4-m;height:200svh}.kt4-scroll__stick{position:sticky;top:calc(var(--hdr) + 2 * var(--s2) + var(--tap) + 1px + var(--s3))}.kt4-vp .ph__vp{overflow:hidden}.kt4-pan-g,.kt4-pan-u{animation:kt4-pan-g linear both;animation-timeline:--kt4-m;animation-range:contain 0% contain 100%}.kt4-pan-u{animation-name:kt4-pan-u}}@keyframes kt4-pan-g{to{translate:0 -94.3%}}@keyframes kt4-pan-u{to{translate:0 -87.8%}}.kt4-dark{margin-top:var(--s7);margin-inline:calc(-1 * var(--gut));padding:var(--s7) var(--gut);color:var(--on-dark);background:var(--kt-night)}.kt4-dark .kt4-n{color:var(--kt-cool)}.kt4-video{display:grid;gap:var(--s2);max-width:720px;margin:var(--s5) 0 0}.kt4-video video{display:block;width:100%;height:auto;aspect-ratio:16 / 9;border-radius:var(--r-s);background:var(--kt-night-2)}.kt4-video video:focus-visible{outline:2px solid var(--kt-cool);outline-offset:3px}.kt4-video figcaption{font-size:var(--t-small);color:#ffffffd1}.kt4-quote{margin:var(--s5) 0 0;padding-top:var(--s4);border-top:1px solid rgb(255 255 255 / .3);max-width:36em}.kt4-quote p{font:var(--w-sub) var(--t-h3)/1.3 var(--font);letter-spacing:var(--ls-head);text-wrap:pretty}.kt4-end{display:grid;gap:var(--s5);justify-items:start;padding-block:var(--s7)}.kt4-share{display:grid;gap:var(--s2);justify-items:start}.kt4-share__t{font-size:var(--t-small);max-width:32em;text-wrap:pretty}@media(min-width:760px){.kt4-two,.kt4-roads,.kt4-team{grid-template-columns:repeat(2,1fr);column-gap:var(--s5)}.kt4-road__join{grid-column:1 / -1;grid-template-columns:repeat(3,1fr)}.kt4-road__join span:first-child{border-radius:var(--r-s) 0 0 var(--r-s)}.kt4-road__join span:last-child{border-radius:0 var(--r-s) var(--r-s) 0}.kt4-time li{grid-template-columns:12em 1fr;column-gap:var(--s4)}.kt4-time__img{grid-column:2}.kt4-deck li{grid-template-columns:9em 1fr;column-gap:var(--s4)}.kt4-brief li{grid-template-columns:1fr 1fr;column-gap:var(--s5)}.kt4-brief__s{margin-top:0;padding-top:0;border-top:0}.kt4-brief__img{grid-column:1 / -1}.kt4-pair{grid-template-columns:1fr 1fr}.kt4-steps{grid-template-columns:repeat(4,1fr)}.kt4-spam{grid-template-columns:1fr 1fr;align-items:start}.kt4-fix__i.has-img{grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto 1fr;align-items:start}.kt4-fix__i.has-img{container-type:inline-size;grid-template-rows:1fr auto auto 1fr}.kt4-fix__i.has-img .kt4-fix__n{grid-row:2 / span 2}.kt4-fix__i.has-img .kt4-fix__q{grid-column:2;grid-row:2}.kt4-fix__i.has-img .kt4-fix__a{grid-column:2;grid-row:3}.kt4-fix__i.has-img .kt4-fix__ph{grid-column:3;grid-row:1 / span 4;margin:0;--ph-w: clamp(224px, 34cqw, 300px)}.kt4-dark{margin-inline:0;padding-inline:var(--s6);border-radius:var(--r-l)}.kt4-scroll__stick{container-type:inline-size}.kt4-duo{max-width:none;margin:var(--s5) 0 0;padding:0;overflow:visible;gap:var(--s6);justify-content:center}.kt4-duo .kt4-vp{--ph-w: clamp(200px, min(calc((100svh - 195px) / 2.028), calc((100cqw - var(--s6)) / 2)), 400px)}.kt4-vp .ph__cap{text-align:center}}@media(min-width:900px){.kt4-s{padding-block-start:var(--s8)}}@media(min-width:1100px){.kt4-body{grid-template-columns:240px minmax(0,1fr);grid-template-rows:auto 1fr;column-gap:var(--s7)}.kt4-main{grid-column:2;grid-row:1 / span 2}.kt4-pass{grid-column:1;grid-row:1;margin:var(--s7) 0 0}.kt4-toc{grid-column:1;grid-row:2;align-self:start}}
