.market-links .application-card-photo{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:200/175;overflow:hidden;background:#fff}
.application-card-photo img{display:block;width:100%;height:100%;object-fit:contain}
.application-rich-dialog{width:min(1100px,94vw);max-width:1100px}
.application-detail .application-intro{font-size:18px;line-height:1.65;max-width:950px;margin:0 0 28px}
.application-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin-bottom:28px}
.application-gallery figure{margin:0;min-width:0}
.application-gallery img{display:block;width:100%;height:240px;object-fit:contain;background:#fff}
.application-gallery figcaption{font-size:14px;line-height:1.5;color:var(--muted);margin-top:12px}
.application-gallery figure:nth-child(3){grid-column:1/-1;max-width:700px;margin:auto}
.application-gallery figure:nth-child(3) img{height:auto;max-height:330px}
.application-facts{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:28px 0}
.application-facts article{border-top:2px solid var(--blue);padding-top:18px}
.application-facts h3{font-size:20px}.application-facts p{margin:0}
.application-document{display:grid;grid-template-columns:190px 1fr;align-items:center;gap:28px;border-top:1px solid var(--line);padding-top:28px;margin-top:28px}
.application-document-cover{width:190px;height:auto;border:1px solid var(--line)}
.application-document-label{font-size:16px;font-weight:600;color:var(--blue);margin-bottom:8px}
.application-document h3{font-size:22px;margin-bottom:8px}.application-document p{margin-bottom:12px}
.application-document button{cursor:pointer;font:inherit}.application-document button[hidden]{display:none}
.application-document-viewer{grid-column:1/-1;min-width:0;scroll-margin-top:25px}
.application-document-viewer[hidden]{display:none}
.application-document-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:18px}
#detail-actions:empty{display:none}

.application-reference-hero{margin:0 0 30px}
.application-reference-hero img{display:block;width:100%;height:auto;max-height:700px;object-fit:contain;background:#fff}
.application-reference-hero figcaption{font-size:14px;line-height:1.5;color:var(--muted);margin-top:12px}

/* Solar overview: both complete images are visible together on opening. */
.solar-detail .application-intro{margin-bottom:16px;font-size:16px;line-height:1.5}
.solar-overview{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:24px;align-items:start;margin:0 0 20px}
.solar-overview figure{margin:0;min-width:0}
.solar-overview img{display:block;width:100%;height:min(380px,45dvh);object-fit:contain;background:#fff}
.solar-overview figcaption{font-size:14px;line-height:1.5;color:var(--muted);margin-top:8px;text-align:center}
.solar-detail .application-facts{margin-top:20px}

.battery-support-gallery{align-items:center}
.battery-innovation-award{display:flex;align-items:center;gap:26px;padding:24px 12px}
.battery-innovation-award img{width:135px;height:180px;object-fit:contain;flex:none}
.battery-innovation-award h3{font-size:22px;line-height:1.35;margin-bottom:12px}
.battery-innovation-award p{font-size:16px;line-height:1.6;margin:0}

.application-group{margin-top:30px}.application-group-heading{font:500 23px/1.35 Arial,Helvetica,sans-serif;margin:0;padding-bottom:12px;border-bottom:1px solid #dce4e9;color:#1b3443}.application-group+.application-group{margin-top:38px}.application-group .market-links{margin:20px 0 0}.battery-product-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}

/* One main photograph at a time, with native touch scrolling. */
.application-carousel{margin:0 0 20px;min-width:0}
.application-carousel-stage{position:relative}
.application-carousel-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;border:1px solid #e5eaee;border-radius:3px;background:#fff}
.application-carousel-track::-webkit-scrollbar{display:none}
.application-slide{flex:0 0 100%;width:100%;min-width:0;margin:0;scroll-snap-align:start;scroll-snap-stop:always}
.application-slide img{display:block;width:100%;height:440px;max-height:60vh;object-fit:contain;padding:12px 54px;box-sizing:border-box;background:#fff}
.application-slide figcaption{min-height:45px;box-sizing:border-box;margin:0;padding:10px 55px 12px;text-align:center;font:400 14px/1.5 Arial,Helvetica,sans-serif;color:#526775}
.application-slide figcaption a{color:inherit;text-decoration:underline}
.gallery-arrow{position:absolute;top:calc(50% - 24px);transform:translateY(-50%);display:grid;place-items:center;width:42px;height:48px;border:1px solid #d3dfe6;border-radius:3px;background:#fff;color:#173f58;font:400 32px/1 Arial,sans-serif;cursor:pointer;box-shadow:0 2px 9px #163b4c12}
.gallery-prev{left:10px}.gallery-next{right:10px}.gallery-arrow:hover{background:#eef4f7;border-color:#008cbc}
.gallery-controls{display:flex;justify-content:center;align-items:center;gap:18px;margin-top:10px;min-height:28px}
.gallery-dots{display:flex;gap:4px}.gallery-dot{width:26px;height:26px;padding:8px;border:0;background:transparent;cursor:pointer}.gallery-dot::before{content:"";display:block;width:10px;height:10px;border-radius:50%;background:#c7d3da}.gallery-dot[aria-pressed="true"]::before{background:#008cbc}
.gallery-counter{font:400 13px/1.4 Arial,sans-serif;color:#526775;min-width:36px}
.gallery-arrow:focus-visible,.gallery-dot:focus-visible,.application-carousel-track:focus-visible{outline:2px solid #008cbc;outline-offset:3px}
.application-carousel+.battery-innovation-award{border-top:1px solid #e2e8ed;border-bottom:1px solid #e2e8ed;padding:14px 12px;gap:22px;margin-bottom:24px}
.application-carousel+.battery-innovation-award img{width:78px;height:100px}
.application-carousel+.battery-innovation-award h3{font-size:20px;margin:0 0 7px}

/* Readable trailer diagram labels, independent of raster resolution. */
.trailer-diagram{position:relative;margin:12px 54px 0;aspect-ratio:1284/726}
.application-slide .trailer-diagram img{width:100%;height:100%;max-height:none;padding:0;object-fit:contain}
.trailer-marker{position:absolute;transform:translate(-50%,-50%);width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#075e68;color:#fff;border:2px solid #fff;box-shadow:0 1px 5px #0005;font:700 16px/1 Arial,sans-serif}
.trailer-diagram-key{list-style:none;padding:14px 54px 4px;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 18px}
.trailer-diagram-key li{display:flex;align-items:center;gap:8px;font:400 16px/1.35 Arial,sans-serif;color:#173d46}
.trailer-diagram-key li span{flex:none;display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#075e68;color:#fff;font-weight:700}
@media(max-width:650px){.trailer-diagram{margin-inline:38px}.trailer-diagram-key{padding-inline:38px;grid-template-columns:repeat(2,minmax(0,1fr))}}

.application-carousel-track{align-items:flex-start;overflow-y:hidden}
.trailer-dialog .application-slide > img{height:auto;max-height:none;aspect-ratio:auto}

/* Concise material benefits immediately below application galleries. */
.application-facts.material-metal-benefits{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:24px}
@media(max-width:700px){.application-facts.material-metal-benefits{grid-template-columns:1fr}}

/* Compact trailer overview with external surface annotations. */
.trailer-floor-callout{position:relative;aspect-ratio:1000/350;margin:10px 42px 0;background:#fff}
.trailer-dialog .application-slide .trailer-floor-callout>img{width:70%;height:100%;max-height:none;object-fit:contain;padding:0;margin:0;position:absolute;left:0;top:0}
.trailer-surface-label{position:absolute;left:75%;top:19%;width:24%;font:400 16px/1.4 Arial,Helvetica,sans-serif;color:#173f58;text-align:left}
.trailer-surface-label strong{font-weight:600}
.trailer-surface-leader{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.trailer-dialog .application-slide figcaption{min-height:0;padding-block:7px;font-size:13px}
.trailer-dialog .application-carousel{margin-bottom:12px}
.trailer-dialog .trailer-intro{font:400 17px/1.5 Arial,Helvetica,sans-serif;margin:12px 0 16px;color:#263d4a}
.trailer-key-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.trailer-key-points article{display:flex;gap:12px;align-items:flex-start;border-top:1px solid #dce5e9;padding-top:14px}
.trailer-key-points svg{flex:none;width:32px;height:34px;color:#008cbc}
.trailer-key-points h3{font:500 18px/1.3 Arial,Helvetica,sans-serif;margin:0 0 6px;color:#000}
.trailer-key-points p{font-size:15px;line-height:1.45;margin:0;color:#657781}
.trailer-concept-note{font-size:12px;line-height:1.5;color:#657781;margin:14px 0 0}

/* Two complementary applications, sharing the same thermoplastic platform. */
.trailer-use-cases{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.trailer-use-cases article{border-top:2px solid #008cbc;padding-top:12px}
.trailer-use-cases h3{font:500 18px/1.3 Arial,Helvetica,sans-serif;color:#000;margin:0 0 7px}
.trailer-use-cases p{font-size:15px;line-height:1.45;margin:0 0 12px;color:#526775}
.trailer-layer-strip{display:flex;flex-direction:column;gap:3px}
.trailer-layer-strip span{display:block;padding:3px 10px;font:400 13px/1.35 Arial,Helvetica,sans-serif;border:1px solid #dce5e9;background:#f5f8fa;color:#173f58;text-align:center}
.trailer-layer-strip span:first-child{background:#fff}
.floor-layer-strip span:first-child{background:#3f5058;color:#fff;border-color:#3f5058}
.trailer-benefits{display:flex;justify-content:space-between;gap:20px;margin-top:17px;padding:12px 0;border-top:1px solid #dce5e9;border-bottom:1px solid #dce5e9}
.trailer-benefits>span{display:flex;align-items:center;gap:9px;font-size:15px;color:#173f58}
.trailer-benefits svg{width:23px;height:23px;color:#008cbc;flex:none}
.trailer-dialog .trailer-concept-note{margin-top:9px}

/* Actual supplied surface photograph, cropped only in the circular detail. */
.trailer-surface-detail{position:absolute;left:75%;top:3%;width:24%;text-align:center;z-index:1}
.trailer-texture-inset{position:relative;width:76%;aspect-ratio:1;margin:0 auto 10px;border:2px solid #008cbc;border-radius:50%;overflow:hidden;background:#fff}
.trailer-dialog .application-slide .trailer-texture-inset img{position:absolute;left:-40%;top:-55%;width:180%;height:240%;max-width:none;max-height:none;padding:0;object-fit:fill}
.trailer-surface-detail p{font:400 15px/1.4 Arial,Helvetica,sans-serif;color:#173f58;margin:0}
.trailer-surface-detail strong{font-weight:600}

/* Trailer applications: each slide owns its title and explanation. */
.trailer-slide-title{margin:4px 54px 8px;color:#153d54;font-size:24px;line-height:1.25;font-weight:600}
.trailer-slide-copy{margin:16px 54px 8px;color:#405a69;font-size:16px;line-height:1.55;max-width:850px}
.trailer-wall-detail{position:absolute;left:73%;top:7%;width:27%;z-index:1}
.sidewall-layer-diagram{display:block;width:100%;height:auto}
.trailer-dialog .application-slide>img.trailer-skirt-photo{height:335px;max-height:42vh;width:calc(100% - 108px);object-fit:cover;object-position:center 54%;padding:0;margin:6px 54px}
.trailer-photo-credit{margin:0 54px 10px;font-size:11px;color:#6b7f8b;line-height:1.5}
.trailer-photo-credit a{color:inherit;text-decoration:underline}
@media(max-width:640px){
.trailer-slide-title{margin:6px 34px 8px;font-size:21px}
.trailer-slide-copy{margin:12px 18px 8px;font-size:14px}
.trailer-photo-credit{margin:0 18px 10px}
.trailer-wall-callout{aspect-ratio:1000/410;margin-left:20px;margin-right:20px}
.trailer-wall-detail{width:34%;left:66%;top:7%}
.trailer-dialog .application-slide .trailer-wall-callout>img{width:67%}

.trailer-dialog .application-slide>img.trailer-skirt-photo{height:230px;width:calc(100% - 68px);padding:0;margin:6px 34px}
}

.trailer-dialog .application-slide>img.trailer-approved-visual{display:block;width:100%;height:auto;max-height:none;aspect-ratio:1400/410;object-fit:contain;padding:0 18px}
.trailer-dialog .trailer-benefits{gap:16px;flex-wrap:wrap}
.trailer-dialog .trailer-benefits>span{display:flex;align-items:center;gap:8px;font-weight:600;white-space:nowrap}
.trailer-dialog .trailer-benefits svg{flex:none;width:26px;height:26px;color:#008cbc}

.trailer-dialog .application-carousel-track{border:0;border-radius:0;background:#fff;box-shadow:none}

.trailer-dialog .application-slide>img.trailer-sidewall-visual{aspect-ratio:1400/455}

.trailer-dialog .application-slide>img.trailer-skirt-expanded{aspect-ratio:1400/510;padding:0 24px}
.trailer-slide-copy.skirt-lead{font-weight:600;color:#173e54;margin-top:8px;margin-bottom:16px;font-size:19px}
.skirt-value-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin:0 54px 14px}
.skirt-value-grid article{border-top:2px solid #dbeaf0;padding-top:12px}
.skirt-value-grid svg{width:27px;height:27px;color:#008cbc;margin-bottom:7px}
.skirt-value-grid h4{font:600 16px/1.3 Arial,sans-serif;color:#173e54;margin:0 0 7px}
.skirt-value-grid p{font:400 14px/1.5 Arial,sans-serif;color:#496371;margin:0}
.skirt-evidence-note{margin:0 54px 12px;font:400 11px/1.5 Arial,sans-serif;color:#6b7f8b}
.skirt-evidence-note a{color:inherit;text-decoration:underline}
@media(max-width:640px){.skirt-value-grid{margin:0 18px 12px;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.skirt-evidence-note{margin-left:18px;margin-right:18px}}

.pressure-vessel-overview{display:grid;grid-template-columns:280px minmax(0,1fr);gap:38px;align-items:center}.pressure-vessel-overview>img{width:100%;height:400px;object-fit:contain}.pressure-vessel-benefits h3{font-size:19px;margin:18px 0 7px}.pressure-vessel-benefits p{margin:0}.pressure-vessel-overview .application-intro{margin-bottom:20px}

/* Shared trailer headings also serve as synchronized gallery navigation. */
.trailer-section-tabs{display:flex;gap:28px;align-items:stretch;margin:0 54px 18px;border-bottom:1px solid #dce5ea}
.trailer-section-tab{display:block;box-sizing:border-box;min-height:56px;appearance:none;flex:1;border:0;border-bottom:3px solid transparent;padding:13px 4px 12px;margin:0 0 -1px;background:transparent;color:#647985;font:600 21px/1.25 Arial,Helvetica,sans-serif;text-align:center;cursor:pointer;transition:color .15s,border-color .15s}
.trailer-section-tab[aria-pressed="true"]{color:#008cbc;border-bottom-color:#008cbc}
.trailer-section-tab:hover{color:#008cbc}
.trailer-section-tab:focus-visible{outline:2px solid #008cbc;outline-offset:3px;border-radius:2px}
.trailer-dialog .trailer-slide-copy{line-height:1.55;margin-top:16px;margin-bottom:12px}
@media(max-width:640px){.trailer-section-tabs{margin:0 18px 14px;gap:8px}.trailer-section-tab{font-size:16px;padding:11px 2px;min-height:52px}}

/* Start the trailer dialog with its application navigation. */
dialog.trailer-dialog{padding-top:10px;padding-bottom:16px}
.trailer-dialog .dialog-heading{position:sticky;top:-10px;z-index:3;height:0;min-height:0;padding:0;margin:0;border:0;background:transparent;overflow:visible}
.trailer-dialog #detail-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.trailer-dialog #close-dialog{position:absolute;right:0;top:0;width:40px;height:40px;line-height:1}
.trailer-dialog .trailer-section-tabs{margin-top:0;margin-bottom:8px}
.trailer-dialog .trailer-section-tab{min-height:48px;padding-top:9px;padding-bottom:9px}
.trailer-dialog .trailer-floor-callout{margin-top:0}
.trailer-dialog #detail-actions:empty{display:none}
.trailer-dialog .gallery-controls{margin-top:4px}
.trailer-dialog .application-carousel{margin-bottom:6px}
.trailer-dialog .trailer-benefits{margin-top:10px;padding-block:9px}
@media(max-width:640px){.trailer-dialog .trailer-section-tabs{margin-left:0;margin-right:42px;gap:4px}.trailer-dialog .trailer-section-tab{font-size:15px}}

/* Keep the richer Side Skirt slide within the shared trailer gallery height. */
.trailer-dialog .application-slide>img.trailer-skirt-expanded{height:clamp(100px,20vw,240px);aspect-ratio:auto;object-fit:contain}
.trailer-dialog .skirt-value-grid{gap:18px;margin-bottom:8px}
.trailer-dialog .skirt-value-grid article{padding-top:8px}
.trailer-dialog .skirt-value-grid svg{margin-bottom:4px}
.trailer-dialog .skirt-lead{margin-top:8px;margin-bottom:10px}

/* Start Application at its heading instead of its empty section padding. */
#applications{scroll-margin-top:-76px}
@media(max-width:850px){#applications{scroll-margin-top:-45px}}
