/* Direction library: independent from the previous card-grid pattern. */
.direction-library{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;align-items:stretch}.library-item{min-height:402px;display:flex;flex-direction:column;border:1px solid #c4d5dc;background:#fff;overflow:hidden;transition:transform .25s,box-shadow .25s}.library-item:hover{transform:translateY(-7px);box-shadow:0 18px 36px rgba(21,58,78,.13)}.library-visual{height:154px;position:relative;overflow:hidden;background:#e8f2f6}.library-visual:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(32,92,121,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(32,92,121,.08) 1px,transparent 1px);background-size:15px 15px}.library-visual i{position:absolute;display:block}.item-profile .library-visual i:nth-child(1){width:102px;height:102px;border:18px solid #18374a;border-radius:50%;left:31px;top:26px}.item-profile .library-visual i:nth-child(2){width:55px;height:55px;border:9px solid var(--cyan);border-radius:50%;left:56px;top:51px}.item-profile .library-visual i:nth-child(3){width:105px;height:8px;background:#7bb9d6;right:-18px;bottom:29px;transform:rotate(-25deg)}.item-sheet .library-visual i:nth-child(1),.item-sheet .library-visual i:nth-child(2),.item-sheet .library-visual i:nth-child(3){width:135px;height:80px;left:50%;top:36px;transform:translateX(-50%) skewY(-17deg);border:1px solid #78a7bd}.item-sheet .library-visual i:nth-child(1){background:#204257;top:48px}.item-sheet .library-visual i:nth-child(2){background:#4e8199;top:41px}.item-sheet .library-visual i:nth-child(3){background:#a8cbd8;top:34px}.item-hose .library-visual i:nth-child(1){width:145px;height:90px;border:21px solid #182f40;border-bottom:0;border-radius:80px 80px 0 0;left:32px;top:51px}.item-hose .library-visual i:nth-child(2){width:101px;height:63px;border:10px solid var(--cyan);border-bottom:0;border-radius:60px 60px 0 0;left:54px;top:78px}.item-hose .library-visual i:nth-child(3){width:36px;height:36px;border:1px solid #789dad;border-radius:50%;right:35px;top:34px}.item-polymer .library-visual i:nth-child(1){width:38px;height:180px;background:#17364a;transform:rotate(90deg);top:-14px;left:104px}.item-polymer .library-visual i:nth-child(2){width:15px;height:180px;background:var(--cyan);transform:rotate(90deg);top:51px;left:52px}.item-polymer .library-visual i:nth-child(3){width:92px;height:92px;border-radius:50%;border:17px solid #a8c7d3;right:21px;top:31px}.library-info{padding:20px 22px 23px;display:flex;flex:1;flex-direction:column}.library-info>span{color:#6b8998;font:9px var(--mono);letter-spacing:.04em}.library-info h3{font-size:20px;line-height:1.1;letter-spacing:-.05em;margin:25px 0 9px}.library-info p{margin:0;color:#587384;font-size:11px;line-height:1.56}.library-info b{margin-top:auto;padding-top:22px;font-size:11px}.library-info em{font-style:normal;color:var(--cyan);margin-left:8px}

/* The selector result uses readable body copy rather than a dense technical panel. */
.selector-card{min-height:545px}.selector-copy>p:not(.kicker){font-size:16px;line-height:1.68}.result-step h3{font-size:clamp(30px,3.1vw,43px);line-height:1.02}.result-step>.result-summary{font-size:15px;line-height:1.55;margin:17px 0 26px}.result-grid{gap:14px;margin:0 0 27px}.result-grid>div{padding:19px}.result-grid span{font-size:11px;font-weight:500}.result-grid li{padding:7px 0;font-size:13px}.result-grid p{font-size:12px;line-height:1.6;margin-top:12px}.result-actions .button{min-height:49px;font-size:11px;padding:0 16px}

/* A plain-language alternative to a comparative dot table. */
.material-guide{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.material-guide article{min-height:300px;padding:24px;position:relative;background:#f8fcfd;border:1px solid #c5d7df}.material-guide article:before{content:"";position:absolute;width:100%;height:4px;top:-1px;left:-1px;background:var(--chip,#008ee7)}.material-chip{display:inline-block;padding:7px 10px;color:#fff;background:var(--chip,#008ee7);font:11px var(--mono);letter-spacing:.05em}.material-guide article:nth-child(1){--chip:#3c4850}.material-guide article:nth-child(2){--chip:#1c6271}.material-guide article:nth-child(3){--chip:#d87851}.material-guide article:nth-child(4){--chip:#3d8b77}.material-guide h3{margin:48px 0 9px;font-size:19px;line-height:1.13;letter-spacing:-.04em}.material-guide p{margin:0;color:#486474;font-size:12px;line-height:1.58}.material-guide small{position:absolute;bottom:21px;left:24px;right:24px;padding-top:11px;border-top:1px solid #d2e1e7;color:#718a96;font-size:10px;line-height:1.45}.guide-next{display:flex;align-items:center;gap:13px;margin-top:17px;padding:19px 22px;background:#123248;color:#d4e9f2;font-size:11px}.guide-next b{color:#fff;font-size:12px;margin-right:auto}.guide-next span{font:10px var(--mono);text-transform:uppercase}.guide-next i{font-style:normal;color:var(--cyan-light)}.guide-next a{padding:9px 12px;background:var(--cyan);color:#fff;font-size:10px;font-weight:800;white-space:nowrap}

/* Contact workbench, intentionally not a headline/form split. */
.contact-header{display:grid;grid-template-columns:1.4fr .6fr;gap:60px;align-items:end;margin-bottom:47px}.contact-header h2{font-size:clamp(37px,4.5vw,66px);grid-column:1}.contact-header>p:last-child{color:#a3bac6;font-size:15px;line-height:1.65;margin:0 0 7px}.contact-workbench{display:grid;grid-template-columns:1.35fr .65fr;border:1px solid #334d5c}.contact .request-form{background:#f8fcfd;border:0}.form-caption{grid-column:1/-1;display:flex;align-items:baseline;gap:11px;margin-bottom:7px;color:#0f3046}.form-caption b{color:var(--cyan);font:15px var(--mono)}.form-caption span{font:700 13px var(--sans)}.contact-route{padding:30px;background:#102535;border-left:1px solid #334d5c;display:flex;flex-direction:column}.contact-route>div{padding-bottom:21px;margin-bottom:20px;border-bottom:1px solid #2b4555}.contact-route>div:last-child{border:0;margin:0;padding:0}.contact-route span{display:block;margin-bottom:11px;color:#68ceff;font:9px var(--mono);letter-spacing:.07em}.contact-route a{display:block;margin:7px 0;color:#e0f0f6;font:12px var(--mono)}.contact-route a:hover{color:var(--cyan-light)}.contact-route small{color:#58c7ff;font-size:8px}.route-location{margin-top:auto}.route-location p{margin:0;color:#a8c0ca;font-size:12px;line-height:1.6}

@media(max-width:900px){.direction-library{grid-template-columns:repeat(2,1fr)}.contact-header{grid-template-columns:1fr;gap:19px}.contact-header>p:last-child{margin:0}.contact-workbench{grid-template-columns:1fr}.contact-route{border-left:0;border-top:1px solid #334d5c;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.contact-route>div{border:0;margin:0;padding:0}.route-location{margin:0}}
@media(max-width:560px){.direction-library,.material-guide{grid-template-columns:1fr}.library-item{min-height:330px}.library-visual{height:130px}.material-guide article{min-height:250px}.material-guide h3{margin-top:28px}.guide-next{align-items:flex-start;flex-wrap:wrap;gap:9px}.guide-next b{width:100%;margin:0 0 6px}.guide-next a{width:100%;text-align:center;margin-top:5px}.contact-workbench{margin-left:-20px;margin-right:-20px}.contact .request-form{padding:24px 20px}.contact-route{grid-template-columns:1fr;padding:24px 20px}.contact-route>div{padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid #2b4555}.contact-route>div:last-child{border:0;margin:0;padding:0}.selector-card{min-height:530px}.result-step h3{font-size:30px}.result-step>.result-summary{font-size:14px}.result-grid p{font-size:12px}}

/* --- pre-send polish --- */
.trust b{font-size:18px;line-height:1.2}
.selector{padding-top:clamp(58px,8vw,116px);padding-bottom:clamp(58px,8vw,116px)}
.manufacturing{padding-top:clamp(58px,8vw,116px)}
.application-grid article{display:flex;flex-direction:column}
.application-grid .app-icon{display:block;width:30px;height:30px;margin:18px 0 0;color:var(--cyan)}
.application-grid .app-icon svg{display:block;width:100%;height:100%}
.application-grid h3{margin:18px 0 7px}
.application-grid p{margin-top:auto}
html.anim .profile-lab .grid-fill{animation:bp-fade .45s ease both}
html.anim .profile-lab .profile-shape{animation:bp-fade .5s ease both .2s}
html.anim .profile-lab .dim,html.anim .profile-lab .callout,html.anim .profile-lab .point{animation:bp-fade .45s ease both .38s}
html.anim .profile-lab .dim-label,html.anim .profile-lab .note{animation:bp-fade .45s ease both .52s}
html.anim .profile-lab .product-reference,html.anim .hero .swatches{animation:bp-rise .5s ease both .66s}
@keyframes bp-fade{from{opacity:0}to{opacity:1}}
@keyframes bp-rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){html.anim .profile-lab .grid-fill,html.anim .profile-lab .profile-shape,html.anim .profile-lab .dim,html.anim .profile-lab .callout,html.anim .profile-lab .point,html.anim .profile-lab .dim-label,html.anim .profile-lab .note,html.anim .profile-lab .product-reference,html.anim .hero .swatches{animation:none}}
