/* MTOweb homepage. Content stays in WPBakery; only the brand sculpture is WebGL. */
body.mto-home-scene {background:var(--mto-color-canvas);}
body.mto-home-scene #page {position:relative;z-index:1;background:transparent!important;}
body.mto-home-scene :is(#content,.site-content,main.site-main) {background:transparent!important;}
.mto-world {position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:var(--mto-color-canvas);--scene-shade:.02;}
.mto-world canvas {display:block;width:100%;height:100%;}
.mto-world::before {content:'';position:absolute;inset:0;z-index:1;background:rgb(var(--mto-scene-shade-rgb) / var(--scene-shade));}
.mto-world::after {content:'';position:absolute;inset:0;background:var(--mto-scene-vignette);box-shadow:var(--mto-scene-shadow);}
#page .vc_row.mto-intro {position:relative;max-width:1440px;width:calc(100% - 112px);min-height:780px;min-height:min(880px,calc(100svh - 110px));padding:100px 0 70px;margin:auto;display:flex;align-items:center;border:0;background:none;}
.mto-intro>.wpb_column {z-index:2;}
#page .mto-intro h1 {font-size:clamp(60px,6.7vw,108px);font-weight:500;letter-spacing:-.065em;line-height:1.02;color:var(--mto-color-ink);margin:24px 0 28px;max-width:850px;}
#page .mto-intro h1 span {color:var(--mto-color-heading-accent);}
#page .mto-intro .mto-label {font-size:11px;letter-spacing:.22em;color:var(--mto-color-link);}
#page .mto-intro .mto-lead {font-size:clamp(17px,1.5vw,21px);line-height:1.6;max-width:480px;color:var(--mto-color-muted);margin:0 0 32px;}
.mto-intro-actions {display:flex;gap:12px;flex-wrap:wrap;align-items:center;}




.mto-intro .mto-logo-stage {position:absolute;inset:-30px -8vw -30px 34%;z-index:-1;pointer-events:none;}
.mto-intro .mto-logo-window {height:100%;display:flex;align-items:center;justify-content:center;}
.mto-logo-fallback {display:block;width:90%;height:auto;opacity:.5;}
.mto-scene-ready:not(.mto-scene-failed) .mto-logo-fallback {visibility:hidden;}
.mto-intro .mto-intro-footnote {margin-top:58px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--mto-color-soft);}
body.mto-scene-ready #page .vc_row.mto-section {padding:48px 30px;background:var(--mto-section-surface);box-shadow:var(--mto-section-shadow);border-radius:var(--mto-radius-panel);corner-shape:squircle;border:0;margin-top:48px;margin-bottom:28px;}
body.mto-scene-ready #page .vc_row.mto-cards {position:relative;}
@media(max-width:1180px) {
 #page .vc_row.mto-intro {width:calc(100% - 64px);min-height:740px;padding-top:92px;}
 #page .mto-intro h1 {font-size:clamp(58px,8.6vw,88px);}
 .mto-intro .mto-logo-stage {inset:50px -20vw 0 32%;}
}
@media(max-width:900px) {
 #page .vc_row.mto-intro {width:calc(100% - 40px);min-height:0;padding:64px 0 34px;display:block;}
 #page .mto-intro h1 {font-size:clamp(48px,10.8vw,72px);margin:22px 0;}
 #page .mto-intro .mto-label {font-size:9px;letter-spacing:.17em;}
 #page .mto-intro .mto-lead {font-size:17px;max-width:460px;}
 .mto-intro .mto-logo-stage {position:relative;inset:auto;z-index:-1;margin:12px -20px 0;}
 .mto-intro .mto-logo-window {height:250px;}
 
 .mto-intro .mto-intro-footnote {margin:10px 0 0;font-size:9px;letter-spacing:.1em;}
 body.mto-scene-ready #page .vc_row.mto-section {padding:30px 8px;margin-top:24px;box-shadow:var(--mto-section-shadow-mobile);}
 .mto-world::after {background:var(--mto-scene-vignette-mobile);box-shadow:var(--mto-scene-shadow-mobile);}
}
@media(pointer:coarse) {.mto-world {bottom:auto;height:100lvh;}}

/* Keep the full signature in frame; the native content container already has gutters. */
.mto-intro .mto-logo-stage {inset:0 -2vw 0 46%;}
@media(min-width:901px) and (max-width:1180px) {
 .mto-intro .mto-logo-stage {inset:0 0 0 45%;}
 #page .mto-intro h1 {font-size:clamp(58px,7.3vw,82px);}
}
@media(max-width:900px) {
 #page .vc_row.mto-intro {width:100%;margin:0;padding:64px 8px 30px;}
 .mto-intro>.wpb_column>.vc_column-inner {padding:0;}
 .mto-intro .wpb_text_column>.wpb_wrapper {display:flex;flex-direction:column;}
 #page .mto-intro h1 {font-size:clamp(42px,10.8vw,72px);order:1;margin:18px 0 0;}
 .mto-intro .mto-logo-stage {position:relative;inset:auto;order:2;margin:0 -8px;}
 .mto-intro .mto-logo-window {height:210px;}
 #page .mto-intro .mto-lead {order:3;font-size:16px;margin-bottom:24px;}
 .mto-intro-actions {order:4;gap:10px;}
 .mto-intro .mto-intro-footnote {order:5;margin-top:28px;}
}


@media(min-width:701px) and (max-width:900px) {.mto-intro .mto-logo-window {height:280px;}}
/* One surface per editorial section: headings and cards share the same parent row. */
body.mto-home-scene #page .vc_row.mto-section {margin-top:80px;margin-bottom:0;padding:44px 30px;background:var(--mto-section-surface);border-radius:var(--mto-radius-panel);corner-shape:squircle;box-shadow:var(--mto-section-shadow);}
#page .mto-section .mto-section-cards {margin:24px -16px 0;width:auto;max-width:none;}
#page .mto-section .mto-section-placeholder {margin:24px -16px 0;}
#page .mto-section .wpb_content_element {margin-bottom:0;}
#page .mto-section .mto-section-cards>.wpb_column {margin-bottom:16px;}
.mto-logo-play {display:none;position:absolute;inset:0;pointer-events:auto;touch-action:pan-y;background:none!important;border:0!important;box-shadow:none!important;padding:0;color:var(--mto-color-muted);cursor:grab;}
.mto-scene-ready:not(.mto-scene-failed) .mto-logo-play {display:block;}
.mto-logo-play:active {cursor:grabbing;}
.mto-logo-play:focus-visible {outline:2px solid var(--mto-color-focus);outline-offset:4px;border-radius:var(--mto-radius-panel);}
.mto-logo-play span {position:absolute;bottom:8%;left:0;right:0;font:500 10px/1.4 sans-serif;letter-spacing:.08em;text-align:center;opacity:.7;}
.mto-logo-play[disabled] {pointer-events:none;}
.mto-logo-play[disabled] span {visibility:hidden;}
@media(min-width:901px) {.mto-intro .mto-logo-stage {z-index:0;} .mto-intro :is(h1,.mto-label,.mto-lead,.mto-intro-actions,.mto-intro-footnote) {position:relative;z-index:1;pointer-events:none;} .mto-intro-actions a {pointer-events:auto;}}
@media(max-width:900px) {.mto-intro .mto-logo-stage {z-index:0;} .mto-logo-play span {bottom:0;font-size:9px;} #page .mto-intro .mto-lead {margin-top:16px;}}
@media(max-width:600px) {body.mto-home-scene #page .vc_row.mto-section {padding:28px 10px;margin-top:44px;} #page .mto-section .mto-section-cards {margin-top:20px;} }
@media(prefers-reduced-motion:reduce) {.mto-logo-play {display:none!important;}}
