:root {
  --ink: #142832;
  --muted: #61727b;
  --deep: #0d2433;
  --deep2: #153b46;
  --lime: #b7f0a0;
  --paper: #f6f8f5;
  --white: #fff;
  --line: #dce5e2;
  --container: 1160px;
  --serif: Georgia, "Times New Roman", serif;
  --sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; font: 16px/1.65 var(--sans); color: var(--ink); background: var(--paper); -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
img, svg { max-width: 100%; }
:focus-visible { outline: 3px solid #5db481; outline-offset: 4px; }
::selection { color: #091e29; background: #b7f0a0; }
.container { width: min(calc(100% - 64px), var(--container)); margin: 0 auto; }
.skip-link { position: absolute; transform: translateY(-200%); background: white; color: black; top: 10px; left: 10px; z-index: 1000; padding: 10px 16px; }
.skip-link:focus { transform: translateY(0); }
.site-header { position: relative; z-index: 20; background: var(--deep); color: white; border-bottom: 1px solid rgba(255,255,255,.11); }
.header-inner { display: flex; align-items: center; min-height: 88px; gap: 36px; }
.brand { display: inline-flex; gap: 11px; align-items: center; font-weight: 800; font-size: 25px; letter-spacing: -.075em; white-space: nowrap; line-height: 1; }
.brand-icon { color: #fff; display: flex; align-items: center; justify-content: center; }
.brand-icon.small { width: 32px; height: 32px; background: #264d53; font-size: 21px; font-weight: 800; letter-spacing: -.08em; border-radius: 8px; }
.brand-light { font-weight: 500; }
.brand-dot { color: var(--lime); }
.main-nav { display: flex; margin-left: auto; gap: 38px; align-items: center; }
.nav-link { font-size: 14px; font-weight: 600; color: #b4c8cb; transition: color .2s ease; }
.nav-link:hover, .nav-link.current { color: white; }
.nav-link.current { position: relative; }
.nav-link.current:after { content: ""; position: absolute; bottom: -29px; height: 2px; left: 0; right: 0; background: var(--lime); }
.header-cta { display: inline-flex; align-items: center; justify-content: space-between; gap: 28px; min-width: 154px; padding: 12px 15px; color: var(--lime); border: 1px solid #55746a; border-radius: 5px; font-size: 13px; font-weight: 750; transition: border-color .2s,background .2s; }
.header-cta:hover { background: #1a3f41; border-color: var(--lime); }
.header-cta span { font-size: 19px; font-weight: 400; line-height: 1; }
.menu-toggle { display: none; background: transparent; border: none; padding: 8px; cursor: pointer; }
.menu-toggle span { display: block; width: 24px; height: 2px; background: white; margin: 5px; border-radius: 3px; }
.eyebrow { display: inline-flex; align-items: center; gap: 11px; font-size: 11px; font-weight: 800; letter-spacing: .16em; line-height: 1.5; }
.eyebrow.light { color: #acd4cc; }
.eyebrow.dark { color: #4e7578; }
.signal-dot { width: 8px; height: 8px; display: inline-block; flex: 0 0 auto; border-radius: 50%; background: var(--lime); box-shadow: 0 0 0 4px rgba(183,240,160,.12); }
h1,h2,h3,p { margin-top: 0; }
.hero { color: #fff; position: relative; isolation: isolate; overflow: hidden; background: radial-gradient(ellipse 1000px 640px at 86% 22%,#214f55 0,transparent 55%),linear-gradient(120deg,#102b3b,#0b2130 75%); }
.hero:before { position: absolute; z-index: -1; content: ""; inset: 0; opacity: .19; background-image: linear-gradient(to right,rgba(227,255,239,.13) 1px,transparent 1px), linear-gradient(to bottom,rgba(227,255,239,.13) 1px,transparent 1px); background-size: 68px 68px; mask-image: linear-gradient(to left, black,transparent); }
.hero-orbit { position: absolute; border: 1px solid rgba(183,240,160,.075); border-radius: 50%; pointer-events: none; z-index: -1; }
.hero-orbit-one { width: 830px; height: 830px; top: -420px; right: -265px; }
.hero-orbit-two { width: 1100px; height: 1100px; top: -540px; right: -395px; }
.hero-grid { min-height: 628px; display: grid; grid-template-columns: 1fr 480px; gap: 66px; align-items: center; padding-top: 63px; padding-bottom: 83px; }
.hero-copy { max-width: 660px; position: relative; }
.hero-copy .eyebrow { margin-bottom: 25px; }
.hero h1 { font-weight: 730; line-height: 1.075; letter-spacing: -.065em; font-size: clamp(50px,5.5vw,76px); margin-bottom: 29px; }
.hero h1 em { color: var(--lime); font-family: var(--serif); font-weight: 400; letter-spacing: -.05em; }
.hero-lead { max-width: 490px; color: #c1d7d6; font-size: 17px; line-height: 1.8; margin-bottom: 33px; }
.hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 30px; }
.button { display: inline-flex; align-items: center; justify-content: space-between; gap: 28px; padding: 15px 22px; border-radius: 5px; min-height: 54px; font-weight: 750; font-size: 14px; border: 1px solid transparent; transition: transform .2s,background .2s,box-shadow .2s; }
.button:hover { transform: translateY(-2px); }
.button span { font-size: 18px; font-weight: 400; }
.button-primary { color: #0a2a2f; background: var(--lime); box-shadow: 0 7px 30px rgba(183,240,160,.08); }
.button-primary:hover { background: #ccffc0; box-shadow: 0 10px 30px rgba(183,240,160,.16); }
.button-dark { color: white; background: var(--deep); }
.button-dark:hover { background: #204450; }
.text-action { font-weight: 650; font-size: 14px; color: white; display: inline-flex; align-items: center; gap: 14px; }
.text-action span { color: var(--lime); font-size: 18px; }
.text-action:hover { color: var(--lime); }
.hero-topics { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 60px; }
.hero-topics span { border: 1px solid #3a5760; color: #8db2b4; padding: 5px 12px; border-radius: 100px; font-size: 11px; font-weight: 750; letter-spacing: .03em; }
.hero-illustration { position: relative; transform: rotate(1.4deg); border: 1px solid #42636a; box-shadow: 14px 26px 0 rgba(5,21,30,.21),0 20px 90px rgba(0,0,0,.14); background: #10313f; border-radius: 14px; padding: 23px; }
.diag-top { display:flex; justify-content:space-between; gap:10px; align-items:center; color:#c5ded8; font-size:10px; font-weight:750; letter-spacing:.10em; }
.diag-top>span:first-child { display:flex; align-items:center; gap:10px; }
.diag-top>span:last-child { color:#87afb0; }
.diag-terminal { display:flex; align-items:center; gap:5px; background:#0b2634; padding:10px 16px; margin:24px -5px 21px; border:1px solid #32515c; border-radius:5px; }
.terminal-circle { display:inline-block; width:6px; height:6px; border-radius:50%; background:#46656a; }
.terminal-circle:nth-child(1) { background:#e9a9a0; }
.terminal-circle:nth-child(2) { background:#eddb94; }
.terminal-circle:nth-child(3) { background:#b7f0a0; }
.terminal-file { margin-left:auto; color:#87a5ad; font: 11px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace; }
.diagram-grid { padding: 5px 1px 12px 15px; }
.diagram-step { display:grid; grid-template-columns:51px 1fr 22px; align-items:center; gap:18px; }
.diagram-icon { width: 51px; height:51px; display:flex; align-items:center; justify-content:center; border:1px solid #62847b; background:#254b4c; color:var(--lime); font-size:25px; border-radius:10px; }
.diagram-step strong { display:block; font-size:19px; line-height:1.2; color:white; letter-spacing:.01em; margin:3px 0; }
.diagram-small { color:#82a7a9; font-size:9px; font-weight:750; letter-spacing:.14em; }
.diagram-step p { font-size:12px; color:#a9cbcb; margin:0; }
.diagram-done { width:20px; height:20px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:#345e55; color:var(--lime); font-size:12px; }
.diagram-link { height:30px; margin-left:24px; border-left:1px dashed #64878b; }
.diag-footer { display:flex; align-items:center; gap:11px; margin-top:11px; border-top:1px solid #345760; padding:18px 4px 0; font-size:11px; letter-spacing:.03em; color:#a9c3c5; }
.green-line { width:17px; height:2px; background:var(--lime); }
.hero-bottom { display:flex; justify-content:space-between; color:#92b2b9; gap:20px; padding:0 0 22px; font-size:10px; font-weight:750; letter-spacing:.13em; }
.scroll-note { color:#b7f0a0; }
.number-strip { background:#eef2ed; border-bottom:1px solid var(--line); }
.strip-inner { min-height:130px; display:grid; grid-template-columns:1fr 1fr 1fr 1fr; align-items:center; gap:22px; }
.strip-inner>div { display:flex; align-items:center; gap:17px; padding-right:10px; border-right:1px solid #d4deda; }
.strip-inner strong { font-size:43px; letter-spacing:-.075em; line-height:1; font-weight:740; color:#173c40; }
.strip-inner span { font-size:12px; max-width:120px; color:#64777b; line-height:1.4; }
.strip-inner p { font-family:var(--serif); color:#38565a; font-size:22px; line-height:1.28; margin:0 0 0 16px; font-style:italic; }
.section { padding:104px 0 110px; }
.section-top { display:flex; align-items:flex-end; justify-content:space-between; gap:30px; margin-bottom:34px; }
.section-top .eyebrow { margin-bottom:14px; }
h2 { font-size:clamp(34px,4vw,53px); line-height:1.14; letter-spacing:-.055em; font-weight:730; margin:0; }
h2 em { font-family:var(--serif); font-weight:400; color:#528576; }
.section-link { display:inline-flex; align-items:center; gap:18px; margin-bottom:9px; white-space:nowrap; font-weight:750; font-size:14px; color:#225152; }
.section-link span { font-size:20px; }
.section-link:hover { text-decoration:underline; text-underline-offset:5px; }
.cards-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.article-card { border:1px solid rgba(30,56,53,.07); background:#e4f1e7; color:#132c34; display:flex; flex-direction:column; min-height:360px; padding:29px 31px 31px; overflow:hidden; position:relative; transition:transform .25s,box-shadow .25s,border-color .25s; border-radius:8px; }
.article-card:hover { transform:translateY(-5px); box-shadow:0 20px 30px rgba(21,56,55,.11); border-color:rgba(30,56,53,.2); }
.card-mint { background:#e4efe5; }
.card-lilac { background:#eceaf2; }
.card-peach { background:#f4e9e0; }
.card-sky { background:#e3edf0; }
.card-top { display:flex; align-items:center; justify-content:space-between; position:relative; z-index:1; }
.card-num { color:#61767a; font:700 11px/1.3 ui-monospace,Consolas,monospace; }
.card-arrow { display:grid; place-items:center; width:35px; height:35px; border:1px solid #a2b1ae; border-radius:50%; font-size:20px; transition:transform .25s,background .25s; }
.article-card:hover .card-arrow { transform:rotate(45deg); background:rgba(255,255,255,.7); }
.card-symbol { position:absolute; top:57px; right:44px; font-family:var(--serif); font-size:113px; line-height:1; color:rgba(62,104,92,.12); transform:rotate(-7deg); user-select:none; }
.card-copy { margin-top:auto; position:relative; z-index:1; }
.micro-label { font-weight:800; letter-spacing:.12em; font-size:10px; color:#65817c; }
.article-card h3 { font-size:clamp(24px,2.4vw,31px); letter-spacing:-.045em; line-height:1.15; max-width:390px; margin:13px 0 12px; font-weight:720; }
.article-card p { margin:0 0 24px; color:#566e72; font-size:14px; line-height:1.65; max-width:400px; }
.read-time { display:flex; align-items:center; gap:8px; font-size:11px; color:#647a79; font-weight:650; }
.time-dot { width:5px; height:5px; background:#779c7c; border-radius:50%; }
.section-band { background:#17383f; color:#fff; padding:88px 0; }
.why-grid { display:grid; grid-template-columns:1fr 1fr; gap:100px; }
.why-grid h2 { margin-top:18px; }
.why-grid h2 em { color:var(--lime); }
.why-points>div { display:flex; gap:20px; border-bottom:1px solid #36585d; padding:0 0 18px; margin-bottom:18px; }
.why-points>div:last-child { border-bottom:0; margin-bottom:0; padding-bottom:0; }
.why-points span { font:700 11px/1.9 ui-monospace,Consolas,monospace; color:var(--lime); }
.why-points p { margin:0; color:#bed0ce; font-size:14px; line-height:1.75; }
.why-points strong { color:white; }
.bottom-cta { padding:82px 0 94px; background:#eef3ec; }
.cta-grid { display:flex; justify-content:space-between; align-items:center; gap:30px; }
.cta-grid h2 { margin-top:14px; font-size:43px; }
.cta-grid .button { min-width:177px; }
.site-footer { background:#0c2532; color:#c6d9da; padding-top:67px; }
.footer-grid { display:grid; grid-template-columns:2.3fr 1fr 1fr; gap:90px; padding-bottom:68px; }
.footer-brand { font-size:25px; color:#fff; }
.footer-main p { max-width:345px; margin:25px 0 0; font-size:14px; color:#9db9be; line-height:1.8; }
.footer-links { display:flex; flex-direction:column; gap:11px; font-size:13px; }
.footer-label { color:#799ea2; font-size:10px; letter-spacing:.15em; font-weight:750; margin-bottom:10px; }
.footer-links a:hover { color:var(--lime); }
.footer-bottom { display:flex; justify-content:space-between; align-items:center; padding:22px 0; border-top:1px solid #254651; color:#88aaae; font-size:11px; letter-spacing:.02em; }
.page-intro { background:#eff4ee; border-bottom:1px solid #dbe4db; }
.page-intro.compact { padding:82px 0 85px; }
.page-intro h1 { font-size:clamp(44px,6vw,73px); line-height:1.11; letter-spacing:-.065em; max-width:900px; margin:18px 0 22px; }
.page-intro h1 em { font:italic 400 1em/1.1 var(--serif); letter-spacing:-.05em; color:#557e70; }
.page-intro p { color:#5c7575; font-size:18px; line-height:1.75; max-width:620px; margin-bottom:0; }
.library-section { padding-top:56px; }
.library-head { display:flex; justify-content:space-between; font-size:10px; font-weight:800; letter-spacing:.16em; margin-bottom:25px; color:#5a7a76; }
.library-note { max-width:680px; color:#63767a; font-size:14px; margin:34px 0 0; }
.about-main { padding-top:84px; }
.about-layout { display:grid; grid-template-columns:300px 1fr; gap:105px; }
.about-side { border-top:1px solid #a9bfbb; padding-top:24px; }
.about-glyph { display:block; color:#1a4246; font:italic 160px/1 var(--serif); letter-spacing:-.13em; }
.about-glyph span { color:#8fcaa7; }
.about-side p { color:#648079; margin-top:22px; font-size:14px; max-width:210px; }
.prose { font-size:17px; color:#465e64; line-height:1.89; }
.prose h2 { font-size:31px; letter-spacing:-.045em; color:#18333a; font-weight:750; margin:0 0 18px; line-height:1.28; }
.prose p { margin:0 0 24px; }
.prose a { color:#2d7570; text-decoration:underline; text-underline-offset:4px; }
.prose strong { color:#1e3c43; }
.prose h2:not(:first-child) { margin-top:45px; }
.prose ul,.prose ol { padding-left:25px; margin:12px 0 26px; }
.prose li { padding-left:6px; margin:8px 0; }
.prose li::marker { color:#5c8c79; }
.prose code { font: .87em/1.3 ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace; color:#31576a; background:#e7eeeb; padding:2px 5px; border-radius:3px; overflow-wrap:anywhere; }
.prose pre { padding:22px 24px; background:#102b39; color:#d4eeea; border-radius:9px; margin:18px 0 29px; overflow-x:auto; line-height:1.6; font-size:13px; }
.prose pre code { color:inherit; background:none; padding:0; border-radius:0; white-space:pre; overflow-wrap:normal; }
.prose blockquote { margin:26px 0; padding:18px 25px; background:#e7f0e7; border-left:4px solid #81b991; }
.prose blockquote p { margin:0; }
.note-box { background:#e8f0e8; border-left:3px solid #76af8b; padding:24px 27px; margin-top:34px; font-size:15px; }
.note-box p { margin:8px 0 0; }
.article-progress { position:fixed; top:0; left:0; right:auto; width:0; height:3px; background:#a8d799; z-index:50; pointer-events:none; }
.article-hero { padding:52px 0 76px; background:#102c39; color:white; position:relative; overflow:hidden; }
.article-hero:after { content:""; position:absolute; width:600px; height:600px; right:-150px; top:-320px; border:1px solid #31505b; border-radius:50%; box-shadow:0 0 0 100px rgba(255,255,255,.015),0 0 0 200px rgba(255,255,255,.012); pointer-events:none; }
.breadcrumbs { display:flex; align-items:center; flex-wrap:wrap; gap:13px; color:#9bb8ba; font-size:12px; margin-bottom:74px; }
.breadcrumbs a:hover { color:#c2f7a7; }
.breadcrumbs span { opacity:.75; }
.article-hero h1 { font-size:clamp(42px,5.4vw,70px); max-width:950px; line-height:1.09; letter-spacing:-.062em; margin:15px 0 19px; }
.article-subtitle { color:#bed1d4; font-size:19px; line-height:1.65; max-width:700px; margin-bottom:30px; }
.article-meta { display:flex; flex-wrap:wrap; gap:20px 35px; color:#a7c1c0; font-size:12px; }
.article-meta>span:first-child { display:flex; align-items:center; gap:11px; }
.article-body { padding:80px 0 92px; background:#f8faf7; }
.reading-layout { display:grid; grid-template-columns:235px minmax(0,730px); justify-content:space-between; gap:85px; }
.article-toc .toc-sticky { position:sticky; top:36px; display:flex; flex-direction:column; align-items:flex-start; gap:15px; }
.article-toc .eyebrow { margin-bottom:13px; }
.article-toc a { color:#68817e; line-height:1.55; font-size:13px; max-width:200px; }
.article-toc a:hover { color:#173e43; text-decoration:underline; text-underline-offset:3px; }
.article-toc .toc-back { display:inline-block; border-top:1px solid #d4e1db; padding-top:22px; margin-top:20px; font-weight:700; color:#245451; }
.article-part { scroll-margin-top:30px; margin-bottom:57px; }
.article-part h2 { margin-bottom:21px; font-size:34px; letter-spacing:-.04em; }
.article-part p { margin-bottom:20px; }
.article-end { margin-top:66px; border-radius:8px; border:1px solid #d2e4d3; background:#eaf4e7; padding:25px; display:grid; grid-template-columns:33px 1fr; gap:8px 14px; align-items:start; font-size:14px; }
.article-end>span { width:30px; height:30px; border-radius:50%; background:#d0ead0; color:#2d7059; display:grid; place-items:center; font-size:17px; }
.article-end strong { display:block; }
.article-end p { margin:2px 0 0; font-size:13px; }
.article-end a { grid-column:2; color:#256154; font-weight:700; font-size:13px; text-decoration:none; margin-top:3px; }
.related-section { background:#edf3ed; padding:85px 0 98px; }
.related-section h2 { font-size:45px; margin-top:13px; }
.related-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:19px; }
.related-card { border:1px solid #d7e2d9; background:#fafcf8; padding:26px; border-radius:7px; display:flex; flex-direction:column; min-height:165px; position:relative; transition:background .2s,transform .2s; }
.related-card:hover { background:#e2f0e5; transform:translateY(-3px); }
.related-card>span:first-child { font-size:10px; font-weight:800; letter-spacing:.13em; color:#638476; margin-bottom:15px; }
.related-card strong { font-size:22px; line-height:1.2; letter-spacing:-.04em; max-width:360px; padding-right:15px; }
.related-arrow { position:absolute; top:24px; right:25px; font-size:23px; }
.notfound-page { min-height:60vh; display:flex; align-items:center; text-align:center; padding:75px 0 115px; }
.notfound-page .container { max-width:650px; }
.notfound-number { font-size:clamp(116px,22vw,230px); font-weight:800; line-height:1.1; letter-spacing:-.12em; color:#193d3f; }
.notfound-number span { color:#98d8aa; }
.notfound-page h1 { font-size:36px; letter-spacing:-.055em; margin:9px 0 16px; }
.notfound-page p { color:#687f7e; max-width:500px; margin:0 auto 28px; }
@media (max-width: 1100px) {
  .hero-grid { grid-template-columns:1fr 410px; gap:35px; }
  .hero h1 { font-size:58px; }
  .header-inner { gap:23px; }
  .main-nav { gap:23px; }
  .reading-layout { gap:38px; grid-template-columns:210px minmax(0,1fr); }
}
@media (max-width: 850px) {
  .container { width:min(calc(100% - 44px), var(--container)); }
  .header-inner { min-height:72px; }
  .header-cta { display:none; }
  .main-nav { margin-left:auto; }
  .nav-link.current:after { bottom:-23px; }
  .hero-grid { min-height:auto; padding:72px 0 62px; grid-template-columns:1fr; gap:53px; }
  .hero-copy { max-width:720px; }
  .hero h1 { font-size:clamp(52px,8vw,72px); }
  .hero-topics { margin-top:37px; }
  .hero-illustration { max-width:550px; width:100%; justify-self:center; transform:none; }
  .strip-inner { grid-template-columns:1fr 1fr; padding-top:25px; padding-bottom:25px; gap:25px; }
  .strip-inner>div:nth-child(2) { border-right:none; }
  .strip-inner p { margin-left:0; font-size:20px; }
  .section { padding:75px 0; }
  .cards-grid { gap:16px; }
  .article-card { min-height:355px; padding:24px; }
  .why-grid { gap:36px; }
  .footer-grid { gap:35px; }
  .about-layout { grid-template-columns:190px 1fr; gap:38px; }
  .reading-layout { grid-template-columns:1fr; }
  .article-toc { display:none; }
  .article-body { padding:66px 0; }
  .prose { max-width:750px; }
}
@media (max-width: 640px) {
  .container { width: min(calc(100% - 36px), var(--container)); }
  .header-inner { min-height:68px; }
  .brand { font-size:23px; }
  .brand-icon svg { width:28px; height:28px; }
  .menu-toggle { display:block; margin-left:auto; }
  .js .main-nav { display:none; position:absolute; top:68px; left:0; right:0; flex-direction:column; align-items:stretch; gap:0; margin:0; padding:9px 18px 20px; background:#0d2433; border-top:1px solid #31505b; box-shadow:0 17px 22px rgba(0,0,0,.16); }
  .js .main-nav.is-open { display:flex; }
  .main-nav { flex-wrap:wrap; margin-left:auto; gap:15px; }
  .nav-link { display:block; padding:12px 9px; font-size:15px; }
  .nav-link.current:after { bottom:4px; left:9px; width:34px; right:auto; }
  .hero-grid { padding-top:55px; padding-bottom:60px; gap:43px; }
  .hero h1 { font-size:clamp(44px,11vw,62px); margin-bottom:21px; }
  .hero-lead { font-size:15.5px; line-height:1.75; }
  .hero-copy .eyebrow { margin-bottom:22px; }
  .hero-actions { gap:20px; }
  .button { min-height:50px; padding:12px 17px; }
  .text-action { font-size:13px; }
  .hero-topics { margin-top:35px; }
  .hero-bottom { display:none; }
  .hero-illustration { padding:18px; }
  .diagram-grid { padding-left:3px; }
  .diagram-step { gap:12px; }
  .diagram-step p { font-size:11px; }
  .diagram-link { margin-left:24px; }
  .strip-inner { gap:20px 12px; }
  .strip-inner strong { font-size:35px; }
  .strip-inner span { font-size:11px; }
  .strip-inner>div { gap:10px; }
  .strip-inner p { border-top:1px solid #d9e4dc; padding-top:17px; grid-column:1/-1; font-size:20px; }
  .section { padding:69px 0; }
  .section-top { align-items:flex-start; flex-direction:column; gap:13px; }
  h2 { font-size:39px; }
  .cards-grid { grid-template-columns:1fr; }
  .article-card { min-height:320px; padding:24px 24px 27px; }
  .article-card h3 { font-size:28px; }
  .card-symbol { top:39px; right:33px; font-size:105px; }
  .section-band { padding:65px 0; }
  .why-grid { grid-template-columns:1fr; gap:43px; }
  .why-grid h2 { font-size:40px; }
  .bottom-cta { padding:64px 0; }
  .cta-grid { align-items:flex-start; flex-direction:column; }
  .cta-grid h2 { font-size:37px; }
  .footer-grid { grid-template-columns:1fr 1fr; gap:36px; padding-bottom:50px; }
  .footer-main { grid-column:1/-1; }
  .footer-main p { margin-top:19px; }
  .site-footer { padding-top:52px; }
  .footer-bottom { gap:10px; }
  .page-intro.compact { padding:62px 0; }
  .page-intro h1 { font-size:clamp(42px,9vw,58px); }
  .page-intro p { font-size:16px; }
  .library-section { padding-top:45px; }
  .about-layout { grid-template-columns:1fr; gap:35px; }
  .about-side { display:none; }
  .about-main { padding-top:65px; }
  .prose { font-size:16px; line-height:1.84; }
  .article-hero { padding:30px 0 60px; }
  .breadcrumbs { margin-bottom:50px; gap:10px; }
  .article-hero h1 { font-size:clamp(39px,9vw,55px); }
  .article-subtitle { font-size:17px; }
  .article-part { margin-bottom:45px; }
  .article-part h2 { font-size:28px; }
  .prose pre { font-size:12px; padding:18px 15px; }
  .related-section { padding:63px 0 70px; }
  .related-grid { grid-template-columns:1fr; }
  .related-card { min-height:155px; }
  .notfound-page h1 { font-size:30px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *:before, *:after { scroll-behavior:auto !important; transition:none !important; animation:none !important; }
}
