/* PLA product page: imagery, selectable formats and an email quote list. */
.pla-page .detail-hero{grid-template-columns:1.04fr .96fr;gap:44px;padding:26px 0 48px}
.pla-page .gallery{position:sticky;top:110px}
.pla-gallery-layout{display:grid;grid-template-columns:66px minmax(0,1fr);gap:15px;align-items:start}
.pla-page .gallery-main{grid-column:2;grid-row:1;width:100%;height:auto;aspect-ratio:.9;background:#f1f1f1;border-radius:8px}
.pla-page .gallery-main img{object-fit:contain}
.pla-page .gallery-thumbs{grid-column:1;grid-row:1;display:flex;flex-direction:column;gap:9px;margin:0;max-height:490px;overflow-y:auto;scrollbar-width:thin;padding:1px}
.pla-page .gallery-thumbs .thumb{flex-shrink:0;width:100%}
.pla-page .thumb{border-radius:6px}
.pla-page .gallery-thumbs img{object-fit:cover}
.pla-brand{display:inline-block;background:var(--forest);color:white;padding:6px 12px;border-radius:3px;font-size:12px;font-weight:800;letter-spacing:.06em}
.pla-page .product-configurator h1{font-size:44px;letter-spacing:-.045em;margin:12px 0 15px}
.pla-page .product-intro{font-size:14px;line-height:1.7;margin-bottom:23px}
.pla-page .product-color-options{border:0;padding:0 0 18px}
.pla-page .color-heading{margin-bottom:9px}
.pla-page .color-heading p{font-size:16px}
.pla-page .color-heading strong{font-weight:700;color:var(--forest)}
.pla-page .color-heading #selectedColorName{font-weight:400;color:var(--muted)}
.pla-page .color-choice-grid{grid-template-columns:repeat(15,minmax(0,1fr));gap:10px 6px;padding:3px;overflow:visible;max-height:none}
.pla-page .color-choice{aspect-ratio:1;max-width:42px;width:100%;border-radius:50%}
.pla-color-dot{display:block;width:100%;height:100%;padding:3px;border:2px solid #f1f2f1;border-radius:50%;background:var(--swatch);background-clip:content-box;transition:border-color .15s ease}
.pla-page .color-choice input{border-radius:50%}
.pla-page .color-choice input:focus-visible+.pla-color-dot{outline:2px solid var(--green-dark);outline-offset:3px}
.pla-page .color-choice:hover .pla-color-dot{border-color:#a2b6ac}
.pla-page .color-choice input:checked+.pla-color-dot{border-color:#343b43}
.pla-page .color-choice:hover::after{content:attr(title);position:absolute;bottom:100%;left:50%;transform:translateX(-50%);z-index:5;padding:5px 8px;background:var(--forest);color:white;border-radius:4px;font-size:11px;white-space:nowrap;pointer-events:none}
.pla-specs{display:grid;gap:17px}
.pla-page .specification-group legend{font-weight:700;color:var(--forest);margin-bottom:9px;font-size:14px}
.spec-value{font-weight:400;color:var(--muted);margin-left:5px}
.pla-page .specification-choices{gap:8px}
.pla-page .specification-choice{min-width:0;flex:0 1 auto}
.pla-page .specification-choice>span{min-height:40px;padding:9px 17px;border:1px solid transparent;background:#f3f4f2;border-radius:4px;font-size:13px;font-weight:650}
.pla-page .specification-choice input:checked+span{background:var(--forest);color:white;border-color:var(--forest);box-shadow:none}
.pla-request-row{display:grid;grid-template-columns:96px 1fr;align-items:end;gap:12px;margin-top:22px}
.pla-request-row label{display:block;font-size:12px;color:var(--forest);font-weight:650}
.pla-request-row input{width:100%;height:48px;margin-top:6px;border:1px solid var(--line);border-radius:5px;padding:10px;font:inherit}
.pla-request-row button{width:100%;height:48px;justify-content:center;border-radius:5px;font:inherit;font-size:13px;font-weight:750;cursor:pointer}
.pla-quote-status{font-size:12px;color:var(--forest);line-height:1.5;margin:10px 0 0;min-height:18px}
.pla-quote-panel{margin-top:12px;border:1px solid var(--line);border-radius:8px;padding:0 16px;background:#fcfdfb}
.pla-quote-panel[hidden]{display:none}
.pla-quote-panel summary{padding:14px 0;font-size:13px;font-weight:700;cursor:pointer;color:var(--forest)}
.pla-quote-list{list-style:none;margin:0 0 15px;padding:0;max-height:260px;overflow:auto}
.pla-quote-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--line);font-size:12px;line-height:1.5}
.pla-quote-list strong{display:block;color:var(--forest)}
.pla-quote-list button{border:0;padding:7px;background:none;font:inherit;font-size:12px;color:var(--green-dark);cursor:pointer;text-decoration:underline}
.pla-quote-panel .btn-primary{width:100%;justify-content:center;margin-bottom:8px;font-size:12px}
.pla-quote-panel p{font-size:11px!important;line-height:1.5;margin:6px 0 16px}
.pla-page .product-tabs .container{justify-content:center;gap:42px}
.pla-feature{padding:82px 0}
.pla-feature .columns-2{gap:65px}
.pla-feature h2{font-size:clamp(30px,3.3vw,47px);line-height:1.12;letter-spacing:-.045em;margin:12px 0 22px}
.pla-feature p{color:var(--muted);font-size:15px;line-height:1.8;margin:12px 0}
.pla-feature .zoomable{border-radius:12px;overflow:hidden;background:#f2f4ef}
.pla-feature .zoomable img{display:block;width:100%;aspect-ratio:1.35;object-fit:cover}
.pla-feature.winding .zoomable img,.pla-feature.extrusion .zoomable img{object-fit:contain;aspect-ratio:auto;height:auto}
.pla-lead-block{text-align:center;max-width:780px;margin:0 auto 35px}
.pla-lead-block p{max-width:660px;margin:0 auto}
.pla-wide-photo{max-width:none;margin:0 auto;border-radius:14px;overflow:hidden}
.pla-wide-photo img{width:100%;height:auto;display:block}
.pla-proof-list{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:11px}
.pla-proof-list li{padding-left:21px;position:relative;font-size:14px;color:var(--forest)}
.pla-proof-list li::before{content:"✓";position:absolute;left:0;color:var(--green-dark)}
.pla-fit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:27px}
.pla-fit-grid article{background:white;border:1px solid var(--line);border-radius:9px;padding:24px}
.pla-fit-grid h3{font-size:23px;margin:0 0 10px;color:var(--forest)}
.pla-fit-grid p{font-size:13px;margin:0;line-height:1.65}
/* Keep all five applications in one continuous row at every width. */
.pla-app-grid{display:grid;grid-template-columns:repeat(5,minmax(220px,1fr));gap:16px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#9db5a7 #f0f6f0;padding:2px 2px 12px}
.pla-app-grid:focus-visible{outline:2px solid var(--green-dark);outline-offset:5px;border-radius:12px}
.pla-app-grid figure{margin:0;min-width:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:white;scroll-snap-align:start}
.pla-app-grid img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#f4f3ec;display:block}
.pla-app-grid figcaption{padding:18px 16px 20px}
.pla-app-grid h3{margin:0 0 10px;font-size:18px;letter-spacing:-.025em;line-height:1.25}
.pla-app-grid p{font-size:12px;line-height:1.75;margin:0}
.pla-feature .pla-app-scroll-hint{display:none;font-size:12px;margin:7px 0 0;color:var(--muted)}
@media(max-width:1200px){.pla-feature .pla-app-scroll-hint{display:block}}
@media(max-width:550px){.pla-app-grid{grid-template-columns:repeat(5,minmax(78vw,1fr));gap:14px}.pla-app-grid figcaption{padding:20px}.pla-app-grid h3{font-size:20px}.pla-app-grid p{font-size:14px}}
/* Responsive PLA parameter sheet. Keep all values selectable and accessible. */
.pla-settings-panel{overflow:hidden;border:1px solid var(--line);border-radius:12px;background:white}
.pla-parameter-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 26px;background:var(--forest);color:white}
.pla-parameter-heading h3{margin:0;color:inherit;font-size:21px;letter-spacing:-.02em}
.pla-parameter-heading>span{font-size:11px;font-weight:650;letter-spacing:.12em;color:#d8eadd}
.pla-settings-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}
.pla-setting{display:grid;grid-template-columns:44% 56%;min-width:0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.65}
.pla-setting:nth-child(odd){border-right:1px solid var(--line)}
.pla-setting:last-child{grid-column:1/-1;grid-template-columns:22% 78%;border:0}
.pla-setting dt,.pla-setting dd{margin:0;padding:19px 23px;display:flex;align-items:center;min-width:0}
.pla-setting dt{font-weight:550;color:var(--muted)}
.pla-setting dd{font-weight:650;color:var(--forest);background:#f7faf7;border-left:1px solid var(--line);font-variant-numeric:tabular-nums}
.pla-mechanical-panel{margin-top:38px}
.pla-mechanical-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}
.pla-mechanical-heading h3{font-size:24px;margin:0;letter-spacing:-.025em}
.pla-mechanical-heading>span{font-size:10px;font-weight:650;letter-spacing:.12em;color:var(--muted)}
.pla-property-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:0}
.pla-property{display:flex;flex-direction:column;justify-content:space-between;gap:24px;padding:23px;background:white;border:1px solid var(--line);border-radius:10px}
.pla-property dt{font-size:13px;line-height:1.5;font-weight:550;color:var(--muted)}
.pla-property dd{display:flex;align-items:baseline;flex-wrap:wrap;gap:7px;margin:0;color:var(--forest)}
.pla-property strong{font-size:36px;line-height:1;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.pla-property dd span{font-size:12px;font-weight:550;white-space:nowrap}
.pla-feature .pla-parameter-note{font-size:12px;line-height:1.7;max-width:none;text-align:center;margin:24px 0 0}
@media(max-width:1000px){.pla-setting dt,.pla-setting dd{padding:17px}.pla-setting{font-size:13px}.pla-property{padding:20px 16px}.pla-property strong{font-size:32px}}
@media(max-width:800px){.pla-settings-list{grid-template-columns:1fr}.pla-setting,.pla-setting:last-child{grid-template-columns:43% 57%}.pla-setting:nth-child(odd){border-right:0}.pla-setting dt,.pla-setting dd{padding:17px 20px}.pla-property-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pla-property:last-child{grid-column:span 2}}
@media(max-width:550px){.pla-parameter-heading{padding:19px 18px}.pla-parameter-heading h3{font-size:19px}.pla-setting,.pla-setting:last-child{grid-template-columns:43% 57%}.pla-setting dt,.pla-setting dd{padding:16px 13px}.pla-setting{font-size:12px;line-height:1.65}.pla-mechanical-panel{margin-top:28px}.pla-mechanical-heading h3{font-size:22px}.pla-mechanical-heading>span{display:none}.pla-property-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pla-property{padding:19px;gap:20px}.pla-property:last-child{flex-direction:row;align-items:center;gap:16px}.pla-property:last-child dt{max-width:50%}.pla-property strong{font-size:34px}.pla-feature .pla-parameter-note{text-align:left}}
.pla-videos{border-top:1px solid var(--line);scroll-margin-top:140px}
.pla-video-stage{max-width:1050px;margin:0 auto;aspect-ratio:16/9;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:var(--forest)}
.pla-video-placeholder{position:relative;width:100%;height:100%}
.pla-video-placeholder>img{display:block;width:100%;height:100%;object-fit:cover}
.pla-video-caption{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:space-between;gap:25px;padding:35px;background:linear-gradient(180deg,transparent 45%,rgba(8,46,34,.9) 100%);color:white}
.pla-video-caption span{font-size:10px;font-weight:700;letter-spacing:.16em;color:#d9ebdf}
.pla-video-caption h3{margin:10px 0 0;font-size:27px;line-height:1.2;letter-spacing:-.025em;color:white}
.pla-feature .pla-video-status{flex-shrink:0;margin:0;padding:9px 14px;border:1px solid #c2d9ca80;border-radius:999px;background:#103d2d99;color:#fff;font-size:11px;line-height:1.5}
.pla-video-stage>iframe,.pla-video-stage>video{display:block;border:0;width:100%;height:100%;background:#0b2119}
@media(max-width:800px){.pla-videos{scroll-margin-top:125px}.pla-video-caption{padding:25px}.pla-video-caption h3{font-size:23px}}
@media(max-width:550px){.pla-video-stage{aspect-ratio:auto}.pla-video-placeholder>img{height:auto;aspect-ratio:16/9}.pla-video-caption{position:static;display:block;padding:23px;background:var(--forest)}.pla-video-caption h3{font-size:22px}.pla-feature .pla-video-status{display:inline-block;margin-top:18px}.pla-video-stage>iframe,.pla-video-stage>video{height:auto;aspect-ratio:16/9}}
@media(max-width:1050px){.pla-page .detail-hero{gap:30px}.pla-page .color-choice-grid{grid-template-columns:repeat(10,minmax(0,1fr));max-width:440px}.pla-page .specification-choice>span{padding:9px 12px}.pla-feature .columns-2{gap:35px}}
@media(max-width:800px){.pla-page .detail-hero{grid-template-columns:1fr;padding-top:24px;gap:30px}.pla-page .gallery{position:static}.pla-page .gallery-main{aspect-ratio:1}.pla-page .product-configurator{max-width:none}.pla-page .color-choice-grid{grid-template-columns:repeat(15,minmax(0,1fr));max-width:680px}.pla-page .product-configurator h1{font-size:42px}.pla-page .product-tabs .container{justify-content:flex-start;gap:24px}.pla-feature{padding:55px 0}.pla-feature .columns-2{grid-template-columns:1fr;gap:28px}.pla-feature .columns-2 .feature-copy{order:-1}.pla-fit-grid{gap:10px}.pla-fit-grid article{padding:18px}}
@media(max-width:550px){.pla-page .detail-hero{padding-bottom:40px}.pla-page .gallery-main{aspect-ratio:1.12}.pla-page .gallery-thumbs{gap:7px}.pla-page .product-configurator h1{font-size:38px}.pla-page .color-choice-grid{grid-template-columns:repeat(10,minmax(0,1fr));gap:9px 5px}.pla-page .product-intro{font-size:14px}.pla-page .specification-choices{gap:7px}.pla-page .specification-choice>span{padding:9px 13px;font-size:13px}.pla-page .pla-request-row{grid-template-columns:77px 1fr}.pla-fit-grid{grid-template-columns:1fr}.pla-fit-grid article{display:grid;grid-template-columns:88px 1fr;gap:12px}.pla-fit-grid h3{font-size:20px;margin:0}.pla-feature h2{font-size:32px}}
@media(max-width:550px){.pla-gallery-layout{grid-template-columns:49px minmax(0,1fr);gap:10px}.pla-page .gallery-main{aspect-ratio:1}.pla-page .gallery-thumbs{max-height:calc(100vw - 93px)}}

.pla-quote-status:empty{display:none}
.pla-page .pla-overview{padding:36px 0 12px}
.pla-overview .zoomable img{aspect-ratio:auto;object-fit:contain;will-change:auto}
@media(max-width:800px){.pla-page .pla-overview{padding:24px 0 0}.pla-page .detail-hero{padding-bottom:38px}}
