/* /managed-it-services-v5 ONLY — loaded after css/managed-it-services-lp.css via
   $lp_extra_css, every rule scoped under .zab-mlp5 so v6 / v3 (same template,
   same sheets, already live) are untouched.

   OWNER 2026-09-30: "It should exactly match the live page". This sheet drops the
   house content box and the house 1080 / 900 breakpoints for v5 and reproduces
   live's Elementor geometry, read off live's own post-40830.css + kit CSS and
   re-measured with getBoundingClientRect at 1920 / 1440 / 1366 / 1280 / 1200 /
   1100 / 1024 / 900 / 768 / 600 / 375:

     breakpoints   laptop <=1366, tablet_extra <=1200, tablet <=1024,
                   mobile_extra <=880, mobile <=767 (all max-width, cumulative)
     content box   min(100%, 1440px) >1366; 98% at <=1366; 100% at <=1024
     section pad   nav 30 (20 <=1200); hero / video / footer 100 (20 <=1200);
                   body 100 (30 <=1200, 20 <=767)
     body columns  70% / 30% with gap 100 (30 <=1366, 50 <=1200); stacked <=1024

   Live quirks reproduced on purpose (they are what live renders):
     - "The Difference ZAZZ..." band a0cd677 is elementor-hidden-laptop /
       tablet_extra / tablet: it does not render between 881 and 1366px.
     - the mega-menu e3a28a1 is elementor-hidden-tablet: 881-1024 shows logo +
       CTA only (no menu, no toggle); 768-880 shows its centred toggle, no CTA.
     - the growth-band photo 7c975de is hidden at 768-880.
   NOT reproduced: at 768-880 live also stacks a broken full-width copy of the
   comparison table (2a658c6, with typos) above the real one - left out. */

/* ------------------------------------------------------------ containers */
.zmit.zab-mlp.zab-mlp5 .z-container {
    --p: 100px; --f: 1;
    max-width: calc(1440px + 2 * var(--p));
    padding-left: calc(var(--p) + (100% - 2 * var(--p)) * (1 - var(--f)) / 2);
    padding-right: calc(var(--p) + (100% - 2 * var(--p)) * (1 - var(--f)) / 2);
}
/* nav ddc9b22: --content-width 1600, padding 0 30 (20 <=1200), never 98% */
.zmit.zab-mlp.zab-mlp5 .zab-lpnav .z-container { --p: 30px; --f: 1; max-width: 1660px; }
@media (min-width: 768px) and (max-width: 1366px) {
    .zmit.zab-mlp.zab-mlp5 .z-container { --f: .98; }
    .zmit.zab-mlp.zab-mlp5 .zab-lpnav .z-container { --f: 1; }
}
@media (min-width: 768px) and (max-width: 1200px) {
    .zmit.zab-mlp.zab-mlp5 .z-container { --p: 20px; }
    .zmit.zab-mlp.zab-mlp5 .zab-msp-body > .z-container { --p: 30px; }
    .zmit.zab-mlp.zab-mlp5 .zab-lpnav .z-container { --p: 20px; max-width: none; }
}
@media (min-width: 768px) and (max-width: 1024px) {
    .zmit.zab-mlp.zab-mlp5 .z-container { --f: 1; }
}
@media (max-width: 767px) {
    .zmit.zab-mlp.zab-mlp5 .z-container,
    .zmit.zab-mlp.zab-mlp5 .zab-msp-body > .z-container { --p: 20px; }
}

/* -------------------------------------------------------------------- nav */
/* 0590afa logo: max-width 20% (initial <=1366). e3a28a1 menu 15px gap 34 ->
   14px gap 15 (<=1366) -> 11px gap 11 + 50px left pad (<=1200). */
/* measured widget boxes: >1366 logo 13% | menu 64.7% (items centred, 30px
   after each) | CTA slot 20.7%, button right-aligned in it. <=1366 logo 97px,
   menu right-aligned (15px after each; 11 <=1200), CTA slot ~21.6% of the row. */
@media (min-width: 1367px) {
    .zmit.zab-mlp.zab-mlp5 .zab-lpnav-logo { flex: 0 0 13%; }
    .zmit.zab-mlp.zab-mlp5 .zab-lpnav-menu { flex: 0 0 64.7%; gap: 30px; padding-right: 30px; }
    .zmit.zab-mlp.zab-mlp5 .zab-lpnav-cta { margin-left: auto; }
}
@media (min-width: 881px) and (max-width: 1366px) {
    .zmit.zab-mlp.zab-mlp5 .zab-lpnav-logo { flex: 0 0 97px; min-width: 0; }
    .zmit.zab-mlp.zab-mlp5 .zab-lpnav-menu {
        flex: 1 1 0; justify-content: flex-end; gap: 15px; padding-right: 15px;
        margin-right: calc(21.6% - 199px);
    }
    .zmit.zab-mlp.zab-mlp5 .zab-lpnav-menu a { font-size: 14px; }
}
@media (min-width: 881px) and (max-width: 1200px) {
    .zmit.zab-mlp.zab-mlp5 .zab-lpnav-menu { gap: 11px; padding-left: 50px; padding-right: 11px; }
    .zmit.zab-mlp.zab-mlp5 .zab-lpnav-menu a { font-size: 11px; }
}
/* 881-1024: the menu widget is hidden outright - no toggle either */
@media (min-width: 881px) and (max-width: 1024px) {
    .zmit.zab-mlp.zab-mlp5 .zab-lpnav-menu,
    .zmit.zab-mlp.zab-mlp5 .zab-lpnav.is-open .zab-lpnav-menu,
    .zmit.zab-mlp.zab-mlp5 .zab-lpnav-burger { display: none; }
    .zmit.zab-mlp.zab-mlp5 .zab-lpnav-cta { margin-left: auto; }
}
/* 768-880: the menu widget is back as its dropdown toggle, centred in the
   space after the logo (widget 181-748 at 768, toggle centre 464); CTA hidden */
@media (min-width: 768px) and (max-width: 880px) {
    .zmit.zab-mlp.zab-mlp5 .zab-lpnav-burger { margin: 0 auto; }
}

/* ------------------------------------------------------------------- hero */
/* 543426b: min-height 400 (fit-content <=767), content centred in it */
.zmit.zab-mlp.zab-mlp5 .zab-msp-hero .z-container { min-height: 400px; justify-content: center; }
.zmit.zab-mlp.zab-mlp5 .zab-msp-hero-sub { width: 100%; max-width: none; }
/* live's 40px step is <=1024, not <=1080 */
@media (min-width: 1025px) and (max-width: 1080px) {
    .zmit.zab-mlp.zab-mlp5 .zab-mlp-h1 { font-size: 53px; line-height: 68.9px; }
}
@media (min-width: 768px) and (max-width: 880px) {
    .zmit.zab-mlp.zab-mlp5 .zab-msp-hero-sub { font-size: 14.6px; line-height: 24.09px; }
}
@media (max-width: 767px) {
    .zmit.zab-mlp.zab-mlp5 .zab-msp-hero .z-container { min-height: 0; }
}

/* --------------------------------------------------------- trust marquee */
/* ca58ab9 is a boxed container: 1440 max, 98% <=1366, full <=1024. The
   marquee shows 7 logos per view (5 <=1024) with a 50px gap, each logo box
   2:1 - so the box is (container / 7) - 50. 150px fixed <=880 in a 200px
   holder (>=500), 100px at 1.5:1 <=767. */
.zmit.zab-mlp.zab-mlp5 .zmit-trust-band { max-width: 1440px; margin-left: auto; margin-right: auto; }
.zmit.zab-mlp.zab-mlp5 .zmit-trust { container-type: inline-size; }
@media (min-width: 768px) {
    .zmit.zab-mlp.zab-mlp5 .zmit-trust-chip { width: calc(100cqw / 7 - 50px); height: calc((100cqw / 7 - 50px) / 2); }
    .zmit.zab-mlp.zab-mlp5 .zmit-trust-chip img { max-width: 100%; max-height: 100%; }
}
@media (min-width: 768px) and (max-width: 1366px) {
    .zmit.zab-mlp.zab-mlp5 .zmit-trust-band { width: 98%; }
}
@media (min-width: 768px) and (max-width: 1024px) {
    .zmit.zab-mlp.zab-mlp5 .zmit-trust-band { width: 100%; }
    .zmit.zab-mlp.zab-mlp5 .zmit-trust-chip { width: calc(100cqw / 5 - 50px); height: calc((100cqw / 5 - 50px) / 2); }
}
@media (min-width: 768px) and (max-width: 880px) {
    .zmit.zab-mlp.zab-mlp5 .zmit-trust-chip { width: 200px; height: 75px; }
    .zmit.zab-mlp.zab-mlp5 .zmit-trust-chip img { width: 150px; height: 75px; }
}

/* ------------------------------------------------------------------ video */
/* 40563b7 has no radius above 767 (10px at <=767) */
.zmit.zab-mlp.zab-mlp5 .zab-msp-video-frame { border-radius: 0; }
@media (max-width: 767px) {
    .zmit.zab-mlp.zab-mlp5 .zab-msp-video-frame { border-radius: 10px; }
}

/* ------------------------------------------------------- two-column body */
/* d90b7f8 70% + 85021e1 30% flex-shrunk by the gap == 7fr / 3fr of (box - gap);
   sticky rail on widescreen..tablet_extra (>=1025) */
@media (min-width: 1025px) {
    .zmit.zab-mlp.zab-mlp5 .zab-msp-grid {
        display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 3fr);
        justify-content: stretch; column-gap: 100px; align-items: start; margin-top: 50px;
    }
    .zmit.zab-mlp.zab-mlp5 .zab-msp-side { margin-top: 0; align-self: stretch; }
    .zmit.zab-mlp.zab-mlp5 .zab-msp-formcard:not(.zab-grow-form) { position: sticky; top: 130px; }
    body { overflow-x: clip; }
}
@media (min-width: 1025px) and (max-width: 1366px) {
    .zmit.zab-mlp.zab-mlp5 .zab-msp-grid { column-gap: 30px; }
}
@media (min-width: 1025px) and (max-width: 1200px) {
    .zmit.zab-mlp.zab-mlp5 .zab-msp-grid { column-gap: 50px; }
}
@media (min-width: 768px) and (max-width: 1024px) {
    .zmit.zab-mlp.zab-mlp5 .zab-msp-side { margin-top: 50px; }
}
/* 85021e1 margin-bottom 80: the sticky card stops 80px above the body's end,
   and stacked (<=1024) it is the gap above the footer */
@media (min-width: 768px) {
    .zmit.zab-mlp.zab-mlp5 .zab-msp-side { margin-bottom: 80px; }
}

/* ------------------------------------------------------ section headings */
/* 3e1b69d / 620d3be / 353c08c / 1c2ec62 / 97c7846 / 26ed319: 26/38 -> 24 (<=1200) */
@media (min-width: 768px) and (max-width: 1200px) {
    .zmit.zab-mlp.zab-mlp5 .zab-msp-h { font-size: 24px; }
}

/* --------------------------------------------------------------- coverage */
/* number column: live's per-row custom widths (% of the row >1366, px <=1366,
   row 1 stays 2.762% everywhere above 767) */
@media (min-width: 768px) {
    .zmit.zab-mlp.zab-mlp5 .zab-cov-row:nth-child(1) .zab-cov-n { flex-basis: 2.762%; }
    .zmit.zab-mlp.zab-mlp5 .zab-cov-row:nth-child(2) .zab-cov-n { flex-basis: 3.066%; }
    .zmit.zab-mlp.zab-mlp5 .zab-cov-row:nth-child(3) .zab-cov-n { flex-basis: 2.767%; }
    .zmit.zab-mlp.zab-mlp5 .zab-cov-row:nth-child(4) .zab-cov-n { flex-basis: 3.002%; }
    .zmit.zab-mlp.zab-mlp5 .zab-cov-row:nth-child(5) .zab-cov-n { flex-basis: 3.138%; }
    .zmit.zab-mlp.zab-mlp5 .zab-cov-row:nth-child(6) .zab-cov-n { flex-basis: 3.169%; }
}
@media (min-width: 768px) and (max-width: 1366px) {
    .zmit.zab-mlp.zab-mlp5 .zab-cov-row:nth-child(2) .zab-cov-n { flex-basis: 23.997px; }
    .zmit.zab-mlp.zab-mlp5 .zab-cov-row:nth-child(3) .zab-cov-n { flex-basis: 24.148px; }
    .zmit.zab-mlp.zab-mlp5 .zab-cov-row:nth-child(4) .zab-cov-n { flex-basis: 20.594px; }
    .zmit.zab-mlp.zab-mlp5 .zab-cov-row:nth-child(5) .zab-cov-n { flex-basis: 25.427px; }
    .zmit.zab-mlp.zab-mlp5 .zab-cov-row:nth-child(6) .zab-cov-n { flex-basis: 20.635px; }
    /* image-box title 38 -> 24 (1.3em), description 16 -> 14 / 1.3em */
    .zmit.zab-mlp.zab-mlp5 .zab-cov-row h3 { font-size: 24px; line-height: 31.2px; }
    .zmit.zab-mlp.zab-mlp5 .zab-cov-row p { font-size: 14px; line-height: 18.2px; }
}
@media (min-width: 768px) and (max-width: 1200px) {
    .zmit.zab-mlp.zab-mlp5 .zab-cov { margin-bottom: 50px; }
    .zmit.zab-mlp.zab-mlp5 .zab-cov-row h3 { font-size: 30px; line-height: 39px; }
}

/* ---------------------------------------------------- security coverage */
@media (min-width: 768px) and (max-width: 1366px) {
    .zmit.zab-mlp.zab-mlp5 .zab-seccov-item h3 { font-size: 16px; line-height: 20.8px; }
}
@media (min-width: 768px) and (max-width: 1200px) {
    .zmit.zab-mlp.zab-mlp5 .zab-seccov { padding: 50px 0; }
}

/* --------------------------------------------------------- certifications */
/* image-box: logo slot 70px + 15px gap (>1366) / 100px + 0 (<=1366), shrinking
   against the copy exactly like live's flex row */
@media (min-width: 768px) {
    .zmit.zab-mlp.zab-mlp5 .zab-cert-fig { flex: 0 1 70px; width: 70px; margin: 0 15px 0 0; }
    .zmit.zab-mlp.zab-mlp5 .zab-cert-fig img { width: 100%; height: auto; aspect-ratio: 1; }
}
/* Elementor image-box content is width:100% - it shrinks WITH the logo slot, so
   every card gets the same logo size whatever its copy length */
.zmit.zab-mlp.zab-mlp5 .zab-cert > div { flex: 0 1 100%; min-width: 0; }
@media (min-width: 768px) and (max-width: 1366px) {
    .zmit.zab-mlp.zab-mlp5 .zab-certs-grid { align-items: stretch; }
    .zmit.zab-mlp.zab-mlp5 .zab-cert-fig { flex-basis: 100px; width: 100px; margin: 0; }
    .zmit.zab-mlp.zab-mlp5 .zab-cert h3 { font-size: 16px; line-height: 20.8px; }
    .zmit.zab-mlp.zab-mlp5 .zab-cert p { font-size: 12px; line-height: 14.4px; }
}
@media (min-width: 768px) and (max-width: 1200px) {
    .zmit.zab-mlp.zab-mlp5 .zab-certs { padding: 50px 0 70px; }
}

/* ----------------------------------------------------------- testimonials */
@media (min-width: 768px) and (max-width: 1200px) {
    .zmit.zab-mlp.zab-mlp5 .zab-testi { padding: 50px 0 70px; }
}

/* -------------------------------------------------------------- comparison */
@media (min-width: 881px) and (max-width: 1366px) {
    .zmit.zab-mlp.zab-mlp5 .zab-cmp { display: none; }
}
@media (min-width: 768px) and (max-width: 1024px) {
    .zmit.zab-mlp.zab-mlp5 .zab-cmp { padding: 50px 0; }
}
/* 768-880 is the only laptop-rule width where the 3-col table 68fd1a3 renders:
   heads 16px pad 10 (e3ad71c / 6078f3b), cells 14px/1.5em pad 10. Live ALSO
   stacks the broken 2a658c6 variant above it here - deliberately not copied. */
@media (min-width: 768px) and (max-width: 880px) {
    .zmit.zab-mlp.zab-mlp5 .zab-cmp-head { font-size: 16px; line-height: 20.8px; }
    .zmit.zab-mlp.zab-mlp5 .zab-cmp-head:not(.zab-cmp-head-cell) { padding: 20px 10px 20px 0; }
    .zmit.zab-mlp.zab-mlp5 .zab-cmp-c3.zab-cmp-head-cell { padding-top: 20px; }
    .zmit.zab-mlp.zab-mlp5 .zab-cmp-c1, .zmit.zab-mlp.zab-mlp5 .zab-cmp-c2 { padding: 10px; }
    .zmit.zab-mlp.zab-mlp5 .zab-cmp-c1 .zab-cmp-txt,
    .zmit.zab-mlp.zab-mlp5 .zab-cmp-c2 .zab-cmp-txt { font-size: 14px; line-height: 21px; }
    .zmit.zab-mlp.zab-mlp5 .zab-cmp-c3 .zab-cmp-box h3 { font-size: 14px; line-height: 21px; }
}

/* -------------------------------------------------------------------- FAQ */
/* the answer panel is a flex container on live, so the answer's 28px foot
   stays inside the dark panel; open item squares off its bottom corners */
.zmit.zab-mlp.zab-mlp5 .zab-faq-a { display: flow-root; }
.zmit.zab-mlp.zab-mlp5 .zab-faq-item:last-child { margin-bottom: 0; }   /* live: item spacing is between items only */
.zmit.zab-mlp.zab-mlp5 .zab-faq-item[open] { border-radius: 5px 5px 0 0; }
.zmit.zab-mlp.zab-mlp5 .zab-faq-a a { color: #85bcff; font-weight: 500; text-decoration: none; }
/* <=1366 live zeroes the top pad of answers 1-4 and 6 only (bb2d3eb, 43a0d99,
   1753b2e, b4b0f66, 884ac98) */
@media (min-width: 768px) and (max-width: 1366px) {
    .zmit.zab-mlp.zab-mlp5 .zab-faq-item:nth-child(-n+4) .zab-faq-a,
    .zmit.zab-mlp.zab-mlp5 .zab-faq-item:nth-child(6) .zab-faq-a { padding-top: 0; }
}
@media (min-width: 768px) and (max-width: 1200px) {
    .zmit.zab-mlp.zab-mlp5 .zab-faq { padding: 50px 0; }
}

/* ------------------------------------------------------------- growth CTA */
@media (min-width: 768px) and (max-width: 1366px) {
    .zmit.zab-mlp.zab-mlp5 .zab-grow-copy h2 { font-size: 25px; line-height: 32.5px; }
    .zmit.zab-mlp.zab-mlp5 .zab-grow-fig { display: flex; flex-direction: column; justify-content: flex-end; }
}
@media (min-width: 768px) and (max-width: 1200px) {
    .zmit.zab-mlp.zab-mlp5 .zab-grow { margin-top: 0; padding: 50px 20px 0; }
}
@media (min-width: 768px) and (max-width: 1024px) {
    .zmit.zab-mlp.zab-mlp5 .zab-grow { margin-top: 100px; }
}
/* the house sheet wraps this row at <=900; live keeps two 50% columns to 768 */
@media (min-width: 768px) and (max-width: 900px) {
    .zmit.zab-mlp.zab-mlp5 .zab-grow-inner { flex-wrap: nowrap; }
    .zmit.zab-mlp.zab-mlp5 .zab-grow-copy,
    .zmit.zab-mlp.zab-mlp5 .zab-grow-fig { flex: 1 1 0; max-width: none; }
}
@media (min-width: 768px) and (max-width: 880px) {
    .zmit.zab-mlp.zab-mlp5 .zab-grow { margin-top: 50px; padding: 50px 20px 0; }
    .zmit.zab-mlp.zab-mlp5 .zab-grow-inner { padding: 0 20px; }
    .zmit.zab-mlp.zab-mlp5 .zab-grow-copy { justify-content: center; }
    .zmit.zab-mlp.zab-mlp5 .zab-grow-copy h2 { font-size: 30px; line-height: 39px; }
    /* 7c975de is elementor-hidden-mobile_extra: no photo at 768-880 */
    .zmit.zab-mlp.zab-mlp5 .zab-grow-fig { display: none; }
    .zmit.zab-mlp.zab-mlp5 .zab-grow-copy { padding-bottom: 50px; flex: 0 0 calc(50% - 10px); }   /* b039ede keeps its 50% column */
}

/* ----------------------------------------------------------- form headings */
@media (min-width: 768px) and (max-width: 1366px) {
    .zmit.zab-mlp.zab-mlp5 .zab-msp-formcard h2 { font-size: 14px; line-height: 18.2px; }
}

/* ---------------------------------------------------- testimonials <=767 */
/* only quote 1 (59401ab) carries live's `p { margin: 0 }`; quotes 2 and 3 keep
   the editor's paragraph foot - measured 24 / 21px above the author at 375 */
@media (max-width: 767px) {
    .zmit.zab-mlp.zab-mlp5 .zab-testi-card:nth-child(2) .zab-testi-q { margin-bottom: 24px; }
    .zmit.zab-mlp.zab-mlp5 .zab-testi-card:nth-child(3) .zab-testi-q { margin-bottom: 21px; }
}

/* ------------------------------------------------------- cert cards <=767 */
/* same shrinking 70px logo slot (no gap margin): 54px at 375, 60px at 600 */
@media (max-width: 767px) {
    .zmit.zab-mlp.zab-mlp5 .zab-cert-fig { flex: 0 1 70px; width: 70px; margin: 0; }
    .zmit.zab-mlp.zab-mlp5 .zab-cert-fig img { width: 100%; height: auto; aspect-ratio: 1; }
}

/* ------------------------------------------- pricing pop-up form <=767 */
/* the form card grows to the top of a phone screen (y=20), right under the
   fixed 50x50 close button (top 20 / right 20), so the centred heading ran
   underneath it at 375-414. Keep 60px clear on both sides so it stays centred. */
@media (max-width: 767px) {
    .zmit.zab-mlp.zab-mlp5 .zab-pricegate-form > h2 { padding-left: 60px; padding-right: 60px; }
}

/* ===================================================== v7-only (.zab-mlp7) */
/* Owner 2026-10-05 on /managed-it-services-v7 - deliberate deviations from
   live v5 on TABLETS (portrait 720-1024, landscape up to 1366):
   1. the "The Difference ZAZZ..." comparison band is hidden on every tablet
      width (live already hides it 881-1366; 720-880 showed a table);
   2. the growth-band consultant photo shows on portrait tablets too (live
      hides it 768-880 and below);
   3. the photo never overhangs past the band's top edge into the FAQ above
      (it poked ~45px into the last question at 1180 / 1194 landscape). */
@media (min-width: 720px) and (max-width: 1366px) {
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-cmp { display: none; }
}
@media (min-width: 720px) and (max-width: 880px) {
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-grow-inner { flex-wrap: nowrap; align-items: flex-end; }
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-grow-copy { flex: 0 0 calc(50% - 10px); padding-bottom: 50px; }
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-grow-fig { display: flex; flex: 1 1 0; max-width: none; flex-direction: column; justify-content: flex-end; }
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-grow-fig img { height: 392px; object-fit: cover; margin-top: -50px; }
}
/* band padding-top is 50 at <=1200 and 70 above: an overhang of exactly that
   lands the photo's top on the band's top edge */
@media (min-width: 881px) and (max-width: 1200px) {
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-grow-fig img { margin-top: -50px; }
}
/* 720-767 runs the phone layout, where the mobile lead form also sits in this
   band: copy + photo side by side, the form full width under them */
@media (min-width: 720px) and (max-width: 767px) {
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-grow-inner { flex-direction: row; flex-wrap: wrap; align-items: flex-end; column-gap: 20px; }
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-grow-copy { flex: 0 0 calc(50% - 10px); max-width: calc(50% - 10px); align-self: center; padding-bottom: 0; }
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-grow-fig { flex: 0 0 calc(50% - 10px); max-width: calc(50% - 10px); }
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-grow-fig img { height: 340px; object-fit: contain; object-position: bottom center; margin-top: 0; }
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-grow .zab-grow-form { flex: 0 0 100%; }
}
/* Owner 2026-10-06, v7 phone landscape / small tablet:
   4. 768-880 the menu toggle sits at the right edge (live centres it, which
      reads as a stray icon mid-header on landscape phones);
   5. 431-719 the stacked comparison table sizes its rows to their copy - the
      375 fixed row heights left tall empty boxes on wider screens. The three
      columns become one grid (columns display: contents) so each row's cells
      share a height, and the After column paints per cell;
   6. 540-719 the growth photo shows beside the copy, as at 720-767. */
@media (min-width: 768px) and (max-width: 880px) {
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-lpnav-burger { margin: 0 0 0 auto; }
}
@media (min-width: 431px) and (max-width: 719px) {
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-cmpm {
        display: grid; grid-template-columns: 27% 35% 38%; grid-template-rows: repeat(6, auto); grid-auto-flow: column;
    }
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-cmpm-col { display: contents; }
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-cmpm .zab-cmpm-cell { height: auto; }
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-cmpm-a .zab-cmpm-cell { background: #14142b; }
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-cmpm-a .zab-cmpm-cell:first-child { border-top-right-radius: 10px; }
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-cmpm-a .zab-cmpm-cell:last-child { border-bottom-right-radius: 10px; }
}
@media (min-width: 540px) and (max-width: 719px) {
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-grow-inner { flex-direction: row; flex-wrap: wrap; align-items: flex-end; column-gap: 20px; }
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-grow-copy { flex: 0 0 calc(50% - 10px); max-width: calc(50% - 10px); align-self: center; padding-bottom: 0; }
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-grow-fig { display: flex; flex-direction: column; justify-content: flex-end; flex: 0 0 calc(50% - 10px); max-width: calc(50% - 10px); }
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-grow-fig img { height: 300px; object-fit: contain; object-position: bottom center; margin-top: 0; }
    .zmit.zab-mlp.zab-mlp5.zab-mlp7 .zab-grow .zab-grow-form { flex: 0 0 100%; }
}
