/* Only the home contact form retains the requested viewport layout.
   All other modules use their original template styles and scrolling. */
.lemay-site #start-project.lm-contact-fit{
 box-sizing:border-box!important;
 height:var(--lm-contact-height)!important;min-height:var(--lm-contact-height)!important;
 margin-block:0!important;padding-block:clamp(16px,calc(var(--lm-contact-height)*.045),42px)!important;
 scroll-margin-top:var(--lm-contact-offset,96px)!important;
 gap:40px;align-items:center;
}
.lm-contact-fit .st-inquiry-copy h2 em{margin-bottom:8px}
.lm-contact-fit .st-inquiry-copy h2{font-size:clamp(28px,min(3.5vw,calc(var(--lm-contact-height)*.065)),54px);line-height:1.2}
.lm-contact-fit .st-inquiry-copy>p{margin-top:12px;line-height:1.75}
.lm-contact-fit .st-inquiry-star{display:none}
.lm-contact-fit .st-direct-contact{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px}
.lm-contact-fit .st-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px}
.lm-contact-fit .st-form-grid label{font-size:12px;line-height:1.5}
.lm-contact-fit .st-form-grid :is(input,select){min-height:34px!important;padding:6px 0!important;margin-top:2px;font-size:14px}
.lm-contact-fit .st-form-grid textarea{min-height:64px!important;padding:6px 0!important;margin-top:2px;line-height:1.5;font-size:14px}
.lemay-site #start-project.lm-contact-fit .st-inquiry-form :is(input,select){min-height:34px!important;padding:6px 0!important;font-size:14px}
.lemay-site #start-project.lm-contact-fit .st-inquiry-form textarea{min-height:64px!important;padding:6px 0!important;font-size:14px}
.lm-contact-fit .st-form-bottom{margin-top:14px;gap:16px;padding-top:8px!important}
.lm-contact-fit .st-form-bottom>span{font-size:11px;line-height:1.5}
.lm-contact-fit .st-form-bottom button{min-height:40px!important;padding:10px 18px!important}
.lemay-site .lm-contact-fit .st-form-wrap{padding:20px!important}
.lm-contact-fit .lm-refresh-file-field small{font-size:10px}
.lm-contact-fit [data-lm-page-hidden],.lm-contact-fit [hidden]{display:none!important}
.lm-contact-fit .lm-contact-pages{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:16px;flex-shrink:0}
.lm-contact-pages button{width:34px;height:34px;border:1px solid #d4d4d4;background:transparent;color:inherit;cursor:pointer;font-size:18px}
.lm-contact-pages button:disabled{opacity:.35;cursor:default}
.lm-contact-pages span{font-size:12px;font-variant-numeric:tabular-nums}
@media(max-width:1100px) and (min-width:651px){
 .lemay-site #start-project.lm-contact-fit{gap:24px}
}
@media(max-width:650px){
 .lemay-site #start-project.lm-contact-fit{grid-template-columns:1fr;gap:16px;align-content:center;padding-block:14px!important}
 .lm-contact-fit .st-inquiry-copy h2{font-size:26px}
 .lm-contact-fit .st-inquiry-copy h2 em{font-size:21px;margin-bottom:6px}
 .lm-contact-fit .st-inquiry-copy>p{font-size:13px;line-height:1.6;margin:8px 0}
 .lm-contact-fit .st-inquiry-copy .st-label{font-size:9px;margin-bottom:8px}
 .lm-contact-fit .st-direct-contact{gap:12px;margin-top:6px}
 .lm-contact-fit .st-direct-contact a{font-size:11px}
 .lm-contact-fit .st-form-grid{gap:7px 12px}
 .lm-contact-fit .st-form-grid label{font-size:11px}
 .lm-contact-fit .st-form-bottom{margin-top:9px;gap:10px}
 .lm-contact-fit .st-form-bottom button{font-size:12px}
 .lm-contact-fit .st-form-bottom>span{font-size:10px}
 .lm-contact-fit .lm-contact-pages{margin-top:12px;gap:14px}
}
