@font-face{font-family:Bodoni;src:url('/assets/fonts/bodoni.woff2') format('woff2');font-weight:400 900;font-display:swap}@font-face{font-family:Hanken;src:url('/assets/fonts/hanken.woff2') format('woff2');font-weight:100 900;font-display:swap}@font-face{font-family:Fragment;src:url('/assets/fonts/fragment.woff2') format('woff2');font-display:swap}
:root{--paper:#fefefb;--warm:#fbfaf4;--deep:#f0f0e5;--ink:#433f35;--muted:#777269;--line:#cbc8be;--purple:#6251d2;--lav:#d8d8e9;--teal:#b8e5e0;--coral:#f09070;--rose:#f5bccb;--lime:#eaf2a6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--warm);color:var(--ink);font-family:Hanken,Arial,sans-serif;font-size:17px;line-height:1.48}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:4px}a:hover{color:var(--purple)}button,input,select{font:inherit}button,a,select,input{outline-offset:4px}button{cursor:pointer}img,svg{display:block;max-width:100%}.skip{position:fixed;top:-100px;left:130px;z-index:100;background:white;padding:1em}.skip:focus{top:0}.rail{position:fixed;z-index:20;inset:0 auto 0 0;width:120px;background:#fbfaf5;display:flex;flex-direction:column;align-items:center;padding:36px 14px 24px;box-shadow:3px 0 20px #433f3512;overflow:auto}.brand{font-size:26px;color:var(--purple);font-weight:800;letter-spacing:-.09em;text-decoration:none;line-height:1}.rail .brand{font-size:25px}.railnav{margin:auto 0;display:flex;flex-direction:column;width:100%;text-align:center}.railnav a{padding:16px 0;border-bottom:1px solid #e2e0d7;text-decoration:none;font-size:13px;line-height:1.2}.railnav a:before{display:block;font-size:18px;color:#c9c7bd;margin-bottom:6px;content:'◆'}.rail-search{text-decoration:none;font-size:14px}.mobilebar{display:none}.main{margin-left:120px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:100svh;background:var(--deep)}.hero-art{position:relative;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;max-height:100svh;background:var(--lav)}.track{display:flex;flex-direction:column;animation:up 32s linear infinite;will-change:transform}.track:nth-child(2){animation-name:down}.track .tile{flex:none;aspect-ratio:1}.track .tile svg{width:100%;height:100%}@keyframes up{to{transform:translateY(-50%)}}@keyframes down{from{transform:translateY(-50%)}to{transform:translateY(0)}}.paused .track{animation-play-state:paused}.pause{position:absolute;bottom:18px;left:18px;border:1px solid #433f3570;background:#fffdf4e8;border-radius:99px;padding:8px 13px;font-size:11px;z-index:2}.hero-copy{padding:clamp(70px,10vw,150px) clamp(32px,5.2vw,76px) 65px;align-self:center}.eyebrow,.chip,.meta,.kicker{font:11px/1.3 Fragment,monospace;letter-spacing:.035em;text-transform:uppercase}.eyebrow{color:var(--purple);margin-bottom:25px}.hero h1,.display{font-family:Bodoni,Georgia,serif;font-weight:500;letter-spacing:-.035em;line-height:1.02}.hero h1{font-size:clamp(55px,6.25vw,96px);color:var(--purple);margin:0 0 24px}.hero h1 span{display:block}.hero-copy>p{max-width:510px;font-size:clamp(17px,1.45vw,21px);line-height:1.42}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;border:1px solid #a5a398;border-radius:99px;padding:15px 25px;background:var(--paper);color:var(--purple);text-decoration:none;font-weight:600;min-height:52px}.button:hover{background:var(--purple);color:white}.hero h2{font:500 clamp(25px,2.8vw,40px)/1.05 Bodoni,Georgia,serif;margin:36px 0 16px}.chips{display:flex;flex-wrap:wrap;gap:7px}.chip{display:inline-flex;border:1px solid var(--purple);background:var(--lav);border-radius:99px;padding:7px 12px;text-decoration:none;min-height:30px;align-items:center}.chip:hover{background:var(--purple);color:white}.section{padding:clamp(70px,8vw,125px) clamp(24px,5vw,74px)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:45px}.section-head h2,.page-head h1{margin:0;font:500 clamp(45px,5.4vw,78px)/1.04 Bodoni,Georgia,serif;letter-spacing:-.035em}.section-head p{max-width:420px;margin:0}.intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw;background:var(--paper)}.intro h2{font:500 clamp(40px,4vw,64px)/1.1 Bodoni,Georgia,serif;margin:0;max-width:680px}.intro p{max-width:470px;font-size:20px}.chapters{display:grid;grid-template-columns:1fr 1fr;background:var(--deep)}.chapter-copy{min-height:80svh;display:flex;flex-direction:column;justify-content:center;padding:clamp(40px,6vw,86px)}.chapter-copy h2{font:500 clamp(42px,4.5vw,68px)/1.05 Bodoni,Georgia,serif;margin:10px 0 20px}.chapter-copy p{max-width:430px;font-size:19px}.chapter-copy a:not(.chip){margin-top:15px}.chapter-art{position:sticky;top:0;height:100svh;overflow:hidden}.chapter-art .art-layer{position:absolute;inset:0;opacity:0;transition:opacity .4s}.chapter-art .art-layer.active{opacity:1}.chapter-art svg{height:100%;width:100%}.chapter-mobile{display:none}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.card{position:relative;border:1px solid var(--line);background:var(--warm);min-width:0;display:flex;flex-direction:column}.card-copy{padding:30px 30px 25px;flex:1;min-height:220px;display:flex;flex-direction:column}.card .meta{color:var(--muted);padding-right:40px}.card h3{font-size:clamp(20px,1.65vw,25px);line-height:1.18;font-weight:500;margin:26px 0 18px}.card h3 a{text-decoration:none}.card h3 a:after{content:'';position:absolute;inset:0;z-index:1}.card .card-bottom{margin-top:auto;font-size:13px;color:var(--muted)}.card-art{height:105px;overflow:hidden}.card-art svg{width:100%;height:100%}.save{position:absolute;top:20px;right:20px;z-index:2;border:0;background:var(--lav);height:44px;width:44px;border-radius:50%;font-size:24px;line-height:1;color:var(--ink)}.save[aria-pressed=true]{background:var(--purple);color:white}.feature{background:var(--lime);display:grid;grid-template-columns:1fr 1fr;gap:8vw}.feature h2{font:500 clamp(42px,4.5vw,68px)/1.06 Bodoni,Georgia,serif;margin:0}.feature p{font-size:19px;max-width:500px}.footer{background:#d9e273;padding:70px clamp(24px,5vw,74px) 35px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px}.footer .brand{font-size:65px}.footer p{max-width:280px}.footer nav{display:flex;flex-direction:column;gap:9px}.footer small{display:block;border-top:1px solid #6f773c66;margin-top:60px;padding-top:20px}.page-head{padding:clamp(80px,9vw,130px) clamp(24px,5vw,74px) 75px;display:grid;grid-template-columns:1fr 1fr;gap:6vw}.page-head p{max-width:530px;margin:0;font-size:19px}.tabs{display:flex;gap:28px;padding:0 clamp(24px,5vw,74px);flex-wrap:wrap}.tabs a{padding:15px 0;text-decoration:none}.tabs a.current{border-bottom:2px solid var(--purple);color:var(--purple)}.filters{padding:45px clamp(24px,5vw,74px);background:var(--paper);font:500 clamp(23px,2.4vw,36px)/1.7 Bodoni,Georgia,serif;color:#a19f93}.filters select{font:inherit;color:var(--ink);border:0;border-bottom:1px solid var(--line);background:transparent;max-width:100%}.filters input{font:16px Hanken,sans-serif;padding:12px;border:1px solid var(--line);background:white;width:min(100%,350px)}.filters button{font:13px Hanken,sans-serif;border:0;background:none;text-decoration:underline;color:var(--purple)}.results{background:var(--deep)}.results-count{margin:0 0 25px;color:var(--muted);font-size:14px}.pagination{display:flex;gap:10px;margin-top:40px}.pagination a{padding:10px 16px;border:1px solid var(--line);text-decoration:none}.pagination .active{background:var(--purple);color:white}.article-head{padding:80px clamp(24px,7vw,100px);background:var(--deep);display:grid;grid-template-columns:1.2fr .8fr;gap:6vw;align-items:center}.article-head h1{font:500 clamp(42px,5vw,78px)/1.06 Bodoni,Georgia,serif;letter-spacing:-.035em;margin:20px 0}.article-head .lead{font-size:21px;max-width:700px}.article-head .illustration{aspect-ratio:1}.illustration svg{width:100%;height:100%}.article-body{max-width:850px;padding:70px 24px 100px;margin:auto;font-size:19px;line-height:1.7}.article-body h2{font:500 38px/1.15 Bodoni,Georgia,serif;margin:55px 0 20px}.article-body h3{font:500 27px/1.2 Bodoni,Georgia,serif;margin-top:35px}.article-body p{max-width:70ch}.article-body li{margin-bottom:10px}.article-body aside{background:var(--lav);padding:28px;margin:35px 0;font-size:17px}.article-body .notice{border-left:3px solid var(--purple);background:#f0eff9}.plain-list{list-style:none;padding:0}.plain-list li{border-bottom:1px solid var(--line);padding:15px 0}.notice-banner{position:fixed;z-index:30;bottom:16px;right:16px;background:var(--paper);border:1px solid var(--line);box-shadow:0 5px 25px #433f3520;padding:20px;width:min(380px,calc(100vw - 32px));font-size:14px}.notice-banner p{margin:0 0 14px}.notice-banner button{border:1px solid var(--ink);border-radius:99px;padding:8px 18px;background:var(--paper)}.menu-panel{display:none}.empty{padding:25px;background:var(--paper)}.text-link{display:inline-block;margin-top:20px;text-transform:uppercase;font:12px Fragment,monospace}.hide{display:none!important}@media(max-width:991px){.rail{display:none}.mobilebar{display:flex;height:88px;align-items:center;justify-content:space-between;padding:0 22px;background:var(--warm);position:relative;z-index:21}.mobilebar .brand{font-size:28px}.mobile-actions{display:flex;align-items:center;gap:20px}.mobile-actions a,.mobile-actions button{border:0;background:none;text-decoration:none;color:var(--ink);font-size:16px}.menu-panel.open{display:block;position:absolute;top:88px;left:0;right:0;z-index:20;background:var(--warm);padding:20px 24px 35px;box-shadow:0 12px 15px #433f3515}.menu-panel nav{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.menu-panel a{padding:12px 0;border-bottom:1px solid var(--line);text-decoration:none}.main{margin:0}.hero{grid-template-columns:1fr}.hero-copy{grid-row:1;padding:60px 20px 65px}.hero-art{grid-row:2;height:68vw;max-height:500px}.hero h1{font-size:clamp(42px,8vw,65px)}.hero-copy .button{width:100%}.chapters{display:block}.chapter-copy{min-height:0;padding:75px 24px}.chapter-art{display:none}.chapter-mobile{display:block;aspect-ratio:1.5;margin:30px -24px -75px}.chapter-mobile svg{height:100%;width:100%}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:1fr 1fr}.page-head{padding-top:70px}.article-head{grid-template-columns:1fr}.article-head .illustration{max-height:400px}.intro{gap:30px}}@media(max-width:600px){.page-head,.intro,.feature{grid-template-columns:1fr}.section-head{display:block}.section-head p{margin-top:20px}.cards{grid-template-columns:1fr;gap:18px}.card-copy{min-height:185px}.page-head{gap:25px;padding-bottom:55px}.tabs{gap:20px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.article-head{padding-top:55px}.article-head h1{font-size:42px}.article-head .lead{font-size:19px}.article-body{font-size:18px}.article-body h2{font-size:32px}.filters{line-height:1.9}.hero-art{height:80vw}.hero h1{font-size:43px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.track{animation:none}.chapter-art .art-layer{transition:none}}
@media(min-width:992px){.hero h1{font-size:clamp(52px,4.6vw,76px)}.hero-copy{padding-top:70px;padding-bottom:65px}}
.brand{letter-spacing:-.055em}.pagination button{padding:10px 16px;border:1px solid var(--line);background:transparent}.pagination button.active{background:var(--purple);color:white}
/* Keep artwork the full height of its content-driven grid row. */
@media(min-width:992px){.hero{align-items:stretch;min-height:100svh}.hero-art{position:relative;max-height:none;min-height:100%;height:auto}.hero-art>.track{position:absolute;top:0;width:50%}.hero-art>.track:first-child{left:0}.hero-art>.track:nth-child(2){right:0}.hero-copy{padding:72px clamp(32px,5.2vw,76px) 64px}.hero h1{font-size:clamp(48px,4.5vw,72px);line-height:1.05}.hero h1 span{display:inline}.hero h1 span+span:before{content:' '}.hero h1{max-width:9.5em}.hero h2{font-size:clamp(28px,2.6vw,38px)}}
.article-body .toc{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;margin-bottom:40px;font-size:16px}.article-body .toc a{display:block;margin:8px 0}.article-body table{border-collapse:collapse;width:100%;font-size:16px;line-height:1.5;margin:28px 0}.article-body th,.article-body td{border-bottom:1px solid var(--line);padding:13px 10px;text-align:left;vertical-align:top}.article-body blockquote{margin:36px 0;padding:24px 30px;border-left:3px solid var(--purple);background:var(--deep);font:500 28px/1.35 Bodoni,Georgia,serif}.article-body .service{background:var(--lav);padding:30px;margin:40px 0}.article-body .service h2{margin-top:0}.article-tools{display:flex;gap:20px;margin:30px 0}.reading-time{font:12px Fragment,monospace;color:var(--muted)}
@media print{.rail,.mobilebar,.footer,.notice-banner,.article-tools,.save,.results{display:none!important}.main{margin:0}.article-head{display:block;padding:20px}.article-head .illustration{display:none}.article-body{padding:20px;max-width:none}.article-body h2{break-after:avoid}a{color:inherit}.article-body table{break-inside:avoid}}
.hero h1.hero-name{font-family:Hanken,Arial,sans-serif;font-size:clamp(88px,10vw,150px);font-weight:700;line-height:.85;letter-spacing:-.08em;margin-bottom:26px}.hero-copy p.hero-claim{font:500 clamp(33px,3.2vw,49px)/1.1 Bodoni,Georgia,serif;letter-spacing:-.025em;margin:0 0 28px;color:var(--purple)}
@media(max-width:991px){.hero h1.hero-name{font-size:92px}.hero-copy p.hero-claim{font-size:36px}}
.table-scroll{max-width:100%;overflow-x:auto;margin:28px 0}.article-body .table-scroll table{min-width:460px;margin:0}.article-tools{flex-wrap:wrap}.article-body,.article-head>div{min-width:0}.article-body p,.article-body li{hyphens:auto}.article-head h1{overflow-wrap:break-word;hyphens:auto}
.hero-art.inactive .track{animation-play-state:paused}
