/* Scope new layout to consolidated homepages; retain each theme's native sections. */

.tpi-onepage main section[id]{scroll-margin-top:100px}
.tpi-onepage .op-projects{padding:80px var(--gutter,5vw);max-width:var(--max,1440px);margin:auto}
.tpi-onepage .op-projects>h2,.tpi-onepage .op-projects>.elementor-widget-heading{max-width:850px}
.tpi-onepage .op-project-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:32px}
.tpi-onepage .op-project-card{display:flex!important;flex-direction:column;align-items:stretch;min-width:0;gap:18px}
.tpi-onepage .op-project-card .elementor-widget-image img{width:100%;height:230px;object-fit:cover}
.tpi-onepage .op-project-card h3{font-size:clamp(21px,2vw,29px);line-height:1.2}
.tpi-onepage .op-project-card .elementor-widget-button{margin-top:auto}
.tpi-onepage .work-tile>.elementor-widget-button{margin-top:20px}
.tpi-onepage .work-tile h3 a{color:inherit}
.tpi-onepage .project-form-section{min-width:0}
@media(max-width:767px){
 .tpi-onepage .op-project-grid{grid-template-columns:1fr;gap:40px}
 .tpi-onepage .op-projects{padding:56px 22px}
 .tpi-onepage .op-project-card .elementor-widget-image img{height:auto;aspect-ratio:16/10}
}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}

.tpi-onepage .work-tile>.elementor-widget-button .elementor-button{background:transparent;color:var(--ink);border:1px solid var(--line);font-size:13px;padding:16px 18px;text-align:left;border-radius:0}
.tpi-onepage .work-tile>.elementor-widget-button .elementor-button:hover{color:var(--blue);border-color:var(--blue)}

/* Give preserved fragment targets a layout box for native anchor scrolling. */
body.tpi-onepage .tpi-native-widget:is(#contact,#shipment,#planning,#documents,#proof,#people,#ideas){display:block!important;scroll-margin-top:110px}
