/* Shared responsive layout and consistently sized contact controls. */
.quote-form .quote-row{align-items:start;grid-template-columns:repeat(2,minmax(0,1fr))}
.quote-form .quote-field{min-width:0;align-content:start}
.quote-form .quote-field input,.quote-form .quote-field select{box-sizing:border-box;width:100%;min-width:0;max-width:100%;height:48px;min-height:48px;align-self:start;font-size:16px;line-height:22px;padding:12px 13px}
.quote-form .quote-field input[type=date]{appearance:none;-webkit-appearance:none;display:block}
.quote-form .quote-field input::-webkit-date-and-time-value{text-align:start;min-height:22px}
.quote-form .quote-field textarea{box-sizing:border-box;max-width:100%;font-size:16px}
.quote-form .quote-field small{overflow-wrap:anywhere}
@media(max-width:1050px){
 .mobile-nav,.pro-tool-page .mobile-nav{max-height:calc(100dvh - 82px);overscroll-behavior:contain}
 .mobile-nav a,.mobile-nav summary{min-height:44px;box-sizing:border-box}
}
@media(max-width:820px){
 .tl-hero-grid{min-width:0;gap:18px;padding-top:36px}
 .tl-forest-preview{width:100%;max-width:580px;min-height:0;height:210px;margin:0 auto;gap:2px;padding:8px 0 18px;overflow:visible;justify-content:center}
 .tl-forest-preview .tl-preview-tree{flex:1 1 0;width:calc((100% - 10px)/6)!important;max-width:92px;min-width:0;height:170px!important;margin:0!important;transform:none}
 .tl-forest-preview .tl-preview-tree:nth-child(2){height:185px!important}
 .tl-forest-preview .tl-preview-tree:nth-child(3){height:194px!important}
 .tl-forest-preview .tl-preview-tree:nth-child(5){height:160px!important}
 .tl-forest-preview .tl-preview-tree img{width:100%;height:100%;max-width:100%;object-fit:contain;object-position:center bottom}
 .tl-hero-copy,.tl-toolbar-inner,.tl-search,.tl-dialog-copy{min-width:0}
 .tl-dialog{height:auto;max-height:calc(100dvh - 16px);overflow:auto;overscroll-behavior:contain}
 .tl-close,.tl-nav-arrow{width:44px;height:44px}
 .quote-layout{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:640px){
 .container,.inner,.tl-wrap{max-width:calc(100% - 28px)}
 .grid-2,.corporate-grid,.deck-premium-wrap,.quote-layout,.pro-app-grid{grid-template-columns:minmax(0,1fr)!important}
 .grid-2>*,.corporate-grid>*,.quote-layout>*,.pro-app-grid>*{min-width:0}
 .section{padding-top:42px;padding-bottom:42px}
 main h1,.tl-hero h1{font-size:clamp(32px,8.5vw,42px)!important;line-height:1.12;overflow-wrap:break-word}
 main h2{overflow-wrap:break-word}
 .lead,.tl-hero p{font-size:15px;line-height:1.7}
 .quote-form-card{padding:20px 16px}
 .quote-form .quote-row{grid-template-columns:minmax(0,1fr)}
 .quote-actions{align-items:stretch}
 .quote-actions .btn{flex:1 1 140px;white-space:normal}
 .tl-forest-preview{height:158px;padding-bottom:12px;gap:2px}
 .tl-forest-preview .tl-preview-tree{height:124px!important}
 .tl-forest-preview .tl-preview-tree:nth-child(2){height:137px!important}
 .tl-forest-preview .tl-preview-tree:nth-child(3){height:146px!important}
 .tl-forest-preview .tl-preview-tree:nth-child(5){height:116px!important}
 .tl-preview-tree:focus-visible{outline:2px solid #8d6c35;outline-offset:2px}
 .tl-tree-label{white-space:normal;text-align:center;max-width:100px;font-size:10px}
 .tl-intro{padding-top:32px}
 .tl-search input{font-size:16px;min-width:0;width:100%;box-sizing:border-box}
 .tl-filters{flex-wrap:wrap}
 .tl-filter{min-height:44px}
 .tree-library .tl-card-art{height:200px}
 .tree-library .tl-card-body{padding:16px}
 .tl-dialog-art{height:210px;min-height:210px;max-height:210px}
 .tl-dialog-art img{height:200px}
 .tl-dialog-copy{padding:22px 18px}
 .tl-dialog h2{font-size:30px}
 .tl-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
 .tl-fact{padding:11px}
 .product-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .product-tech-item{min-width:0;overflow-wrap:anywhere}
 .deck-project-grid,.deck-legacy-grid,.application-grid{grid-template-columns:minmax(0,1fr)}
 .footer-grid{grid-template-columns:minmax(0,1fr)!important}
 .footer-bottom{flex-wrap:wrap;gap:10px}
 iframe,video{max-width:100%}
 .pro-tool-hero{padding:36px 0}
 .pro-tool-page .mobile-nav{max-height:calc(100dvh - 76px)}
}
