/* Shared type scale: 16px reading copy, 14px actions, 12px short labels. */
.eyebrow,.catalog-intro>.eyebrow,.drawing-toolbar .eyebrow,
.catalog-download .eyebrow,.material-stage>.eyebrow{font-size:12px;line-height:1.7;letter-spacing:1.2px}
.main-nav a,.header-quote{font-size:14px;line-height:1.6}
.main-nav a{color:#d1d6df}
.main-nav{gap:clamp(16px,2vw,31px)}
.language{font-size:12px;line-height:1.6}
.brand>span,.footer-brand>span{font-size:12px;letter-spacing:2.4px}
.site-header .brand>span{top:calc(100% - 12px);bottom:auto;line-height:1.2;padding:1px 0}
.button,.text-link,.hero-actions .button,.hero-actions>.text-link{font-size:14px;line-height:1.6}
.hero-description{font-size:16px;line-height:1.8;color:#c1c9d5}
.hero-annotation,.hero-annotation small{font-size:12px;line-height:1.7;letter-spacing:.6px;color:#c4cdd9}
.live-indicator,.hero-scene-controls .live-indicator{font-size:12px;line-height:1.6;letter-spacing:.5px;color:#c1c9d5}
.hero-mode-toggle{font-size:14px;line-height:1.6;min-height:44px}
.hero-bottom,.hero-model-note{font-size:12px;line-height:1.7;letter-spacing:.5px;color:#bdc6d2}
.strip-label,.strip-end{font-size:12px;line-height:1.6;letter-spacing:.6px}
.strip-end{color:#bdc6d2}
.production-strip>a{font-size:18px;line-height:1.5}
.production-strip>a span{font-size:12px;color:#b9c3d1}
.section-heading>p,.manufacturing-intro>p:last-child{font-size:16px;line-height:1.8;color:#c1c9d5}
.product-filters button{font-size:14px;min-height:44px;color:#c5cdda}
.product-filters sup{font-size:12px}
.product-row>span:first-child{font-size:12px;color:#b3bece}
.product-row.active>span:first-child{color:var(--gold)}
.product-row strong{font-size:16px;line-height:1.5}
.custom-request>span{font-size:14px;line-height:1.7;color:#bdc6d2}
.custom-request button,.catalog-entry-link{font-size:14px;line-height:1.6;min-height:44px}
.viewer-top{font-size:12px;line-height:1.6;letter-spacing:.5px;color:#c3cddc;gap:16px}
.viewer-caption>div>span{font-size:12px;line-height:1.6;letter-spacing:1px}
.viewer-source>span,.viewer-source button,#viewer-dimensions{font-size:14px;line-height:1.65}
.viewer-source button{min-height:44px;color:#d1d9e5}
#viewer-dimensions{color:#c3cddc}
.viewer-note{font-size:12px;line-height:1.7;color:#bdc6d2}
.viewer-mode-button,.profile-viewer:not(.studio-mode) .viewer-mode-button{font-size:14px;line-height:1.6;min-height:44px}
.finish-picker button{font-size:14px;line-height:1.5;min-height:48px;color:#cbd4e1}
.viewer-controls .icon-button{min-width:44px;min-height:44px}
.application-image>span{font-size:12px;line-height:1.7;letter-spacing:1px;color:#f1f3f6;text-shadow:0 1px 5px #000}
.application-card p{font-size:16px;line-height:1.8;color:#c2cbd8}
.visualization-note{font-size:14px;line-height:1.7;color:#bdc6d2}
.process-art-label{font-size:12px;line-height:1.7;letter-spacing:.8px;color:#e0e5ed;text-shadow:0 1px 5px #000}
.process-index{font-size:12px;line-height:2.6;color:#b4c0d1}
.process-description{font-size:16px;line-height:1.8;color:#c4cddb}
.process-contact{font-size:14px;line-height:1.6;min-height:44px}
.about-copy>p:not(.eyebrow){font-size:16px;line-height:1.85;color:#c3ccda}
.about-copy>.about-lead{font-size:20px!important;line-height:1.7}
.about-copy>.text-link{font-size:14px;line-height:1.6;min-height:44px}
.about-photo figcaption{font-size:12px;line-height:1.7;color:#bdc6d2;gap:12px;flex-wrap:wrap}
.footer-columns p,.footer-columns address{font-size:16px;line-height:1.8;color:#c3cbd8}
.footer-columns a:not(.brand){font-size:15px;line-height:1.7;color:#d1d8e3;overflow-wrap:anywhere}
.footer-bottom{font-size:13px;line-height:1.7;color:#c3ccda}
.footer-bottom a{font-size:14px;line-height:1.7;min-height:44px;display:inline-flex;align-items:center;flex-wrap:wrap}
.footer-wordmark>span,.back-top{font-size:12px;line-height:1.7}
.product-detail-image>span{font-size:12px;line-height:1.7;letter-spacing:.8px;color:#303844}
.product-detail-content>p:not(.eyebrow),.detail-applications p{font-size:16px;line-height:1.8;color:#c4cedc}
.detail-applications>span{font-size:12px;line-height:1.7;color:#c4cedc}
.product-detail-content>.detail-note{font-size:14px;line-height:1.8;color:#bdc6d2}
.product-detail-content>.button,.product-detail-content>.text-link{font-size:14px;line-height:1.6;min-height:44px}
.quote-dialog label{font-size:14px;line-height:1.65}
input,textarea,select{font-size:16px;line-height:1.6}
input::placeholder,textarea::placeholder{color:#aeb8c7;opacity:1}
.quote-dialog .quote-intro,.quote-dialog .form-note{font-size:14px;line-height:1.8;color:#c4cedc}
.quote-dialog .button,.draft-actions .text-link{font-size:14px;line-height:1.6}
.quote-dialog [role=status],.quote-dialog pre,.draft-ready p,#draft-body{font-size:14px;line-height:1.8;overflow-wrap:anywhere}
.quote-technical summary span{font-size:12px;color:#c4cedc}
.mobile-nav>a{font-size:20px;line-height:1.5}
.mobile-nav>button{font-size:16px;line-height:1.6;min-height:48px}
.catalog-back{font-size:14px;line-height:1.7;color:#cad3df}
.catalog-intro-bottom>p{font-size:16px;line-height:1.8;color:#c5cedb}
.catalog-stats>span{font-size:12px;line-height:1.6;letter-spacing:.5px}
.catalog-search{font-size:12px;line-height:1.7;letter-spacing:.6px}
.catalog-group-filters button{font-size:14px;line-height:1.6;min-height:44px;color:#d0d9e5}
.catalog-group-filters sup{font-size:12px;line-height:1.5}
.catalog-results-heading>span{font-size:14px;line-height:1.7;color:#c0ccdc}
.catalog-card-info p{font-size:16px;line-height:1.6}
.catalog-empty p,.catalog-bottom>p{font-size:16px;line-height:1.8;color:#c3cfdf}
.catalog-empty button,.catalog-loading,.catalog-bottom>.text-link{font-size:14px;line-height:1.7}
.catalog-art>span{font-size:12px;line-height:1.7;letter-spacing:.8px}
.catalog-pdf-link span{font-size:12px;line-height:1.6;color:#d0ccc2}
.drawing-footer>.text-link,.drawing-footer .button{font-size:14px;line-height:1.6;min-height:44px}
.profile-reference-dialog>p:last-child{font-size:14px;line-height:1.8;color:#c1cddd}
.process-visual-note{font-size:12px;line-height:1.7}
.motion-toggle{font-size:13px;line-height:1.6;min-height:44px}
.mobile-text-control{font-size:14px;line-height:1.6}
.editorial-image figcaption{font-size:14px;line-height:1.8;color:#c0c9d7}
.editorial-related a,.product-page-links a{font-size:16px;line-height:1.7}

@media(max-width:1100px){
 .main-nav{gap:16px}
 .header-actions{gap:16px}
 .header-quote{gap:10px}
 .production-strip>a{font-size:16px}
}
@media(max-width:700px){
 .hero-description{font-size:16px}
 .hero-bottom{height:72px;flex-wrap:wrap;align-content:center;justify-content:flex-start;gap:5px 18px}
 .hero-bottom>span{flex-basis:100%}
 .hero-scene-controls{bottom:88px}
 .hero-scene.photo-mode,.hero-scene:not(.photo-mode){bottom:132px}
 .production-strip{height:auto;min-height:85px;padding-top:18px;padding-bottom:18px;gap:12px;flex-wrap:wrap}
 .production-strip>a{font-size:15px;gap:6px}
 .section-heading>p{font-size:16px}
 .about-copy>.about-lead{font-size:18px!important}
 .product-filters button{font-size:14px}
 .viewer-top{left:18px;right:18px;gap:12px}
 .viewer-caption{bottom:62px}
 .viewer-caption h3{font-size:26px;line-height:1.25}
 .viewer-source{gap:4px 12px;margin-top:8px}
 .viewer-source>span,.viewer-source button,#viewer-dimensions{font-size:14px}
 .viewer-source button{min-height:36px}
 .viewer-mode-button{bottom:270px}
 .profile-viewer:not(.studio-mode) .viewer-mode-button{top:58px;font-size:12px;right:18px}
 .finish-picker{bottom:332px}
 .finish-picker button{font-size:12px;min-height:56px}
 .viewer-controls{bottom:276px}
 .viewer-note{bottom:18px}
 .has-mobile-picker .profile-viewer.studio-mode{min-height:660px}
 .has-mobile-picker .mobile-profile-picker label{font-size:14px;line-height:1.6}
 .custom-request>span{font-size:14px}
 .catalog-intro-bottom>p{font-size:16px}
 .catalog-stats{gap:16px;padding:14px}
 .catalog-stats>span{font-size:12px;gap:8px;flex-wrap:wrap}
 .catalog-group-filters button{font-size:14px}
 .catalog-card-info p{font-size:14px}
 .catalog-results-heading>span{font-size:13px}
 .catalog-bottom>p{font-size:16px}
 .site-footer p,.site-footer address{font-size:16px}
 .site-footer a{font-size:15px}
 .footer-bottom{font-size:13px}
 .footer-bottom a{font-size:14px}
 .agency-signature strong{margin-left:6px}
}
@media(max-width:360px){
 .production-strip>a{font-size:14px}
 .viewer-top{font-size:12px;letter-spacing:0}
 .viewer-caption h3{font-size:24px}
 .viewer-source>span,.viewer-source button,#viewer-dimensions{font-size:13px}
 .catalog-stats strong{font-size:30px}
}

/* Let enlarged captions determine their own height instead of covering controls. */
.profile-viewer{display:flex;flex-direction:column;padding:72px 28px 24px;min-height:810px}
.profile-viewer .viewer-studio{position:relative;inset:auto;order:0;flex:none;align-self:center;width:100%;height:360px;margin:0}
.profile-viewer:not(.studio-mode) .viewer-studio{display:none}
.profile-viewer canvas{position:relative;inset:auto;order:0;flex:none;width:100%;height:360px}
.profile-viewer.studio-mode canvas{display:none}
.profile-viewer .viewer-mode-button{position:relative;inset:auto;order:1;transform:none;align-self:center;margin:14px 0 20px}
.profile-viewer:not(.studio-mode) .viewer-mode-button{position:absolute;top:54px;right:24px;left:auto;bottom:auto;margin:0;z-index:7}
.profile-viewer .finish-picker{position:relative;inset:auto;order:2;flex:none;margin:14px 0 0;gap:8px}
.profile-viewer .viewer-controls{position:relative;inset:auto;order:3;flex:none;transform:none;align-self:center;margin:16px 0 8px}
.profile-viewer .viewer-caption{position:relative;inset:auto;order:4;flex:none;margin-top:8px;gap:14px;align-items:center}
.profile-viewer .viewer-caption>div{min-width:0;flex:1}
.viewer-caption .round-link{flex:none}
.profile-viewer .viewer-note{position:relative;inset:auto;order:5;flex:none;margin-top:18px}
@media(max-width:700px){
 .profile-viewer,.has-mobile-picker .profile-viewer.studio-mode{min-height:0;padding:72px 18px 22px}
 .profile-viewer .viewer-studio,.profile-viewer canvas{height:290px}
 .profile-viewer:not(.studio-mode) .viewer-mode-button{top:54px;right:18px}
 .profile-viewer .viewer-caption{gap:10px;padding-top:22px}
 .profile-viewer .viewer-note{margin-top:16px}
}
