@import url('/site-additions.css');
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{font-family:'DM Sans',Arial,sans-serif;color:#17181d;background:#f2f0eb;scroll-behavior:smooth}
*{box-sizing:border-box}body{margin:0}a{color:inherit}a:focus-visible{outline:3px solid #ff6b35;outline-offset:4px}
.wrap{width:min(1280px,calc(100% - 80px));margin:auto}
.dark{background:#101014;color:#f2f0eb}
.nav{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:27px 0;border-bottom:1px solid #ffffff35}
.brand{font-size:1.08rem;font-weight:700;letter-spacing:-.04em;text-decoration:none}.brand b{color:#ff6b35}
.nav-links{display:flex;gap:32px;align-items:center}.nav-links a{text-decoration:none;font-size:.88rem;font-weight:700}.nav-links a:hover{color:#ff875b}
.nav-links .current{color:#ff875b}.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-size:.76rem;font-weight:700;color:#cf552e}
.intro{padding:95px 0 105px;display:grid;grid-template-columns:1.25fr .75fr;gap:90px;align-items:end;position:relative;overflow:hidden}
.intro:after{content:"";position:absolute;width:48vw;aspect-ratio:1;border:1px solid #ff6b353c;border-radius:50%;right:-20vw;top:-14vw;box-shadow:0 0 0 60px #101014,0 0 0 61px #ff6b352d,0 0 0 120px #101014,0 0 0 121px #ff6b351e;pointer-events:none}
.intro>*{position:relative;z-index:1}.intro .eyebrow{color:#ff875b}
.intro h1{font:600 clamp(5rem,10vw,10rem)/.85 'Space Grotesk',sans-serif;letter-spacing:-.09em;margin:24px 0 0}
.intro h1 em{font-style:normal;color:#ff6b35}.intro p{font-size:1.2rem;line-height:1.65;color:#d3d0cb;max-width:400px;margin:0}
.count-strip{background:#ff6b35;padding:15px 0;font:700 .78rem 'DM Sans',sans-serif;letter-spacing:.13em;text-transform:uppercase}
.count-strip .wrap{display:flex;gap:26px;flex-wrap:wrap}
.listing{padding:94px 0 120px}.listing-head{display:flex;justify-content:space-between;align-items:end;gap:30px;border-bottom:1px solid #c5c2bd;padding-bottom:25px;margin-bottom:18px}
.listing-head h2{font:600 clamp(2.5rem,5vw,5rem)/1 'Space Grotesk',sans-serif;letter-spacing:-.07em;margin:15px 0 0}
.listing-head span{color:#77746e;font-size:.9rem}.post-card{display:grid;grid-template-columns:90px 1fr auto;align-items:center;gap:32px;border-bottom:1px solid #c5c2bd;padding:44px 0;text-decoration:none;transition:padding .3s,background .3s}
.post-card:hover{padding-left:20px;background:#e9e5de}.post-card .number{color:#d25b31;font-size:.8rem;font-weight:700;letter-spacing:.12em}
.post-card h3{font:600 clamp(1.8rem,3vw,3rem)/1.12 'Space Grotesk',sans-serif;letter-spacing:-.06em;margin:0 0 12px}
.post-card p{color:#62615c;line-height:1.6;max-width:740px;margin:0}.post-card .arrow{font-size:2.2rem;color:#d25b31;transition:transform .3s}.post-card:hover .arrow{transform:translate(7px,-7px)}
.book-cta{background:#17181d;color:#fff;padding:70px 0}.book-cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}.book-cta h2{font:600 clamp(2rem,4vw,4rem)/1.05 'Space Grotesk',sans-serif;letter-spacing:-.06em;max-width:780px;margin:0}.button{display:inline-flex;gap:20px;align-items:center;padding:17px 24px;background:#ff6b35;color:#101014;border-radius:100px;font-weight:700;text-decoration:none;white-space:nowrap}.button:hover{background:#ff935f}
.footer{background:#101014;color:#aaa9aa;padding:42px 0}.footer .wrap{display:flex;justify-content:space-between;gap:25px}.footer strong{color:white}.footer a{color:#ff875b;text-decoration:none}
.article-hero{padding:75px 0 85px;max-width:1050px}.article-hero .eyebrow{color:#ff875b}.article-hero h1{font:600 clamp(3.5rem,7.5vw,7.7rem)/.99 'Space Grotesk',sans-serif;letter-spacing:-.075em;margin:25px 0}
.article-hero .deck{color:#d1d0cd;font-size:clamp(1.1rem,1.7vw,1.4rem);line-height:1.62;max-width:760px}.article-meta{display:flex;gap:20px;flex-wrap:wrap;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:#ff9b74;margin-top:35px;font-weight:700}
.article-layout{display:grid;grid-template-columns:200px minmax(0,760px);gap:65px;padding:90px 0 110px}.article-side{font-size:.82rem;text-transform:uppercase;letter-spacing:.14em;color:#9b4a2e;font-weight:700;padding-top:9px}.article-side a{display:block;text-decoration:none;margin-top:22px;color:#3f4146;text-transform:none;letter-spacing:0;font-size:.9rem}
.article-body{font-size:1.16rem;line-height:1.86;color:#3e3e3c}.article-body p{margin:0 0 28px}.article-body .lead{font-size:1.42rem;color:#15171c;line-height:1.6;font-weight:500}.article-body h2{font:600 clamp(1.9rem,3vw,2.8rem)/1.15 'Space Grotesk',sans-serif;letter-spacing:-.055em;color:#14161c;margin:57px 0 22px}.article-body strong{color:#15171c}
.article-body blockquote{border-left:4px solid #ff6b35;padding:6px 0 6px 25px;margin:40px 0;font:500 clamp(1.45rem,2.2vw,2.15rem)/1.4 'Space Grotesk',sans-serif;letter-spacing:-.04em;color:#20232b}
.article-body ul{padding-left:24px;margin:10px 0 30px}.article-body li{margin-bottom:12px}.article-end{border-top:1px solid #bbb8b1;margin-top:65px;padding-top:28px}.article-end p{font-size:1rem;color:#60605b}.next-read{padding:60px 0 90px;background:#e4e2dc}.next-read .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.next-read span{color:#b95632;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:700}.next-read a{font:600 clamp(1.6rem,3vw,2.7rem) 'Space Grotesk',sans-serif;letter-spacing:-.05em;text-decoration:none}.next-read a:hover{color:#c9532a}
@media(max-width:760px){.wrap{width:calc(100% - 38px)}.nav{flex-wrap:wrap}.nav-links{gap:18px}.intro{grid-template-columns:1fr;gap:35px;padding:75px 0}.intro h1{font-size:clamp(5rem,19vw,8rem)}.listing{padding:70px 0}.post-card{grid-template-columns:1fr auto;gap:10px;padding:32px 0}.post-card .number{grid-column:1/-1}.post-card .arrow{align-self:start}.book-cta .wrap,.footer .wrap,.next-read .wrap{align-items:start;flex-direction:column}.article-hero{padding:60px 0}.article-layout{display:block;padding:65px 0}.article-side{margin-bottom:45px}.article-body{font-size:1.08rem}}
.index-infographic{margin:0 0 85px}.index-infographic img{display:block;width:100%;height:auto;border-radius:18px;box-shadow:0 25px 55px #10101422}.index-infographic figcaption{font-size:.88rem;color:#686760;margin-top:14px}
.tech-figure{margin:42px 0 50px}.tech-figure img{display:block;width:100%;height:auto;border-radius:16px;box-shadow:0 20px 45px #17181d22}.tech-figure figcaption{font-size:.85rem;color:#686760;line-height:1.55;margin-top:13px}
.code-label{display:flex;justify-content:space-between;gap:15px;align-items:center;background:#272d39;color:#ffad84;padding:12px 22px;font:700 .77rem 'DM Sans',sans-serif;letter-spacing:.12em;text-transform:uppercase;border-radius:12px 12px 0 0;margin-top:34px}.code-label span+span{color:#aab2c0}
.article-body pre{background:#151922;color:#e7edf4;padding:26px;border-radius:0 0 12px 12px;margin:0 0 18px;overflow-x:auto;tab-size:4;font:400 .88rem/1.65 ui-monospace,SFMono-Regular,Consolas,monospace}
.article-body code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.9em}.article-body :not(pre)>code{background:#e5dfd6;color:#a13e22;border-radius:4px;padding:.1em .3em}
.code-note{font-size:.89rem!important;color:#66645f;margin-bottom:35px!important}
.tech-table{border-collapse:collapse;width:100%;margin:28px 0 38px;font-size:.93rem;line-height:1.5}.tech-table th{text-align:left;background:#202734;color:#fff;padding:14px 15px}.tech-table td{border-bottom:1px solid #c8c3ba;padding:15px;vertical-align:top}.tech-table td:first-child{font-weight:700;color:#2a2c31}.tech-table tr:nth-child(even){background:#eae6df}
.technical-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#8c8981;margin:46px 0}.technical-summary div{background:#e6e1d8;padding:22px}.technical-summary strong{display:block;font:600 1.1rem 'Space Grotesk',sans-serif;color:#1d222b}.technical-summary span{font-size:.83rem;line-height:1.5;display:block;margin-top:10px;color:#53565a}
@media(max-width:760px){.technical-summary{grid-template-columns:1fr}.tech-table{display:block;overflow-x:auto;white-space:normal}.tech-table th,.tech-table td{min-width:130px}.index-infographic{margin-bottom:60px}}
@media(max-width:760px){.index-infographic,.tech-figure{overflow-x:auto;scrollbar-color:#ff6b35 #d8d2c8}.index-infographic img{min-width:750px}.tech-figure img{min-width:720px}.index-infographic figcaption,.tech-figure figcaption{position:sticky;left:0;max-width:calc(100vw - 40px)}}
