
:root{--navy:#002060;--blue:#0070c0;--cyan:#00b0f0;--line:#d8e1eb;--body:#20354b;--muted:#52667c}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:#fff;color:var(--body);font:17px/1.6 "Instrument Sans",sans-serif;-webkit-font-smoothing:antialiased}a{color:var(--navy);text-underline-offset:5px}a:hover{color:var(--blue)}a:focus-visible{outline:2px solid var(--blue);outline-offset:6px}p,h1,h2,h3{margin:0}h1,h2,h3{color:var(--navy);font-weight:600}h1{font-size:clamp(64px,8.6vw,112px);line-height:1;letter-spacing:-.065em}h2{font-size:clamp(32px,3.6vw,49px);line-height:1.1;letter-spacing:-.045em}h3{font-size:22px;line-height:1.2;letter-spacing:-.025em}.shell{width:min(1200px,calc(100% - 48px));margin-inline:auto}.skip{position:fixed;top:-100px;left:20px;background:white;padding:12px;z-index:20}.skip:focus{top:12px}.header{display:flex;align-items:center;justify-content:space-between;gap:24px;height:84px;border-bottom:1px solid var(--line)}.header>a{text-decoration:none;font-size:14px}.brand{display:flex;align-items:center;gap:22px;font-size:34px!important;letter-spacing:-.05em;font-weight:650}.brand span{font-size:13px;font-weight:400;letter-spacing:0;padding-left:22px;border-left:1px solid var(--line)}.intro{padding:clamp(64px,7vw,96px) 0 48px}.eyebrow{color:var(--blue);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin-bottom:24px}.lead{font-size:clamp(30px,4.3vw,56px);color:var(--blue);line-height:1.12;letter-spacing:-.045em;margin-top:28px}.intro-bottom{display:grid;gap:24px;margin-top:40px}.intro-bottom p{max-width:62ch;font-size:19px}.text-link{font-size:15px;font-weight:600;display:inline-flex;align-items:center;gap:18px;text-decoration:none;min-height:44px}.text-link:hover{text-decoration:underline}.chapters{position:sticky;top:0;z-index:10;background:#fff;display:flex;gap:24px;justify-content:space-between;border-block:1px solid var(--navy);padding-block:17px;font-size:14px}.chapters a{text-decoration:none;display:flex;align-items:center;gap:12px;min-height:28px}.chapter{padding:clamp(64px,7vw,96px) 0;border-bottom:1px solid var(--cyan);display:grid;gap:36px}.chapter-head .eyebrow{margin-bottom:20px}.chapter-body{display:grid;gap:24px;align-content:start}.chapter-body>p{max-width:60ch}.large{font-size:clamp(22px,2.2vw,27px);line-height:1.35;letter-spacing:-.022em;color:var(--navy)}.full-width{grid-column:1/-1}.plugin-argument{display:grid;gap:22px}.plugin-argument p{max-width:60ch}.plugin-argument>h3{font-size:clamp(28px,3vw,40px);line-height:1.12}.plugin-argument .benefits>div:first-child{padding-top:0;border-top:0}.plugin-argument{border-top:1px solid var(--line);padding-top:40px}.source-link{margin-top:24px}.benefits{display:grid;gap:26px}.benefits>div{border-top:1px solid var(--line);padding-top:24px;display:grid;gap:12px}.benefits a{font-size:14px;text-decoration:none;min-height:32px}.parallel{display:grid;gap:24px;border-block:1px solid var(--line);padding:32px 0}.parallel .eyebrow{margin-bottom:10px}.parallel h3{font-size:32px}.parallel .text-link{margin-top:12px}.professional-note{display:grid;gap:16px}.professional-note p{max-width:66ch}.professional-note a{font-size:14px}.try{padding:80px 0 88px}.try-layout{display:grid;gap:32px}.try-layout p{max-width:48ch}.primary{display:flex;justify-content:space-between;gap:32px;width:fit-content;align-items:center;min-height:50px;margin-top:28px;padding:12px 22px;background:var(--navy);color:white;text-decoration:none;font-size:16px;font-weight:600}.primary:hover{background:var(--blue);color:white}.try .text-link{margin-top:14px}.footer{border-top:1px solid var(--line);padding-block:28px 44px;display:flex;justify-content:space-between;gap:28px;font-size:13px}.footer>div{display:flex;gap:24px;flex-wrap:wrap}.footer a{text-decoration:none}
@media(min-width:800px){.shell{width:min(1200px,calc(100% - 96px))}.intro-bottom{grid-template-columns:1fr auto;align-items:end;gap:80px}.chapter{grid-template-columns:.94fr 1.06fr;column-gap:80px;row-gap:56px}.plugin-argument{grid-template-columns:.94fr 1.06fr;gap:80px}.parallel{grid-template-columns:.94fr 1.06fr;gap:80px}.professional-note{grid-template-columns:1fr auto;gap:80px;align-items:center}.try-layout{grid-template-columns:.94fr 1.06fr;gap:80px}}
@media(max-width:540px){.brand span{display:none}.header{height:70px}.chapters{gap:10px;font-size:12px}.chapters a{gap:6px}.intro-bottom p{font-size:18px}.footer{flex-direction:column}.primary{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
