:root{--bg:#f1f1ee;--ink:#17140f;--mute:#5c554b;--line:#d6d5cf;--sand:#ebcb8b;--night:#1b1a18;--c1:#2b45d1;--yr1:#2236a6;--c2:#f47a2a;--yr2:#f9a66c;--c3:#0f5e43;--yr3:#0a4632;--c4:#25272c;--yr4:#33363d;--display:var(--font-display);--gut:clamp(20px, 5vw, 72px);--max:1360px;--edge:max(var(--gut), calc((100vw - var(--max)) / 2 + var(--gut)));--sec:clamp(80px, 10vw, 144px);--ease:cubic-bezier(.2, .7, .2, 1);--quart:cubic-bezier(.25, 1, .5, 1);color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font:400 18px/1.55 var(--font-body);text-wrap:pretty;-webkit-font-smoothing:antialiased;margin:0;overflow-x:clip}img{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3,p,figure,ol,ul{margin:0}ol,ul{padding:0;list-style:none}h1,h2,h3{font-family:var(--display);letter-spacing:-.04em;font-weight:800;line-height:1}:focus-visible{outline-offset:4px;border-radius:2px;outline:3px solid}.wrap{width:100%;max-width:var(--max);padding-inline:var(--gut);margin-inline:auto}:root ::selection{background:var(--c1);color:#fff}.skip{z-index:9;background:var(--ink);color:#fff;padding:12px 18px;font-weight:600;position:absolute;top:12px;left:-999px}.skip:focus{left:12px}.sprite{position:absolute}.ic{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:1.1em;height:1.1em}.ar{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px;transition:transform .2s var(--ease);flex:none}.tlink,.lang,.foot a,.side-list a,.off-more,.tlink:hover,.lang:hover,.foot a:hover,.side-list a:hover,.off-more:hover{text-decoration-color:currentColor}.lang{align-items:center;min-height:44px;font-size:16px;font-weight:600;display:inline-flex}.top .lang{backdrop-filter:blur(8px);background:#1b1a18b8;border-radius:999px;padding:0 16px}.top{z-index:2;color:#fff;justify-content:flex-end;align-items:center;min-height:72px;display:flex;position:absolute;inset:0 0 auto}.hero{isolation:isolate;color:#fff;flex-direction:column;justify-content:flex-end;min-height:100svh;padding-top:120px;padding-bottom:clamp(40px,5vw,72px);display:flex;position:relative}.hero-bg{z-index:-2;object-fit:cover;object-position:0% 0%;width:46vw;max-width:none;height:100%;position:absolute;top:0;bottom:0;right:calc(50% - 50vw)}.hero:before{content:"";z-index:-1;background:linear-gradient(to right, var(--night) 0%, var(--night) 56%, #1b1a18d9 60%, #1b1a1800 65%), linear-gradient(to top, #1b1a18d9 0%, #1b1a1800 30%);width:100vw;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.hero h1{letter-spacing:-.04em;margin-left:-.04em;font-size:clamp(60px,12.6vw,184px);line-height:.85}.hero h1 span{display:block}.hero-foot{max-width:calc(54vw - var(--edge) - 16px);border-top:2px solid #fff9;gap:14px;margin-top:clamp(28px,3.2vw,48px);padding-top:clamp(18px,2vw,28px);display:grid}.hero-line{font-family:var(--display);letter-spacing:-.02em;max-width:min(38ch, calc(54vw - var(--edge) - 16px));text-wrap:pretty;font-size:clamp(22px,2.3vw,34px);font-weight:500;line-height:1.3}.hero-line strong{font-weight:800}.hero-note{color:#ffffffc7;max-width:min(52ch, calc(54vw - var(--edge) - 16px));font-size:16px}.toc{max-width:calc(54vw - var(--edge) - 16px);grid-template-columns:repeat(3,1fr);margin-top:clamp(32px,3.6vw,56px);display:grid}.toc li{--lit:color-mix(in oklab, var(--c) 80%, #fff);--seg:var(--lit);position:relative}.toc li:first-child{--c:var(--c1)}.toc li:nth-child(2){--c:var(--c2)}.toc li:nth-child(3){--c:var(--c3)}.toc li:last-child{--seg:linear-gradient(to right, var(--lit) 40%, transparent)}.toc a{color:#fff;align-content:start;gap:3px;min-height:44px;padding:26px 16px 0 0;text-decoration:none;display:grid}.toc a:before{content:"";background:var(--seg);height:4px;position:absolute;top:4px;left:0;right:0}.toc a:after{content:"";background:var(--lit);width:12px;height:12px;box-shadow:0 0 0 3px var(--night);transition:transform .2s var(--ease);border-radius:50%;position:absolute;top:0;left:0}.toc a:hover:after{transform:scale(1.35)}.toc a:hover strong{text-underline-offset:5px;text-decoration:underline 2px}.toc strong{font-family:var(--display);letter-spacing:-.02em;font-size:18px;font-weight:750;line-height:1.1}.toc span{color:#ffffffb8;font-size:15px;line-height:1.3}.chapters{position:relative}.ch{background:var(--c);color:var(--fg);padding-top:clamp(72px,8vw,120px);position:relative;overflow:clip}.ch-1{--c:var(--c1);--fg:#fff;--y:var(--yr1)}.ch-2{--c:var(--c2);--fg:var(--ink);--y:var(--yr2)}.ch-3{--c:var(--c3);--fg:#fff;--y:var(--yr3)}.ch-4{--c:var(--c4);--fg:#fff;--y:var(--yr4)}.ch-in{z-index:1;padding-bottom:clamp(88px,9vw,136px);position:relative}.meta{color:color-mix(in srgb, currentColor 80%, transparent);flex-wrap:wrap;gap:6px 24px;margin-top:clamp(16px,1.6vw,22px);font-size:15px;display:flex}.meta strong{color:var(--fg);font-weight:600}.meta>*{align-items:center;gap:8px;display:inline-flex}.ch-h{letter-spacing:-.04em;text-wrap:balance;max-width:22ch;padding-bottom:.08em;font-size:clamp(32px,4vw,60px);line-height:1;overflow:clip}.rise{display:block}.ch-body{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:clamp(40px,6vw,96px);margin-top:clamp(40px,5vw,80px);display:grid}.ch-col{align-content:start;gap:clamp(36px,4vw,56px);display:grid}.ch-text{gap:14px;max-width:36ch;font-size:clamp(18px,1.35vw,20px);line-height:1.5;display:grid}.pts{gap:8px;display:grid}.pts li{grid-template-columns:14px 1fr;align-items:baseline;gap:12px;display:grid}.pts li:before{content:"";background:currentColor;width:8px;height:8px;transform:translateY(-2px)}.pts-big{gap:10px}.pts-big li{font-family:var(--display);letter-spacing:-.02em;font-size:clamp(22px,2vw,30px);font-weight:700;line-height:1.15}.pts-big li:before{width:10px;height:10px;transform:translateY(-5px)}.pts-ic li{grid-template-columns:auto 1fr;align-items:center}.pts-ic li:before{content:none}.pts-ic .ic{width:.95em;height:.95em}.ch-photo{margin-right:calc(-1 * var(--edge));margin-top:clamp(-96px,-5vw,-32px)}.ch-photo img{border-radius:6px 0 0 6px;width:100%;box-shadow:0 40px 80px -36px #0000008c}.ch-photo.ch-photo-tall{width:min(100% + var(--edge), 78svh * 1086 / 1357);margin-left:auto}.proof{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:28px clamp(20px,2.6vw,36px);margin-top:clamp(56px,6vw,96px);display:grid}.proof>li:nth-child(2){--i:1}.proof>li:nth-child(3){--i:2}.proof>li:nth-child(4){--i:3}.proof>li:nth-child(5){--i:4}.proof li{border-top:2px solid;align-content:start;gap:6px;padding-top:16px;display:grid}.proof strong{font-family:var(--display);letter-spacing:-.02em;align-items:center;gap:10px;font-size:clamp(19px,1.45vw,22px);font-weight:750;line-height:1.15;display:flex}.proof span{color:color-mix(in srgb, currentColor 80%, transparent);max-width:30ch;font-size:15.5px;line-height:1.45}.proof-big{grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:32px clamp(28px,3.4vw,56px)}.proof-big li{gap:10px;padding-top:20px}.proof-big strong{font-size:clamp(26px,2.4vw,36px)}.proof-big span{max-width:46ch;font-size:clamp(16px,1.2vw,18px)}.proof-big .mine{color:var(--fg);font-weight:600}.ch-yr{z-index:0;padding-left:var(--edge);font-family:var(--display);letter-spacing:-.04em;white-space:nowrap;color:var(--y);pointer-events:none;user-select:none;margin:-.8em 0 -.15em;font-size:clamp(120px,15vw,232px);font-weight:800;line-height:.8;position:sticky;bottom:-.15em}.ch-yr.word{font-size:clamp(64px,9vw,148px)}.sec-h{letter-spacing:-.04em;text-wrap:balance;max-width:18ch;font-size:clamp(32px,4vw,60px);line-height:1}.outside{padding-top:var(--sec)}.side-list{margin-top:clamp(36px,4vw,64px)}.side-list li{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);align-items:baseline;gap:10px clamp(32px,6vw,96px);padding-block:clamp(22px,2.6vw,36px);display:grid}.side-list li:last-child{border-bottom:1px solid var(--line)}.side-list h3{letter-spacing:-.04em;align-items:center;gap:12px;font-size:clamp(24px,2.4vw,36px);display:flex}.side-list h3 .ic{width:.8em;height:.8em}.side-list a{text-underline-offset:8px;align-items:center;gap:10px;min-height:44px;text-decoration-thickness:3px;display:inline-flex}.side-list a:hover .ar{transform:translate(3px,-3px)}.side-list p{max-width:48ch;font-size:clamp(17px,1.3vw,19px)}.off{padding-top:var(--sec)}.off-grid{grid-template-columns:repeat(3,1fr);align-items:start;gap:clamp(16px,4vw,56px);margin-top:clamp(36px,4vw,64px);display:grid}.off-grid figure:nth-child(2){margin-top:clamp(40px,7vw,120px)}.off-grid img{aspect-ratio:1;object-fit:cover;border-radius:6px;width:100%}.off-grid figcaption{max-width:34ch;margin-top:16px;font-size:clamp(16px,1.3vw,19px)}.off-more{text-underline-offset:6px;align-items:center;gap:6px;min-height:44px;margin-top:clamp(28px,3vw,48px);font-size:clamp(16px,1.3vw,19px);font-weight:600;text-decoration-thickness:2px;display:inline-flex}.off-more:hover .ar{transform:translate(3px,-3px)}.contact{margin-top:var(--sec);background:var(--ink);color:#fff;padding-block:clamp(80px,10vw,152px)}.contact h2{letter-spacing:-.04em;margin-left:-.04em;font-size:clamp(52px,8.6vw,136px);line-height:.88}.contact-links{flex-wrap:wrap;align-items:center;gap:16px 40px;margin-top:clamp(36px,4vw,64px);display:flex}.pill{min-height:56px;color:var(--ink);overflow-wrap:break-word;background:#fff;border-radius:999px;align-items:center;gap:12px;max-width:100%;padding:0 26px;font-size:clamp(16px,1.3vw,19px);font-weight:600;text-decoration:none;transition:background .2s;display:inline-flex}.pill:hover{background:var(--sand)}.pill:hover .ar{transform:translate(3px)}.contact .tlink{align-items:center;gap:8px;min-height:48px;font-size:clamp(16px,1.3vw,19px);font-weight:600;display:inline-flex}.contact .tlink:hover .ar{transform:translate(2px,-2px)}.contact :focus-visible{outline-color:#fff}.foot{color:var(--mute);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 24px;padding-block:24px;font-size:15px;display:flex}.foot a{min-height:44px;color:var(--ink);align-items:center;font-weight:600;display:inline-flex}@media (prefers-reduced-motion:no-preference){html.js .rise{transition:transform .55s var(--quart)}html.js .ch-h:not(.in) .rise{transform:translateY(105%)}html.js .ch-photo img{clip-path:inset(-80px);transition:clip-path .65s var(--quart)}html.js .ch-photo:not(.in) img{clip-path:inset(-80px -80px -80px 100%)}html.js .stg>li{transition:opacity .45s var(--ease), transform .45s var(--quart)}html.js .proof>li{transition-delay:calc(var(--i,0) * 40ms)}html.js .stg>li:not(.in){opacity:0;transform:translateY(12px)}}@media (prefers-reduced-motion:no-preference) and (width<=980px){html.js .ch-h .rise{transition:none;transform:none}html.js .ch-h,html.js .ch-photo{transition:opacity .45s var(--ease)}html.js .ch-h:not(.in),html.js .ch-photo:not(.in){opacity:0}html.js .ch-photo img,html.js .ch-photo:not(.in) img{clip-path:none;transition:none}html.js .stg>li:not(.in){transform:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}@media (orientation:portrait) and (width<=1180px){.hero{padding-top:52svh}.hero-foot{max-width:none}.hero-line{max-width:38ch}.hero-note{max-width:52ch}.hero-bg{object-position:0% 0%;width:100vw;height:62svh;bottom:auto;left:50%;right:auto;transform:translate(-50%)}.toc{max-width:none}.hero:before{background:linear-gradient(to bottom, #1b1a181a 0%, #1b1a1826 30%, var(--night) 60%)}}@media (width<=980px){.ch-body{grid-template-columns:1fr}.ch-photo{margin-top:0;margin-left:clamp(0px,10vw,120px)}.toc{grid-template-columns:1fr;max-width:none}.toc li:last-child{--seg:linear-gradient(to bottom, var(--lit), transparent)}.toc a{padding:0 0 22px 30px}.toc li:last-child a{padding-bottom:0}.toc a:before{width:4px;height:auto;inset:10px auto -10px 4px}.toc li:last-child a:before{bottom:-14px}.toc a:after{top:4px}.ch{flex-direction:column;padding-block:48px clamp(64px,9vw,96px);display:flex}.ch-in{padding-bottom:0}.ch-yr{padding-inline:var(--gut);order:-1;margin:0 0 20px -.04em;font-size:clamp(96px,22vw,180px);position:static}.ch-yr.word{font-size:clamp(56px,13vw,112px)}}@media (width<=640px){body{font-size:17px}.top{min-height:64px}.hero{padding-bottom:56px}.hero h1{font-size:clamp(56px,19vw,96px)}.hero-line{font-size:19px}.toc{margin-top:36px}.toc strong{font-size:17px}.toc span{font-size:14px}.ch{padding-block:40px 64px}.ch-yr{font-size:clamp(88px,30vw,132px)}.ch-yr.word{font-size:clamp(56px,17vw,96px)}.ch-h{max-width:none;font-size:clamp(30px,9vw,42px)}.ch-body{gap:32px;margin-top:28px}.ch-text{font-size:17px}.ch-photo{margin-left:0}.ch-photo.ch-photo-tall{width:auto;margin-left:0}.ch-photo img{border-radius:6px 0 0 6px}.proof{grid-template-columns:1fr 1fr;gap:22px 16px;margin-top:44px}.proof li{gap:4px;padding-top:12px}.proof strong{font-size:17px}.proof span{font-size:14.5px}.proof-big{grid-template-columns:1fr;gap:28px}.proof-big strong{font-size:24px}.proof-big span{font-size:16px}.side-list li{grid-template-columns:1fr}.off-grid{grid-template-columns:1fr 1fr;gap:14px}.off-grid figure:nth-child(2){margin-top:40px}.off-grid figcaption{margin-top:10px;font-size:15px}.contact h2{font-size:clamp(48px,15vw,72px)}.contact-links{flex-direction:column;align-items:flex-start}.contact-links .mail{align-self:stretch}.pill{color:#fff;min-height:44px;font-family:var(--display);letter-spacing:-.02em;text-underline-offset:6px;overflow-wrap:anywhere;background:0 0;border-radius:0;align-items:flex-start;gap:12px;padding:0;font-size:clamp(24px,7vw,30px);font-weight:700;line-height:1.2;text-decoration:underline 2px}.pill:hover{text-decoration-color:var(--sand);background:0 0}.pill .ic{width:.8em;height:.8em;margin-top:.22em}.pill .ar{display:none}}.nf{background:var(--night);color:#fff;flex-direction:column;justify-content:flex-end;min-height:100svh;padding-block:120px clamp(56px,8vw,112px);display:flex}.nf .wrap{justify-items:start;gap:20px;display:grid}.nf .nf-num{font-family:var(--display);letter-spacing:-.04em;color:var(--yr4);margin-left:-.04em;font-size:clamp(120px,24vw,320px);font-weight:800;line-height:.8}.nf h1{letter-spacing:-.04em;max-width:16ch;font-size:clamp(40px,6vw,88px);line-height:.95}.nf p{color:#ffffffc7;max-width:40ch}.nf .tlink{align-items:center;gap:8px;min-height:48px;font-size:clamp(16px,1.3vw,19px);font-weight:600;display:inline-flex}.nf .tlink:hover .ar{transform:translate(3px)}.nf :focus-visible{outline-color:#fff}
