/* Creo Library: purposeful, visible technical resources in distinct reading layouts. */
.cl-page main :is(h3,h4),.cl-page dt{font-family:var(--font-display);font-size:var(--type-subhead-size);line-height:1.35;font-weight:700}.cl-page figure{margin:0}.cl-page :is(article,figure,aside,.cl-cam-reading,.cl-notebook-reading){min-width:0}.cl-page img{display:block;max-width:100%;height:auto}.cl-page figcaption{font-size:var(--type-secondary-size);line-height:1.7;color:var(--body-text);padding:18px 0}.cl-hero .pr-hero-grid{max-height:none}.cl-hero .cch-stage{inset:0}.cl-page .ip-inline-link:is(:hover,:focus-visible){color:var(--link-hover)}.cl-page dd{margin:16px 0 0;color:var(--body-text);line-height:1.8}.cl-resource{display:flex;gap:18px;justify-content:space-between;align-items:flex-start;line-height:1.6;width:100%}.cl-resource>span:first-child{min-width:0}.cl-resource small{display:block;font-size:var(--type-secondary-size);font-weight:400;line-height:1.6;color:var(--body-text);margin-top:8px}.cl-resource>span:last-child{flex-shrink:0}.cl-library-brief{display:flex;gap:40px;align-items:center;justify-content:space-between;border-block:1px solid #aac8d5;padding:26px 0;margin-top:32px}.cl-library-brief p{max-width:820px;margin:0}.cl-library-brief .ip-inline-link{margin:0;flex-shrink:0}.cl-reading-method{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px;margin:32px 0 0}.cl-reading-method>div{padding-left:22px;border-left:3px solid var(--ip-teal)}.cl-source-note{font-size:var(--type-secondary-size);max-width:980px;margin:28px 0 0}
.cl-cam{background:var(--ip-pale)}.cl-manufacturing-files{margin-top:38px;border-top:3px solid var(--ip-teal)}.cl-cam-file{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1.5fr) minmax(0,.7fr);gap:30px;padding:30px;background:#fff;border:1px solid #b3cfdc;border-top:0}.cl-cam-file figure{align-self:start;border:1px solid #c0d7e0}.cl-cam-file img{width:100%;height:auto}.cl-cam-reading h3{margin:0 0 20px}.cl-cam-reading>p{margin:0 0 20px}.cl-cam-resource{padding-left:24px;border-left:1px solid #bad3df;display:flex;align-items:center}.cl-cam-resource .cl-resource{margin:0}.cl-cam-file summary{display:flex;gap:20px;justify-content:space-between;list-style:none;cursor:pointer;color:#087f8d;font-weight:700;line-height:1.6}.cl-cam-file summary::-webkit-details-marker{display:none}.cl-cam-file summary>span:last-child{font-size:1.5rem;line-height:1}.cl-cam-file details[open] summary>span:last-child{transform:rotate(45deg)}.cl-cam-file details>p{margin:18px 0 0;border-top:1px solid #bfd6df;padding-top:18px}.cl-page summary:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}.cl-scope-note{border-left:3px solid var(--ip-teal);padding-left:22px;margin:28px 0 0;max-width:1050px}
.cl-definition-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:40px}.cl-definition-board article{display:flex;flex-direction:column;background:var(--ip-pale);border:1px solid #a9c9d8}.cl-definition-board figure{padding:22px 22px 0}.cl-definition-board img{width:100%;height:210px;object-fit:contain;background:#fff}.cl-definition-board h3{margin:24px 26px 20px}.cl-definition-board article>p{margin:0 26px 26px}.cl-definition-board aside{margin:auto 26px 26px;border-left:2px solid var(--ip-teal);padding-left:18px}.cl-definition-board aside>span{font-size:var(--type-secondary-size);font-weight:700;color:#087f8d}.cl-definition-board aside>p{margin:12px 0 0}.cl-definition-board footer{background:#fff;padding:24px 26px;border-top:1px solid #a9c9d8}.cl-definition-board .cl-resource{margin:0}.cl-definition-scope{display:flex;justify-content:space-between;align-items:center;gap:40px;border-top:1px solid #b4d0dd;margin-top:28px;padding-top:24px}.cl-definition-scope p{margin:0;max-width:800px}.cl-definition-scope .ip-inline-link{margin:0;flex-shrink:0}
.cl-cae{background:var(--ip-navy)}.cl-cae h2,.cl-cae h3{color:#fff}.cl-cae p{color:var(--body-text-on-dark)}.cl-cae :is(.ip-label,h2 em,.ip-inline-link){color:var(--ip-teal)}.cl-cae .ip-inline-link:is(:hover,:focus-visible){color:var(--link-hover-on-dark)}.cl-cae .cl-resource small{color:var(--body-text-on-dark)}.cl-study-index{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 34px;margin-top:38px;border-top:1px solid #517c91}.cl-study-file{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.2fr);gap:24px;border-bottom:1px solid #517c91;padding:28px 0}.cl-study-file figure{align-self:start;background:#fff;padding:6px}.cl-study-file img{width:100%;height:auto}.cl-study-file>div{min-width:0;display:flex;flex-direction:column}.cl-study-file h3{margin:0 0 20px}.cl-study-file p{margin:0 0 22px}.cl-page .cl-study-prompt{border-left:2px solid var(--ip-teal);padding-left:18px;color:#c9e7ed}.cl-study-file .cl-resource{margin-top:auto}.cl-study-file:last-child{grid-column:1/-1;grid-template-columns:minmax(0,.35fr) minmax(0,1fr)}.cl-study-guides{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:40px;margin-top:28px}.cl-study-guides p{margin:0}.cl-study-guides>div{display:flex;flex-direction:column;align-items:start;gap:20px}.cl-study-guides .ip-inline-link{margin:0}
.cl-notebook-spread{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:44px;margin-top:36px;align-items:center}.cl-notebook-spread figure{background:var(--ip-pale);padding:28px 28px 0 38px;border:1px solid #b0cdd9;position:relative}.cl-sheet-binding{position:absolute;top:24px;bottom:24px;left:12px;width:6px;background:repeating-linear-gradient(to bottom,#7faabd 0 3px,transparent 3px 14px)}.cl-notebook-spread img{width:100%;border:1px solid #c2d9e1}.cl-notebook-reading h3{margin:0 0 22px}.cl-notebook-reading p{margin:0 0 24px}.cl-notebook-reading .cl-resource{padding-top:22px;border-top:1px solid #b0cdd9;margin-top:0}.cl-notebook-reading>.ip-inline-link:last-child{margin-top:26px}.cl-calculation-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;border-top:1px solid #b0cdd9;padding-top:28px;margin:32px 0 0}.cl-calculation-checks>div{border-top:3px solid var(--ip-teal);padding-top:20px}
@media(max-width:1100px){.cl-cam-file{grid-template-columns:minmax(0,.65fr) minmax(0,1.5fr);gap:24px}.cl-cam-resource{grid-column:2;border-left:0;border-top:1px solid #bad3df;padding:20px 0 0}.cl-study-file{grid-template-columns:minmax(0,1fr)}.cl-study-file figure{max-width:300px}.cl-study-file:last-child{grid-template-columns:minmax(0,.65fr) minmax(0,1.2fr)}.cl-definition-board{gap:20px}.cl-definition-board img{height:170px}}
@media(max-width:850px){.cl-library-brief,.cl-definition-scope{flex-direction:column;align-items:start;gap:24px}.cl-definition-board{grid-template-columns:minmax(0,1fr)}.cl-definition-board article{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1fr)}.cl-definition-board figure{grid-row:1/span 3;align-self:center;padding:24px}.cl-definition-board img{height:auto}.cl-definition-board h3{margin-left:0}.cl-definition-board article>p{margin-left:0}.cl-definition-board aside{margin-left:0}.cl-definition-board footer{grid-column:1/-1}.cl-study-index,.cl-study-guides,.cl-notebook-spread{grid-template-columns:minmax(0,1fr)}.cl-study-file,.cl-study-file:last-child{grid-column:auto;grid-template-columns:minmax(0,.6fr) minmax(0,1.2fr)}.cl-study-file figure{max-width:none}}
@media(max-width:600px){.cl-reading-method,.cl-cam-file,.cl-definition-board article,.cl-study-file,.cl-study-file:last-child,.cl-calculation-checks{grid-template-columns:minmax(0,1fr)}.cl-reading-method{gap:28px}.cl-cam-file{padding:24px;gap:24px}.cl-cam-file figure{max-width:360px}.cl-cam-resource{grid-column:1}.cl-definition-board figure{grid-row:auto;padding:22px 22px 0}.cl-definition-board h3{margin:24px 24px 20px}.cl-definition-board article>p{margin:0 24px 26px}.cl-definition-board aside{margin:0 24px 26px}.cl-definition-board footer{grid-column:auto;padding:24px}.cl-study-file figure{max-width:360px}.cl-notebook-spread{gap:28px}.cl-notebook-spread figure{padding:22px 22px 0 34px}.cl-study-guides{gap:26px}}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.cl-cam-file{transition:box-shadow .25s}.cl-cam-file:hover{box-shadow:inset 3px 0 var(--ip-teal)}.cl-cam-file summary>span:last-child{transition:transform .2s}.cl-definition-board article{transition:border-color .25s}.cl-definition-board article:hover{border-color:#278c9e}}
@media(prefers-reduced-motion:reduce){.cl-page *, .cl-page *:before{transition:none!important}}

/* Full-size image reading; thumbnails retain existing geometry and image bytes. */
.cl-page .cl-image-link{display:block;cursor:zoom-in;text-decoration:none;color:inherit}
.cl-page .cl-image-link:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}
.cl-image-dialog{padding:20px;border:1px solid #96bfce;background:#fff;color:var(--body-text);box-sizing:border-box;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain}
.cl-image-dialog::backdrop{background:#062b40e8}
.cl-image-dialog form{display:flex;justify-content:flex-end;margin:0 0 16px}
.cl-image-dialog button{font:inherit;font-weight:700;background:var(--ip-pale);color:var(--ip-navy);border:1px solid #96bfce;padding:10px 16px;cursor:pointer;display:flex;gap:20px;align-items:center}
.cl-image-dialog button:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}
.cl-image-dialog>img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 128px);object-fit:contain;margin:auto}

/* Introductory gateway: an open editorial brief beside a stepped reading guide. */
.cl-intro-gateway{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:center}
.cl-gateway-copy{min-width:0}.cl-gateway-copy h2{margin-bottom:28px}.cl-gateway-copy>p{margin:0 0 24px}.cl-gateway-lead{border-left:3px solid var(--ip-teal);padding-left:24px}.cl-gateway-copy>.ip-inline-link{margin-top:4px}
.cl-gateway-guide{min-width:0;background:var(--ip-navy);padding:34px 30px 34px 28px;position:relative;border-top:3px solid var(--ip-teal);box-shadow:12px 12px 0 var(--ip-pale)}
.cl-gateway-guide:before{content:'';position:absolute;left:20px;top:61px;bottom:45px;border-left:1px dashed #558a9e;pointer-events:none}
.cl-guide-datums{display:flex;gap:7px;margin-bottom:24px;align-items:center}.cl-guide-datums i{width:5px;height:5px;border:1px solid #8bbdca}.cl-guide-datums i:first-child{background:var(--ip-teal);border-color:var(--ip-teal);width:30px;height:3px}
.cl-guide-files{margin:0;display:flex;flex-direction:column;gap:20px}
.cl-guide-files>div{display:block;position:relative;background:#fff;border:1px solid #a7cad7;padding:22px 24px 24px 90px;min-width:0;box-shadow:0 8px 20px #041f2d25}
.cl-guide-files>div:nth-child(2){margin-left:14px}.cl-guide-files>div:nth-child(3){margin-left:28px}
.cl-guide-files>div:after{content:'';position:absolute;right:9px;top:9px;width:10px;height:10px;border-top:1px solid #86afc0;border-right:1px solid #86afc0;pointer-events:none}
.cl-guide-mark{position:absolute;left:18px;top:22px;color:#28768d;width:54px}.cl-guide-mark svg{display:block;width:100%;height:auto}
.cl-guide-files dt{color:var(--ip-navy)}.cl-page .cl-guide-files dd{margin-top:12px}
.cl-overview-gateway .cl-source-note{margin:34px 0 0;padding-top:22px;border-top:1px solid #b1ceda;max-width:none}
@media(max-width:1000px){.cl-intro-gateway{grid-template-columns:minmax(0,1fr);gap:32px;align-items:start}.cl-gateway-copy{max-width:950px}.cl-gateway-guide{max-width:850px;width:100%;box-sizing:border-box}.cl-guide-files>div:nth-child(2){margin-left:22px}.cl-guide-files>div:nth-child(3){margin-left:44px}}
@media(max-width:600px){.cl-gateway-guide{padding:26px 22px;box-shadow:6px 6px 0 var(--ip-pale)}.cl-guide-files>div{padding:22px 18px 22px 70px}.cl-guide-mark{width:42px;left:14px}.cl-guide-files>div:nth-child(2),.cl-guide-files>div:nth-child(3){margin-left:0}.cl-gateway-guide:before{left:14px}.cl-gateway-lead{padding-left:20px}}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.cl-guide-files>div{transition:border-color .25s,box-shadow .25s}.cl-guide-files>div:hover{border-color:var(--ip-teal);box-shadow:0 10px 24px #041f2d40}}

/* A balanced library entry: one strong surface, three equal reading panels. */
.cl-library-entry{background:var(--ip-navy);padding:40px;position:relative;border-top:3px solid var(--ip-teal);isolation:isolate}
.cl-library-entry:before,.cl-library-entry:after{content:'';position:absolute;width:16px;height:16px;border-color:#6b9eb2;pointer-events:none}
.cl-library-entry:before{left:12px;top:12px;border-left:1px solid #6b9eb2;border-top:1px solid #6b9eb2}.cl-library-entry:after{right:12px;bottom:12px;border-right:1px solid #6b9eb2;border-bottom:1px solid #6b9eb2}
.cl-entry-opening{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;align-items:center;margin-bottom:32px}
.cl-page .cl-entry-opening h2{color:#fff;margin-bottom:0}.cl-entry-opening h2 em,.cl-entry-opening .ip-label{color:var(--ip-teal)}.cl-entry-opening>p{color:var(--body-text-on-dark);margin:0}
.cl-entry-readings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0}
.cl-entry-readings>div{display:flex;flex-direction:column;min-width:0;background:#edf5f8;background:linear-gradient(135deg,#ffffffed 0%,#edf7fae8 45%,#d9edf4ed 100%);border:1px solid #d9f3faf0;border-radius:12px;box-shadow:inset 0 1px 0 #fff,inset 0 -1px 0 #7aaabb66,0 14px 30px #02192430;position:relative;backdrop-filter:blur(16px) saturate(115%);-webkit-backdrop-filter:blur(16px) saturate(115%)}
.cl-entry-readings>div:before{content:'';position:absolute;left:28px;right:28px;top:0;height:3px;background:var(--ip-teal)}
.cl-entry-readings dt{padding:28px 28px 0;color:var(--ip-navy)}
.cl-entry-readings dt>span:last-child{display:block;min-height:2.7em}
.cl-entry-symbol{display:block;width:70px;height:74px;margin-bottom:24px;color:#22768c}
.cl-entry-symbol svg{display:block;width:100%;height:100%}
.cl-page .cl-entry-readings dd{margin:18px 0 0;padding:0 28px 28px}
.cl-entry-context{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:36px;align-items:center;margin-top:32px;padding-top:28px;border-top:1px solid #4c7b91}
.cl-entry-context p{color:var(--body-text-on-dark);margin:0}.cl-entry-context .ip-inline-link{color:var(--ip-teal);margin:0}.cl-entry-context .ip-inline-link:is(:hover,:focus-visible){color:var(--link-hover-on-dark)}
.cl-overview-entry .cl-source-note{margin:28px 0 0;padding-top:22px;border-top:1px solid #b1ceda;max-width:none}
@supports(grid-template-rows:subgrid){.cl-entry-readings{row-gap:0}.cl-entry-readings>div{display:grid;grid-template-rows:subgrid;grid-row:span 2}}
@media(max-width:1000px){.cl-library-entry{padding:32px}.cl-entry-opening{gap:30px}.cl-entry-readings{column-gap:20px}.cl-entry-readings dt{padding:26px 22px 0}.cl-page .cl-entry-readings dd{padding-inline:22px}.cl-entry-readings>div:before{left:22px;right:22px}.cl-entry-context{grid-template-columns:minmax(0,1fr);gap:22px}.cl-entry-context .ip-inline-link{justify-self:start}}
@media(max-width:800px){.cl-entry-opening{grid-template-columns:minmax(0,1fr);gap:26px}.cl-entry-readings{grid-template-columns:minmax(0,1fr);gap:24px}.cl-entry-readings>div{grid-row:auto;display:block}.cl-entry-readings dt>span:last-child{min-height:0}.cl-entry-readings dt{padding:26px 26px 0}.cl-page .cl-entry-readings dd{padding:0 26px 26px}.cl-entry-readings>div:before{left:26px;right:26px}}
@media(max-width:500px){.cl-library-entry{padding:26px 20px}.cl-entry-opening{margin-bottom:28px}.cl-entry-symbol{width:62px;height:66px;margin-bottom:20px}.cl-entry-context{margin-top:28px;padding-top:24px}}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.cl-entry-readings>div{transition:border-color .25s,box-shadow .25s}.cl-entry-readings>div:hover{border-color:var(--ip-teal);box-shadow:0 8px 24px #041f2d30}}
/* Separate the concluding calculation note from the three preceding readings. */
.cl-calculations .cl-scope-note{margin-top:48px}
@media(max-width:600px){.cl-calculations .cl-scope-note{margin-top:40px}}

/* Frosted reading panels: specular edges without changing the content grid. */
.cl-entry-readings>div:after{content:"";position:absolute;inset:7px;border:1px solid #ffffff80;border-radius:7px;pointer-events:none;background:linear-gradient(125deg,#ffffff45,transparent 38%,transparent 76%,#3bc5f30c)}
.cl-entry-readings>div:before{border-radius:0 0 3px 3px;box-shadow:0 1px 8px #3bc5f333}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.cl-entry-readings>div:hover{border-color:#fff;box-shadow:inset 0 1px 0 #fff,inset 0 -1px 0 #7aaabb66,0 18px 34px #02192445}}
