
.cp-page{color:#323263;--cp-copy:#50556e;--cp-soft:#edf1f5;overflow-wrap:break-word}
.cp-page .ed-crumbs{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:24px 0;font-size:13px;color:#5b6078}
.cp-page .cp-hero{position:static;border:0;box-shadow:none;background:white;padding:36px 0 64px}
.cp-page .cp-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}
.cp-page .cp-hero h1{font-size:clamp(38px,4vw,60px);line-height:1.12;letter-spacing:-.04em;margin:22px 0 26px;max-width:20ch}
.cp-page .cp-hero p{font-size:17px;line-height:1.8;color:var(--cp-copy);max-width:54ch}
.cp-page .cp-hero figure{margin:0}
.cp-page .cp-hero img{width:100%;height:auto;aspect-ratio:1.25;object-fit:cover;display:block;--photo-edge:clamp(2px,.35vw,5px);mask-image:linear-gradient(90deg,transparent,#000 var(--photo-edge),#000 calc(100% - var(--photo-edge)),transparent)}
.cp-page figcaption{font-size:13px;text-align:center;line-height:1.6;color:var(--cp-copy);margin-top:13px}
.cp-page .cp-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:28px}
.cp-page .btn{font-size:14px}
.cp-page .cp-section{padding-block:72px;scroll-margin-top:30px}
.cp-page h2{font-size:clamp(28px,2.8vw,40px);line-height:1.2;letter-spacing:-.035em}
.cp-page .cp-section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:35px}
.cp-page .cp-section-head .eyebrow{margin-bottom:19px}
.cp-page .cp-section-head>p{color:var(--cp-copy);font-size:16px;line-height:1.8;max-width:39ch}
.cp-page .cp-soft{background:#edf1f5}
.cp-page .cp-navy{background:#323263;color:white}
.cp-page .cp-navy :is(h2,h3,a,b){color:white}
.cp-page .cp-navy :is(p,.eyebrow){color:#d6d7e7}
.cp-page .cp-number{color:#bf292d}
.cp-page .cp-navy .cp-number{color:#ff9d9f}
.cp-page .cp-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px;margin-top:45px}
.cp-page .cp-principles h3,.cp-page .cp-principles .cp-number{font-size:23px}.cp-page .cp-principles h3{line-height:1.3;letter-spacing:-.025em;margin:18px 0 16px}
.cp-page .cp-principles p{font-size:16px;line-height:1.8;margin-bottom:23px}
.cp-page .link{font-size:14px}
.cp-page .cp-search{max-width:660px;margin:25px 0 36px}
.cp-page .cp-search label{display:block;font-size:14px;margin-bottom:11px}
.cp-page .cp-search>div{display:flex;gap:10px}
.cp-page .cp-search input,.cp-page .ed-search input{padding:14px 16px;border:1px solid #bbc3d1;color:#323263;font:inherit;background:#fff;min-width:0;width:100%;font-size:16px;border-radius:2px}
.cp-page .cp-search-reset{margin-bottom:22px}
.cp-page .cp-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;align-items:start}
.cp-page .cp-project{background:#fff;border:1px solid #d4dbe4;min-width:0}
.cp-page .cp-project summary{cursor:pointer;list-style:none}
.cp-page .cp-project summary::-webkit-details-marker{display:none}
.cp-page .cp-project-photo{display:block;background:#edf1f5;padding:14px}
.cp-page .cp-project-photo img{width:100%;height:210px;object-fit:contain;display:block}
.cp-page .cp-project-content{display:block;padding:24px}
.cp-page .cp-project-title{display:block;font-size:19px;font-weight:600;line-height:1.4;letter-spacing:-.015em}
.cp-page .cp-project-lead{display:block;color:var(--cp-copy);font-size:14px;line-height:1.7;margin-top:13px}
.cp-page .cp-open{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:13px;font-weight:600;margin-top:23px}
.cp-page .cp-open i{font-style:normal;font-size:22px}
.cp-page .cp-project-detail{padding:0 24px 24px;font-size:14px;line-height:1.8;color:var(--cp-copy)}
.cp-page .cp-project-detail p{margin:16px 0;text-align:left}
.cp-page .cp-project-detail img{max-width:100%;height:auto;display:block}
.cp-page .cp-project[open]{grid-column:span 2}
.cp-page .cp-project[open] .cp-project-photo img{height:280px}
.cp-page .cp-project[open] .cp-open i{transform:rotate(45deg)}
.cp-page .cp-project-more{margin-top:30px}
.cp-page .cp-project-more>summary{list-style:none;cursor:pointer;border-bottom:1px solid #bbc3d1;padding:20px 0;display:flex;justify-content:space-between;font-weight:600;font-size:16px}
.cp-page .cp-project-more>.cp-project-grid{margin-top:25px}
.cp-page .cp-split{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}
.cp-page .cp-split .eyebrow{margin-bottom:21px}
.cp-page .cp-split h2{margin-bottom:23px}
.cp-page .cp-split p{font-size:16px;line-height:1.8;color:var(--cp-copy);margin:0 0 25px}
.cp-page .cp-split figure{margin:0}
.cp-page .cp-split figure>img{width:100%;height:370px;object-fit:contain;display:block}
.cp-page .cp-lab-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.cp-page .cp-lab-gallery figure{margin:0}
.cp-page .cp-lab-gallery img{width:100%;height:400px;object-fit:cover;display:block}
.cp-page .cp-steps{margin:0;padding:0;list-style:none;counter-reset:step}
.cp-page .cp-steps li{counter-increment:step;position:relative;padding:0 0 24px 48px}
.cp-page .cp-steps li:before{content:counter(step);position:absolute;left:0;top:0;color:#ff9d9f;line-height:1.35}
.cp-page .cp-steps b,.cp-page .cp-steps li:before{font-size:22px}.cp-page .cp-steps b{line-height:1.35}
.cp-page .cp-steps p{margin-top:13px;color:#d6d7e7;font-size:16px}
.cp-page .cp-library-hero .cp-hero-grid{grid-template-columns:1.15fr 1fr}
.cp-page .cp-library-hero h1{max-width:none}
.cp-page .cp-search-panel{padding:35px;background:#edf1f5}
.cp-page .cp-search-panel h2{font-size:26px;margin-bottom:22px}
.cp-page .ed-search label{display:none}
.cp-page .ed-search>div{display:flex;gap:10px}
.cp-page .ed-search-btn{font:inherit;color:#fff;background:#323263;border:0;padding:13px 20px;font-size:14px}
.cp-page .cp-search-panel>p{font-size:13px;line-height:1.65;margin-top:18px}
.cp-page .cp-library-nav{padding-block:34px}
.cp-page .cp-library-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px}
.cp-page .cp-library-grid a{position:relative;display:block;padding:13px 0 22px;transition:transform .2s ease}
.cp-page .cp-library-grid h2,.cp-page .cp-library-grid .cp-number{font-size:22px}.cp-page .cp-library-grid h2{line-height:1.35;letter-spacing:-.02em;margin:15px 0 12px}
.cp-page .cp-library-grid p{font-size:14px;line-height:1.75;color:var(--cp-copy)}
.cp-page .cp-go{display:block;margin-top:24px}
.cp-page .cp-material-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.cp-page .ed-item{position:relative;display:flex;flex-direction:column;padding:0 0 24px;background:white;border-bottom:1px solid #ccd3dd;min-width:0;color:#323263}
.cp-page .ed-meta{font-size:12px;color:var(--cp-copy);display:flex;justify-content:space-between;gap:12px;margin:19px 0 13px}
.cp-page .ed-item-title{font-size:21px;font-weight:600;line-height:1.4;letter-spacing:-.02em;margin-bottom:16px}
.cp-page .ed-summary{font-size:14px;line-height:1.8;color:var(--cp-copy)}
.cp-page .ed-go{font-size:23px;margin-top:24px}
.cp-page .ed-card-photo{background:#edf1f5;display:flex;align-items:center;justify-content:center;height:210px;overflow:hidden}
.cp-page .ed-card-photo img{width:100%;height:100%;object-fit:contain}
.cp-page .ed-item:hover .ed-item-title{color:#323263}
.cp-page .ed-item:hover .ed-go{transform:translateX(4px)}
.cp-page a:focus-visible,.cp-page button:focus-visible,.cp-page summary:focus-visible{outline:2px solid #323263;outline-offset:4px}
.cp-page .cp-navy a:focus-visible{outline-color:white}
.cp-page .product-contact{background:#e8edf3!important}
.cp-page .product-contact .contact-copy p{font-size:16px}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.cp-page .cp-library-grid a:hover{transform:translateY(-3px)}.cp-page .cp-project-photo img{transition:transform .25s ease}.cp-page .cp-project summary:hover img{transform:scale(1.025)}}
@media(max-width:1000px){.cp-page .cp-hero-grid{gap:35px}.cp-page .cp-hero h1{font-size:40px}.cp-page .cp-principles{gap:25px}.cp-page .cp-project-grid{grid-template-columns:1fr 1fr}.cp-page .cp-library-grid{grid-template-columns:1fr 1fr;gap:20px 35px}.cp-page .cp-material-grid{gap:20px}}
@media(max-width:650px){
 .cp-page .cp-hero-grid,.cp-page .cp-library-hero .cp-hero-grid{grid-template-columns:1fr;gap:28px}
 .cp-page .cp-hero{padding:16px 0 40px}
 .cp-page .cp-hero h1{font-size:37px;margin:19px 0 23px}.cp-page .cp-hero p{font-size:15px;line-height:1.8}
 .cp-page .cp-hero img{aspect-ratio:1.5}
 .cp-page .cp-section{padding-block:43px}.cp-page .cp-section-head{display:block;margin-bottom:25px}.cp-page .cp-section-head>p{margin-top:20px}
 .cp-page .cp-section-head>a{display:inline-block;margin-top:22px}
 .cp-page .cp-principles,.cp-page .cp-project-grid,.cp-page .cp-split,.cp-page .cp-material-grid,.cp-page .cp-lab-gallery{grid-template-columns:1fr;gap:30px}
 .cp-page .cp-principles{margin-top:28px}.cp-page .cp-principles h3,.cp-page .cp-principles .cp-number{font-size:23px}.cp-page .cp-principles p{font-size:15px}
 .cp-page .cp-project[open]{grid-column:auto}.cp-page .cp-project-photo img{height:235px}
 .cp-page .cp-split figure>img{height:310px}.cp-page .cp-search-panel{padding:24px}
 .cp-page .cp-lab-gallery img{height:auto;max-height:450px;object-fit:contain}
 .cp-page .cp-library-grid{grid-template-columns:1fr 1fr;gap:22px}.cp-page .cp-library-grid h2,.cp-page .cp-library-grid .cp-number{font-size:19px}.cp-page .cp-library-grid p{font-size:13px}
 .cp-page .cp-library-nav{padding-block:22px}
 .cp-page .ed-card-photo{height:220px}.cp-page .ed-item-title{font-size:22px}.cp-page .ed-summary{font-size:15px}
 .cp-page .cp-steps p{font-size:15px}.cp-page .cp-search-panel h2{font-size:25px}
}
@media(prefers-reduced-motion:reduce){.cp-page *{transition:none!important}}

.cp-page a.btn::after,.cp-page a.link::after{content:none}

.cp-page.cp-company .product-contact{background:var(--cp-soft)!important}
