/* Extended catalog: same paper, graphite and muted green identity. */
.product-detail-link{font-size:13px;color:#45613c;border-bottom:1px solid #bcccb0;padding-block:8px}
.industry-section{padding-top:76px}
.industry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.industry-grid>a{background:#fff;border:1px solid #dce1d6;border-radius:18px;overflow:hidden}
.industry-grid img{height:230px;width:100%;object-fit:cover;transition:transform .5s}
.industry-grid>a:hover img{transform:scale(1.035)}
.industry-grid>a>div{padding:23px 25px}
.industry-grid h3{font-size:24px;margin-bottom:12px}
.industry-grid span{font-size:13px;color:#637355}
.custom-manufacturing{background:#23352f;color:#f3f4eb}
.custom-manufacturing-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:10%;align-items:center}
.custom-manufacturing-grid h2{font-size:clamp(30px,3.2vw,44px);margin-bottom:22px}
.custom-manufacturing-grid p:not(.eyebrow){font-size:17px;line-height:1.95;color:#ced9c6;margin-bottom:25px;max-width:640px}
.custom-manufacturing-grid>img{height:380px;width:100%;object-fit:contain;border-radius:20px;background:#1b2825}
.product-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:32px;align-items:start}
.product-hero-photo{border-radius:20px;overflow:hidden;background:#dce1d5}
.product-hero-photo img{width:100%;height:510px;object-fit:cover}
.product-hero-photo[data-portrait=true]{background:#1d2927}
.product-hero-photo[data-portrait=true] img{object-fit:contain}
.product-brief{background:#fff;border:1px solid #d9e0d1;border-radius:20px;padding:28px}
.custom-badge{display:inline-block;background:#e6eedc;color:#4d623e;border-radius:100px;padding:7px 13px;font-size:12px;margin-bottom:22px}
.technical-table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.8;text-align:start}
.technical-table caption{text-align:start;font-size:20px;font-weight:500;margin-bottom:14px}
.technical-table th,.technical-table td{padding:13px 0;border-bottom:1px solid #dce1d6;vertical-align:top}
.technical-table th{width:35%;font-weight:500;color:#43573c;padding-inline-end:20px}
.technical-table td{color:#687562}
.product-actions{display:flex;flex-wrap:wrap;gap:18px;align-items:center;margin-top:24px}
.print-sheet{background:none;border-bottom:1px solid #9bab8d;padding:8px 0;font-size:12px;color:#567247}
.configuration-note{font-size:12px;color:#76816f;line-height:1.9;margin-top:22px}
.resource-section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}
.resource-section-heading h2{font-size:clamp(27px,2.8vw,38px);letter-spacing:-.6px}
.resource-section-heading p:not(.eyebrow){font-size:14px;color:#6b7860}
.resource-gallery{padding-bottom:80px}
.resource-gallery .gallery-stage{height:560px;max-height:none;background:#1d2927;border-radius:18px}
.resource-gallery .gallery-caption{font-size:15px}
.resource-gallery .gallery-thumbnails{gap:12px}
.resource-gallery .gallery-thumbnail{width:104px;height:78px}
.gallery-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}
.gallery-filters button{background:#fff;border:1px solid #cbd6bf;border-radius:100px;padding:9px 16px;font-size:13px;color:#4d6540}
.gallery-filters button[aria-pressed=true]{background:#263a30;color:#fff;border-color:#263a30}
.gallery-fallback{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.gallery-fallback figure{margin:0}.gallery-fallback img{height:250px;width:100%;object-fit:contain;background:#1d2927}.gallery-fallback figcaption{font-size:13px;padding-top:12px}
.resource-related{padding-bottom:80px}
.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.related-grid>a{background:#fff;border:1px solid #d9e0d1;border-radius:16px;overflow:hidden}
.related-grid img{height:240px;width:100%;object-fit:contain;background:#e5e9de}
.related-grid span{display:flex;justify-content:space-between;gap:20px;padding:20px 22px;font-size:18px;line-height:1.6}
.related-grid b{font-size:23px;font-weight:400;color:#668256}
.case-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}
.case-links>a{border:1px solid #d5ddce;background:#fff;border-radius:18px;overflow:hidden}
.case-links img{height:290px;width:100%;object-fit:cover}
.case-links>a>div{padding:25px}.case-links h3{font-size:25px;margin-bottom:15px}.case-links p:not(.eyebrow){font-size:15px;color:#6c7863;line-height:1.9;margin-bottom:22px}.case-links .eyebrow{display:block;margin-bottom:10px;color:#708363}
.case-story{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding-top:50px}
.case-story h2,.case-scope h2{font-size:28px;margin-bottom:16px}.case-story p{font-size:17px;color:#64735c;line-height:2}.story-number{display:block;font:11px var(--latin);color:#7f9270;margin-bottom:18px;letter-spacing:1px}
.case-scope{padding-top:45px}.case-scope .technical-table{max-width:850px}.case-scope .technical-table caption{display:none}
.technical-fields{border:1px solid #cdd8c2;border-radius:14px;padding:20px;margin:22px 0;color:#4f653f;min-width:0}
.technical-fields[hidden]{display:none}.technical-fields legend{font-size:15px;padding-inline:8px}.technical-fields .form-note{font-size:12px;margin-bottom:15px}.technical-fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.technical-fields label{font-size:12px}.technical-fields input{width:100%;min-width:0}
.product-page .site-footer{margin-top:15px}
@media(max-width:1200px){.desktop-nav{display:none}.menu-toggle{display:flex}}
.products-dropdown{position:static;display:flex;align-items:center}
.products-trigger{display:flex;align-items:center;gap:9px;padding:9px 0;background:transparent;color:inherit;font-size:inherit;white-space:nowrap}
.products-chevron{display:inline-block;width:6px;height:6px;border-inline-end:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);margin-top:-3px;transition:transform .18s}
.products-trigger[aria-expanded=true] .products-chevron,.mobile-products[open] .products-chevron{transform:rotate(225deg);margin-top:3px}
 .products-panel{position:absolute;inset-inline:5.5%;top:100%;width:auto;max-width:980px;margin-inline:auto;padding:22px;display:grid;grid-template-columns:340px minmax(0,1fr);gap:28px;max-height:calc(100dvh - 120px);overflow-y:auto;overscroll-behavior:contain;background:#f6f7f2;color:#1c2825;border:1px solid #d8ded1;border-radius:0 0 20px 20px;box-shadow:0 18px 55px #0005;animation:products-dropdown-in .18s ease-out}
.products-list-label{font-size:11px;letter-spacing:.8px;color:#6b775f;margin:0 12px 12px}
.products-department-list{border-inline-end:1px solid #d8ded1;padding-inline-end:18px}
.desktop-nav .products-department-list a{display:flex;align-items:center;gap:13px;padding:15px 12px;border-radius:10px;line-height:1.65;font-size:14px;transition:background .15s,color .15s}
.desktop-nav .products-panel a:after{display:none}
.desktop-nav .products-department-list a:hover,.desktop-nav .products-department-list a:focus-visible,.desktop-nav .products-department-list a.is-previewed{background:#e6eddd;color:#496034}
.products-preview-image{width:100%;height:215px;object-fit:cover;border-radius:12px;background:#243833}
.products-preview h3{font-size:23px;line-height:1.5;margin-top:15px}
.products-preview>p{font-size:14px;line-height:1.85;color:#5a655f;margin:8px 0 16px}
.products-preview-items{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.desktop-nav .products-preview-items a{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid #d8ded1;border-radius:9px;font-size:12px;line-height:1.65;padding:11px 12px}
.desktop-nav .products-preview-items a:hover{background:#e6eddd}
.desktop-nav .products-preview-link{display:inline-flex;align-items:center;gap:30px;margin-top:10px;font-size:13px;font-weight:600;color:#496034;padding:8px 0}
.products-preview a:focus-visible{outline-offset:2px}
.department-number{color:#789360;font-size:11px;font-variant-numeric:tabular-nums}
.site-header.has-open-products{background:rgba(21,27,29,.97)}
.mobile-products summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;font-size:23px;padding:13px 0;border-bottom:1px solid #ffffff18}
.mobile-products summary::-webkit-details-marker{display:none}
.mobile-nav [data-mobile-departments]{padding:8px 0 12px}
.mobile-nav [data-header-department]{display:flex;align-items:center;gap:14px;padding:11px 12px;font-size:16px;line-height:1.7;border:0;border-radius:8px}
.mobile-nav [data-header-department]:hover,.mobile-nav [data-header-department]:focus-visible{background:#ffffff0b}
.mobile-nav{max-height:calc(100dvh - 80px);overflow-y:auto;overscroll-behavior:contain}
@keyframes products-dropdown-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.products-panel{animation:none}.products-chevron{transition:none}}
@media(min-width:1201px){.desktop-nav{gap:22px}.desktop-nav a{font-size:12px}.site-header{gap:22px}.header-actions{gap:16px}}
@media(max-width:900px){.product-hero-grid{grid-template-columns:1fr}.product-hero-photo img{height:460px}.industry-grid{gap:15px}.industry-grid img{height:190px}.industry-grid>a>div{padding:20px}.industry-grid h3{font-size:21px}.custom-manufacturing-grid{gap:6%}.custom-manufacturing-grid>img{height:300px}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.resource-gallery .gallery-stage{height:450px}.case-links img{height:240px}}
@media(max-width:560px){.industry-grid,.custom-manufacturing-grid,.related-grid,.case-links,.case-story{grid-template-columns:1fr}.industry-grid{gap:22px}.industry-grid img{height:240px}.industry-grid h3{font-size:25px}.custom-manufacturing-grid{gap:30px}.custom-manufacturing-grid>img{height:280px}.custom-manufacturing-grid h2{font-size:30px}.custom-manufacturing-grid p:not(.eyebrow){font-size:16px}.product-hero-photo img{height:350px}.product-brief{padding:23px}.technical-table{font-size:14px}.technical-table th{width:37%}.technical-table caption{font-size:20px}.resource-section-heading{flex-direction:column;align-items:flex-start;gap:13px}.resource-section-heading h2{font-size:28px}.resource-gallery .gallery-stage{height:340px}.resource-gallery .gallery-thumbnail{width:80px;height:62px}.resource-gallery,.resource-related{padding-bottom:55px}.gallery-filters{gap:8px}.gallery-filters button{font-size:12px;padding:8px 12px}.case-story{gap:32px;padding-top:35px}.case-story p{font-size:16px}.case-links img{height:270px}.technical-fields-grid{grid-template-columns:1fr}.technical-fields{padding:15px}.technical-fields legend{font-size:14px}.gallery-fallback{grid-template-columns:1fr}.gallery-fallback img{height:320px}}
@media(prefers-reduced-motion:reduce){.industry-grid img{transition:none}.industry-grid>a:hover img{transform:none}}
@media print{html,body{background:white!important;color:#111!important}.site-header,.skip-link,.product-actions,.resource-gallery,.resource-related,.catalog-brief,.site-footer .footer-top,.site-footer .social-links,.site-footer .back-top{display:none!important}.catalog-hero{padding-top:0;padding-bottom:20px}.page-width{width:100%}.catalog-heading{grid-template-columns:1fr;gap:15px;margin-bottom:20px}.catalog-heading h1{font-size:26px!important}.catalog-heading p:not(.eyebrow){font-size:13px}.product-hero-grid{grid-template-columns:1fr 1fr;gap:20px}.product-hero-photo img{height:260px}.product-brief{padding:15px}.technical-table{font-size:12px}.technical-table caption{font-size:17px}.technical-table th,.technical-table td{padding:8px 0}.custom-badge{font-size:10px}.configuration-note{font-size:10px}.site-footer{padding-top:10px;background:white!important;color:#111!important;border-top:1px solid #aaa}.footer-contact{display:block}.footer-contact>div:nth-child(2){display:none}.footer-contact a{font-size:13px!important}.footer-bottom{font-size:9px}.product-hero-grid,.technical-table tr{break-inside:avoid}}

.resource-gallery .gallery-stage>img{height:100%;max-height:100%}

/* A single project explains design, manufacture and line integration. */
.build-story .section-heading>p{max-width:380px;line-height:1.9}
.build-story-layout{display:grid;grid-template-columns:.85fr 1.3fr;gap:45px;align-items:stretch}
.build-story-steps{display:flex;flex-direction:column;justify-content:center;gap:12px}
.build-story-step{display:flex;align-items:flex-start;gap:18px;padding:24px 22px;background:transparent;border:1px solid #ccd7c3;border-radius:16px;text-align:start;color:#607155;width:100%;transition:background .3s,border-color .3s,color .3s}
.build-story-step[aria-selected=true]{background:#e4ecd9;border-color:#a6bb92;color:#233b2c}
.build-story-number{font:11px var(--latin);color:#7e9470;padding-top:8px}
.build-story-step-copy{flex:1;min-width:0}
.build-story-step-title{display:block;font-size:23px;line-height:1.45;font-weight:500}
.build-story-step-description{display:none;font-size:15px;line-height:1.95;color:#62745a;margin-top:13px}
.build-story-step[aria-selected=true] .build-story-step-description{display:block}
.build-story-arrow{font:24px var(--latin);color:#7f966d;padding-top:2px}
.build-story-panel{position:relative;margin:0;background:#202d28;border-radius:22px;overflow:hidden;min-width:0;min-height:500px}
.build-story-photo{height:530px;padding:20px 20px 95px;overflow:hidden}
.build-story-photo img{width:100%;height:100%;object-fit:contain;object-position:center}
.build-story-photo img.is-changing{animation:build-story-reveal .65s cubic-bezier(.22,1,.36,1) both}
@keyframes build-story-reveal{from{clip-path:inset(0 100% 0 0);transform:scale(1.025)}to{clip-path:inset(0 0 0 0);transform:scale(1)}}
.build-story-caption{position:absolute;inset-inline:20px;bottom:20px;display:flex;flex-direction:column;gap:8px;padding:18px 22px;background:#2e463be6;border:1px solid #d5e5c92c;border-radius:14px;color:#f0f5e7;backdrop-filter:blur(12px)}
.build-story-caption>span:first-child{font:10px var(--latin);letter-spacing:1.6px;color:#c0d2b0}
.build-story-caption>span:last-child{font-size:15px;line-height:1.7}
.build-story-footer{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-top:23px;color:#708161}
.build-story-footer p{font-size:13px;line-height:1.8}
.build-story-footer .underlined-link{font-size:13px;white-space:nowrap}
@media(max-width:1000px){.build-story-layout{gap:25px;grid-template-columns:1fr 1.15fr}.build-story-step{padding:22px 19px;gap:14px}.build-story-step-title{font-size:21px}.build-story-step-description{font-size:14px}.build-story-photo{height:510px}}
@media(max-width:800px){.build-story-layout{grid-template-columns:1fr;gap:24px}.build-story-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:start}.build-story-step{flex-direction:column;gap:8px;padding:18px;min-height:120px}.build-story-number{padding:0}.build-story-step-title{font-size:19px}.build-story-step-description{display:none!important}.build-story-arrow{display:none}.build-story-panel{min-height:420px}.build-story-photo{height:470px}.build-story .section-heading>p{max-width:600px}.build-story-footer{align-items:flex-start}}
@media(max-width:560px){.build-story-step{min-height:128px;padding:16px 12px}.build-story-step-title{font-size:18px;line-height:1.55}.build-story-layout{gap:18px}.build-story-panel{min-height:0}.build-story-photo{height:390px;padding:16px 16px 105px}.build-story-caption{inset-inline:14px;bottom:14px;padding:16px}.build-story-caption>span:last-child{font-size:14px}.build-story-footer{flex-direction:column;gap:12px}.build-story-footer p{font-size:12px}}
@media(prefers-reduced-motion:reduce){.build-story-step{transition:none}.build-story-photo img.is-changing{animation:none}}

.build-story-current-description{display:none}
@media(max-width:800px){.build-story-current-description{display:block;font-size:16px;line-height:1.95;color:#62745a;margin:0}.build-story .build-story-layout{row-gap:20px}}

/* Increase RFQ form typography by 20% without changing other sections. */
#project-form h3{font-size:30px}
[dir=ltr] #project-form h3{font-size:28.8px}
#project-form label{font-size:14.4px}
#project-form input,#project-form select,#project-form textarea{font-size:16.8px}
[dir=ltr] #project-form input,[dir=ltr] #project-form select,[dir=ltr] #project-form textarea{font-size:15.6px}
#project-form .form-note,#project-form .form-feedback{font-size:13.2px}
#project-form .technical-fields .form-note{font-size:14.4px}
#project-form .technical-fields legend{font-size:18px}
#project-form .form-submit{font-size:16.8px}
@media(max-width:800px){#project-form h3{font-size:27.6px}}
@media(max-width:560px){#project-form h3{font-size:28.8px}#project-form .form-submit{font-size:15.6px}#project-form .technical-fields legend{font-size:16.8px}}

/* The complete customer-designed line is shown without cropping. */
.build-story-ball-wafer .build-story-panel{background:#e8eaea;min-height:0;align-self:center}
.build-story-ball-wafer .build-story-photo{height:auto;padding:0}
.build-story-ball-wafer .build-story-photo img{height:auto;aspect-ratio:1920/857;object-fit:contain}
.build-story-ball-wafer .build-story-caption{position:static;margin:0;border:0;border-radius:0;backdrop-filter:none;background:#2e463b}
.project-page[data-resource-key="PR-01"] .product-hero-photo{height:auto;min-height:0;background:#e8eaea}
.project-page[data-resource-key="PR-01"] .product-hero-photo img{height:auto;max-height:none;aspect-ratio:1920/857;object-fit:contain}
.case-result{padding:30px;background:#e6eddc;border-radius:16px;margin-top:28px}
.case-result h2{font-size:26px;margin-bottom:14px}
.case-result>p:not(.eyebrow){font-size:16px;line-height:1.95;color:#617059}
.case-process-stages{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0 0;padding:0}
.case-process-stages li{display:flex;gap:18px;padding:24px;background:#fff;border:1px solid #d8dfd2;border-radius:14px}
.case-stage-number{font:13px var(--latin);color:#789360;padding-top:7px}
.case-process-stages h3{font-size:21px;margin-bottom:9px}
.case-process-stages p{font-size:15px;line-height:1.9;color:#697562}
@media(max-width:650px){.case-process-stages{grid-template-columns:1fr}.case-process-stages li{padding:20px}.case-result{padding:24px}}

/* Adapt fabrication photo frames to the original picture, without letterboxing. */
.product-hero-photo[data-adaptive-frame=true]{--photo-max-height:510px;width:min(100%,calc(var(--photo-max-height)*var(--image-ratio)));max-width:100%;justify-self:center;aspect-ratio:var(--image-ratio)}
.product-hero-photo[data-adaptive-frame=true]>img{display:block;width:100%;height:100%;aspect-ratio:var(--image-ratio);object-fit:cover}
.resource-gallery .gallery-stage[data-adaptive-frame=true],.photo-gallery .gallery-stage[data-adaptive-frame=true]{--gallery-max-height:560px;width:min(100%,calc(var(--gallery-max-height)*var(--image-ratio)));height:auto;max-height:none;aspect-ratio:var(--image-ratio);margin-inline:auto}
.gallery-stage[data-adaptive-frame=true]>img{object-fit:cover}
.product-page:is([data-resource-key="cnc-milling"],[data-resource-key="cnc-laser-cutting"]) .gallery-fallback img{display:block;height:auto;object-fit:cover}
#fabrication-content>img{display:block;--photo-max-height:380px;width:min(100%,calc(var(--photo-max-height)*908/1210));height:auto;aspect-ratio:908/1210;justify-self:center;object-fit:cover}
@media(max-width:900px){.product-hero-photo[data-adaptive-frame=true]{--photo-max-height:460px}.resource-gallery .gallery-stage[data-adaptive-frame=true],.photo-gallery .gallery-stage[data-adaptive-frame=true]{--gallery-max-height:450px}}
@media(max-width:560px){.product-hero-photo[data-adaptive-frame=true]{--photo-max-height:350px}.resource-gallery .gallery-stage[data-adaptive-frame=true],.photo-gallery .gallery-stage[data-adaptive-frame=true]{--gallery-max-height:340px}#fabrication-content>img{--photo-max-height:360px}}
