/* Engineering resources: original R19 identity with a calm, legible reading layer. */
.site-nav{gap:30px}
.resource-hub-hero{padding-block:88px 72px;background:radial-gradient(ellipse at 75% 15%,#12344866,transparent 58%)}
.resource-hub-hero h1{max-width:1000px;font-size:clamp(50px,6.8vw,98px)}
.resource-hub-hero h1 span{color:#9db4c5}
.resource-hub-hero .large-copy{margin-top:32px;max-width:810px}
.resource-topic-strip{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}
.resource-topic-strip span{font-size:12px;color:#c8d7e2;border:1px solid #365067;padding:7px 13px;border-radius:30px}
.resource-feature{display:grid;grid-template-columns:1.15fr 1fr;border:1px solid #2c4053;overflow:hidden;background:#0d1c2b}
.resource-feature-art{min-height:530px;position:relative;overflow:hidden}
.resource-feature-art img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.resource-feature-art:hover img{transform:scale(1.025)}
.resource-feature-art>span{position:absolute;left:24px;bottom:20px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:5px 10px;background:#05101cdd;color:#d5e4ed}
.resource-feature-copy{padding:52px 44px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.resource-feature-copy h2{font-size:clamp(34px,3.4vw,50px);line-height:1.12}
.resource-feature-copy p{margin:25px 0 30px;font-size:16px}
.resource-section-heading{margin-bottom:40px}
.resource-section-heading h2{font-size:clamp(34px,4vw,56px)}
.resource-section-heading p{margin-top:20px}
.resource-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.resource-card{border:1px solid #2b4155;padding:35px 30px;display:flex;flex-direction:column;min-width:0}
.resource-number{font-size:11px;letter-spacing:.11em;text-transform:uppercase;color:#85d1ed;margin-bottom:30px}
.resource-card h3{font-size:35px;line-height:1.15}
.resource-card p{margin-block:25px 34px;font-size:15px}
.resource-card .text-link{margin-top:auto;align-self:flex-start;font-size:13px;gap:12px}
.resource-card-light{background:#eaf0f3;color:#102333;border-color:#eaf0f3}
.resource-card-light p{color:#3b5264}
.resource-card-light .resource-number{color:#236379}
.resource-card-light .text-link{border-color:#728694}
.resource-principles{background:#0c1927;padding-block:85px;border-block:1px solid #24394b}
.resource-principles-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}
.resource-principles-grid h2{font-size:clamp(36px,4vw,57px)}
.resource-principles-grid p+p{margin-top:25px}
.resource-inline-links{display:flex;gap:25px;flex-wrap:wrap;margin-top:30px;align-items:center}
.resource-end{padding:90px max(var(--space),calc((100vw - var(--shell))/2));display:flex;align-items:center;justify-content:space-between;gap:45px;background:linear-gradient(120deg,#0e2636,#07131f)}
.resource-end h2{font-size:clamp(34px,3.8vw,54px)}
.resource-end p{max-width:600px;margin-top:22px}
.resource-end>.button{flex:none}
.resource-article-hero{padding-block:50px 65px;position:relative;isolation:isolate;overflow:hidden;border-bottom:1px solid #314254}
.resource-article-hero>.shell{position:relative;z-index:2}
.resource-article-hero .breadcrumbs{margin-bottom:34px}
.resource-article-hero h1{max-width:1030px;font-size:clamp(48px,6vw,85px);line-height:1.09}
.article-meta{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:31px;color:#adbfcd;font-size:11px;letter-spacing:.04em}
.article-meta>span:first-child{color:#8bdbf2}
.article-summary{font-size:20px;line-height:1.65;color:#d8e1e8;max-width:750px;margin-top:23px}
.article-hero-actions{display:flex;gap:28px;flex-wrap:wrap;align-items:center;margin-top:30px}
.article-hero-image{position:absolute;z-index:-1;right:0;top:0;width:55%;height:100%;opacity:.4}
.article-hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#050b14 1%,#050b1466 45%,#050b1422),linear-gradient(0deg,#050b14,transparent 65%)}
.article-hero-image img{height:100%;width:100%;object-fit:cover}
.article-hero-image>span{position:absolute;right:var(--space);bottom:18px;font-size:9px;letter-spacing:.04em;color:#d5e4ed;z-index:2}
.resource-article-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:45px;padding-block:70px 90px;align-items:start}
.article-contents{position:sticky;top:25px}
.article-contents nav{display:flex;flex-direction:column;gap:6px}
.article-contents .eyebrow{margin-bottom:16px}
.article-contents nav a{display:flex;gap:15px;font-size:12px;line-height:1.5;color:#a9bdcb;padding:9px 0;border-bottom:1px solid #243848}
.article-contents nav a>span{color:#5c9bb7;font-size:10px;padding-top:2px}
.article-contents nav a:hover,.article-contents nav a[aria-current]{color:#fff}
.contents-companion{display:block;margin-top:30px;padding:18px;background:#112737;border-left:2px solid #58c9e8;font-size:11px;line-height:1.8;color:#a9c0d0}
.contents-companion strong{font-weight:600;color:#e0eef6}
.engineering-article{background:#f0f3f4;color:#142b3c;padding:52px 52px 60px;min-width:0;border-top:3px solid #67c9f2}
.engineering-article>section{scroll-margin-top:30px;padding-top:50px}
.engineering-article>section+section{margin-top:26px;border-top:1px solid #cbd7dd}
.engineering-article h2{font-size:clamp(32px,3.2vw,46px);line-height:1.15;letter-spacing:-.035em;margin-bottom:27px;color:#122d40}
.engineering-article p{font-size:16px;line-height:1.9;color:#3c5262;max-width:70ch}
.engineering-article p+p{margin-top:20px}
.engineering-article a:not(.button){color:#125a75}
.engineering-article li{font-size:14px;line-height:1.8;color:#3c5262;margin-bottom:12px}
.engineering-article li a{text-decoration:underline;text-underline-offset:3px}
.article-takeaway{background:#dce8ed;border-left:3px solid #239dbb;padding:25px 28px}
.article-takeaway .eyebrow{color:#1a637d;margin-bottom:12px}
.article-takeaway p{color:#13394e;font-size:22px;line-height:1.55;font-weight:500;letter-spacing:-.02em}
.section-index{display:block;color:#2e7891;font-size:10px;letter-spacing:.11em;text-transform:uppercase;font-weight:700;margin-bottom:18px}
.decision-pair{display:grid;grid-template-columns:1fr 1fr;gap:23px;margin-top:28px}
.decision-pair>div{padding:22px;border:1px solid #c6d4dc;background:#e7edf0}
.decision-pair h3{font-size:21px;line-height:1.3;letter-spacing:-.02em;margin-bottom:15px}
.decision-pair p{font-size:14px;line-height:1.8}
.technical-figure{margin-block:32px;min-width:0}
.diagram-open{display:block;position:relative;background:#071827;overflow:hidden;border:1px solid #263e52}
.diagram-open img{width:100%;height:auto}
.diagram-open>span{position:absolute;right:12px;bottom:12px;color:#e3f6ff;background:#102e42ed;border:1px solid #486a7e;font-size:10px;padding:6px 10px;display:flex;gap:13px}
.diagram-open:hover>span{background:#1a4c62}
.technical-figure figcaption{font-size:11px;line-height:1.7;color:#536c7c;padding-top:13px;max-width:85ch}
.architecture-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-block:28px}
.architecture-cards>div{border-top:2px solid #379eb9;padding-top:17px}
.architecture-cards span{font-size:12px;font-weight:700;color:#1b485c}
.architecture-cards p{font-size:13px;line-height:1.75;margin-top:10px}
.article-table-wrap{overflow-x:auto;margin-block:28px;scrollbar-color:#8ba6b5 #e0e8ec}
.article-table{border-collapse:collapse;width:100%;min-width:600px;font-size:13px;line-height:1.75}
.article-table caption{text-align:left;font-size:11px;letter-spacing:.05em;color:#1d6079;padding-bottom:15px}
.article-table th,.article-table td{text-align:left;vertical-align:top;padding:17px 16px;border:1px solid #c7d4dd}
.article-table thead{background:#13384c;color:#eff7fa}
.article-table tbody th{width:23%;color:#214a5f;background:#e3ebef;font-size:12px}
.article-table tbody td{color:#3d5362}
.article-table tbody tr:nth-child(even) td{background:#e9eff1}
.article-inline-cta{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:24px;border:1px solid #9db8c6;margin-top:28px;background:#e3edf1;font-size:13px;line-height:1.6}
.article-inline-cta span{color:#516f80}
.article-inline-cta strong{font-size:14px;font-weight:600;color:#18516a}
.article-note{border-left:3px solid #2b98b8;background:#dfe9ed;padding:22px 25px;margin-top:26px;color:#1c4a60}
.article-note>strong{font-size:12px;letter-spacing:.04em}
.article-note p{font-size:14px;line-height:1.8;margin-top:10px}
.research-reading-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-block:28px}
.reading-card{display:block;position:relative;background:#e3ebef;border:1px solid #c4d3db;padding:24px 25px 30px}
.reading-card>span{font-size:18px;letter-spacing:-.02em;font-weight:600;color:#20485c}
.reading-card p{font-size:13px;line-height:1.8;margin-top:13px}
.reading-card>b{position:absolute;right:16px;top:19px;font-size:18px;font-weight:400}
.reading-card:hover{border-color:#4898b3;background:#d9e8ee}
.article-related{display:flex;flex-wrap:wrap;gap:20px;align-items:center;margin-top:30px}
.article-related .button{background:#153d52;color:#f3f7f8;border-color:#153d52}
.article-related .text-link{font-size:12px;border-color:#6e939f}
.article-editorial-note{font-size:11px!important;line-height:1.7!important;border-top:1px solid #c3d1d8;padding-top:23px;margin-top:33px!important;color:#5c7482!important}
.diagram-dialog{background:#071827;color:#e6f4fc;border:1px solid #3a6076;padding:0;width:min(96vw,1540px);max-width:none;max-height:94vh;overflow:hidden}
.diagram-dialog::backdrop{background:#020811e8;backdrop-filter:blur(6px)}
.diagram-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 22px;border-bottom:1px solid #2f4a5f}
.diagram-toolbar h2{font-size:17px;letter-spacing:-.01em}
.diagram-toolbar>div{display:flex;gap:8px}
.diagram-toolbar button{background:#102e42;border:1px solid #42677d;font-size:13px;min-width:42px;min-height:40px;padding:6px 13px;cursor:pointer}
.diagram-toolbar button:hover{background:#1b4b63}
.diagram-viewport{max-height:calc(94vh - 155px);overflow:auto;background:#071827;scrollbar-color:#3f718c #0b2131}
.diagram-viewport img{width:100%;max-width:none;height:auto}
.diagram-dialog>p{font-size:11px;line-height:1.6;color:#b1c8d8;margin:13px 22px;max-width:none}
body.diagram-is-open{overflow:hidden}
.checklist-hero{padding-bottom:65px;background:radial-gradient(ellipse at 80% 25%,#17425b66,transparent 60%)}
.checklist-hero h1{font-size:clamp(45px,5.6vw,76px)}
.checklist-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:40px;padding-block:65px;align-items:start}
.planning-sheet{padding:38px 42px;background:#f0f3f4;color:#142e40;border-top:3px solid #67c9f2}
.planning-sheet-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-bottom:30px}
.planning-sheet-heading .eyebrow{color:#2b758c;margin-bottom:16px}
.planning-sheet h2{font-size:39px;line-height:1.15}
.check-progress{white-space:nowrap;border:1px solid #b7cbd4;padding:8px 12px;font-size:11px;color:#3a6174}
.planning-check{display:grid;grid-template-columns:22px 26px minmax(0,1fr);gap:13px;align-items:start;padding:22px 0;border-top:1px solid #c7d7df;cursor:pointer}
.planning-check input{width:20px;height:20px;accent-color:#167b99;margin:3px 0 0;cursor:pointer}
.check-number{font-size:10px;padding-top:6px;color:#6090a4;letter-spacing:.05em}
.planning-check>span:last-child>strong{font-size:17px;font-weight:600;display:block;color:#183d52;line-height:1.5}
.planning-check>span:last-child>span{font-size:13px;line-height:1.85;color:#516d7e;display:block;margin-top:7px}
.planning-check:has(input:checked){background:#e2edf0}
.checklist-controls{border-top:1px solid #c7d7df;padding-top:20px}
.checklist-controls button{background:none;border:0;border-bottom:1px solid #7d9caa;color:#28546a;cursor:pointer;font-size:12px}
.checklist-controls p{font-size:11px;line-height:1.8;color:#5a7787;margin-top:18px}
.worksheet-aside{padding:18px 0}
.worksheet-aside h2{font-size:37px;line-height:1.2}
.worksheet-aside p{font-size:13px;line-height:1.9;margin-top:25px}
.worksheet-aside .text-link{font-size:12px;margin-top:22px}
.checklist-example{padding-block:10px 70px}
.example-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin:0}
.example-grid>div{border-top:1px solid #385367;padding-top:20px}
.example-grid dt{font-size:11px;color:#8ad5ed;letter-spacing:.08em;text-transform:uppercase;margin-bottom:15px}
.example-grid dd{font-size:14px;line-height:1.85;color:#b7c9d6;margin:0}
.checklist-example .technical-figure{max-width:1100px;margin-top:40px}
.checklist-example .technical-figure figcaption{color:#a4bdcc}
.checklist-related{margin-top:0;margin-bottom:70px}
.resource-home-bridge{background:#0c1d2b;border-block:1px solid #294255}
.resource-home-bridge>.shell{display:flex;justify-content:space-between;align-items:center;gap:60px}
.resource-home-bridge h2{font-size:clamp(34px,3.8vw,54px)}
.resource-home-bridge p{max-width:670px;margin-top:22px}
.resource-home-bridge>.shell>div:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:18px;flex:none}
.product-method-bridge{background:#102334;border-block:1px solid #2f4b60}
.product-method-bridge h2{font-size:clamp(34px,3.8vw,54px)}
.product-method-bridge p{margin-top:25px;max-width:780px}
.project-method-enrichment{background:#eef2f4;color:#18364a;padding-block:65px;margin-block:60px}
.project-method-enrichment .eyebrow{color:#2c7a93}
.project-method-enrichment h2{max-width:850px;font-size:clamp(34px,4vw,56px)}
.project-enrichment-copy{display:grid;grid-template-columns:1fr 1fr;gap:25px 45px;margin-top:33px}
.project-enrichment-copy p{font-size:15px;line-height:1.9;color:#476273}
.project-method-enrichment .technical-figure{max-width:1100px}
.project-method-enrichment .article-note{max-width:1100px}
.enrichment-sources{padding-left:19px;margin-top:25px;font-size:12px;line-height:1.8;color:#3c697e}
.enrichment-sources a{text-decoration:underline;text-underline-offset:3px}
.project-method-enrichment .text-link{color:#255a70;border-color:#83a1af}
@media(max-width:1100px){.site-nav{gap:22px}.resource-article-layout{grid-template-columns:180px minmax(0,1fr);gap:27px}.engineering-article{padding:35px}.resource-feature-copy{padding:36px 30px}.resource-card{padding:28px 23px}.resource-card h3{font-size:30px}.resource-principles-grid{gap:40px}.resource-end{padding-block:70px}.checklist-layout{grid-template-columns:minmax(0,1fr) 220px;gap:30px}.planning-sheet{padding:30px}.resource-home-bridge>.shell{gap:35px}.site-footer .footer-help-links{gap:15px}}
@media(min-width:601px) and (max-width:900px){.masthead-inner{flex-wrap:wrap}.site-nav{width:100%;justify-content:space-between;gap:10px;padding-bottom:18px}.masthead-inner>.brand{margin-top:15px}.resource-article-layout{display:block}.article-contents{position:static;margin-bottom:30px}.article-contents nav{display:grid;grid-template-columns:repeat(3,1fr);gap:3px 20px}.article-contents .eyebrow{grid-column:1/-1}.contents-companion{display:none}}
@media(max-width:800px){.resource-feature{grid-template-columns:1fr}.resource-feature-art{min-height:0;height:330px}.resource-feature-copy{padding:38px}.resource-card-grid{grid-template-columns:1fr}.resource-card{min-height:0;padding:30px}.resource-card h3 br{display:none}.resource-card p{max-width:65ch;margin-block:18px 23px}.resource-number{margin-bottom:22px}.resource-principles-grid{grid-template-columns:1fr;gap:30px}.resource-end{display:block}.resource-end .button{margin-top:30px}.resource-article-hero h1{font-size:61px}.article-summary{font-size:18px;max-width:650px}.article-hero-image{width:80%;opacity:.28}.checklist-layout{grid-template-columns:1fr}.worksheet-aside{display:none}.example-grid{grid-template-columns:1fr 1fr}.resource-home-bridge>.shell{display:block}.resource-home-bridge>.shell>div:last-child{margin-top:30px;flex-direction:row;align-items:center}.project-enrichment-copy{gap:25px}}
@media(max-width:600px){.resource-hub-hero{padding-block:48px}.resource-hub-hero h1{font-size:48px}.resource-hub-hero .large-copy{font-size:18px;margin-top:25px}.resource-topic-strip{gap:8px}.resource-topic-strip span{font-size:10px;padding:6px 10px}.resource-feature-art{height:240px}.resource-feature-copy{padding:30px 24px}.resource-feature-copy h2{font-size:34px}.resource-feature-copy p{font-size:14px}.resource-section-heading h2{font-size:33px}.resource-card{padding:26px}.resource-principles{padding-block:55px}.resource-principles h2{font-size:34px}.resource-end{padding-block:58px}.resource-end h2{font-size:34px}.resource-end p{font-size:14px}.resource-article-hero{padding-block:30px 40px}.resource-article-hero h1{font-size:45px}.resource-article-hero .breadcrumbs{margin-bottom:27px}.article-summary{font-size:16px;line-height:1.8}.article-meta{font-size:9px;gap:8px 14px;margin-top:23px}.article-hero-actions{gap:18px;margin-top:25px}.article-hero-actions .text-link{font-size:12px}.article-hero-image{width:100%;opacity:.19}.article-hero-image>span{display:none}.resource-article-layout{display:block;padding-block:35px 50px}.article-contents{position:static;margin-bottom:28px}.article-contents nav{display:grid;grid-template-columns:1fr 1fr;gap:3px 20px}.article-contents .eyebrow{grid-column:1/-1;margin-bottom:6px}.article-contents nav a{font-size:10px;gap:9px}.contents-companion{display:none}.engineering-article{padding:27px 22px 35px}.engineering-article>section{padding-top:34px}.engineering-article h2{font-size:30px;margin-bottom:22px}.engineering-article p{font-size:14px;line-height:1.9}.article-takeaway{padding:20px}.article-takeaway p{font-size:18px;line-height:1.6}.section-index{font-size:9px;line-height:1.7}.decision-pair{grid-template-columns:1fr;gap:15px}.decision-pair>div{padding:20px}.decision-pair h3{font-size:19px}.decision-pair p{font-size:13px}.architecture-cards{grid-template-columns:1fr;gap:20px}.architecture-cards p{font-size:12px}.article-inline-cta{display:block;padding:19px}.article-inline-cta strong{display:block;margin-top:10px}.article-note{padding:18px}.article-note p{font-size:12px}.research-reading-grid{grid-template-columns:1fr}.reading-card{padding:20px}.reading-card p{font-size:12px}.technical-figure{margin-block:25px}.technical-figure figcaption{font-size:10px;line-height:1.7}.diagram-open>span{font-size:8px;right:7px;bottom:7px;padding:5px 7px}.article-related{gap:15px}.article-related .button{font-size:12px}.article-sources ul{padding-left:17px}.engineering-article li{font-size:12px;overflow-wrap:anywhere}.diagram-toolbar{padding:12px;gap:10px}.diagram-toolbar h2{font-size:12px}.diagram-toolbar button{font-size:11px;padding:5px 9px;min-width:34px}.diagram-toolbar>div{gap:5px}.diagram-dialog>p{font-size:10px;margin:12px}.checklist-layout{padding-block:35px;gap:0}.planning-sheet{padding:27px 20px}.planning-sheet-heading{display:block}.planning-sheet h2{font-size:32px}.check-progress{display:inline-block;margin-top:20px}.planning-check{grid-template-columns:21px 21px minmax(0,1fr);gap:9px;padding-block:20px}.planning-check>span:last-child>strong{font-size:15px}.planning-check>span:last-child>span{font-size:12px}.check-number{font-size:9px}.example-grid{grid-template-columns:1fr;gap:22px}.example-grid dd{font-size:13px}.resource-home-bridge>.shell>div:last-child{flex-direction:column;align-items:flex-start;gap:15px}.project-method-enrichment{padding-block:45px;margin-block:45px}.project-method-enrichment h2{font-size:34px}.project-enrichment-copy{grid-template-columns:1fr;gap:20px;margin-top:25px}.project-enrichment-copy p{font-size:14px}.enrichment-sources{font-size:11px}.resource-inline-links{gap:20px}.resource-inline-links .text-link{font-size:12px}}
@media(prefers-reduced-motion:reduce){.resource-feature-art img{transition:none}.resource-feature-art:hover img{transform:none}}
@media print{html,body{background:white!important;color:#152b3a!important}.masthead,.site-footer,.article-contents,.resource-end,.article-hero-actions,.worksheet-aside,.checklist-related,.checklist-controls,.diagram-dialog,.article-hero-image,.back-top,.skip-link{display:none!important}.shell{width:100%!important;max-width:none!important}.resource-article-hero{padding:10px 0 25px!important}.resource-article-hero h1{font-size:30pt!important;color:#152b3a}.article-summary,.article-meta{color:#435b6a!important}.article-meta{font-size:9pt}.resource-article-layout,.checklist-layout{display:block;padding:0}.engineering-article,.planning-sheet{background:white!important;padding:0!important;border:0!important}.engineering-article>section{break-inside:avoid-page;padding-top:25px!important}.engineering-article h2{font-size:22pt}.engineering-article p{font-size:10pt}.article-takeaway{background:#eef2f4}.planning-sheet-heading{padding:15px 0}.planning-sheet h2{font-size:23pt}.planning-check{break-inside:avoid-page;padding:12px 0}.planning-check>span:last-child>strong{font-size:11pt}.planning-check>span:last-child>span{font-size:9pt}.planning-check input{accent-color:#142e40}.checklist-example{padding:25px 0}.checklist-example h2{color:#18364a;font-size:23pt}.checklist-example p,.example-grid dd{color:#435b6a}.example-grid{grid-template-columns:1fr 1fr}.example-grid dt{color:#1c617a}.technical-figure{break-inside:avoid-page}.diagram-open>span{display:none}.checklist-example .technical-figure{max-width:650px}.planning-check:has(input:checked){background:transparent}.article-table{min-width:0;font-size:8pt}.article-table th,.article-table td{padding:9px}.article-table-wrap{overflow:visible}.engineering-article a:after{content:none}}
