/*
Theme Name: Mevotech Core
Theme URI: https://www.mevotech.com
Author: CyberHive
Description: Block theme for the Mevotech relaunch, following the look of the previous mevotech.com (dark utility bar, white header, blue search band, dark hero and content bands, blue underline bars, black footer). Tokens in theme.json.
Version: 0.6.45
Requires at least: 6.7
Tested up to: 7.1
Requires PHP: 8.3
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mevotech-core
*/

/* ---------- focus ---------- */
:where(a, button, input, select, textarea, [tabindex]):focus-visible { outline: 3px solid var(--wp--preset--color--accent); outline-offset: 2px; }

/* ---------- utility bar (old .atwm-main-header-top-area) ---------- */
.mevo-utility { background: var(--wp--preset--color--dark); color: #fff; font-size: 0.85rem; }
.mevo-utility a { color: #fff; text-decoration: none; }
.mevo-utility a:hover { text-decoration: underline; }
.mevo-utility .wp-block-social-links { gap: 0.6rem; }
.mevo-utility .wp-block-social-link svg { width: 16px; height: 16px; }

/* ---------- main header ---------- */
.mevo-header { background: #fff; border-bottom: 1px solid #e6e6e6; }
.mevo-logo img { display: block; height: 44px; width: auto; }
.mevo-logo--footer img { height: 32px; }
.mevo-header .wp-block-navigation a { position: relative; padding: 1.1rem 0.85rem; border-radius: 0; color: var(--wp--preset--color--dark); text-decoration: none; transition: color 0.2s ease; }
/* hover / active = brand-blue text + the site's blue bar growing in from the left (same motif as hero and section headings) */
.mevo-header .wp-block-navigation a::after { content: ""; position: absolute; left: 0.85rem; right: 0.85rem; bottom: 0.65rem; height: 3px; border-radius: 3px; background: var(--wp--preset--color--primary); transform: scaleX(0); transform-origin: left center; transition: transform 0.25s ease; }
.mevo-header .wp-block-navigation a:hover,
.mevo-header .wp-block-navigation a:focus-visible,
.mevo-header .wp-block-navigation .current-menu-item > a { color: var(--wp--preset--color--primary-dark); background: transparent; text-decoration: none; }
.mevo-header .wp-block-navigation a:hover::after,
.mevo-header .wp-block-navigation a:focus-visible::after,
.mevo-header .wp-block-navigation .current-menu-item > a::after { transform: scaleX(1); }
.mevo-header .wp-block-navigation .current-menu-item > a { font-weight: 500; }
@media (max-width: 781px) { .mevo-header .wp-block-navigation a { padding: 0.5rem 0; } .mevo-header .wp-block-navigation a::after { left: 0; right: auto; width: 40px; bottom: 0.15rem; } }
@media (prefers-reduced-motion: reduce) { .mevo-header .wp-block-navigation a, .mevo-header .wp-block-navigation a::after { transition: none; } }

/* ---------- blue search band (old "Search parts") ---------- */
.mevo-search-band { background: var(--wp--preset--color--primary); color: #fff; }
.mevo-search-band h2 { color: #fff; font-size: 1.15rem; font-weight: 700; margin: 0 0 0.6rem; }
.mevo-search-band p { margin: 0; color: #fff; }
.mevo-search-band .wp-block-button__link { background: #fff; color: var(--wp--preset--color--primary-dark); }
.mevo-search-band .wp-block-button__link:hover { background: #e9f1fa; }

/* ---------- hero (old .atwm-header-content-left) ---------- */
.mevo-hero { background: linear-gradient(90deg, #0f1113 0%, #24282b 55%, #2b3a4b 100%); color: #fff; position: relative; overflow: hidden; }
.mevo-hero::after { content: ""; position: absolute; inset: 0; background: radial-gradient(ellipse at 85% 50%, rgba(43,117,187,0.35), transparent 55%); pointer-events: none; }
.mevo-hero > * { position: relative; z-index: 1; }
.mevo-hero h1, .mevo-hero h2, .mevo-hero p { color: #fff; }
.mevo-hero h1 { font-weight: 900; margin: 0; }
.mevo-hero .mevo-hero-inner > * { max-width: 720px; }  /* inner group = full container (centred like the header); text blocks inside stay on its left edge, under the logo */
.mevo-hero .mevo-bar { width: 60px; height: 6px; background: var(--wp--preset--color--primary); border-radius: 3px; margin: 1.4rem 0 1.2rem; }
.mevo-hero .mevo-hero-sub { font-weight: 700; font-size: 0.95rem; margin: 0; }
.mevo-hero .wp-block-button__link { background: #fff; color: var(--wp--preset--color--dark); }
.mevo-hero .wp-block-button__link:hover { background: var(--wp--preset--color--primary); color: #fff; }
.mevo-hero--page { padding-top: 6rem !important; padding-bottom: 6rem !important; }  /* block layout so the constrained child keeps the container's left edge */
.mevo-hero--page h1 { font-size: clamp(2.2rem, 4vw, 3.5rem); }

/* ---------- inner page content (old site: ~15px body, ~22px headings, generous section gaps) ---------- */
.wp-block-post-content:where(:not(.mevo-home-content)) { font-size: 0.95rem; }
.wp-block-post-content:where(:not(.mevo-home-content)) p.has-large-font-size { font-size: 1.05rem !important; }
.wp-block-post-content:where(:not(.mevo-home-content)) h2:not(.mevo-h-bar) { font-size: 1.45rem; }
.wp-block-post-content:where(:not(.mevo-home-content)) h3 { font-size: 1.05rem; }
.wp-block-post-content:where(:not(.mevo-home-content)) > h2:not(:first-child) { margin-top: 2.75rem; }
.wp-block-post-content:where(:not(.mevo-home-content)) > .wp-block-columns + .wp-block-columns { margin-top: 1.5rem; }
.wp-block-post-content:where(:not(.mevo-home-content)) > .mevo-form { margin-top: 2.5rem; }
.wp-block-post-content:where(:not(.mevo-home-content)) .mevo-phone-large { font-size: 1.35rem; font-weight: 700; }

/* ---------- section headings with blue bar (old .atwm-heading-center-blue-bar) ---------- */
.mevo-h-bar { text-align: center; position: relative; padding-bottom: 1.1rem; margin-bottom: 1.5rem !important; }
.mevo-h-bar::after { content: ""; display: block; width: 60px; height: 4px; background: var(--wp--preset--color--primary); border-radius: 3px; margin: 1rem auto 0; }
.mevo-h-bar--left { text-align: left; }
.mevo-h-bar--left::after { margin-left: 0; }
.mevo-h-bar--white, .mevo-h-bar--white * { color: #fff; }

/* ---------- cards (old white bordered cards, centered, blue button) ---------- */
.wp-block-columns:has(> .mevo-card) { align-items: stretch !important; }
.mevo-card { background: #fff; border: 1px solid #e2e2e2; border-radius: 4px; padding: 2rem 1.75rem; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 0.9rem; }
.mevo-card > * { margin: 0 !important; }
.wp-block-post-content:where(:not(.mevo-home-content)) .mevo-card h2, .mevo-card h2, .mevo-card h3 { font-size: 1.1rem; }
.mevo-card--left h2 { font-size: 1.4rem; }
.mevo-form .forminator-ui.forminator-custom-form { max-width: 100% !important; }
.mevo-card p { font-size: 0.95rem; }
.mevo-card .wp-block-buttons { margin-top: auto !important; }
.mevo-card--left { align-items: flex-start; text-align: left; }
.mevo-card .mevo-phone { font-size: 1.1rem; font-weight: 700; color: var(--wp--preset--color--dark); }

/* ---------- dark content band (old black sections with faint drawing) ---------- */
.mevo-dark-band { background-color: var(--wp--preset--color--dark); background-image: repeating-linear-gradient(0deg, rgba(255,255,255,0.025) 0 1px, transparent 1px 48px), repeating-linear-gradient(90deg, rgba(255,255,255,0.025) 0 1px, transparent 1px 48px); color: #fff; }
.mevo-dark-band h2, .mevo-dark-band h3, .mevo-dark-band p { color: #fff; }
.mevo-dark-band .wp-block-button__link { background: #fff; color: var(--wp--preset--color--dark); font-weight: 700; text-transform: uppercase; font-size: 0.8rem; letter-spacing: 0.04em; }
.mevo-dark-band .wp-block-button__link:hover { background: var(--wp--preset--color--primary); color: #fff; }
.mevo-dark-band .is-style-outline .wp-block-button__link { background: transparent; color: #fff; border: 1px solid #fff; }
.mevo-tiles .wp-block-column { background: linear-gradient(160deg, #1b2c44, #0e1420); border-radius: 4px; min-height: 150px; display: flex; align-items: flex-end; justify-content: center; padding: 1.25rem; }
.mevo-tiles .wp-block-column p { margin: 0; }
.mevo-tiles .mevo-tile-label { display: inline-block; background: #fff; color: var(--wp--preset--color--dark); font-weight: 700; font-size: 0.8rem; letter-spacing: 0.04em; text-transform: uppercase; padding: 0.6rem 1.4rem; border-radius: 3px; }

/* ---------- blue band (old newsletter / OEM) ---------- */
.mevo-blue-band { background: linear-gradient(90deg, #1b5a94, #2b75bb); color: #fff; }
.mevo-blue-band h2, .mevo-blue-band p { color: #fff; }
.mevo-blue-band .wp-block-button__link { background: var(--wp--preset--color--dark); color: #fff; }
.mevo-blue-band .wp-block-button__link:hover { background: #000; }

/* ---------- forms ---------- */
.mevo-form .forminator-ui input:not([type="submit"]), .mevo-form .forminator-ui select, .mevo-form .forminator-ui textarea { border-radius: 4px !important; }
.mevo-form .forminator-ui .forminator-button-submit { background: var(--wp--preset--color--primary) !important; border-radius: 5px !important; }

/* ---------- document pages ---------- */
.mevo-document-meta { color: var(--wp--preset--color--mid); font-size: 0.85rem; }

/* ---------- footer (old .atwm-footer) ---------- */
.mevo-footer { background: var(--wp--preset--color--black); color: #fff; font-size: 0.85rem; }
.mevo-footer a { color: #fff; text-decoration: none; }
.mevo-footer a:hover { color: #80b9e6; text-decoration: underline; }
.mevo-footer h3 { color: #fff; font-size: 0.85rem; white-space: nowrap; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; position: relative; margin: 0 0 1.6rem; padding-bottom: 0.9rem; }
.mevo-footer h3::after { content: ""; position: absolute; left: 0; bottom: 0; width: 40px; height: 4px; background: var(--wp--preset--color--primary); border-radius: 3px; }
.mevo-footer ul { list-style: none; padding: 0; margin: 0; }
.mevo-footer li { margin: 0 0 0.55rem; }
.mevo-footer .wp-block-social-link svg { width: 18px; height: 18px; }
.mevo-footer-bottom { border-top: 1px solid #2a2a2a; font-size: 0.78rem; }
.mevo-footer-bottom a { margin-left: 1rem; }

.skip-link:focus { position: absolute; left: 1rem; top: 1rem; z-index: 100000; background: #fff; padding: 0.5rem 1rem; }

/* =====================================================================
   Home replica (Phase 3b) — look of the previous mevotech.com home.
   Values from the old theme's CSS; no old code, no old assets.
   ===================================================================== */

/* ---------- placeholders (until client assets arrive) ---------- */
.mevo-ph { position: relative; width: 100%; background: linear-gradient(135deg, #cfd3d6, #e9ebec); border-radius: 5px; overflow: hidden; display: flex; align-items: center; justify-content: center; }
.mevo-ph::before { content: attr(data-label); position: absolute; inset: auto 0 0 0; padding: 0.35rem 0.6rem; font: 700 0.7rem/1.2 var(--wp--preset--font-family--roboto); letter-spacing: 0.04em; text-transform: uppercase; color: #fff; background: rgba(36,40,43,0.7); }
.mevo-ph--dark { background: linear-gradient(135deg, #1b2c44, #0e1420); }
.mevo-ph--blue { background: linear-gradient(120deg, #0b2a4d, #1d76bc 60%, #4aa3e8); }
.mevo-ph--logo { background: #fff; border: 1px dashed #c9ccd0; }
.mevo-ph--logo::before { color: var(--wp--preset--color--mid); background: transparent; position: static; padding: 0; text-align: center; }

/* ---------- deferred links: look of the element, no link ---------- */
.mevo-link-deferred { cursor: default; }
.wp-block-button .mevo-link-deferred { display: inline-block; }
.mevo-buttons-deferred, .mevo-buttons-row { display: flex; flex-wrap: wrap; gap: 0.5em; margin-top: 1.5rem; }
.mevo-buttons-deferred .wp-block-button__link, .mevo-buttons-row .wp-block-button__link { display: inline-block; line-height: 1.5; padding: 0.6rem 1.4rem; }
.mevo-buttons-deferred .wp-block-button__link:hover { background: var(--wp--preset--color--primary); }  /* no hover change on deferred buttons */

/* ---------- arrow after buttons / pills (old .vc_btn3:after) ---------- */
.mevo-arrow::after { content: ""; display: inline-block; width: 12px; height: 10px; margin-left: 0.6rem; vertical-align: middle; background: no-repeat center / contain url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10'><path d='M7 0l5 5-5 5-1.4-1.4L8.2 6H0V4h8.2L5.6 1.4z' fill='%23ffffff'/></svg>"); }
.mevo-arrow--dark::after { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10'><path d='M7 0l5 5-5 5-1.4-1.4L8.2 6H0V4h8.2L5.6 1.4z' fill='%2325282a'/></svg>"); }

/* ---------- headings in the old styles ---------- */
.mevo-h-center { font-size: clamp(2rem, 3.2vw, 3rem); font-weight: 900; text-align: center; position: relative; padding-top: 2rem; margin: 0 0 1rem; }
.mevo-h-center::before { content: ""; position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 80px; height: 6px; border-radius: 3px; background: var(--wp--preset--color--primary); }
.mevo-h-center--bottom { padding-top: 0; padding-bottom: 1.5rem; margin-bottom: 0.5em; }
.mevo-h-center--bottom::before { top: auto; bottom: 0; }
.mevo-h-left { font-size: 2rem; font-weight: 900; position: relative; padding-bottom: 1.5rem; margin: 0 0 1rem; }
.mevo-h-left::after { content: ""; position: absolute; bottom: 0; left: 0; width: 60px; height: 6px; border-radius: 3px; background: var(--wp--preset--color--primary); }
.mevo-h-row { font-size: clamp(2rem, 2.6vw, 2.4rem); font-weight: 900; margin: 0 0 1rem; }

/* ---------- S0a featured bar (old .atwm-featured-header; dark text = deliberate contrast fix) ---------- */
.mevo-featured { background: var(--wp--preset--color--yellow); color: var(--wp--preset--color--dark); text-align: center; font-size: 0.9rem; font-weight: 500; }
.mevo-featured p { margin: 0; }

/* ---------- S0b language switch (shown, inert) ---------- */
.mevo-lang { display: inline-flex; gap: 0.4rem; margin: 0; text-transform: uppercase; font-size: 0.8rem; letter-spacing: 0.04em; }
.mevo-lang span[aria-disabled] { color: #fff; opacity: 0.85; cursor: default; }
.mevo-lang .mevo-lang__sep { opacity: 0.5; }

/* ---------- S0c menu: top level ---------- */
.mevo-header { position: relative; }
.mevo-header.mevo-header .wp-block-navigation { font-weight: 500; }
.mevo-header.mevo-header .wp-block-navigation .wp-block-navigation-submenu__toggle { padding: 1.1rem 0 1.1rem 0.85rem; background: transparent; border: 0; color: var(--wp--preset--color--dark); font: inherit; cursor: pointer; position: relative; }
.mevo-header.mevo-header .wp-block-navigation .wp-block-navigation-submenu__toggle::after { content: ""; position: absolute; left: 0.85rem; right: 0.2rem; bottom: 0.65rem; height: 3px; border-radius: 3px; background: var(--wp--preset--color--primary); transform: scaleX(0); transform-origin: left center; transition: transform 0.25s ease; right: 0; }
.mevo-header.mevo-header .wp-block-navigation .wp-block-navigation-submenu__toggle:hover::after,
.mevo-header.mevo-header .wp-block-navigation .wp-block-navigation-submenu__toggle[aria-expanded="true"]::after { transform: scaleX(1); }
.mevo-header.mevo-header .wp-block-navigation .wp-block-navigation-submenu__toggle:hover,
.mevo-header.mevo-header .wp-block-navigation .wp-block-navigation-submenu__toggle[aria-expanded="true"] { color: var(--wp--preset--color--primary-dark); }
.mevo-header.mevo-header .wp-block-navigation .wp-block-navigation__submenu-icon { margin: 0 0.85rem 0 0.35rem; }
.mevo-header.mevo-header .wp-block-navigation .mevo-menu-deferred > a { color: var(--wp--preset--color--dark); cursor: default; }
.mevo-header.mevo-header .wp-block-navigation .mevo-menu-deferred > a:hover { color: var(--wp--preset--color--dark); }
.mevo-header.mevo-header .wp-block-navigation .mevo-menu-deferred > a::after { display: none; }

/* ---------- S0c menu: panels (old mega-block: #323f48 panel, white headings, grey lines, arrow bullets) ---------- */
@media (min-width: 600px) {
	.mevo-header.mevo-header .wp-block-navigation .has-child { position: static; }
	.mevo-header.mevo-header .wp-block-navigation, .mevo-header.mevo-header .wp-block-navigation__container, .mevo-header.mevo-header .wp-block-navigation__responsive-container:not(.is-menu-open), .mevo-header.mevo-header .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__responsive-dialog { position: static; }  /* panel spans the header, like the old mega menu */
	.mevo-header.mevo-header .wp-block-navigation .has-child .wp-block-navigation__submenu-container { display: block; position: absolute; top: 100%; left: 0; right: 0; width: auto; min-width: 0; margin: 0; padding: 2.5rem max(3rem, calc((100% - 1296px) / 2)) 2rem; background: var(--wp--preset--color--menu-panel); color: var(--wp--preset--color--menu-text); border: 0; box-shadow: 0 12px 24px rgba(0,0,0,0.25); z-index: 50; }
	.mevo-header.mevo-header .wp-block-navigation .mevo-mega .wp-block-navigation__submenu-container { column-width: 200px; column-gap: 2.5rem; }
	.mevo-header.mevo-header .wp-block-navigation .mevo-dropdown .wp-block-navigation__submenu-container { left: auto; right: auto; min-width: 260px; padding: 1.5rem 2rem; }
	.mevo-header.mevo-header .wp-block-navigation .mevo-dropdown { position: relative; }
	.mevo-header.mevo-header .wp-block-navigation .has-child .wp-block-navigation__submenu-container > li { break-inside: avoid; display: block; width: 100%; }
	.mevo-header.mevo-header .wp-block-navigation .has-child .wp-block-navigation__submenu-container > li > a { padding: 0 0 0 20px; margin: 0 0 0.5em; font-size: 0.9rem; color: var(--wp--preset--color--menu-text); background: no-repeat left 0.45em / 8px url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 10'><path d='M1 0l5 5-5 5z' fill='%23b7bcbf'/></svg>"); cursor: default; }
	.mevo-header.mevo-header .wp-block-navigation .has-child .wp-block-navigation__submenu-container > li > a::after { display: none; }
	.mevo-header.mevo-header .wp-block-navigation .has-child .wp-block-navigation__submenu-container > li.mevo-menu-heading { break-before: column; }
	.mevo-header.mevo-header .wp-block-navigation .has-child .wp-block-navigation__submenu-container > li.mevo-menu-heading:first-child { break-before: auto; }
	.mevo-header.mevo-header .wp-block-navigation .has-child .wp-block-navigation__submenu-container > li.mevo-menu-heading > a { padding-left: 0; background: none; color: #fff; text-transform: uppercase; font-size: 1.1rem; font-weight: 700; margin: 0 0 1em; }
	.mevo-header.mevo-header .wp-block-navigation .has-child .wp-block-navigation__submenu-container > li a[href]:hover { color: #fff; text-decoration: underline; }
	.mevo-header.mevo-header .wp-block-navigation .has-child .wp-block-navigation__submenu-container > li.mevo-menu-soon > a { opacity: 0.8; }
}
/* mobile overlay: plain nested list in the old panel colours */
.mevo-header.mevo-header .wp-block-navigation__responsive-container.is-menu-open { background: #fff; color: var(--wp--preset--color--dark); }
.mevo-header.mevo-header.mevo-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container { background: var(--wp--preset--color--menu-panel); color: var(--wp--preset--color--menu-text); padding: 0.5rem 1rem; border-radius: 4px; }
.mevo-header.mevo-header.mevo-header .wp-block-navigation__responsive-container.is-menu-open .mevo-menu-heading > a { color: #fff; text-transform: uppercase; font-weight: 700; font-size: 0.95rem; }
.mevo-header.mevo-header.mevo-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container a { color: var(--wp--preset--color--menu-text); font-size: 0.9rem; }

/* ---------- S0d search parts band with inert fields (old .atwm-search-parts) ---------- */
.mevo-search-band h2.mevo-h3-look { font-size: 1.5rem; font-weight: 700; margin: 0 0 0.5rem; }
.mevo-search-fields { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; margin: 0; }
.mevo-search-fields .mevo-field { position: relative; margin: 0; }
.mevo-search-fields label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.mevo-search-fields input { box-sizing: border-box; width: 100%; min-height: 38px; padding: 0.55rem 2.4rem 0.55rem 0.9rem; border: 1px solid #c9ccd0; border-radius: 4px; background: #fff; color: var(--wp--preset--color--mid); font: 0.9rem/1.3 var(--wp--preset--font-family--roboto); cursor: default; }
.mevo-search-fields input::placeholder { color: #6b7075; opacity: 1; }
.mevo-search-fields .mevo-field--go::after { content: ""; position: absolute; right: 6px; top: 50%; width: 26px; height: 26px; transform: translateY(-50%); border-radius: 3px; background: #9aa0a6 no-repeat center / 10px url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 10'><path d='M1 0l5 5-5 5z' fill='%23ffffff'/></svg>"); }
.mevo-search-note { margin: 0.6rem 0 0; font-size: 0.8rem; color: #fff; opacity: 0.9; }
.mevo-search-note a { color: #fff; text-decoration: underline; }
.mevo-search-band .mevo-search-fields { display: grid; }
.mevo-search-fields p.mevo-field { margin: 0; }
@media (max-width: 767px) { .mevo-search-fields { grid-template-columns: 1fr; } }

/* ---------- carousel (S9 Industries, S14 Affiliates) ---------- */
.mevo-carousel { position: relative; }
.mevo-carousel__track { display: flex; gap: 1.5rem; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding: 0.25rem 0; margin: 0; list-style: none; }
.mevo-carousel__track::-webkit-scrollbar { display: none; }
.mevo-carousel__slide { flex: 0 0 calc((100% - 4.5rem) / 4); scroll-snap-align: start; margin: 0; }
.mevo-carousel__prev, .mevo-carousel__next { position: absolute; top: 50%; transform: translateY(-50%); width: 40px; height: 40px; border: 0; border-radius: 50%; background: rgba(36,40,43,0.75) no-repeat center / 10px url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 10'><path d='M1 0l5 5-5 5z' fill='%23ffffff'/></svg>"); color: transparent; cursor: pointer; z-index: 2; }
.mevo-carousel__prev { left: -20px; transform: translateY(-50%) rotate(180deg); }
.mevo-carousel__next { right: -20px; }
.mevo-carousel__prev:disabled, .mevo-carousel__next:disabled { opacity: 0.3; cursor: default; }
.mevo-carousel__prev:focus-visible, .mevo-carousel__next:focus-visible { outline: 3px solid var(--wp--preset--color--accent); }
@media (prefers-reduced-motion: reduce) { .mevo-carousel__track { scroll-behavior: auto; } }
@media (max-width: 991px) { .mevo-carousel__slide { flex-basis: calc((100% - 1.5rem) / 2); } }
@media (max-width: 575px) { .mevo-carousel__slide { flex-basis: 100%; } }

/* ---------- S1 hero banner (old: full-width image, badge bottom-left, no text) ---------- */
.mevo-home-hero { position: relative; }
.wp-site-blocks > main, .mevo-home-hero > .mevo-home-hero__media { margin-block-start: 0; }  /* every page: drop the root block gap (16 px) between the header part and main so the hero / title band sits flush under the nav; on home also the flow gap on the hero video (it collapsed through the hero and main) */
.mevo-home-hero__media { aspect-ratio: 1920 / 600; max-height: 600px; background: #0b2a4d; overflow: hidden; }  /* old site slider: 1920:600 at every width (450 at 1440, 240 at 768, 122 at 390), capped at 600 from 1920 up; video/poster cover-cropped */
.mevo-home-hero__text { position: absolute; inset: 0; padding: 0 1rem; color: #fff; text-align: center; text-shadow: 1px 1px 3px rgba(0,0,0,0.9), 0 0 12px rgba(0,0,0,0.35); pointer-events: none; }  /* old site: white Roboto 700, centred both ways, shadow 1px 1px 3px #000 */
.mevo-home-hero:not(.is-playing) .mevo-home-hero__text { clip-path: inset(50%); overflow: hidden; }  /* video not playing (reduced motion, paused, ended, blocked autoplay, no JS): no text on screen; still in the accessibility tree */
.mevo-home-hero .mevo-home-hero__title, .mevo-home-hero .mevo-home-hero__sub { position: absolute; inset: 0 1rem; margin: 0; display: grid; place-items: center; color: #fff; font-family: var(--wp--preset--font-family--roboto); font-weight: 700; font-size: clamp(1.125rem, 4.1667vw, 5rem); line-height: 1.1; letter-spacing: normal; }  /* every line the same size, like the old layers: 60 px at 1440 */
.mevo-home-hero__line { grid-area: 1 / 1; display: block; max-width: 100%; opacity: 0; transition: opacity 0.5s ease; }  /* one line at a time, all in the same centred spot */
.mevo-home-hero__line.is-on { opacity: 1; }
.mevo-home-hero__badge { position: absolute; left: max(2.5rem, calc((100% - 1296px) / 2)); bottom: 1.5rem; width: clamp(64px, 14vw, 270px); height: auto; filter: drop-shadow(0 1px 3px rgba(0,0,0,0.55)); }  /* white-lettered mark straight on the video, old-site size; shadow for bright frames */
.mevo-home-hero .mevo-video__toggle { right: max(1rem, calc((100% - 1296px) / 2)); }
@media (max-width: 767px) { .mevo-home-hero__badge { left: 0.75rem; bottom: 0.6rem; } .mevo-home-hero .mevo-video__toggle { bottom: 0.5rem; right: 0.75rem; width: 34px; height: 34px; } }

/* ---------- S2 TTX feature (old: heading + bar, line, button | banner with blue dots top-right) ---------- */
.mevo-ttx-feature__text { padding-left: 4rem; }
.mevo-ttx-feature__text > * { max-width: 480px; }
.mevo-ttx-feature__text .mevo-h-left { font-size: clamp(1.6rem, 2vw, 2rem); }
.mevo-ttx-feature__text p { font-size: 0.95rem; }
.mevo-ttx-feature__frame { position: relative; width: 550px; max-width: 100%; margin-left: auto; }
.mevo-dots { position: absolute; top: -50px; right: -44px; width: 240px; height: 130px; background: radial-gradient(circle, var(--wp--preset--color--primary) 4px, transparent 4.5px) 0 0 / 20px 20px; pointer-events: none; }
@media (max-width: 781px) { .mevo-ttx-feature__text { padding-left: 0; } .mevo-ttx-feature__frame { margin: 2rem auto 0; } .mevo-dots { display: none; } }

/* ---------- S3/S4 dark category bands (old .atwm-frontpage-categories-*) ---------- */
.mevo-h-center--plain { padding-top: 0; }
.mevo-h-center--plain::before { display: none; }
.mevo-cats .mevo-h-center { font-size: clamp(1.6rem, 2.2vw, 2rem); font-weight: 700; line-height: 1.2; margin-bottom: 1.2rem; }
.mevo-cats__intro { max-width: 640px; margin: 0 auto 2.5rem; font-size: 0.95rem; line-height: 1.6; }
.mevo-tiles-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 2.5rem 2rem; }
.mevo-tile { position: relative; margin: 0; text-align: center; }
.mevo-tile .mevo-ph { border-radius: 5px; }
.mevo-pill { box-sizing: border-box; display: inline-block; min-width: 300px; padding: 1.4em 2em; border-radius: 5px; background: #fff; color: var(--wp--preset--color--dark); font-size: 0.9rem; font-weight: 700; letter-spacing: 0.02em; text-transform: uppercase; box-shadow: 0 0 7px rgba(0,0,0,0.3); }
.mevo-tile .mevo-pill { position: relative; margin-top: -1.6rem; }
.mevo-tiles-pill-row { text-align: center; margin: -1.6rem 0 0; position: relative; }
.mevo-tiles-grid--nolabel { margin-bottom: 0; }
@media (max-width: 991px) { .mevo-tiles-grid { grid-template-columns: repeat(2, 1fr); } .mevo-pill { min-width: 0; width: calc(100% - 2rem); } }
@media (max-width: 575px) { .mevo-tiles-grid { grid-template-columns: 1fr; } }

/* ---------- S5 brand strip ---------- */
.mevo-brand-strip__list { list-style: none; margin: 0; padding: 0; display: flex; justify-content: center; align-items: center; gap: 6rem; flex-wrap: wrap; }
.mevo-brand-strip__list > * { margin: 0; }
.mevo-brand-strip__list > :nth-child(1) { width: 240px; }
.mevo-brand-strip__list > :nth-child(2) { width: 300px; }
.mevo-brand-strip__list > :nth-child(3) { width: 150px; }
.mevo-brand-strip__list .mevo-ph { border-radius: 0; }

/* ---------- S6 / S11 photo bands (old .atwm-frontpage-under-the-hoist) ---------- */
.mevo-photo-band { position: relative; color: #fff; overflow: hidden; }
.mevo-photo-band .mevo-photo-band__bg { position: absolute; inset: 0; width: 100%; max-width: none; border-radius: 0; z-index: 0; aspect-ratio: auto; }  /* full bleed: the constrained layout would otherwise cap it at the container width */
.mevo-photo-band > :not(.mevo-photo-band__bg) { position: relative; z-index: 1; }
.mevo-photo-band h2, .mevo-photo-band h3, .mevo-photo-band p { color: #fff; }
.mevo-band-h2 { font-size: clamp(2rem, 3vw, 2.6rem); font-weight: 700; margin: 0 0 0.3rem; text-shadow: 0 2px 12px rgba(0,0,0,0.35); }
.mevo-band-h3 { font-size: clamp(1.6rem, 3.2vw, 3rem); font-weight: 700; margin: 0 0 1.5rem; text-shadow: 0 2px 12px rgba(0,0,0,0.35); }
.mevo-band-p { max-width: 80%; margin: 0 auto 1.5rem; font-size: 0.95rem; }
.mevo-photo-band--hoist .mevo-band-h2 { font-size: clamp(2.8rem, 5vw, 5rem); font-weight: 900; }
.mevo-photo-band--hoist .mevo-band-h3 { font-size: clamp(1.5rem, 2.2vw, 2rem); }
.mevo-buttons-deferred--center { justify-content: center; margin-top: 0; }
.mevo-btn-dark { background: #23272b !important; color: #fff !important; }

/* ---------- S7 / S8 full rows (old .atwm-frontpage-full-row) ---------- */
.mevo-full-row--grey { background: var(--wp--preset--color--light); }
.mevo-full-row__inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: stretch; }
.mevo-full-row__media .mevo-ph { height: 100%; min-height: 420px; border-radius: 0; aspect-ratio: auto; }
.mevo-full-row__text { padding: 3rem; display: flex; flex-direction: column; justify-content: center; }
.mevo-full-row__text .mevo-h-row { margin-bottom: 1rem; }
.mevo-full-row__text .mevo-h-row strong { color: var(--wp--preset--color--primary); font-weight: 900; }
.mevo-full-row__text p { font-size: 0.95rem; max-width: 520px; margin: 0; }
.mevo-full-row__inner > .mevo-full-row__text:last-child { padding-right: 15vw; }
.mevo-full-row__inner > .mevo-full-row__text:first-child { padding-left: 15vw; }
.mevo-full-row--dark .mevo-full-row__text, .mevo-full-row--dark .mevo-h-row { color: #fff; }
.mevo-full-row--white { background: #fff; }
.mevo-industries { margin-top: 2.5rem; }  /* white strip between the Labor Saver row and the dark Industries band */
@media (max-width: 781px) { .mevo-full-row__inner { grid-template-columns: minmax(0, 1fr); } .mevo-full-row__inner > .mevo-full-row__text:last-child, .mevo-full-row__inner > .mevo-full-row__text:first-child { padding: 2rem; } .mevo-full-row__inner > .mevo-full-row__media { order: -1; } .mevo-full-row__media .mevo-ph { min-height: 0; height: 240px; aspect-ratio: auto; } }

/* ---------- S9 Industries (old .atwm-frontpage-industries / .image-slide) ---------- */
.mevo-industries__h { color: #fff; font-size: clamp(1.5rem, 2vw, 1.9rem); font-weight: 700; margin: 0 0 1.5rem; }
.mevo-carousel--dark { padding: 0 3.5rem; }  /* room for the arrows outside the slides */
.mevo-carousel--dark .mevo-carousel__prev, .mevo-carousel--dark .mevo-carousel__next { background-color: transparent; background-size: 16px; width: 44px; height: 44px; }
.mevo-carousel--dark .mevo-carousel__prev { left: 0; }
.mevo-carousel--dark .mevo-carousel__next { right: 0; }
.mevo-carousel--dark .mevo-carousel__prev:disabled, .mevo-carousel--dark .mevo-carousel__next:disabled { opacity: 0.35; }
.mevo-carousel--light { padding: 0 3.5rem; }
.mevo-carousel--light .mevo-carousel__prev, .mevo-carousel--light .mevo-carousel__next { background-color: transparent; background-size: 16px; width: 44px; height: 44px; background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 10'><path d='M1 0l5 5-5 5z' fill='%23231f20'/></svg>"); }
.mevo-carousel--light .mevo-carousel__prev { left: 0; }
.mevo-carousel--light .mevo-carousel__next { right: 0; }
.mevo-carousel--light .mevo-carousel__prev:disabled, .mevo-carousel--light .mevo-carousel__next:disabled { opacity: 0.3; }
.mevo-h-left--sm { font-size: clamp(1.5rem, 2vw, 1.9rem); font-weight: 700; padding-bottom: 1.1rem; margin-bottom: 1.5rem; }
.mevo-slide { position: relative; margin: 0; }
.mevo-slide .mevo-ph { border-radius: 0; }
.mevo-slide__caption { position: absolute; left: 0; right: 0; bottom: 0; margin: 0; padding: 1rem 0.5rem; background: var(--wp--preset--color--primary); color: #fff; text-align: center; text-transform: uppercase; font-size: 0.9rem; }
.mevo-carousel--logos .mevo-carousel__slide { flex-basis: calc((100% - 6rem) / 5); }
.mevo-carousel--logos .mevo-ph { border-radius: 0; }
@media (max-width: 991px) { .mevo-carousel--logos .mevo-carousel__slide { flex-basis: calc((100% - 3rem) / 3); } }

/* ---------- S10 white rounded cards (old .atwm-why-mevotech-row) ---------- */
.mevo-why-card { width: 80%; margin: 0 auto; background: #fff; border-top-left-radius: 80px; border-bottom-right-radius: 80px; box-shadow: -5px 0 15px rgba(0,0,0,0.15); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); overflow: hidden; }
.mevo-why-card--second { margin-top: 3rem; }
.mevo-why-card__text { padding: 3rem 3rem 3rem 5rem; }
.mevo-why-card__text p { font-size: 0.95rem; }
.mevo-why-card__text strong { color: var(--wp--preset--color--primary); }
.mevo-why-card__media { display: flex; align-items: stretch; }
.mevo-why-card__media .mevo-ph { border-radius: 0; height: 100%; }
.mevo-why-card__media--stack { flex-direction: column; justify-content: center; gap: 1.5rem; padding: 2rem; }
.mevo-why-card__media--stack .mevo-ph { height: auto; }
.mevo-why-card__media--stack .mevo-ph--logo { width: 300px; max-width: 100%; align-self: flex-end; }
@media (max-width: 991px) { .mevo-why-card { width: 100%; grid-template-columns: minmax(0, 1fr); border-top-left-radius: 40px; border-bottom-right-radius: 40px; } .mevo-why-card__text { padding: 2rem; } .mevo-why-card__media .mevo-ph { height: auto; min-height: 260px; } }

/* ---------- S12 newsletter (old .atwm-newsletter-signup) ---------- */
.mevo-newsletter { background-color: var(--wp--preset--color--primary); background-image: repeating-linear-gradient(0deg, rgba(255,255,255,0.06) 0 1px, transparent 1px 48px), repeating-linear-gradient(90deg, rgba(255,255,255,0.06) 0 1px, transparent 1px 48px); color: #fff; }
.mevo-newsletter__h { color: #fff; font-size: 1.5rem; font-weight: 700; margin: 0 0 1rem; }
.mevo-newsletter__form { display: grid; grid-template-columns: 1fr 1fr 2fr 1.4fr; gap: 0.75rem; align-items: start; }
.mevo-newsletter__form .mevo-field { margin: 0; position: relative; }
.mevo-newsletter__form label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.mevo-newsletter__form input { box-sizing: border-box; width: 100%; min-height: 38px; padding: 0.8em 1rem; border: 0; border-radius: 4px; background: #f0f1f2; color: var(--wp--preset--color--mid); font: 0.9rem/1.3 var(--wp--preset--font-family--roboto); cursor: default; }
.mevo-newsletter__form input::placeholder { color: #5f6366; opacity: 1; }
.mevo-newsletter__btn { box-sizing: border-box; display: block; width: 100%; min-height: 38px; padding: 0.8em 2rem; border-radius: 5px; background: #23272b; color: #fff; text-align: center; font-size: 0.9rem; cursor: default; }
@media (max-width: 767px) { .mevo-newsletter__form { grid-template-columns: 1fr; } }

/* ---------- S13 Latest Resources (old .atwm-latest-article) ---------- */
.mevo-res-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; }
.mevo-res { margin: 0; position: relative; }
.mevo-res__img .mevo-ph { border-radius: 0; }
.mevo-res__body { background: #fff; box-shadow: 0 0 15px rgba(0,0,0,0.15); padding: 1.25rem 1.5rem 1rem; width: 86%; margin: -3rem 0 0 auto; position: relative; }
.mevo-res__title { font-size: 1rem; font-weight: 700; margin: 0 0 0.6rem; }
.mevo-res__link { font-size: 0.85rem; font-weight: 700; color: var(--wp--preset--color--dark); }
.mevo-res__link::after { content: " →"; }
@media (max-width: 781px) { .mevo-res-grid { grid-template-columns: 1fr; } }

/* ---------- S15 footer lists / columns ---------- */
.mevo-footer-list { list-style: none; margin: 0; padding: 0; }
.mevo-footer-list li { margin: 0 0 0.55rem; }
.mevo-footer-list .mevo-link-deferred { color: #fff; opacity: 0.85; }

/* =====================================================================
   Marketing feedback round 1 (2026-10-26): trimmed chrome, real assets
   ===================================================================== */

/* ---------- S0d search band = message + two live buttons (no fields) ---------- */
.mevo-search-msg { gap: 1rem 2.5rem; }
.mevo-search-msg__text { flex: 1 1 520px; min-width: 0; }
.mevo-search-msg__text p { font-size: 0.95rem; line-height: 1.5; max-width: 760px; }
.mevo-search-band h2.mevo-h3-look { margin-bottom: 0.35rem; }
.mevo-search-msg__buttons { gap: 0.75rem; }
.mevo-search-band.mevo-search-band .wp-block-button__link { padding: 0.65rem 1.3rem; font-size: 0.9rem; font-weight: 700; border-radius: 5px; }
@media (max-width: 599px) { .mevo-search-msg__buttons, .mevo-search-msg__buttons .wp-block-button { width: 100%; } .mevo-search-msg__buttons .wp-block-button__link { display: block; width: 100%; box-sizing: border-box; text-align: center; } }

/* ---------- background videos (hero, TTX) + pause/play control ---------- */
.mevo-video { position: relative; }
.mevo-video__el { display: block; width: 100%; height: 100%; object-fit: cover; }
.mevo-video__toggle { position: absolute; right: 1rem; bottom: 1rem; z-index: 2; width: 40px; height: 40px; padding: 0; border: 0; border-radius: 50%; cursor: pointer; background: rgba(18,18,18,0.72) no-repeat center / 14px url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'><path d='M2 1h3.5v12H2zM8.5 1H12v12H8.5z' fill='%23ffffff'/></svg>"); }
.mevo-video__toggle.is-paused { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'><path d='M3 1l10 6-10 6z' fill='%23ffffff'/></svg>"); }
.mevo-video__toggle:hover { background-color: rgba(18,18,18,0.9); }
.mevo-video__toggle[hidden] { display: none; }

/* ---------- S2 TTX feature: logo + explosion video ---------- */
.mevo-ttx-feature__logo { margin: 0 0 1.75rem; }
.mevo-ttx-feature__logo img { display: block; width: 220px; height: auto; }
.mevo-ttx-feature__video { aspect-ratio: 1 / 1; border-radius: 5px; overflow: hidden; background: #000; }

/* ---------- S3 square product tiles / S4 pad images ---------- */
.mevo-tiles-grid--square.mevo-tiles-grid--square { max-width: 1080px; }
.mevo-tile__fig { margin: 0; }
.mevo-tile img { display: block; width: 100%; height: auto; border-radius: 5px; }
.mevo-tiles-grid--square img { aspect-ratio: 1 / 1; object-fit: cover; background: #000; }
.mevo-pill--label { cursor: default; padding: 1.1em 2em; }
.mevo-cats .mevo-h-center.mevo-h-logo { margin-bottom: 1.4rem; line-height: 0; }
.mevo-h-logo img { display: block; width: 260px; max-width: 70%; height: auto; margin: 0 auto; }

/* ---------- S5 brand logos ---------- */
.mevo-brand-strip__list img { display: block; width: 100%; height: auto; }

/* ---------- S6 OEM: live dark button ---------- */
.mevo-buttons-row .mevo-btn-dark:hover, .mevo-buttons-row .mevo-btn-dark:focus-visible { background: #000 !important; }

/* ---------- S10 Why Mevotech: two-slide carousel (arrows, no autoplay) ---------- */
.mevo-carousel--why { padding: 0 3.5rem; }
.mevo-carousel--why .mevo-carousel__track { gap: 0; padding: 1rem 0 2rem; }
.mevo-carousel--why .mevo-carousel__slide { flex-basis: 100%; display: flex; }
.mevo-carousel--why .mevo-why-card { width: 86%; margin: 0 auto; }
.mevo-carousel--why .mevo-why-card { grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); }
@media (max-width: 991px) { .mevo-carousel--why .mevo-why-card { grid-template-columns: minmax(0, 1fr); } }
.mevo-carousel--why .mevo-carousel__prev, .mevo-carousel--why .mevo-carousel__next { background-color: transparent; background-size: 16px; width: 44px; height: 44px; background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 10'><path d='M1 0l5 5-5 5z' fill='%23231f20'/></svg>"); }
.mevo-carousel--why .mevo-carousel__prev { left: 0; }
.mevo-carousel--why .mevo-carousel__next { right: 0; }
.mevo-carousel--why .mevo-carousel__prev:disabled, .mevo-carousel--why .mevo-carousel__next:disabled { opacity: 0.3; }
.mevo-why-card__media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.mevo-why-card__media--stack img.mevo-why-card__logo { width: 300px; max-width: 100%; height: auto; object-fit: contain; align-self: flex-end; }
@media (max-width: 991px) { .mevo-why-card__media img { height: auto; align-self: flex-start; } .mevo-carousel--why .mevo-why-card { grid-template-rows: auto 1fr; } .mevo-carousel--why .mevo-why-card__media:not(.mevo-why-card__media--stack) { background: #000; } .mevo-carousel--why .mevo-why-card__media:not(.mevo-why-card__media--stack) img { height: 100%; align-self: stretch; object-fit: contain; object-position: center top; } }
@media (max-width: 767px) {
	.mevo-carousel--why { padding: 0 0 3rem; }
	.mevo-carousel--why .mevo-why-card { width: 100%; }
	.mevo-carousel--why .mevo-carousel__prev, .mevo-carousel--why .mevo-carousel__next { top: auto; bottom: 0; }
	.mevo-carousel--why .mevo-carousel__prev { left: calc(50% - 52px); transform: rotate(180deg); }
	.mevo-carousel--why .mevo-carousel__next { right: calc(50% - 52px); transform: none; }
}

/* ---------- S6 OEM photo background (marketing image, unfiltered) ---------- */
.mevo-photo-band__bg--oem { background: #0b2a4d 50% 90% / cover no-repeat; }  /* focal point low: the car sits in the lower half of the frame */
/* taller band so the whole car is in frame: ~320 px at 390, ~420 at 768, 600 from 1200 up; text block centred vertically */
.mevo-photo-band--oem.mevo-photo-band--oem { display: flex; flex-direction: column; justify-content: center; min-height: calc(216.8px + 26.46vw); padding-top: 1.75rem !important; padding-bottom: 1.75rem !important; box-sizing: border-box; }
@media (min-width: 768px) { .mevo-photo-band--oem.mevo-photo-band--oem { min-height: calc(100px + 41.67vw); padding-top: 3rem !important; padding-bottom: 3rem !important; } }
@media (min-width: 1200px) { .mevo-photo-band--oem.mevo-photo-band--oem { min-height: 600px; } }
/* tint removed 2026-10-26 (Božo): image shown unfiltered */
.mevo-photo-band--oem .mevo-band-p { text-shadow: 0 1px 2px rgba(0,0,0,0.8), 0 2px 12px rgba(0,0,0,0.5); }  /* subline crosses bright light trails without the tint */

/* =====================================================================
   Inner pages 1:1 pass (2026-10-26) — Careers / Contact sections restored
   from the old site; labelled .mevo-ph slots stand in for missing assets.
   ===================================================================== */
.mevo-ph--icon { width: 120px; aspect-ratio: 1 / 1; flex: none; }
.mevo-ph--icon-sm { width: 80px; aspect-ratio: 1 / 1; flex: none; }
.mevo-ph--square { width: 100%; max-width: 265px; aspect-ratio: 1 / 1; }
.mevo-ph--video { margin-inline: auto !important; }
.mevo-ph--lead { margin-bottom: 1rem; }
.mevo-ph--icon::before, .mevo-ph--icon-sm::before { font-size: 0.6rem; }

/* full-width band inside page content (old full-width rows) */
.mevo-bleed { margin-left: calc(50% - 50vw) !important; margin-right: calc(50% - 50vw) !important; max-width: none !important; padding-left: var(--wp--style--root--padding-left, 1.5rem); padding-right: var(--wp--style--root--padding-right, 1.5rem); }
.mevo-bleed--last { margin-bottom: calc(-4rem - var(--wp--style--block-gap, 16px)) !important; }  /* sits flush on the footer: page padding + root block gap */
main:has(.mevo-bleed) { overflow-x: clip; }
.wp-block-post-content:where(:not(.mevo-home-content)) > .mevo-bleed { margin-top: 3.5rem; }

/* Careers */
.wp-block-post-content:where(:not(.mevo-home-content)) > .mevo-split { margin-bottom: 1rem; }
.wp-block-post-content:where(:not(.mevo-home-content)) .mevo-split h2.mevo-h-bar { font-size: 1.8rem; }
.mevo-flip-static { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 0.75rem; }  /* old flip cards, front and back shown together */
.mevo-flip-static > * { margin: 0 !important; }
.wp-block-post-content:where(:not(.mevo-home-content)) .mevo-flip-static h3 { font-size: 1.25rem; }
.mevo-flip-static p { font-size: 0.95rem; }
.mevo-award { text-align: center; margin-top: 3rem; }
.mevo-award__logo { display: block; width: 600px; max-width: 100%; height: auto; margin: 0 auto 1.25rem; }
.mevo-award__text { font-size: 1.1rem !important; font-weight: 400; line-height: 1.5; max-width: 1100px; margin-inline: auto; }
.mevo-stats { list-style: none; margin: 1.5rem auto 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2rem; }
.mevo-stat { display: flex; align-items: flex-start; gap: 1rem; }
.mevo-stat__num { font-size: 3.2rem; font-weight: 900; line-height: 1; margin: 0 0 0.5rem; }
.mevo-stat__num sup { font-size: 1.4rem; vertical-align: top; }
.mevo-stat__text { font-size: 0.9rem; margin: 0; }
.mevo-ph--round { border-radius: 50%; margin-inline: auto !important; }
.mevo-ph--round::before { inset: auto 15% 18% 15%; text-align: center; border-radius: 3px; }
.mevo-ph--intro { border-top-left-radius: 80px; }
.mevo-split .wp-block-column:first-child { position: relative; }
.mevo-split .wp-block-column:first-child::before { content: ""; position: absolute; top: -2.5rem; right: -1.5rem; width: 160px; height: 90px; background: radial-gradient(circle, var(--wp--preset--color--primary) 4px, transparent 4.5px) 0 0 / 18px 18px; z-index: 0; }  /* old dot pattern behind the intro photo */
.mevo-split .mevo-ph--intro { position: relative; z-index: 1; }
.mevo-card__sub { font-size: 1rem !important; color: var(--wp--preset--color--primary); }
.mevo-values-band { background: #f2f2f2; padding-top: 3rem; padding-bottom: 3rem; }
.mevo-values { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 1.5rem; }
.mevo-value { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 0.75rem; }
.mevo-value p { margin: 0; font-size: 0.85rem; }
.mevo-value .mevo-ph--icon { width: 72px; }
@media (max-width: 991px) { .mevo-values { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 600px) { .mevo-values { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; } .mevo-split .wp-block-column:first-child::before { display: none; } }

/* Contact */
.mevo-photo-col .mevo-ph { height: 100%; min-height: 240px; }
.mevo-npi { border-radius: 12px; padding: 2.5rem 1.5rem; margin-top: 3rem; }
.mevo-npi__eyebrow { font-size: 0.85rem; margin: 0 0 0.5rem; }
.wp-block-post-content:where(:not(.mevo-home-content)) .mevo-npi__h { font-size: 1.45rem; line-height: 1.3; margin: 0 0 1.5rem; }

/* Photo heroes (Contact, Careers): heading over a full-width photo band, as on the old site */
.mevo-hero--photo { min-height: clamp(300px, 36.8vw, 560px); display: flex; flex-direction: column; justify-content: center; box-sizing: border-box; }
.mevo-hero.mevo-hero--photo > .mevo-hero__ph { position: absolute; inset: 0; z-index: 0; border-radius: 0; width: auto; max-width: none; margin: 0; }
.mevo-hero--photo::after { z-index: 0; background: linear-gradient(90deg, rgba(15,17,19,0.85) 0%, rgba(15,17,19,0.35) 55%, transparent 100%); }
.mevo-hero--photo > .wp-block-group { z-index: 1; width: 100%; box-sizing: border-box; }  /* flex column would shrink-wrap and centre it; keep the container's left edge */
.mevo-hero h1.mevo-hero__h1--careers { text-transform: uppercase; line-height: 1.15; }
.mevo-hero__badge { display: block; width: 200px; max-width: 50%; height: auto; margin-top: 2rem; }

/* Form modals (Contact page; old pop-up forms) */
html.mevo-modal-open { overflow: hidden; }
.mevo-modal { padding: 0; border: 0; border-radius: 6px; width: min(760px, calc(100vw - 2rem)); max-height: calc(100dvh - 2rem); background: #fff; color: var(--wp--preset--color--dark); box-shadow: 0 10px 40px rgba(0,0,0,0.35); }
.mevo-modal::backdrop { background: rgba(15,17,19,0.7); }
.mevo-modal__panel { padding: 1.5rem 1.75rem 2rem; }
.mevo-modal .forminator-ui.forminator-custom-form { max-width: 100% !important; }
@media (max-width: 600px) { .mevo-modal__panel { padding: 1rem 1rem 1.5rem; } }
.mevo-hero h1.mevo-hero__h1--contact { font-size: clamp(2.4rem, 5.5vw, 5rem); }

/* Careers 1:1 (Božo browser check): carousels, survey rings, caption modals */
.mevo-carousel--careers { margin-top: 3rem; }
.mevo-why-card__media--fit { align-items: center; justify-content: center; padding: 2rem 2rem 2rem 0; }
.mevo-why-card__media--fit .mevo-ph { height: auto; border-radius: 5px; }
@media (max-width: 991px) { .mevo-why-card__media--fit { padding: 0 2rem 2rem; } }
.mevo-carousel--photos { padding: 0 3.5rem; margin: 0 auto 3rem; max-width: 1000px; }
.mevo-carousel--photos .mevo-carousel__track { gap: 0; align-items: center; }
.mevo-carousel--photos .mevo-carousel__slide { flex-basis: 100%; display: flex; justify-content: center; }
.mevo-carousel--photos .mevo-ph--photo { width: 100%; height: auto; }  /* slot keeps the original aspect ratio: nothing cropped */
.mevo-carousel--photos .mevo-carousel__prev, .mevo-carousel--photos .mevo-carousel__next { background-color: transparent; background-size: 16px; width: 44px; height: 44px; background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 10'><path d='M1 0l5 5-5 5z' fill='%23231f20'/></svg>"); }
.mevo-carousel--photos .mevo-carousel__prev { left: 0; }
.mevo-carousel--photos .mevo-carousel__next { right: 0; }
.mevo-carousel--photos .mevo-carousel__prev:disabled, .mevo-carousel--photos .mevo-carousel__next:disabled { opacity: 0.3; }
@media (max-width: 767px) { .mevo-carousel--photos { padding: 0 0 3rem; } .mevo-carousel--photos .mevo-carousel__prev, .mevo-carousel--photos .mevo-carousel__next { top: auto; bottom: 0; } .mevo-carousel--photos .mevo-carousel__prev { left: calc(50% - 52px); transform: rotate(180deg); } .mevo-carousel--photos .mevo-carousel__next { right: calc(50% - 52px); transform: none; } }

.mevo-benefit-grid, .mevo-life-grid { list-style: none; margin: 0; padding: 0; display: grid; gap: 2.5rem 2rem; }
.mevo-benefit-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.mevo-life-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-bottom: 1rem; }
@media (max-width: 991px) { .mevo-life-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .mevo-benefit-grid { grid-template-columns: minmax(0, 1fr); } }
.mevo-caption { margin: 0; font-size: 1.25rem; line-height: 1.3; }
.mevo-value .mevo-caption { font-size: 0.95rem; font-weight: 400; }
.mevo-caption__btn { all: unset; box-sizing: border-box; display: inline; cursor: pointer; font: inherit; font-weight: 700; color: var(--wp--preset--color--dark); text-align: center; border-radius: 3px; transition: color 0.15s ease; }
.mevo-value .mevo-caption__btn { font-weight: 400; }
.mevo-caption__btn:hover, .mevo-caption__btn:focus-visible { color: var(--wp--preset--color--primary); }
.mevo-caption__btn:focus-visible { outline: 3px solid var(--wp--preset--color--accent); outline-offset: 2px; }
.mevo-modal--info { width: min(640px, calc(100vw - 2rem)); }
.mevo-modal--info .mevo-modal__body p { font-size: 0.95rem; margin: 0 0 0.9rem; }

.mevo-culture-band { padding-top: 3.5rem; padding-bottom: 3.5rem; background-color: #121212; }
.mevo-culture-band > p { margin-top: 0; }
.mevo-stats--rings { list-style: none; margin: 2rem auto 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2rem; }
.mevo-stats--rings .mevo-stat { display: flex; align-items: flex-start; gap: 1rem; color: #fff; }
.mevo-ring { position: relative; flex: none; width: 96px; height: 96px; margin-top: 0.75rem; }
.mevo-ring__svg { display: block; width: 100%; height: 100%; transform: rotate(-90deg); }
.mevo-ring__track { fill: none; stroke: #fff; stroke-width: 6; }
.mevo-ring__arc { fill: none; stroke: var(--wp--preset--color--primary); stroke-width: 6; stroke-linecap: butt; }
.mevo-ring .mevo-ring__icon { position: absolute; inset: 22px; width: auto; height: auto; aspect-ratio: auto; border-radius: 50%; }
.mevo-ring .mevo-ring__icon::before { font-size: 0.5rem; }
.mevo-stats--rings .mevo-stat__num { font-size: 3.2rem; font-weight: 900; line-height: 1; margin: 0 0 0.5rem; color: #fff; }
.mevo-stats--rings .mevo-stat__num sup { font-size: 1.4rem; vertical-align: top; }
.mevo-stats--rings .mevo-stat__text { font-size: 0.9rem; margin: 0; color: #fff; }
@media (max-width: 991px) { .mevo-stats--rings { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .mevo-stats--rings { grid-template-columns: minmax(0, 1fr); } }
.wp-block-post-content:where(:not(.mevo-home-content)) .mevo-carousel--why h2.mevo-h-left--sm { font-size: clamp(1.5rem, 2vw, 1.9rem); }  /* same size as the home card heading */
.mevo-stats--rings .mevo-stat__val { font-variant-numeric: tabular-nums; }  /* count-up does not jitter */
.mevo-modal--info .mevo-modal__body > p:last-child { margin-bottom: 0; }
.mevo-modal--info .mevo-modal__panel { position: relative; padding: 40px 47px 32px; }  /* same frame as the form pop-ups (assets/css/forms.css) */
@media (max-width: 600px) { .mevo-modal--info .mevo-modal__panel { padding: 40px 20px 24px; } }

/* Modals, final: no visible title (aria-label on the <dialog>), close X in a sticky zero-height bar ABOVE the panel,
   so it stays inside the dialog's top-right corner and never scrolls away or gets clipped. */
dialog.mevo-modal { margin: auto !important; inset: 0; max-height: calc(100dvh - 2rem); overflow-y: auto; overscroll-behavior: contain; outline: none; }
.mevo-modal__bar { position: sticky; top: 0; z-index: 5; height: 0; display: flex; justify-content: flex-end; }
.mevo-modal .mevo-modal__bar .mevo-modal__close { position: relative !important; flex: none; width: 40px !important; height: 40px !important; margin: 16px 16px 0 0 !important; padding: 0 !important; border: 0 !important; border-radius: 50% !important; background: #fff !important; color: var(--wp--preset--color--primary) !important; font-size: 0 !important; line-height: 0; cursor: pointer; }
.mevo-modal .mevo-modal__bar .mevo-modal__close > span { display: none; }
.mevo-modal .mevo-modal__bar .mevo-modal__close::before, .mevo-modal .mevo-modal__bar .mevo-modal__close::after { content: ""; position: absolute; left: 50%; top: 50%; width: 22px; height: 2px; background: currentColor; transform: translate(-50%, -50%) rotate(45deg); }
.mevo-modal .mevo-modal__bar .mevo-modal__close::after { transform: translate(-50%, -50%) rotate(-45deg); }
.mevo-modal .mevo-modal__bar .mevo-modal__close:hover { color: #1b5a96 !important; background: #fff !important; }
.mevo-modal .mevo-modal__bar .mevo-modal__close:focus-visible { outline: 3px solid var(--wp--preset--color--primary) !important; outline-offset: 2px; }
.mevo-modal--info .mevo-modal__panel { padding: 56px 47px 32px; }
@media (max-width: 600px) { .mevo-modal--info .mevo-modal__panel { padding: 56px 20px 24px; } }
.mevo-modal .mevo-modal__bar + .mevo-modal__panel { padding-top: 64px !important; }  /* clear the 16 + 40 px close button */

/* =====================================================================
   Marketing review round 2 (Rolando / Vera deck, 2026-10-27)
   ===================================================================== */

/* engineering line-drawing background (old frontpage-categories-row.jpg, re-encoded from the clean copy): S3, S4, S9, Contact New Product Ideas */
.mevo-lines-band.mevo-lines-band { background-color: #1f2326; background-image: url("assets/img/line-drawing-bg.jpg"); background-position: center; background-repeat: no-repeat; background-size: cover; }

/* S2: no logo; animation smaller, still square (old image column ~454 px) */
.mevo-ttx-feature__frame { width: 454px; }

/* S3: 468×288 rectangles like the S4 pads; square renders shown whole on black (no crop) */
.mevo-tiles-grid--rect img { aspect-ratio: 468 / 288; object-fit: contain; background: #000; }

/* S3 / S4: white divider between the two dark bands (old page had a white gap) */
.mevo-cats--ttx { margin-block-start: 0 !important; }  /* superseded 0.6.26: the divider is the old 120 px white strip at the foot of S3, see below */

/* S10: Best Managed sticker shown whole (was cover-cropped, its text was cut) */
.mevo-why-card__media--sticker { background: #000; align-items: center; }
.mevo-carousel--why .mevo-why-card__media.mevo-why-card__media--sticker img { height: auto; max-height: 100%; object-fit: contain; align-self: center; }

/* S14: delivered affiliate logos in the 2:1 slot */
.mevo-logo-tile { aspect-ratio: 2 / 1; display: flex; align-items: center; justify-content: center; padding: 0.75rem; box-sizing: border-box; background: #fff; }
.mevo-logo-tile img { display: block; max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; }

/* Contact: TTX-style 3 columns, round blue icons, no form buttons (forms and dialogs stay in the markup) */
.mevo-contact-cols { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; text-align: center; margin: 1rem 0 0; }
.mevo-contact-col { display: flex; flex-direction: column; align-items: center; gap: 0.6rem; scroll-margin-top: 2rem; }
.mevo-contact-col > * { margin: 0; }
.mevo-contact-col__icon { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 50%; background: #dceaf7; color: var(--wp--preset--color--primary); margin-bottom: 1.25rem; }
.wp-block-post-content:where(:not(.mevo-home-content)) .mevo-contact-col__h { font-size: 1.05rem; font-weight: 700; margin-bottom: 0.4rem; }
.mevo-contact-col__text { font-size: 0.95rem; }
.mevo-contact-col__link a { color: var(--wp--preset--color--primary-dark); text-decoration: none; font-size: 0.95rem; }
.mevo-contact-col__link a:hover { text-decoration: underline; }
.mevo-contact-col:target .mevo-contact-col__h { color: var(--wp--preset--color--primary-dark); }
@media (max-width: 767px) { .mevo-contact-cols { grid-template-columns: minmax(0, 1fr); gap: 2.5rem; } }

/* Careers Life at Mevotech: two photos per view like the old carousel (slides_on_desk=2), one on phones */
.mevo-carousel--photos.mevo-carousel--two-up { max-width: none; }
.mevo-carousel--two-up .mevo-carousel__track { gap: 1.5rem; align-items: flex-start; }
.mevo-carousel--two-up .mevo-carousel__slide { flex-basis: calc((100% - 1.5rem) / 2); }
@media (max-width: 767px) { .mevo-carousel--two-up .mevo-carousel__slide { flex-basis: 100%; } }

/* ---------- Header 1:1 with the old site (marketing row 1, 2026-10-27), measured on localhost:8089 with getBoundingClientRect.
   Old = utility row (below the hidden Jeep Club bar) + middle area: 46.2 + 64.6 px at 1440, 53.5 + 45.2 at 768, 40.8 + 74.5 at 390.
   Logo: same artwork as the old Logo.svg (old file has a 520×112 box around a 496.3×90.5 drawing), so the visible logo is
   286.3 / 200.3 / 188.5 px wide. Menu items: 16 px, weight 500, padding 8px 13.6px, full bar height (old .atwm-main-menu a). ---------- */
.mevo-utility.mevo-utility { box-sizing: border-box; padding-top: 0 !important; padding-bottom: 0 !important; min-height: 46.2px; display: flex; flex-direction: column; justify-content: center; }
.mevo-utility.mevo-utility > .wp-block-group { width: 100%; box-sizing: border-box; }
.mevo-header.mevo-header { padding-top: 0 !important; padding-bottom: 0 !important; }
.mevo-header.mevo-header > .wp-block-group { min-height: 63.6px; align-items: stretch; }  /* + 1 px bottom border = 64.6 */
.mevo-header.mevo-header > .wp-block-group > .mevo-logo { align-self: center; }
.mevo-logo img { width: 286.3px; height: auto; }
.mevo-header.mevo-header .wp-block-navigation { align-self: stretch; }
.mevo-header.mevo-header .wp-block-navigation__container { align-items: stretch; height: 100%; }
.mevo-header.mevo-header .wp-block-navigation-item { align-items: stretch; }
.mevo-header.mevo-header .wp-block-navigation .wp-block-navigation-item > a { display: flex; align-items: center; box-sizing: border-box; padding: 8px 13.6px; font-size: 16px; font-weight: 500; line-height: 24px; min-height: 63.6px; }
.mevo-header.mevo-header .wp-block-navigation .wp-block-navigation-item > a::after { left: 13.6px; right: 13.6px; bottom: 10px; }
@media (max-width: 991px) {
	.mevo-utility.mevo-utility { min-height: 53.5px; }
	.mevo-header.mevo-header > .wp-block-group { min-height: 44.2px; }
	.mevo-logo img { width: 200.3px; }
	.mevo-header.mevo-header .wp-block-navigation .wp-block-navigation-item > a { padding: 0 0.6rem; font-size: 14.5px; min-height: 0; }
	.mevo-header.mevo-header .wp-block-navigation .wp-block-navigation-item > a::after { left: 0.6rem; right: 0.6rem; width: auto; bottom: 6px; }
}
@media (max-width: 599px) {
	.mevo-utility.mevo-utility { min-height: 40.8px; }
	.mevo-header.mevo-header > .wp-block-group { min-height: 73.5px; align-items: center; }
	.mevo-logo img { width: 188.5px; }
	.mevo-header.mevo-header .wp-block-navigation { align-self: center; }
	.mevo-header.mevo-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item > a { display: block; padding: 0.5rem 0; height: auto; }
}

/* ---------- 0.6.26: S3/S4 white divider and OEM type, measured on localhost:8089 ----------
   Divider: the old S3 row (#atwm-frontpage-categories-section-row) drew its line drawing at `center -120px`, no-repeat, cover,
   so the last 120 px of the row are white and the bottom tile row (pills included) sits half on dark, half on white; S4 starts
   right after (gap 0). Old row padding-bottom 0 + last tile row margin-bottom 24 px. Same at 1440 / 768 / 390. */
.mevo-cats.mevo-lines-band:not(.mevo-cats--ttx) { background-color: #fff; background-position: center -120px; }
/* OEM: old .atwm-frontpage-under-the-hoist h2/h3 = Roboto 700, 64 px / 76.8 px at every width; subline p = 700, 17.6 px / 33.44 px
   (15.4 / 29.26 at tablet width), letter-spacing normal. Band height unchanged (600 px from 1200 up). */
.mevo-photo-band--oem .mevo-band-h2, .mevo-photo-band--oem .mevo-band-h3 { font-size: 64px; font-weight: 700; line-height: 76.8px; letter-spacing: normal; }
.mevo-photo-band--oem .mevo-band-p { font-size: 17.6px; font-weight: 700; line-height: 33.44px; letter-spacing: normal; }
@media (min-width: 600px) and (max-width: 991px) { .mevo-photo-band--oem .mevo-band-p { font-size: 15.4px; line-height: 29.26px; } }
/* spacing in the white strip, as old at 1440 / 768 / 390: label pill ends 33.6 px below the photo, row ends 72 px below the photo (38.4 px below the pill) */
.mevo-tiles-grid--rect .mevo-tile .mevo-pill { transform: translateY(-9.7px); }
.mevo-cats.mevo-lines-band:not(.mevo-cats--ttx) { padding-bottom: 28.7px !important; }

/* ---------- 0.6.27: Contact newsletter band on the old blue engineering background (old /contact/ row: uploads/2021/10/newsletter-signup-bg.jpg,
   center, no-repeat, cover; re-encoded from the clean copy as newsletter-lines-bg.jpg). Blue stays as the fallback colour. ---------- */
.mevo-newsletter.mevo-newsletter { background-color: var(--wp--preset--color--primary); background-image: url("assets/img/newsletter-lines-bg.jpg"); background-position: center; background-repeat: no-repeat; background-size: cover; }

/* ---------- 0.6.28: OEM heading on phones (Božo): at 64 px "Development," is wider than a phone screen; up to 480 px the two big lines
   scale with the viewport so the longest word fits inside the 1rem gutters. 481 px and up stay 1:1 with the old site (64 / 76.8). ---------- */
@media (max-width: 480px) { .mevo-photo-band--oem .mevo-band-h2, .mevo-photo-band--oem .mevo-band-h3 { font-size: min(64px, calc((100vw - 2rem) / 6.6)); line-height: 1.2; } }

/* ---------- 0.6.29: Careers images delivered by marketing (2026-10-27) ---------- */
.mevo-hero.mevo-hero--photo > .mevo-hero__img { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; max-width: none; margin: 0; object-fit: cover; object-position: 70% 12%; }  /* old hero: same photo, people on the right, dark fade on the left (the ::after gradient) */
.mevo-intro-img { position: relative; z-index: 1; display: block; width: 100%; height: auto; aspect-ratio: 686 / 432; object-fit: cover; border-top-left-radius: 80px; }  /* old 686×432 slot */
.mevo-benefit-icon { display: block; width: 120px; height: 120px; object-fit: contain; margin: 0 auto !important; }
.mevo-round-img { display: block; width: 100%; max-width: 265px; height: auto; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 50%; margin-inline: auto !important; }
.mevo-carousel--photos .mevo-life-img { display: block; width: 100%; height: auto; }  /* whole photo, never cropped */
.mevo-careers-video { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; background: #000; border-radius: 5px; }

/* ---------- 0.6.31: remaining slots filled with previous-site originals (Rolando approved, 2026-10-27; verified + re-encoded) ---------- */
.mevo-slide__img { display: block; width: 100%; height: auto; aspect-ratio: 5 / 3; object-fit: cover; }  /* same 5:3 slot as the placeholders, so the band keeps the old 330 px */
.mevo-ring .mevo-ring__icon.mevo-ring__img { width: calc(100% - 44px); height: calc(100% - 44px); object-fit: contain; border-radius: 0; }
.mevo-value-icon { display: block; width: 74px; height: 74px; object-fit: contain; }
.mevo-why-card__media--stack img.mevo-why-card__photo { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
.mevo-video-link { display: block; border-radius: 5px; overflow: hidden; }
.mevo-video-link img { display: block; width: 100%; height: auto; }
.mevo-video-link:focus-visible { outline: 3px solid var(--wp--preset--color--accent); outline-offset: 2px; }

/* ---------- 0.6.32: card icons rasterized from the previous-site SVGs (Contact offices, Tech Support, Customer Service) ---------- */
.mevo-card .mevo-card-icon { display: block; width: 80px; height: auto; }

/* =====================================================================
   0.6.33: old-site behaviour round (Božo, 2026-10-27)
   ===================================================================== */

/* Careers items (benefits, life, values): image/icon + caption are ONE button; hover/focus on either turns the caption blue */
.mevo-item-btn { all: unset; box-sizing: border-box; display: flex; flex-direction: column; align-items: center; gap: 0.75rem; width: 100%; text-align: center; cursor: pointer; border-radius: 6px; }
.mevo-item-btn > img { margin: 0 auto !important; }
.mevo-caption__text { font: inherit; font-weight: 700; color: var(--wp--preset--color--dark); transition: color 0.15s ease; }
.mevo-value .mevo-caption__text { font-weight: 400; }
.mevo-item-btn:hover .mevo-caption__text, .mevo-item-btn:focus-visible .mevo-caption__text { color: var(--wp--preset--color--primary); }
.mevo-item-btn:focus-visible { outline: 3px solid var(--wp--preset--color--accent); outline-offset: 4px; }
@media (prefers-reduced-motion: reduce) { .mevo-caption__text { transition: none; } }

/* Our Culture rings as on the old site: blue track that fills with white */
.mevo-ring__track { stroke: var(--wp--preset--color--primary); }
.mevo-ring__arc { stroke: #fff; }

/* Dot carousels (Home Why Mevotech, Careers intro): no arrows, dots underneath (old Ultimate Carousel dots, #333) */
.mevo-carousel--dots.mevo-carousel--dots { padding: 0; }
.mevo-carousel--dots .mevo-carousel__track { cursor: grab; }
.mevo-carousel--dots.is-dragging .mevo-carousel__track { cursor: grabbing; user-select: none; }
.mevo-carousel--dots .mevo-carousel__track:focus-visible { outline: 3px solid var(--wp--preset--color--accent); outline-offset: -3px; }
.mevo-carousel__dots { display: flex; justify-content: center; gap: 0.25rem; margin-top: 0.25rem; }
.mevo-carousel__dot { position: relative; width: 28px; height: 28px; padding: 0; border: 0; background: transparent; cursor: pointer; border-radius: 50%; }
.mevo-carousel__dot::before { content: ""; position: absolute; inset: 9px; border-radius: 50%; background: #333; opacity: 0.3; transition: opacity 0.2s ease; }
.mevo-carousel__dot[aria-current="true"]::before, .mevo-carousel__dot:hover::before { opacity: 1; }
.mevo-carousel__dot:focus-visible { outline: 3px solid var(--wp--preset--color--accent); outline-offset: 0; }
@media (prefers-reduced-motion: reduce) { .mevo-carousel__dot::before { transition: none; } }
@media (max-width: 767px) { .mevo-carousel--dots.mevo-carousel--dots { padding: 0; } }

/* Mevotech "O" mark behind the slider (old .atwater-to-image-slider::before: 300×300, left -50px / top -55px of the
   slider row, behind it). Our card sits 7 % in from the carousel edge, the track adds 1rem on top. */
.mevo-o-stage { position: relative; isolation: isolate; overflow-x: clip; overflow-y: visible; padding-top: 1px; }
.mevo-o-stage::before { content: ""; position: absolute; z-index: -1; width: 300px; height: 300px; left: calc(7% - 75px); top: calc(1rem - 80px); background: url("assets/img/mevotech-o-600.png") center / contain no-repeat; pointer-events: none; }
@media (max-width: 991px) { .mevo-o-stage::before { width: 200px; height: 200px; left: -40px; top: calc(1rem - 55px); } }
@media (max-width: 767px) { .mevo-o-stage::before { width: 150px; height: 150px; left: -30px; top: calc(1rem - 45px); } }
/* Careers: the space above the intro slider moves from the carousel to the "O" stage, so the mark sits in that gap like the old site */
.mevo-o-stage:has(.mevo-carousel--careers) { margin-top: 5rem; }
.mevo-o-stage .mevo-carousel--careers { margin-top: 0; }

/* 0.6.35: Home "Mevotech" section: room above the "O" mark so it sits fully inside the white section with a ~32 px gap
   below the Industries band (mark size / offset to the card unchanged). */
.mevo-why.mevo-why { padding-top: 6rem !important; }
@media (max-width: 991px) { .mevo-why.mevo-why { padding-top: 4.5rem !important; } }
@media (max-width: 767px) { .mevo-why.mevo-why { padding-top: 4rem !important; } }

/* 0.6.36: Careers hero (Rolando): the photo starts further right so "IGNITE YOUR CAREER / JOIN OUR TEAM" sits on the dark
   fade, not on the first person. The photo's left edge melts into the dark band (mask); text, badge and band height unchanged. */
.mevo-hero.mevo-hero--photo > .mevo-hero__img { left: 42%; width: 58%; object-position: 50% 15%; -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 22%); mask-image: linear-gradient(90deg, transparent 0, #000 22%); }
@media (max-width: 991px) { .mevo-hero.mevo-hero--photo > .mevo-hero__img { left: 50%; width: 50%; object-position: 40% 10%; } }
@media (max-width: 599px) { .mevo-hero.mevo-hero--photo > .mevo-hero__img { left: 36%; width: 64%; object-position: 30% 0; } }

/* =====================================================================
   0.6.37: old-site round 2 (Božo, 2026-10-27)
   ===================================================================== */

/* Home Industries + Affiliates: auto-advance pause/play button (WCAG 2.2.2) */
.mevo-carousel--auto { position: relative; }
.mevo-carousel__toggle { position: absolute; top: -3rem; right: 3.5rem; z-index: 3; width: 36px; height: 36px; padding: 0; border: 0; border-radius: 50%; cursor: pointer; background: rgba(18,18,18,0.72) no-repeat center / 12px url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'><path d='M2 1h3.5v12H2zM8.5 1H12v12H8.5z' fill='%23ffffff'/></svg>"); }
.mevo-carousel__toggle.is-paused { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'><path d='M3 1l10 6-10 6z' fill='%23ffffff'/></svg>"); }
.mevo-carousel__toggle:hover { background-color: rgba(18,18,18,0.9); }
.mevo-carousel__toggle:focus-visible { outline: 3px solid var(--wp--preset--color--accent); outline-offset: 2px; }
.mevo-carousel__toggle[hidden] { display: none; }
.mevo-carousel--logos .mevo-carousel__toggle { top: -2.5rem; }
@media (max-width: 767px) { .mevo-carousel__toggle { right: 0; } }

/* Industries caption: old .image-slide h3 = semi-transparent blue bar over the photo bottom, white uppercase 0.9rem, 1rem 0.5rem.
   Old rgba(38,116,191,.8) gives 3.4:1 over a white photo area, so the bar uses the darker brand blue at .85: >= 5.0:1 on any photo. */
.mevo-industries .mevo-slide__caption { background: rgba(27, 90, 150, 0.85); font-weight: 400; padding: 1rem 0.5rem; }

/* Careers header 1:1 with the old .atwm-vc-page-header (measured on 8089): photo with its baked-in dark fade, cover, centred;
   480 px band (179 below 768), heading 64/76.8 px 700 at 163 px from the top (padding 147 + the 16 px block gap) (32/38.4 at 51 px on phones), badge 202 / 108 / 78 px wide */
.mevo-hero.mevo-hero--careers { min-height: 480px; padding-top: 147px !important; padding-bottom: 0 !important; justify-content: flex-start; background: #0b0b0d; }
.mevo-hero.mevo-hero--careers::after { display: none; }
.mevo-hero.mevo-hero--careers > .mevo-hero__img { left: 0; width: 100%; object-position: 50% 50%; -webkit-mask-image: none; mask-image: none; }
.mevo-hero--careers h1.mevo-hero__h1--careers { font-size: 64px; line-height: 76.8px; font-weight: 700; margin: 0; }
.mevo-hero--careers .mevo-hero__badge { width: 202px; max-width: none; margin-top: 39px; }
@media (max-width: 991px) { .mevo-hero--careers .mevo-hero__badge { width: 108px; margin-top: 37px; } }
@media (max-width: 767px) {
	.mevo-hero.mevo-hero--careers { min-height: 179px; padding-top: 35px !important; }
	.mevo-hero--careers h1.mevo-hero__h1--careers { font-size: 32px; line-height: 38.4px; }
	.mevo-hero--careers .mevo-hero__badge { width: 78px; margin-top: 16px; }
}

/* Careers intro slider cards as the old .atwater-home-page-slider: card = slide minus 25 px each side, two equal halves,
   the thumbnail fills the right half edge to edge (cover, under the card's 80 px bottom-right radius); both slides the same size;
   old play icon (92 px white disc, pulsing) on the YouTube thumbnail */
.mevo-carousel--careers .mevo-carousel__track { padding-top: 25px; padding-bottom: 25px; }
.mevo-carousel--careers .mevo-why-card { width: calc(100% - 50px); grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.mevo-why-card__media--bleed { padding: 0; display: flex; align-items: stretch; }
.mevo-why-card__media--bleed > .mevo-video-link, .mevo-why-card__media--bleed > .mevo-careers-video { width: 100%; height: 100%; min-height: 100%; border-radius: 0; aspect-ratio: auto; }
.mevo-why-card__media--bleed .mevo-video-link { position: relative; overflow: hidden; }
.mevo-why-card__media--bleed .mevo-video-link img, .mevo-why-card__media--bleed > .mevo-careers-video { width: 100%; height: 100%; object-fit: cover; }
.mevo-video-link::after { content: ""; position: absolute; top: 50%; left: 50%; width: 92px; height: 92px; transform: translate(-50%, -50%); border-radius: 50%; background: #fff no-repeat 55% 50% / 30px url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'><path d='M3 1l10 6-10 6z' fill='%2325282a'/></svg>"); animation: mevo-pulse 1.2s infinite; }
@keyframes mevo-pulse { 0% { box-shadow: 0 0 0 0 rgba(255,255,255,0.7); } 70% { box-shadow: 0 0 0 22px rgba(255,255,255,0); } 100% { box-shadow: 0 0 0 0 rgba(255,255,255,0); } }
@media (prefers-reduced-motion: reduce) { .mevo-video-link::after { animation: none; } }
.mevo-o-stage:has(.mevo-carousel--careers)::before { left: -50px; top: -55px; }
@media (max-width: 991px) {
	.mevo-carousel--careers .mevo-why-card { width: 100%; grid-template-columns: minmax(0, 1fr); }
	.mevo-why-card__media--bleed { min-height: 0; }
	.mevo-why-card__media--bleed > .mevo-video-link, .mevo-why-card__media--bleed > .mevo-careers-video { aspect-ratio: 16 / 9; height: auto; }
	.mevo-o-stage:has(.mevo-carousel--careers)::before { left: -40px; top: -45px; }
}
.mevo-o-stage:has(.mevo-carousel--careers) { overflow: visible; }  /* the mark may pass the content edge; main clips horizontal overflow on Careers */

/* =====================================================================
   0.6.38: Careers video cards 1:1 with the old .atwater-home-page-slider + .atwm-video lightbox (old main.css / media.css /
   js/functions.js in the clean image). Old values: card = slide minus 25 px each side (15 px <768), two equal columns down to
   768 px, stacked below; text padding 3rem 3rem 3rem 5rem (>1200) / 1rem 1rem 0 1.5rem (<=1200) / 30px 15px (<768); the
   thumbnail column has no padding, its image keeps its natural 500 px height and is cover-cropped to the column, so the card
   is max(text, 500 px) tall; 80 px top-left / bottom-right radii; 92 px white pulsing play disc in the middle.
   ===================================================================== */
.mevo-carousel--careers .mevo-why-card { width: calc(100% - 50px); grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-rows: none; min-height: 500px; }
.mevo-carousel--careers .mevo-why-card__text { padding: 3rem 3rem 3rem 5rem; align-self: center; }
.mevo-carousel--careers .mevo-why-card__media--bleed { padding: 0; background: none; min-height: 500px; }
.mevo-video-thumb { all: unset; box-sizing: border-box; position: relative; display: block; width: 100%; height: 100%; min-height: 500px; overflow: hidden; cursor: pointer; }
.mevo-video-thumb img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
.mevo-video-thumb::after { content: ""; position: absolute; top: 50%; left: 50%; z-index: 2; width: 92px; height: 92px; transform: translate(-50%, -50%); border-radius: 50%; background: #fff no-repeat 55% 50% / 30px url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'><path d='M3 1l10 6-10 6z' fill='%2325282a'/></svg>"); animation: mevo-pulse 1.2s infinite; }
.mevo-video-thumb:focus-visible { outline: 3px solid var(--wp--preset--color--accent); outline-offset: -3px; }
@media (prefers-reduced-motion: reduce) { .mevo-video-thumb::after { animation: none; } }
@media (max-width: 1200px) { .mevo-carousel--careers .mevo-why-card__text { padding: 1rem 1rem 0 1.5rem; } }
@media (max-width: 991px) {
	.mevo-carousel--careers .mevo-why-card { width: calc(100% - 50px); grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
	.mevo-carousel--careers .mevo-why-card__media--bleed { min-height: 500px; }
}
@media (max-width: 767px) {
	.mevo-carousel--careers .mevo-carousel__track { padding-top: 15px; padding-bottom: 15px; }
	.mevo-carousel--careers .mevo-why-card { width: calc(100% - 30px); grid-template-columns: minmax(0, 1fr); min-height: 0; }
	.mevo-carousel--careers .mevo-why-card__text { padding: 30px 15px; }
	.mevo-carousel--careers .mevo-why-card__media--bleed { min-height: 0; }
	.mevo-video-thumb { min-height: 0; height: auto; }
	.mevo-video-thumb img { position: static; height: auto; }
}

/* Video dialog = old .atwm-video-lightbox: centred, 50vw wide (96 % <768), #e4e5ea panel with 40 px padding (0 <768),
   16:9 frame; backdrop rgba(0,0,0,.5). The iframe exists only while the dialog is open (modal.js). */
dialog.mevo-modal.mevo-modal--video { width: 50vw; max-width: none; background: #e4e5ea; border-radius: 0; }
.mevo-modal--video::backdrop { background: rgba(0, 0, 0, 0.5); }
.mevo-modal.mevo-modal--video .mevo-modal__bar + .mevo-modal__panel { padding: 40px !important; }
.mevo-modal--video .mevo-modal__bar .mevo-modal__close { margin: 0 !important; background: transparent !important; color: #25282a !important; }
.mevo-video-frame { position: relative; width: 100%; padding-top: 56.25%; background: #000; }
.mevo-video-frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
@media (max-width: 767px) {
	dialog.mevo-modal.mevo-modal--video { width: 96vw; }
	.mevo-modal.mevo-modal--video .mevo-modal__bar + .mevo-modal__panel { padding: 40px 0 0 !important; }
}

/* =====================================================================
   0.6.39: raw-HTML sections rebuilt as core blocks (editability). JS adds only chrome (dialogs, buttons, rings, ARIA);
   these rules keep the block wrappers visually neutral so the result matches the previous markup.
   ===================================================================== */
.mevo-modal-src { display: none !important; }  /* dialog sources: modal.js turns each into a <dialog> */
.mevo-item > figure, .mevo-stat > figure { margin: 0; }
/* structural Group wrappers: no flow-layout block gap between their children (the old markup had none) */
.mevo-benefit-grid.mevo-benefit-grid > *, .mevo-life-grid.mevo-life-grid > *, .mevo-values.mevo-values > *, .mevo-stats.mevo-stats > *, .mevo-stat.mevo-stat > .mevo-stat__body,
.mevo-item.mevo-item > *, .mevo-o-stage.mevo-o-stage > *, .mevo-carousel.mevo-carousel > *, .mevo-carousel__track.mevo-carousel__track > *,
.mevo-carousel__slide.mevo-carousel__slide > *, .mevo-why-card.mevo-why-card > *, .mevo-why-card__media.mevo-why-card__media > * { margin-block: 0; }
/* text column of the slider cards: paragraphs keep the browser's 1em margins, as in the old raw markup */
.mevo-why-card__text.mevo-why-card__text > p { margin-block: 1em; }
.mevo-why-card__text.mevo-why-card__text > :first-child { margin-block-start: 0; }
.mevo-carousel.mevo-carousel > .mevo-carousel__dots { margin-top: 0.25rem; }
.mevo-stat.mevo-stat > .mevo-ring { margin-block: 0.75rem 0; }
/* Contact: info columns as Columns/Column blocks (anchors general-inquiries / customer-service / tech-support) */
.wp-block-columns.mevo-contact-cols { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; margin: 0; }  /* first block of the page: the flow layout zeroed the old 1rem top margin */
.wp-block-columns.mevo-contact-cols > .wp-block-column { flex-basis: auto; margin: 0; word-break: normal; overflow-wrap: normal; }
.mevo-contact-col.mevo-contact-col > * { margin: 0; }
.mevo-contact-col.mevo-contact-col > .mevo-contact-col__h { margin-bottom: 0.4rem; }
.mevo-contact-col::before { content: ""; flex: none; width: 44px; height: 44px; border-radius: 50%; margin-bottom: 1.25rem; background: #dceaf7 no-repeat center / 22px 22px; }
.mevo-contact-col--mail::before { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M4 6h16v12H4z' fill='none' stroke='%232b75bb' stroke-width='1.8' stroke-linejoin='round'/><path d='M4 7l8 6 8-6' fill='none' stroke='%232b75bb' stroke-width='1.8' stroke-linejoin='round'/></svg>"); }
.mevo-contact-col--chat::before { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M3 5h12v8H8l-3 3v-3H3z' fill='%232b75bb'/><path d='M17 9h4v8h-2v3l-3-3h-6v-2h7z' fill='%232b75bb'/></svg>"); }
.mevo-contact-col--phone::before { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6.6 3.5l3 3.2-1.8 2.3c1.2 2.5 3.2 4.5 5.7 5.7l2.3-1.8 3.2 3-1.9 3.1C11 18.6 5.4 13 4.5 5.4z' fill='none' stroke='%232b75bb' stroke-width='1.8' stroke-linejoin='round'/></svg>"); }
@media (max-width: 767px) { .wp-block-columns.mevo-contact-cols { grid-template-columns: minmax(0, 1fr); gap: 2.5rem; } }
/* Office / support card icons as Image blocks */
.mevo-card figure.mevo-card-icon { width: 80px; margin: 0; }
.mevo-card figure.mevo-card-icon img { display: block; width: 100%; height: auto; }
/* Newsletter (inert until the HubSpot form exists): the three "fields" are paragraphs drawn like the old read-only inputs */
.mevo-newsletter__form.mevo-newsletter__form > * { margin: 0; }
.mevo-newsletter__form p.mevo-newsletter__field { box-sizing: border-box; width: 100%; min-height: 38px; padding: 0.8em 1rem; border-radius: 4px; background: #f0f1f2; color: #5f6366; font: 0.9rem/1.3 var(--wp--preset--font-family--roboto); cursor: default; }

/* Home (now page content, .mevo-home-content): structural Group wrappers without flow-layout gaps, as the old raw markup */
.mevo-tiles-grid.mevo-tiles-grid > *, .mevo-tile.mevo-tile > *, .mevo-brand-strip__list.mevo-brand-strip__list > * { margin-block: 0; }
.mevo-tiles-grid.mevo-tiles-grid > .mevo-tile { margin: 0; }
.mevo-tile.mevo-tile > .mevo-tile__fig { margin: 0; }
/* OEM "Get in Touch": Button block with class .mevo-btn-oem = old dark button with arrow */
.mevo-btn-oem > .wp-block-button__link { background: #23272b !important; color: #fff !important; }
.mevo-btn-oem > .wp-block-button__link:hover, .mevo-btn-oem > .wp-block-button__link:focus-visible { background: #000 !important; }
.mevo-btn-oem > .wp-block-button__link::after { content: ""; display: inline-block; width: 12px; height: 10px; margin-left: 0.6rem; vertical-align: middle; background: no-repeat center / contain url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10'><path d='M7 0l5 5-5 5-1.4-1.4L8.2 6H0V4h8.2L5.6 1.4z' fill='%23ffffff'/></svg>"); }
.wp-block-group.mevo-carousel { box-sizing: content-box; }  /* the old carousel div was content-box: padding outside the 1296 px content width */
/* Image blocks marked .mevo-img are reduced to their <img>/<a> by blocks.js; before that runs, the figure box is skipped */
figure.mevo-img { display: contents; }

/* ---------- 0.6.41: Contact hero 1:1 with the old /contact/ header (Rolando). Photo: old uploads/2021/10/contact-header.jpg
   (row .vc_custom_1635730451358: center / cover, no-repeat), re-encoded from the clean copy as assets/img/contact/contact-hero.jpg.
   Overlay: old .atwm-header-content-left:before gradient, copied verbatim. Band 513 px from 768 px up, 212 px below (old row
   measured at 1920 / 1440 / 1024 / 768 and 767 / 390); heading top 163 / 51 px, 96 / 32 px weight 900; bar 24 px under the
   heading, 60 × 6; sub 16 / 19.2 px bold 28.8 px under the bar top. Left edge stays on the site container. ---------- */
.mevo-hero.mevo-hero--contact { background-color: #24282b; background-image: url("assets/img/contact/contact-hero.jpg"); background-position: center; background-repeat: no-repeat; background-size: cover; min-height: 513px; padding-top: 163px !important; padding-bottom: 0 !important; justify-content: flex-start; }
.mevo-hero.mevo-hero--contact::after { z-index: 0; background: linear-gradient(90deg, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0.7) 34%, rgba(0,0,0,0) 43%, rgba(0,0,0,0) 100%); }
.mevo-hero.mevo-hero--contact > .mevo-hero__ph { display: none; }  /* no placeholder box/label under the photo */
.mevo-hero--contact h1.mevo-hero__h1--contact { font-size: 96px; line-height: 115.2px; font-weight: 900; margin: 0; }
.mevo-hero--contact .mevo-bar { margin: 24px 0 22.8px; }
.mevo-hero--contact .mevo-hero-sub { font-size: 16px; line-height: 19.2px; font-weight: 700; }
@media (max-width: 767px) {
	.mevo-hero.mevo-hero--contact { min-height: 212px; padding-top: 51px !important; }
	.mevo-hero--contact h1.mevo-hero__h1--contact { font-size: 32px; line-height: 38.4px; }
}

/* ---------- footer, mobile: centred stack matching the old site at 390 (marketing 2026-10-27) ---------- */
@media (max-width: 600px) {
	.mevo-footer .wp-block-columns { row-gap: 0; }
	.mevo-footer .wp-block-column { text-align: center; }
	.mevo-footer .wp-block-column > * { margin-top: 0; margin-bottom: 0; }
	.mevo-footer .wp-block-column h3 { font-size: 1.2rem; line-height: 1.2; white-space: normal; padding-bottom: 1.2rem; margin: 0 0 32px; }
	.mevo-footer .wp-block-column h3::after { left: 50%; transform: translateX(-50%); }
	.mevo-footer .mevo-logo--footer { display: block; margin: 0 0 35px; }
	.mevo-footer .mevo-logo--footer img { width: 252px; max-width: 100%; height: auto; margin: 0 auto; }
	.mevo-footer .wp-block-column > p { line-height: 1.5; }
	.mevo-footer .wp-block-column > p:not(:last-child) { margin-bottom: 35px; }
	.mevo-footer .wp-block-column > .mevo-footer-list { margin-bottom: 35px; }
	.mevo-footer .mevo-footer-list li { margin: 0 0 3.2px; }
	.mevo-footer .mevo-footer-list a { display: inline-block; min-height: 24px; line-height: 24px; }
	.mevo-footer .wp-block-column p a { padding: 4px 0; }  /* inline padding: 24px hit area, no line shift */
	.mevo-footer .wp-block-social-links { justify-content: center; gap: 16px; margin-bottom: 32px; }
	.mevo-footer .wp-block-social-links .wp-social-link a { padding: 6px !important; }
	.mevo-footer .wp-block-social-link svg { width: 20px; height: 20px; }
	.mevo-footer .mevo-footer-bottom { margin-top: 83px !important; font-size: 0.7225rem; }
	.mevo-footer .mevo-footer-bottom > .wp-block-group { flex-direction: column; align-items: center; gap: 16px; text-align: center; }
	.mevo-footer .mevo-footer-bottom p { margin: 0; line-height: 1.5; }
	.mevo-footer .mevo-footer-bottom p:has(a) { display: flex; flex-direction: column; align-items: center; }
	.mevo-footer .mevo-footer-bottom a { margin-left: 0; display: block; min-height: 24px; line-height: 24px; }
}

/* ---------- 0.6.43: OEM band copy from marketing (2026-10-28): eyebrow / heading / body / bold pillars line.
   Heading keeps the band's 64 px / 700 at 1440 (2 lines) and scales down with the viewport so it stays on 2 lines at 768
   and inside the gutters at 390. Band height is unchanged (min-height rules above). ---------- */
.mevo-photo-band--oem .mevo-oem-eyebrow { margin: 0 0 0.75rem; font-size: 17.6px; line-height: 1.5; font-weight: 700; letter-spacing: normal; text-shadow: 0 1px 2px rgba(0,0,0,0.8), 0 2px 12px rgba(0,0,0,0.5); }
.mevo-photo-band--oem .mevo-band-h2.mevo-oem-h { max-width: 1100px; margin: 0 auto 1.25rem; font-size: clamp(28px, 4.45vw, 64px); line-height: 1.2; text-wrap: balance; }
.mevo-photo-band--oem .mevo-band-p.mevo-oem-body { max-width: 760px; margin: 0 auto 1rem; font-weight: 400; line-height: 1.6; }
.mevo-photo-band--oem .mevo-band-p.mevo-oem-pillars { max-width: none; margin: 0 auto 1.5rem; line-height: 1.5; }

/* ---------- 0.6.45: home hero full-bleed above 1920 px. The media box had width:auto + aspect-ratio 1920/600 + max-height 600,
   so the 600 px height cap was transferred through the ratio into an automatic max-width of 1920 px (video stopped there, white
   strip on the right). An explicit width keeps the ratio for the height only: band = full width, height min(width/3.2, 600). ---------- */
.mevo-home-hero > .mevo-home-hero__media { width: 100%; }
