*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:#172235;font:17px/1.75 system-ui,-apple-system,sans-serif}a{color:inherit;text-underline-offset:4px}a:focus-visible,summary:focus-visible{outline:3px solid #e8a624;outline-offset:4px}header,main,footer{max-width:1180px;margin:auto;padding-left:32px;padding-right:32px}header{display:flex;justify-content:space-between;align-items:center;padding-top:24px;padding-bottom:24px;border-bottom:2px solid #172235}.brand{font-size:24px;font-weight:800;letter-spacing:-1px;text-decoration:none}.brand span{color:#1d4ed8}nav{display:flex;gap:25px;font-size:14px;font-weight:650}nav a{text-decoration:none}.intro{padding:32px 0 25px;border-bottom:1px solid #dce2eb}.kicker,.meta{font-size:12px;text-transform:uppercase;letter-spacing:1.3px;font-weight:700;color:#1d4ed8}h1{font-family:Georgia,serif;font-size:42px;line-height:1.16;letter-spacing:-1px;margin:10px 0 14px}h2,h3{line-height:1.3}p{margin:12px 0}.intro p,.dek{color:#58657a}.layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:58px;padding:30px 0 60px}.section-label{font-size:14px;text-transform:uppercase;letter-spacing:1px;border-bottom:1px solid #172235;padding-bottom:12px;margin:0}.row{padding:27px 0;border-bottom:1px solid #dce2eb}.row h2{font-family:Georgia,serif;font-size:28px;font-weight:600;margin:9px 0}.row h2 a{text-decoration:none}.row h2 a:hover{color:#1d4ed8}.row p{font-size:16px;color:#58657a;max-width:680px}.meta{color:#657187;font-size:12px;margin-top:14px}.read{color:#1d4ed8;font-size:14px;font-weight:650}.sidebox{background:#f2f5fb;border-top:3px solid #1d4ed8;padding:22px;margin-bottom:28px}.sidebox h2{font-size:19px;margin:0 0 13px}.sidebox p,.sidebox a{font-size:14px}.sidebox ul{padding-left:20px}.sidebox li{margin:10px 0}.muted{color:#58657a}.badge{display:inline-block;border:1px solid #b4c4e0;border-radius:4px;padding:5px 10px;font-size:12px}.article-header{max-width:830px;padding:38px 0 24px}.article-header h1{font-size:46px}.crumb{font-size:14px;color:#58657a}.article-layout{display:grid;grid-template-columns:minmax(0,750px) 260px;gap:65px;padding-bottom:65px}.body h2{font-family:Georgia,serif;font-size:29px;margin:32px 0 12px}.body h3{font-size:22px;margin:30px 0 10px}.body p,.body li{color:#334156}.body li{padding:5px 0}.body a{color:#1d4ed8}.note{background:#eef3fc;padding:18px;border-left:3px solid #1d4ed8;border-radius:0!important}.body pre{font-size:14px;overflow:auto}.body table{border-collapse:collapse;width:100%;font-size:15px}.body th,.body td{border:1px solid #dce2eb;text-align:left;vertical-align:top;padding:12px}.body th{background:#f2f5fb}.table-wrap{overflow:auto}.related{border-top:2px solid #172235;margin-top:35px;padding-top:12px}.related a{display:block;margin:12px 0;font-size:16px}footer{border-top:1px solid #dce2eb;padding-top:25px;padding-bottom:30px;display:flex;justify-content:space-between;gap:25px;font-size:13px;color:#58657a}.policies{max-width:780px;padding:40px 0 60px}.policies h2{font-size:24px}section[id]{scroll-margin-top:20px}@media(max-width:800px){header,main,footer{padding-left:20px;padding-right:20px}header{align-items:flex-start;gap:15px;flex-wrap:wrap}.brand{font-size:22px}nav{gap:18px}.layout,.article-layout{grid-template-columns:1fr;gap:30px}.article-header h1{font-size:35px}h1{font-size:34px}.row h2{font-size:25px}.layout{padding-top:24px}.article-header{padding-top:25px}footer{display:block}.body table{min-width:500px}}
form label,.policies label{display:block;font-size:15px;font-weight:650;margin:16px 0}input,textarea,select{display:block;width:100%;font:inherit;padding:10px;border:1px solid #b5c3d6;border-radius:5px;margin-top:6px;background:white;color:#172235}button,.action-link{background:#1d4ed8;color:white;border:0;border-radius:5px;padding:11px 18px;font:600 14px system-ui;cursor:pointer;text-decoration:none;display:inline-block}button:disabled{opacity:.5;cursor:wait}.comment{border-bottom:1px solid #dce2eb;padding:22px 0}.comment p{white-space:pre-wrap;overflow-wrap:anywhere}.comment small{font-size:13px;color:#58657a}.status{display:inline-block;font-size:12px;padding:4px 8px;background:#edf3ff;border-radius:4px;margin-left:10px}.reject-button{background:#713342;margin-left:10px}nav{flex-wrap:wrap}#feedback,#admin-feedback{color:#1d4ed8}.comment strong{overflow-wrap:anywhere}
.review-heading{display:flex;justify-content:space-between;align-items:center;padding:26px 0 12px}.review-heading h2{font-size:23px}.review-heading span{font-size:14px}.creator-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.creator-card{border:1px solid #dce2eb;border-radius:8px;overflow:hidden}.video-slot{background:#13264d;color:white;min-height:220px;padding:25px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.video-label{color:#b9ccf2;text-transform:uppercase;font-size:12px;letter-spacing:1px}.video-slot h3{font-size:23px;line-height:1.3;margin:12px 0 20px}.video-slot button{background:white;color:#172235}.creator-copy{padding:24px}.creator-copy h2{font-family:Georgia,serif;font-size:25px;line-height:1.28;margin:12px 0}.creator-copy h2 a{text-decoration:none}.creator-copy p{font-size:15px;color:#58657a}.creator-copy .meta{font-size:12px;letter-spacing:.3px;margin-bottom:16px}.review-bottom{display:grid;grid-template-columns:1fr 300px;gap:48px;margin-top:45px}.curation-note{font-size:13px;color:#58657a;border-top:1px solid #dce2eb;padding:20px 0 35px}.video-slot.loaded{padding:0;background:#101828;min-height:0;aspect-ratio:16/9}.video-slot iframe{display:block;width:100%;height:100%;border:0}.detail-video{aspect-ratio:16/9}.body .video-slot h3{color:white}@media(max-width:950px){.creator-grid{grid-template-columns:1fr 1fr}.review-bottom{grid-template-columns:1fr}.review-heading{align-items:flex-start;gap:15px}}@media(max-width:620px){.creator-grid{grid-template-columns:1fr}.video-slot{min-height:190px}.review-heading{display:block}.review-heading h2{margin-bottom:5px}}
.software-links{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:28px 0 5px}.software-links a{border:1px solid #dce2eb;border-left:4px solid #1d4ed8;padding:20px;text-decoration:none}.software-links strong{display:block;font-size:23px}.software-links span{display:block;font-size:14px;color:#58657a}.discussion-section{border-top:2px solid #172235;margin-top:35px;padding-top:15px}.discussion-section h2{font-size:27px}#discussion{scroll-margin-top:20px}@media(max-width:620px){.software-links{grid-template-columns:1fr}}
.hub-sidebar{align-self:start;display:grid;gap:20px}.rail-card{border:1px solid #dce4f0;border-radius:12px;background:#fff;padding:23px;box-shadow:0 4px 18px #13264d06}.rail-label{font-size:12px;letter-spacing:1.2px;color:#1d4ed8;font-weight:750}.rail-card h2{font-size:20px;letter-spacing:-.4px;margin:10px 0 18px}.reading-path{padding:0;margin:0;list-style:none}.reading-path li+li{border-top:1px solid #e8edf5}.reading-path a{display:flex;align-items:center;gap:12px;text-decoration:none;padding:15px 0}.reading-path a>span{background:#edf3ff;border-radius:7px;padding:7px;color:#1d4ed8;font-size:13px;font-weight:750}.reading-path strong,.product-tile strong{font-size:14px;display:block}.reading-path small,.product-tile small{font-size:12px;color:#65738b;display:block;line-height:1.5;margin-top:3px}.rail-footer{display:block;border-top:1px solid #e8edf5;margin-top:12px;padding-top:14px;color:#1d4ed8;font-weight:650;font-size:14px;text-decoration:none}.product-tile{display:flex;align-items:center;gap:12px;padding:13px 10px;border-radius:8px;text-decoration:none;margin:8px 0;border:1px solid #e5ebf5}.product-tile.current{background:#edf3ff;border-color:#cbdafb}.product-initial{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;background:#1d4ed8;border-radius:8px;color:white;font-weight:750;font-size:14px}.feedback-card{background:#142b52;color:white;border:0}.feedback-card .rail-label{color:#b7d0ff}.feedback-card p{font-size:14px;color:#d2def3;line-height:1.65}.feedback-link{display:inline-block;color:#142b52;background:white;border-radius:6px;padding:10px 13px;font-size:14px;font-weight:650;text-decoration:none;margin-top:10px}.rail-card a:hover{ text-decoration:underline;text-underline-offset:4px}@media(max-width:800px){.hub-sidebar{grid-template-columns:1fr}.rail-card{padding:20px}}
/* Shared publication theme */
:root{--brand:#174ae6;--navy:#102449;--cyan:#62d6ed;--paper:#f0f4fb;--ink:#172235;--border:#d8e2f1}
body{background:var(--paper);color:var(--ink)}
header{max-width:1180px;margin:22px auto 0;background:var(--navy);border:1px solid #233d68;border-radius:14px;padding:21px 30px;box-shadow:0 10px 28px #11244715;color:white;gap:24px}
.brand{font-size:25px;letter-spacing:-1px;color:white}.brand span{color:var(--cyan)}
nav{gap:6px;align-items:center}nav a{padding:8px 12px;border-radius:7px;color:#d7e2f5;font-size:14px}nav a:hover,nav a[aria-current="page"]{background:#294779;color:white;text-decoration:none}
main{padding-top:25px}.intro{background:linear-gradient(115deg,#143976,#174ae6);border:0;border-radius:14px;padding:32px 36px;color:white;box-shadow:0 8px 25px #173c8315}.intro .kicker{color:#9ee8f5}.intro h1{font-family:system-ui,-apple-system,sans-serif;font-size:40px;font-weight:750;letter-spacing:-1.3px;max-width:850px}.intro p{color:#e0eaff;max-width:850px;font-size:17px}.intro .read{display:inline-block;background:white;color:#1743bd;padding:9px 15px;border-radius:6px;text-decoration:none}.intro .meta{font-size:12px;color:#d1e2ff;line-height:1.7}
.review-heading{padding:25px 0 15px}.review-heading h2{color:#102449}.software-links{margin-top:23px}.software-links a{background:white;border-radius:10px;border:1px solid var(--border);border-left:5px solid var(--brand);box-shadow:0 5px 15px #11244707;transition:box-shadow .2s,transform .2s}.software-links a:hover{box-shadow:0 7px 22px #11244715;transform:translateY(-2px)}.software-links a:nth-child(2){border-left-color:#087f98}.software-links strong{color:#123169}
.creator-card{border:1px solid var(--border);background:white;border-radius:12px;box-shadow:0 7px 22px #11244709}.video-slot{background:linear-gradient(145deg,#102449,#21519b)}.creator-card:nth-child(2) .video-slot{background:linear-gradient(145deg,#16345b,#216887)}.creator-card:nth-child(3) .video-slot{background:linear-gradient(145deg,#154052,#087f98)}.creator-copy{padding:24px}.creator-copy h2{font-size:25px}.video-slot button{box-shadow:0 4px 12px #07182a25}
.section-label{border-bottom:2px solid var(--brand);color:#102449;padding-bottom:13px}.row{border:1px solid var(--border);background:white;border-radius:11px;margin-top:17px;padding:24px 27px;box-shadow:0 5px 15px #11244706}.row h2{font-size:27px;letter-spacing:-.35px}.row .read{display:inline-block;padding-top:3px}.sidebox{background:white;border:1px solid var(--border);border-top:4px solid var(--brand);border-radius:10px;box-shadow:0 5px 18px #11244706;align-self:start}.sidebox h2{color:#133264}.review-bottom{margin-top:35px}.curation-note{color:#536581;border-color:#cbd8ea}
.article-header{max-width:none;background:white;border:1px solid var(--border);border-left:5px solid var(--brand);border-radius:12px;padding:28px 32px;margin-bottom:26px}.article-header h1{max-width:870px;font-size:42px;line-height:1.2}.article-header .dek{max-width:850px}.article-layout{gap:32px;grid-template-columns:minmax(0,1fr) 260px}.article-layout>.body{background:white;border:1px solid var(--border);border-radius:12px;padding:30px;box-shadow:0 5px 18px #11244706}.body h2{color:#153b78}.body .note{background:#eef4ff}.body .related{border-color:#174ae6}.body table{background:white}.body th{background:#e9f0ff;color:#163976}
.layout{gap:30px}.layout>div>section:not(.discussion-section){background:white;border:1px solid var(--border);border-radius:11px;padding:22px 25px;margin-bottom:20px}.layout>div>section h2{color:#133264;margin-top:0}.discussion-section{background:white;border:1px solid var(--border);border-top:4px solid var(--brand);border-radius:12px;padding:25px;margin-top:25px;box-shadow:0 5px 18px #11244706}.discussion-section h2{color:#133264;margin-top:0}.discussion-section>h3{font-size:19px}.comment{border-color:#e0e7f3}.comment strong{color:#153b78}.status{background:#e5edff;color:#1743bd}.discussion-section #comments:empty{padding:20px}
input,textarea,select{background:#f9fbff;border-color:#c5d3e8;border-radius:7px;font-size:16px}input:focus,textarea:focus,select:focus{outline:2px solid #174ae6;outline-offset:2px}button{background:var(--brand);border-radius:7px}button:hover{filter:brightness(.94)}.video-slot button{background:white;color:#153b78}.rail-card{border-color:var(--border);box-shadow:0 5px 18px #11244707}.feedback-card{background:linear-gradient(145deg,#132c56,#184693)}
.policies{background:white;border:1px solid var(--border);border-radius:12px;margin:0 auto 45px;padding:32px;max-width:850px;box-shadow:0 5px 18px #11244706}.policies h1{font-size:38px}.policies h2{color:#153b78}.policies a{color:#174ae6}footer{background:var(--navy);color:#d3def1;border:0;border-radius:12px;margin-bottom:22px;padding:24px 30px}footer a{color:#e0eaff}
@media(max-width:1220px){header,footer{margin-left:20px;margin-right:20px}}@media(max-width:800px){header{padding:20px;margin-top:14px}.brand{font-size:24px}nav{gap:2px}nav a{padding:7px 9px;font-size:14px}.intro{padding:26px}.intro h1{font-size:34px}.article-layout{grid-template-columns:1fr}.article-header{padding:24px}.article-header h1{font-size:33px}.article-layout>.body{padding:24px}.layout{gap:24px}.row{padding:22px}.discussion-section{padding:22px}.policies{padding:25px}.policies h1{font-size:32px}}@media(max-width:480px){main{padding-top:18px}.intro{padding:23px}.intro h1{font-size:30px}.intro p{font-size:16px}.article-header h1{font-size:30px}.row h2{font-size:24px}header{gap:14px}nav{width:100%}.software-links span{font-size:14px}.article-layout>.body{padding:21px}.creator-copy h2{font-size:24px}}@media(prefers-reduced-motion:reduce){.software-links a{transition:none}}

nav .nav-guides{position:relative;margin:0;padding:0;border:0}nav .nav-guides summary{padding:8px 12px;border-radius:7px;font-size:14px;font-weight:650;color:#d7e2f5;list-style:none;line-height:1.75}nav .nav-guides summary::-webkit-details-marker{display:none}nav .nav-guides summary::after{content:'+';margin-left:8px;color:#9ec5ff}nav .nav-guides[open] summary::after{content:'−'}nav .nav-guides summary:hover,nav .nav-guides[open] summary,nav .nav-guides summary.active{background:#294779;color:white}.nav-submenu{position:absolute;z-index:20;top:calc(100% + 12px);left:0;width:270px;background:white;border:1px solid #d8e2f1;border-radius:10px;padding:8px;box-shadow:0 15px 40px #0e244a30}.nav-submenu a{display:block;color:#132f5c;padding:12px;border-radius:6px;white-space:normal}.nav-submenu a:hover{background:#edf3ff;color:#174ae6}.nav-submenu strong{display:block;font-size:14px}.nav-submenu small{display:block;font-size:12px;color:#586c89;line-height:1.6}.nav-submenu a.all-guides{border-top:1px solid #e3eaf5;margin-top:4px;border-radius:0;font-size:14px;color:#174ae6}@media(max-width:480px){.nav-submenu{width:245px;left:-55px}nav .nav-guides summary{padding:7px 9px}}
.article-toc{display:block;background:#f0f5ff;border:1px solid #d5e2fb;border-radius:8px;padding:18px;margin:22px 0;color:#163976}.article-toc ol{margin:10px 0 0;padding-left:22px}.article-toc a{color:#174ae6;font-size:15px;padding:0}.latest-content{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.latest-content .row{margin:0;padding:22px}.latest-content h2{font-size:23px}.home-updates{margin-top:35px}.article-toc a:hover{background:transparent;color:#174ae6}@media(max-width:800px){.latest-content{grid-template-columns:1fr}}
.body table{width:100%;border-collapse:collapse;margin:24px 0;font-size:15px}.body th,.body td{padding:14px;text-align:left;border:1px solid #d9e3ef;vertical-align:top}.body th{background:#eef4ff}.body pre{background:#10223d;color:#e8f1ff;padding:22px;border-radius:12px;overflow:auto;white-space:pre-wrap}.body code{overflow-wrap:anywhere}.body li{margin-bottom:10px}@media(max-width:650px){.body table{display:block;overflow:auto}.body th,.body td{min-width:140px}}

.home-reviews{margin:38px 0 46px}.home-reviews .review-heading{align-items:center;gap:20px}.home-reviews .review-heading h2{margin:8px 0}.home-review-intro{color:#52647c;max-width:740px;line-height:1.7;margin:0 0 24px}.home-reviews .creator-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.home-reviews .creator-card{min-width:0}.home-reviews .creator-copy h2{font-size:22px;line-height:1.3}.home-reviews .video-slot{min-height:190px}.home-reviews .curation-note{margin-top:18px}@media(max-width:1000px){.home-reviews .creator-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.home-reviews .creator-grid{grid-template-columns:1fr}.home-reviews .review-heading{align-items:flex-start;flex-direction:column}}

.review-hero{margin:0 0 30px}.review-hero img{display:block;width:100%;height:auto;aspect-ratio:1672/941;object-fit:cover;border-radius:16px}.review-hero figcaption{font-size:12px;color:#607089;margin:10px 0 0;line-height:1.5}.review-opening p{font-size:17px;line-height:1.85;margin:0 0 20px}.review-opening .review-lead{font-size:21px;line-height:1.65;font-weight:600;color:#132a48}.review-takeaway{padding:20px 24px;background:#eef5ff;border-left:4px solid #2563eb;border-radius:0 12px 12px 0;margin:26px 0 32px}.review-takeaway strong{color:#173e79}.review-takeaway p{margin:8px 0 0}@media(max-width:650px){.review-opening .review-lead{font-size:19px}.review-opening p{font-size:16px}.review-takeaway{padding:18px}}

/* Softer paper surfaces and comfortable long-form reading. */
:root{--paper:#f3f0e8;--border:#d8d5cd;--surface:#f5f2eb;--surface-alt:#e9e7df}
body{background:#e5e3dd;color:#202c3c}
.intro{background:linear-gradient(135deg,#e6e9e8,#efebe2);border-color:#d0d6d5}
.article-header,.article-layout>.body,.creator-card,.row,.software-links a,.sidebox,.rail-card,.policies,.discussion-section,.layout>div>section:not(.discussion-section),.nav-submenu{background:var(--surface);border-color:var(--border)}
.body p,.body li{font-family:Georgia,'Times New Roman',serif;font-size:18px;line-height:1.85;color:#303b49}
.body p{margin:0 0 20px;max-width:68ch}.body li{padding:2px 0;margin-bottom:10px}.body h2{margin-top:38px}.body h3{margin-top:30px}
.article-opening{margin-bottom:30px}.article-opening .opening-lead,.review-opening .review-lead{font-size:21px;line-height:1.65;color:#243449;font-weight:500}.review-opening p{font-size:18px;line-height:1.85}
.editorial-revision{font-size:12px;color:#67717a;margin:14px 0 0;letter-spacing:.2px}
.body .note,.article-toc,.review-takeaway{background:#e5eae8;border-color:#708998}.body .note p:last-child,.review-takeaway p:last-child{margin-bottom:0}.body table{background:#f1eee6}.body th{background:#e2e7e5}.body th,.body td{border-color:#cfd5d1}.body .related{border-color:#718899}
input,textarea,select{background:#efede7;border-color:#bbbfb9}.status{background:#dfe6e6;color:#284f6a}.nav-submenu a:hover{background:#e1e7e6}.reading-path li+li,.comment{border-color:#d4d9d4}.badge{border-color:#aebdbd}.curation-note{border-color:#c8cfca}.software-links a:hover{background:#edece5}
.feedback-card{background:linear-gradient(145deg,#132c56,#184693)}.video-slot button{background:#f1eee6}.body .video-slot h3{color:#fff}
@media(max-width:650px){.body p,.body li,.review-opening p{font-size:17px;line-height:1.8}.article-opening .opening-lead,.review-opening .review-lead{font-size:19px}}
/* Editorial publication layout */
header{border-radius:0;margin:0 auto;max-width:none;padding:23px max(24px,calc((100vw - 1180px)/2 + 32px));box-shadow:none;background:#123b47;border-color:#123b47}.brand{white-space:nowrap;font-size:25px}.brand span{color:#d9ba69}.brand small{display:block;font:500 12px/1.5 system-ui;letter-spacing:.25px;color:#d7e0df;margin-top:4px}nav .nav-guides summary,nav a{color:#ecf0ed}.intro{color:#233740}.intro .kicker{color:#36616a}.intro p,.intro .meta{color:#405860}.publication-intro{padding:25px 0 32px;border-bottom:1px solid #bbc5bf;margin-bottom:30px}.publication-intro h1{font-size:51px;line-height:1.12;max-width:850px;margin:15px 0 18px;color:#153943}.publication-intro p{max-width:740px;color:#526265;font-size:18px}.kicker{color:#356773;font-size:12px}.blog-shell{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:34px;margin-bottom:50px}.featured-story{display:grid;grid-template-columns:1.1fr 1fr;background:#f5f2eb;border:1px solid #d4d5cb;overflow:hidden;align-items:center}.featured-story>div{padding:26px}.featured-story h2{font:600 30px/1.2 Georgia,serif;margin:15px 0}.featured-story h2 a{text-decoration:none}.featured-story p{font-size:16px;color:#526265}.featured-story img{width:100%;height:100%;min-height:270px;object-fit:cover}.topic-strip{display:flex;flex-wrap:wrap;gap:10px;padding:20px 0;border-bottom:1px solid #c8cdc6}.topic-strip a{font-size:14px;text-decoration:none;border:1px solid #acb9b5;padding:7px 12px;background:#eeece5}.blog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.blog-card{padding:22px 0;border-top:3px solid #315d65;border-bottom:1px solid #c2cbc4;min-width:0}.blog-card h2{font:600 25px/1.3 Georgia,serif;margin:12px 0}.blog-card h2 a{text-decoration:none}.blog-card h2 a:hover{color:#28616c}.blog-card p{font-size:15px;color:#526265}.read,.body a,.policies a{color:#245f6b}.blog-rail{display:grid;gap:20px;align-content:start}.blog-rail .rail-card,.article-layout aside .rail-card{border-radius:0;box-shadow:none;border-top:3px solid #a88a4a;padding:21px}.rail-card>a{display:block;border-top:1px solid #d4d7ce;padding:11px 0;font-size:14px;color:#245866;line-height:1.5}.rail-card p{font-size:14px;color:#526265}.rail-card h2{font:600 22px/1.3 Georgia,serif;color:#153943}.editorial-banner{background:#dbe2dc;border-left:4px solid #3d6769;padding:24px;margin-top:32px}.editorial-banner h2{font:600 27px/1.3 Georgia,serif}.editorial-banner p{font-size:16px}.library-controls{display:grid;grid-template-columns:1.5fr 1fr;gap:20px;background:#f2f0e9;padding:20px;border:1px solid #c8cdc6}.library-controls label{font-size:14px;font-weight:650}#result-count{font-size:14px;color:#526265}.tool-panel{background:#f5f2eb;padding:28px;border:1px solid #c8cdc6;margin-bottom:25px}.tool-panel label{display:block;font-size:15px;margin:18px 0}.tool-panel output{display:block;background:#dbe6df;padding:16px;font-weight:700;color:#153943}.tool-panel h2{font-family:Georgia,serif}.article-disclosure{font:14px/1.7 system-ui!important;border-bottom:1px solid #c5cec6;padding-bottom:17px;margin-bottom:25px!important;color:#526265!important}.article-layout>.body,.article-header,.policies,.row,.creator-card,.sidebox{border-radius:3px;box-shadow:none}.article-header{border-left-color:#315d65}.article-header h1{color:#153943}.body h2,.policies h2{color:#234e57}footer{max-width:1180px;display:block;border-radius:0;background:#123b47;margin-top:35px;padding:35px 32px;color:#e1e9e5}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px}.footer-grid h2{font-size:17px;margin:0 0 14px;color:#f3eee2}.footer-grid a{display:block;margin:8px 0;font-size:14px}.footer-grid p{font-size:14px;line-height:1.65;color:#cad9d4}.footer-bottom{border-top:1px solid #517079;padding-top:18px;margin-top:25px;font-size:13px}[hidden]{display:none!important}
@media(max-width:950px){.blog-shell{grid-template-columns:minmax(0,1fr) 235px;gap:22px}.featured-story{grid-template-columns:1fr}.featured-story img{height:210px;min-height:0}.footer-grid{grid-template-columns:1fr 1fr}.publication-intro h1{font-size:43px}}@media(max-width:760px){header{padding:20px;align-items:flex-start}.blog-shell{grid-template-columns:1fr}.blog-rail{grid-template-columns:1fr 1fr}.publication-intro h1{font-size:37px}.blog-card h2{font-size:23px}.library-controls{grid-template-columns:1fr}.footer-grid{gap:22px}}@media(max-width:500px){.blog-grid,.blog-rail,.footer-grid{grid-template-columns:1fr}.publication-intro h1{font-size:34px}.publication-intro p{font-size:17px}.featured-story>div{padding:22px}.featured-story h2{font-size:28px}.blog-card{padding:19px 0}.tool-panel{padding:22px}.brand{font-size:23px}nav{gap:1px}.footer-grid{gap:24px}}
.quick-answer{background:#dfe7df;border-left:4px solid #38656b;padding:21px 24px;margin-bottom:20px}.quick-answer h2{font:600 23px/1.35 Georgia,serif;margin:8px 0 12px}.quick-answer p{font:17px/1.75 system-ui;margin:0!important}.reading-time{font:600 13px/1.6 system-ui;color:#526265;margin:14px 0 6px}.reading-contents{background:#ebece4;border:1px solid #c5cec3;padding:15px 20px;margin-bottom:24px}.reading-contents summary{cursor:pointer;font-size:15px;font-weight:650}.reading-contents ol{padding-left:22px;margin:15px 0 0}.reading-contents li{font:15px/1.6 system-ui;margin:7px 0}.explanation-figure{margin:30px 0}.explanation-figure img{display:block;width:100%;height:auto}.explanation-figure figcaption{font:14px/1.6 system-ui;color:#526265;margin-top:10px}.watch-section{padding-top:20px;border-top:1px solid #c5cec3;margin-top:30px}.watch-section .video-slot{margin:20px 0}.body h2[id]{scroll-margin-top:25px}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #a88a4a;outline-offset:3px}@media(max-width:500px){.quick-answer{padding:18px}.quick-answer p{font-size:16px}}
.card-image{display:block;margin:0 0 18px;overflow:hidden;background:#d4ddd5}.card-image img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;transition:transform .25s}.card-image:hover img{transform:scale(1.025)}.article-cover{margin:0 0 26px}.article-cover img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:3px}.row>.card-image{max-width:400px}.creator-card>.card-image{margin:0}.blog-card{border-top:0}.article-cover+.quick-answer{margin-top:24px}@media(prefers-reduced-motion:reduce){.card-image img{transition:none}}
.diagram-cover img{object-fit:contain;aspect-ratio:auto;background:#e4e9e2}.card-image img[src$=".svg"]{object-fit:contain;background:#e4e9e2}

.brand-mark{float:left;width:48px;height:48px;object-fit:contain;margin-right:12px;border-radius:9px}.brand small{white-space:normal}@media(max-width:500px){.brand-mark{width:42px;height:42px;margin-right:10px}}

.brand-name{color:inherit!important}.software-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:40px}.software-card{background:#f5f2eb;border:1px solid #c8cdc6;border-top:3px solid #315d65;padding:25px}.software-card h2{font:600 29px Georgia,serif}.software-card p{font-size:16px}.software-card small{display:block;margin-top:18px;font-size:14px;color:#526265}.software-actions{display:flex;flex-wrap:wrap;gap:12px}.software-actions a{padding:10px 14px;border:1px solid #315d65;text-decoration:none;color:#245866;font-size:15px}.software-actions a:last-child{background:#123b47;color:white}.directory-disclosure{font-size:14px;line-height:1.7}.library-controls input,.library-controls select{display:block;width:100%;box-sizing:border-box;padding:12px;margin-top:8px;font:inherit}@media(max-width:650px){.software-grid{grid-template-columns:1fr}}

/* Keep the pointer path to the dropdown continuous. */
.nav-submenu::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}

/* Match dropdown panels to the main navigation. */
nav .nav-submenu{background:#123b47;border-color:#315d65;box-shadow:0 15px 35px #123b4730}nav .nav-submenu a{color:#ecf0ed}nav .nav-submenu a:hover,nav .nav-submenu a:focus-visible{background:#285460;color:#fff}nav .nav-submenu small{color:#d7e0df}
