/* Universal internal-page shell. Ohio owns templates; WPBakery owns content. */
body.mto-inner-page #page {position:relative;z-index:1;background:transparent;}
body.mto-inner-page #page #content {background:transparent;}
body.mto-inner-page #content > .page-container.bottom-offset {padding-bottom:0;}
body.mto-inner-page #colophon {margin-top:0;}
body.mto-inner-page .wpb-content-wrapper > .mto-editorial:last-child {margin-bottom:56px!important;}
.mto-page-background {position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:var(--mto-page-ambient),var(--mto-color-canvas);}
.mto-page-background::before {content:"";position:absolute;inset:0;background:url('../../features/logo-scene/js/logo-compact-dark.svg') center 45% / min(92vw,1600px) auto no-repeat;opacity:.035;}
.mto-page-background canvas {display:block;width:100%;height:100%;opacity:.32;}
.mto-page-background[data-state="ready"]::before {display:none;}
.mto-page-background[data-state="fallback"] canvas {display:none;}
.mto-page-background::after {content:"";position:absolute;inset:0;background:var(--mto-scene-vignette);}
@media(pointer:coarse){.mto-page-background {bottom:auto;height:100lvh;}}
@media(prefers-reduced-motion:reduce){.mto-page-background canvas {display:none;}html {scroll-behavior:auto!important;}}
/* Materials, cards and buttons all use the shared system. */
#page .vc_row.mto-editorial {width:calc(100% - 96px);max-width:1200px;margin:0 auto 56px!important;padding:48px 32px;color:var(--mto-color-ink);scroll-margin-top:150px;}
#page .mto-editorial > .vc_column_container > .vc_column-inner {padding:0;}
#page .mto-editorial .wpb_text_column {margin-bottom:0;}
#page .mto-editorial.mto-page-hero {padding-top:48px;padding-bottom:40px;}
#page .mto-editorial.mto-page-section {background:var(--mto-section-surface);border-radius:var(--mto-radius-panel);}
#page .mto-editorial h1 {font-size:clamp(36px,4.6vw,64px);line-height:1.12;letter-spacing:-.035em;margin:16px 0 24px;max-width:20ch;}
#page .mto-editorial h2 {font-size:clamp(28px,3.5vw,44px);line-height:1.16;letter-spacing:-.03em;margin:0 0 24px;}
#page .mto-editorial p {font-size:17px;line-height:1.75;color:var(--mto-color-muted);margin:0 0 20px;}
#page .mto-editorial .mto-kicker, #page .mto-editorial .wpb_wrapper p.mto-kicker:last-child {font-size:11px;letter-spacing:.17em;text-transform:uppercase;color:var(--mto-color-link);margin-bottom:20px;}
#page .mto-editorial .mto-lead {font-size:clamp(18px,1.6vw,21px);line-height:1.6;color:var(--mto-color-ink);max-width:58ch;}
#page .mto-editorial .mto-reading {max-width:850px;}
#page .mto-editorial .mto-actions {display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;}
#page .mto-editorial a.mto-text-link {display:inline-flex;align-items:center;min-height:48px;padding:12px 0;gap:8px;color:var(--mto-color-link);font-weight:600;line-height:1.45;}
/* Inline editorial links remain identifiable without relying on color alone. */
#page .mto-editorial .wpb_text_column p a:not(:is(.mto-button-purple,.mto-button-glass,.mto-page-link,.mto-text-link)) {color:var(--mto-color-link);text-decoration:underline;text-decoration-thickness:.08em;text-underline-offset:.18em;}
#page .mto-editorial a:focus-visible {outline:2px solid var(--mto-color-focus);outline-offset:4px;}
#page .mto-editorial .mto-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:32px 0 0;padding:0;list-style:none;}
/* A following paragraph or subheading starts a new editorial block. */
#page .mto-editorial .mto-grid + :is(p,h3) {margin-top:28px;}
#page .mto-editorial .mto-grid--two {grid-template-columns:repeat(2,minmax(0,1fr));}
#page .mto-editorial .mto-card p {font-size:16px;line-height:1.65;}
#page .mto-editorial .mto-card p:last-child {margin-bottom:0;}
#page .mto-editorial .mto-step {display:block;font-size:13px;letter-spacing:.1em;color:var(--mto-color-link);margin-bottom:24px;}
/* Native WPBakery column + image + text blocks, one shared card surface. */
#page .mto-editorial .mto-profile {height:auto;}
#page .mto-profile > .vc_column-inner {padding:0;}
#page .mto-profile > .vc_column-inner > .wpb_wrapper {display:grid;grid-template-columns:180px minmax(0,1fr);gap:24px;align-items:center;}
#page .mto-profile .mto-portrait {margin:0;}
#page .mto-profile .mto-portrait img {width:180px;height:auto;}
#page .mto-profile h3 {margin:0 0 12px;}
#page .mto-profile > .vc_column-inner > .wpb_wrapper > .wpb_text_column:last-child {grid-column:1/-1;}
#page .mto-facts {margin:0;}
#page .mto-facts dt {padding-top:18px;border-top:1px solid var(--mto-divider);font-weight:600;color:var(--mto-color-ink);}
#page .mto-facts dd {margin:6px 0 18px;font-size:16px;line-height:1.65;color:var(--mto-color-muted);}
#page .mto-facts dd:last-child {margin-bottom:0;}
#page .mto-profile .mto-text-link {margin-top:20px;}
body.with-breadcrumbs #page .mto-editorial.mto-page-hero {padding-top:24px;}
@media(max-width:1199px){#page .mto-editorial .mto-profile {margin-top:32px;}}
@media(max-width:480px){#page .mto-profile > .vc_column-inner > .wpb_wrapper {grid-template-columns:minmax(0,1fr);gap:20px;}#page .mto-profile .mto-portrait img {width:220px;}}
@supports(corner-shape:squircle){#page .mto-editorial.mto-page-section {corner-shape:squircle;}}
@media(max-width:1100px){#page .mto-editorial .mto-grid {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:767px){#page .vc_row.mto-editorial {width:100%;padding:32px 20px;margin-bottom:28px!important;scroll-margin-top:120px;}#page .mto-editorial.mto-page-hero {padding-top:24px;padding-bottom:28px;}#page .mto-editorial h1 {font-size:34px;margin-bottom:20px;}#page .mto-editorial .mto-grid {grid-template-columns:minmax(0,1fr);gap:20px;}#page .mto-editorial p {font-size:16px;}#page .mto-editorial .mto-actions > :is(.mto-button-purple,.mto-button-glass) {width:100%;}#page .mto-editorial .mto-actions {gap:8px;margin-top:24px;}#page .mto-page-hero .mto-kicker {font-size:10px;}body.mto-inner-page .wpb-content-wrapper > .mto-editorial:last-child {margin-bottom:32px!important;}.mto-page-background canvas {opacity:.18;}}

/* Product landing: shared interactive Home scene inside the internal-page shell. */
#page .vc_row.mto-intro--product {max-width:1200px;padding:64px 32px;min-height:620px;}
#page .mto-intro--product :is(h1,.mto-lead) {max-width:52%;}
#page .mto-intro--product h1 {font-size:clamp(40px,4.5vw,64px);letter-spacing:-.035em;line-height:1.12;}
#page .mto-intro--product .mto-logo-stage {inset:0 0 0 53%;}
#page .mto-intro--product .mto-intro-actions {max-width:52%;}
@media(max-width:900px) {
 #page .vc_row.mto-intro--product {width:100%;min-height:0;padding:24px 20px 32px;}
 #page .mto-intro--product :is(h1,.mto-lead,.mto-intro-actions) {max-width:100%;}
 #page .mto-intro--product h1 {font-size:clamp(34px,7vw,52px);margin:0;}
 #page .mto-intro--product .mto-logo-stage {position:relative;inset:auto;margin:0;}
 #page .mto-intro--product .mto-logo-window {height:200px;}
 #page .mto-intro--product .mto-lead {margin-top:8px;margin-bottom:0;}
}

/* Project cases reuse the same shell without stacking two hero-sized gaps. */
#page .vc_row.mto-project-heading {margin-bottom:0!important;padding-bottom:8px;}
#page .mto-project-heading h1 {margin-bottom:0;}
#page .vc_row.mto-project-intro {padding-top:24px;}

/* News use the same editorial system, with a narrower reading column. */
body.mto-news-page #page .post-page-container .vc_row.mto-editorial {width:100%;max-width:900px;}
body.mto-news-page #page .post-page-container .mto-editorial h2 {font-size:clamp(26px,3vw,36px);margin-top:36px;}
body.mto-news-page #page .post-page-container .mto-editorial .vc_single_image {margin:28px 0 36px;}
body.mto-news-page #page .post-page-container .mto-editorial img {max-width:100%;height:auto;}
/* Ohio's referrer-only back link is redundant with the native breadcrumb. */
body.mto-news-page .page-headline .back-link {display:none;}
@media(max-width:767px){body.mto-news-page #page .post-page-container .vc_row.mto-editorial {padding:28px 20px;}body.mto-news-page #page .post-page-container .mto-editorial h2 {margin-top:28px;}}
/* News ending: one contact CTA and a compact grid, aligned with the page shell. */
body.mto-news-page .author-container {display:none;}
#page .mto-news-ending .vc_row.mto-editorial {width:100%;max-width:1100px;}
#page .mto-news-ending .mto-feed-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
#page .mto-news-ending .mto-card-image {height:180px;aspect-ratio:auto;object-fit:contain;}
#page .mto-news-ending .mto-card h3 {font-size:22px;line-height:1.3;}
#page .mto-news-ending .mto-feed-archive {margin:24px 0 0;}
#page .mto-news-contact p {max-width:68ch;}
@media(max-width:767px){#page .mto-news-ending .mto-feed-grid {grid-template-columns:minmax(0,1fr);}#page .mto-news-ending .mto-card-image {height:160px;}#page .mto-news-ending .mto-actions>a {width:100%;}}
