/* CMS-1500 product-page hero screenshot carousel */
.cms1500-hero-carousel{
  position:relative;
  width:100%;
  max-width:720px;
  margin:0 auto;
  border:1px solid rgba(13,80,130,.16);
  border-radius:16px;
  background:#fff;
  box-shadow:0 18px 48px rgba(21,63,98,.16);
  overflow:hidden;
}
.cms1500-carousel-viewport{
  position:relative;
  aspect-ratio:1547 / 1016;
  overflow:hidden;
  background:#edf6fb;
  touch-action:pan-y;
}
.cms1500-carousel-slide{
  position:absolute;
  inset:0;
  opacity:0;
  visibility:hidden;
  transform:translateX(16px);
  transition:opacity .28s ease, transform .28s ease, visibility .28s ease;
}
.cms1500-carousel-slide.is-active{
  opacity:1;
  visibility:visible;
  transform:translateX(0);
  z-index:1;
}
.cms1500-carousel-slide img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  background:#fff;
  filter:none!important;
}
.cms1500-carousel-control{
  position:absolute;
  top:50%;
  z-index:3;
  width:42px;
  height:42px;
  margin-top:-21px;
  border:1px solid rgba(18,78,120,.18);
  border-radius:50%;
  background:rgba(255,255,255,.95);
  color:#0d4e7b;
  box-shadow:0 5px 18px rgba(20,55,82,.18);
  display:grid;
  place-items:center;
  font-size:24px;
  font-weight:800;
  cursor:pointer;
  transition:transform .16s ease, background .16s ease;
}
.cms1500-carousel-control:hover,
.cms1500-carousel-control:focus-visible{
  background:#fff;
  transform:scale(1.06);
  outline:3px solid rgba(0,126,181,.18);
}
.cms1500-carousel-prev{left:12px}
.cms1500-carousel-next{right:12px}
.cms1500-carousel-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:46px;
  padding:8px 14px;
  border-top:1px solid #e5edf3;
  background:#fff;
}
.cms1500-carousel-caption{
  color:#38566f;
  font-size:13px;
  font-weight:700;
}
.cms1500-carousel-dots{
  display:flex;
  align-items:center;
  gap:7px;
}
.cms1500-carousel-dot{
  width:10px;
  height:10px;
  padding:0;
  border:0;
  border-radius:50%;
  background:#b7c9d7;
  cursor:pointer;
}
.cms1500-carousel-dot.is-active{background:#087ca7}
.cms1500-carousel-dot:focus-visible{outline:3px solid rgba(0,126,181,.24);outline-offset:2px}
.mcs-growth-visual .cms1500-hero-carousel,
.mcs26-product-hero .visual .cms1500-hero-carousel{width:min(100%,720px)}
@media(max-width:900px){
  .cms1500-hero-carousel{max-width:760px}
  .cms1500-carousel-control{width:38px;height:38px;margin-top:-19px;font-size:21px}
}
@media(max-width:560px){
  .cms1500-hero-carousel{border-radius:12px}
  .cms1500-carousel-control{width:34px;height:34px;margin-top:-17px}
  .cms1500-carousel-prev{left:7px}.cms1500-carousel-next{right:7px}
  .cms1500-carousel-footer{padding:7px 10px;min-height:42px}
  .cms1500-carousel-caption{font-size:12px}
}
@media(prefers-reduced-motion:reduce){
  .cms1500-carousel-slide,.cms1500-carousel-control{transition:none}
}
.cms1500-carousel-slide{margin:0}


/* v2: concise feature captions over each software screenshot */
.cms1500-slide-callout{
  position:absolute;
  left:18px;
  right:18px;
  bottom:16px;
  z-index:2;
  max-width:560px;
  padding:12px 14px 11px;
  border:1px solid rgba(19,74,112,.14);
  border-radius:12px;
  background:rgba(255,255,255,.94);
  box-shadow:0 8px 24px rgba(17,55,82,.18);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  color:#173c59;
}
.cms1500-slide-callout>strong{
  display:block;
  margin:0 0 3px;
  color:#123e63;
  font-size:15px;
  line-height:1.25;
}
.cms1500-slide-callout>span:not(.cms1500-callout-features){
  display:block;
  color:#4f687c;
  font-size:12.5px;
  line-height:1.4;
}
.cms1500-callout-features{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:8px;
}
.cms1500-callout-features b{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:4px 8px;
  border-radius:999px;
  background:#edf6fc;
  border:1px solid #d5e8f4;
  color:#0c669b;
  font-size:11px;
  line-height:1;
  white-space:nowrap;
}
@media(max-width:560px){
  .cms1500-slide-callout{left:8px;right:8px;bottom:8px;padding:9px 10px 8px;border-radius:9px}
  .cms1500-slide-callout>strong{font-size:13px}
  .cms1500-slide-callout>span:not(.cms1500-callout-features){font-size:11px;line-height:1.32}
  .cms1500-callout-features{gap:4px;margin-top:6px}
  .cms1500-callout-features b{font-size:9.5px;min-height:21px;padding:3px 6px}
}


/* v4 — larger, better-balanced product hero */
@media(min-width:901px){
  .mcs-growth-hero .mcs-growth-wrap.mcs-growth-hero-grid{
    width:min(1320px,calc(100% - 44px));
    grid-template-columns:minmax(430px,.84fr) minmax(0,1.16fr);
    gap:44px;
    align-items:center;
  }
  .mcs-growth-visual .cms1500-hero-carousel{
    width:100%;
    max-width:none;
    margin:0;
  }
  .mcs26-product-hero .mcs26-wrap.mcs26-product-grid{
    width:min(1320px,calc(100% - 44px));
    max-width:none;
    grid-template-columns:minmax(430px,.84fr) minmax(0,1.16fr);
    gap:44px;
    align-items:center;
  }
  .mcs26-product-hero .visual.cms1500-screenshot-hero,
  .mcs26-product-hero .visual .cms1500-hero-carousel{
    width:100%;
    max-width:none;
    margin:0;
  }
}
.cms1500-hero-below{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin-top:-2px;
}
.cms1500-hero-support{
  display:flex;
  flex-direction:column;
  gap:5px;
  padding:14px 16px;
  border:1px solid #d3e3ec;
  border-radius:12px;
  background:rgba(255,255,255,.84);
  color:#4b6679;
  font-size:13px;
  line-height:1.48;
}
.cms1500-hero-support strong{color:#173f64;font-size:14px}
.cms1500-hero-support a{color:#087ca7;font-weight:800}
@media(min-width:1180px){
  .cms1500-carousel-control{width:46px;height:46px;margin-top:-23px}
  .cms1500-slide-callout{max-width:620px;padding:14px 16px 13px}
  .cms1500-slide-callout>strong{font-size:16px}
  .cms1500-slide-callout>span:not(.cms1500-callout-features){font-size:13px}
}
@media(max-width:900px){
  .cms1500-hero-below{grid-template-columns:1fr;margin-top:4px}
}

/* v5 — responsive screenshot sizing: large desktop, clean tablet/mobile */
.cms1500-hero-carousel{
  width:100%;
  max-width:820px;
}
.cms1500-carousel-viewport{
  width:100%;
}
.cms1500-carousel-slide img{
  max-width:100%;
}

/* Large desktop: let the screenshot own the visual column. */
@media(min-width:1280px){
  .mcs-growth-hero .mcs-growth-wrap.mcs-growth-hero-grid,
  .mcs26-product-hero .mcs26-wrap.mcs26-product-grid{
    width:min(1380px,calc(100% - 48px));
    grid-template-columns:minmax(410px,.78fr) minmax(680px,1.22fr);
    gap:48px;
  }
  .mcs-growth-visual .cms1500-hero-carousel,
  .mcs26-product-hero .visual .cms1500-hero-carousel{
    width:100%;
    max-width:none;
  }
  .cms1500-carousel-viewport{
    min-height:430px;
  }
}

/* Small desktop / landscape tablet: keep the carousel prominent without crowding text. */
@media(min-width:901px) and (max-width:1279px){
  .mcs-growth-hero .mcs-growth-wrap.mcs-growth-hero-grid,
  .mcs26-product-hero .mcs26-wrap.mcs26-product-grid{
    width:min(1180px,calc(100% - 36px));
    grid-template-columns:minmax(360px,.88fr) minmax(520px,1.12fr);
    gap:30px;
  }
  .mcs-growth-visual .cms1500-hero-carousel,
  .mcs26-product-hero .visual .cms1500-hero-carousel{
    width:100%;
    max-width:none;
  }
  .cms1500-slide-callout{
    left:14px;
    right:14px;
    bottom:13px;
    max-width:560px;
  }
}

/* Tablet: stack the page naturally and give the screenshot almost the full content width. */
@media(max-width:900px){
  .mcs-growth-visual,
  .mcs26-product-hero .visual.cms1500-screenshot-hero{
    width:100%;
    max-width:none;
    margin:8px auto 0;
  }
  .mcs-growth-visual .cms1500-hero-carousel,
  .mcs26-product-hero .visual .cms1500-hero-carousel,
  .cms1500-hero-carousel{
    width:min(100%,820px);
    max-width:820px;
    margin:0 auto;
  }
  .cms1500-carousel-footer{
    min-height:44px;
  }
}

/* Portrait tablet / large phone: reduce chrome, preserve screenshot area. */
@media(max-width:700px){
  .cms1500-hero-carousel{
    width:100%;
    max-width:none;
    border-radius:13px;
    box-shadow:0 10px 28px rgba(21,63,98,.14);
  }
  .cms1500-carousel-control{
    width:36px;
    height:36px;
    margin-top:-18px;
    font-size:20px;
  }
  .cms1500-carousel-prev{left:8px}
  .cms1500-carousel-next{right:8px}
  .cms1500-slide-callout{
    left:10px;
    right:10px;
    bottom:9px;
    max-width:none;
    padding:9px 10px 8px;
  }
  .cms1500-slide-callout>strong{font-size:13px}
  .cms1500-slide-callout>span:not(.cms1500-callout-features){font-size:10.5px;line-height:1.3}
  .cms1500-callout-features{margin-top:5px;gap:4px}
  .cms1500-callout-features b{min-height:20px;padding:3px 6px;font-size:9px}
  .cms1500-carousel-footer{
    gap:8px;
    padding:7px 10px;
  }
}

/* Phone: keep the image readable and prevent captions/controls from dominating it. */
@media(max-width:480px){
  .cms1500-carousel-viewport{
    aspect-ratio:1547 / 1016;
  }
  .cms1500-carousel-control{
    top:43%;
    width:32px;
    height:32px;
    margin-top:-16px;
    font-size:18px;
    background:rgba(255,255,255,.92);
  }
  .cms1500-carousel-prev{left:6px}
  .cms1500-carousel-next{right:6px}
  .cms1500-slide-callout{
    left:6px;
    right:6px;
    bottom:6px;
    padding:7px 8px 6px;
    border-radius:8px;
    background:rgba(255,255,255,.96);
  }
  .cms1500-slide-callout>strong{font-size:11.5px;margin-bottom:1px}
  .cms1500-slide-callout>span:not(.cms1500-callout-features){display:none}
  .cms1500-callout-features{margin-top:4px;gap:3px}
  .cms1500-callout-features b{font-size:8px;min-height:18px;padding:2px 5px}
  .cms1500-carousel-footer{
    flex-direction:column;
    align-items:flex-start;
    gap:5px;
    min-height:0;
    padding:7px 9px 8px;
  }
  .cms1500-carousel-caption{
    font-size:11px;
    line-height:1.3;
  }
  .cms1500-carousel-dots{
    align-self:center;
  }
  .cms1500-carousel-dot{
    width:9px;
    height:9px;
  }
}


/* v6 — mobile-specific screenshot crops keep the important UI visible. */
@media(max-width:700px){
  .cms1500-carousel-viewport{
    aspect-ratio:4 / 3;
    background:#f4f8fb;
  }
  .cms1500-carousel-slide img{
    width:100%;
    height:100%;
    object-fit:cover;
  }
  /* Dashboard: favor the navigation + headline/workflow area, not the far-right desk edge. */
  .cms1500-slide-dashboard img{object-position:38% 50%}
  /* Claim workspace: keep the form controls and main CMS-1500 entry area centered. */
  .cms1500-slide-workspace img{object-position:44% 31%}
  /* Import preview: keep the grouped-claim table, Errors Only filter and row issues centered. */
  .cms1500-slide-import img{object-position:52% 50%}
}

@media(max-width:480px){
  .cms1500-carousel-viewport{
    aspect-ratio:1 / 1;
  }
  /* Slightly stronger crops on phones so key controls remain readable. */
  .cms1500-slide-dashboard img{object-position:35% 50%}
  .cms1500-slide-workspace img{object-position:42% 28%}
  .cms1500-slide-import img{object-position:51% 48%}
}

@media(max-width:380px){
  .cms1500-carousel-viewport{aspect-ratio:1 / 1.04}
  .cms1500-slide-dashboard img{object-position:33% 50%}
  .cms1500-slide-workspace img{object-position:40% 27%}
  .cms1500-slide-import img{object-position:50% 47%}
}

/* v7 — per-slide mobile zoom: each screenshot favors its most useful controls. */
@media(max-width:700px){
  .cms1500-carousel-slide img{
    transform-origin:center center;
    transition:transform .22s ease;
  }
  /* Dashboard: moderate zoom keeps navigation, main product heading and core workflow readable. */
  .cms1500-slide-dashboard img{
    transform:scale(1.10);
    transform-origin:36% 50%;
  }
  /* Claim workspace: strongest zoom, focused on the toolbar and upper claim-entry boxes. */
  .cms1500-slide-workspace img{
    transform:scale(1.18);
    transform-origin:43% 29%;
  }
  /* Import preview: zoom the grouped-claim table, Errors Only filter and row-level issues. */
  .cms1500-slide-import img{
    transform:scale(1.14);
    transform-origin:51% 48%;
  }
}

@media(max-width:480px){
  .cms1500-slide-dashboard img{
    transform:scale(1.20);
    transform-origin:34% 50%;
  }
  .cms1500-slide-workspace img{
    transform:scale(1.32);
    transform-origin:41% 27%;
  }
  .cms1500-slide-import img{
    transform:scale(1.25);
    transform-origin:50% 46%;
  }
}

@media(max-width:380px){
  .cms1500-slide-dashboard img{
    transform:scale(1.24);
    transform-origin:32% 50%;
  }
  .cms1500-slide-workspace img{
    transform:scale(1.38);
    transform-origin:39% 26%;
  }
  .cms1500-slide-import img{
    transform:scale(1.30);
    transform-origin:49% 45%;
  }
}

@media(prefers-reduced-motion:reduce){
  .cms1500-carousel-slide img{transition:none}
}

/* v8 — per-slide mobile caption placement keeps important screenshot controls visible. */
@media(max-width:700px){
  /* Dashboard: move the caption into the upper-right office/background area so the
     left navigation, main product heading and lower action cards remain visible. */
  .cms1500-slide-dashboard .cms1500-slide-callout{
    left:auto;
    right:10px;
    top:10px;
    bottom:auto;
    width:min(56%,300px);
    max-width:300px;
  }

  /* Claim workspace: keep the caption low and left so the top validation/printing
     toolbar and upper CMS-1500 data-entry fields stay unobstructed. */
  .cms1500-slide-workspace .cms1500-slide-callout{
    left:10px;
    right:auto;
    top:auto;
    bottom:10px;
    width:min(60%,320px);
    max-width:320px;
  }

  /* Excel preview: keep the caption in the upper-left edge so the Errors Only
     control, grouped-claim table, row-level issues and export/fix buttons stay clear. */
  .cms1500-slide-import .cms1500-slide-callout{
    left:10px;
    right:auto;
    top:10px;
    bottom:auto;
    width:min(57%,305px);
    max-width:305px;
  }
}

@media(max-width:480px){
  .cms1500-slide-dashboard .cms1500-slide-callout{
    right:6px;
    top:6px;
    width:min(58%,205px);
    max-width:205px;
  }
  .cms1500-slide-workspace .cms1500-slide-callout{
    left:6px;
    bottom:6px;
    width:min(64%,220px);
    max-width:220px;
  }
  .cms1500-slide-import .cms1500-slide-callout{
    left:6px;
    top:6px;
    width:min(62%,215px);
    max-width:215px;
  }

  /* Keep overlays compact enough that the screenshot remains the focus. */
  .cms1500-slide-callout{
    padding:6px 7px 5px;
    box-shadow:0 5px 16px rgba(17,55,82,.16);
  }
  .cms1500-slide-callout>strong{font-size:11px;line-height:1.2}
  .cms1500-callout-features{margin-top:3px;gap:3px}
  .cms1500-callout-features b{font-size:7.7px;min-height:17px;padding:2px 4px}
}

@media(max-width:380px){
  .cms1500-slide-dashboard .cms1500-slide-callout{width:min(56%,180px);max-width:180px}
  .cms1500-slide-workspace .cms1500-slide-callout{width:min(66%,205px);max-width:205px}
  .cms1500-slide-import .cms1500-slide-callout{width:min(62%,195px);max-width:195px}
}

/* v9 — stronger mobile caption contrast and subtle separation from screenshots. */
@media(max-width:700px){
  .cms1500-slide-callout{
    background:rgba(255,255,255,.985);
    border:1px solid rgba(15,66,103,.30);
    box-shadow:
      0 8px 22px rgba(10,39,65,.22),
      0 2px 6px rgba(10,39,65,.12);
    backdrop-filter:blur(10px) saturate(115%);
    -webkit-backdrop-filter:blur(10px) saturate(115%);
    color:#0f3556;
  }
  .cms1500-slide-callout>strong{
    color:#0b3153;
    text-shadow:0 1px 0 rgba(255,255,255,.95);
  }
  .cms1500-slide-callout>span:not(.cms1500-callout-features){
    color:#304e68;
    text-shadow:0 1px 0 rgba(255,255,255,.9);
  }
  .cms1500-callout-features b{
    background:#e9f4fb;
    border-color:#b9d7e9;
    color:#0b4c74;
    box-shadow:0 1px 2px rgba(14,57,86,.10);
  }
}

@media(max-width:480px){
  .cms1500-slide-callout{
    background:rgba(255,255,255,.99);
    border-color:rgba(12,56,88,.34);
    box-shadow:
      0 7px 18px rgba(8,34,57,.24),
      0 1px 4px rgba(8,34,57,.14);
  }
}

/* v10 — per-slide mobile overlay opacity tuned to screenshot density. */
@media(max-width:700px){
  /* Dashboard has a broad, light medical-office background, so keep more of it visible. */
  .cms1500-slide-dashboard .cms1500-slide-callout{
    background:rgba(255,255,255,.94);
  }

  /* Claim workspace has dense red form lines and controls; use the strongest panel opacity. */
  .cms1500-slide-workspace .cms1500-slide-callout{
    background:rgba(255,255,255,.975);
  }

  /* Import Preview is table-heavy, so use high contrast without fully hiding the grid. */
  .cms1500-slide-import .cms1500-slide-callout{
    background:rgba(255,255,255,.965);
  }
}

@media(max-width:480px){
  .cms1500-slide-dashboard .cms1500-slide-callout{
    background:rgba(255,255,255,.955);
  }
  .cms1500-slide-workspace .cms1500-slide-callout{
    background:rgba(255,255,255,.985);
  }
  .cms1500-slide-import .cms1500-slide-callout{
    background:rgba(255,255,255,.978);
  }
}


/* v11 — subtle per-slide mobile backdrop blur.
   Each screenshot gets a different blur strength so captions remain readable
   without unnecessarily softening important UI underneath. */
@media(max-width:700px){
  /* Dashboard: light office background; only a small amount of blur is needed. */
  .cms1500-slide-dashboard .cms1500-slide-callout{
    backdrop-filter:blur(6px) saturate(108%);
    -webkit-backdrop-filter:blur(6px) saturate(108%);
  }

  /* Claim workspace: dense form lines sit behind the caption, so use a little more blur. */
  .cms1500-slide-workspace .cms1500-slide-callout{
    backdrop-filter:blur(11px) saturate(112%);
    -webkit-backdrop-filter:blur(11px) saturate(112%);
  }

  /* Excel preview: table/grid content needs separation, but should remain recognizable. */
  .cms1500-slide-import .cms1500-slide-callout{
    backdrop-filter:blur(8px) saturate(110%);
    -webkit-backdrop-filter:blur(8px) saturate(110%);
  }
}

@media(max-width:480px){
  .cms1500-slide-dashboard .cms1500-slide-callout{
    backdrop-filter:blur(7px) saturate(108%);
    -webkit-backdrop-filter:blur(7px) saturate(108%);
  }
  .cms1500-slide-workspace .cms1500-slide-callout{
    backdrop-filter:blur(12px) saturate(112%);
    -webkit-backdrop-filter:blur(12px) saturate(112%);
  }
  .cms1500-slide-import .cms1500-slide-callout{
    backdrop-filter:blur(9px) saturate(110%);
    -webkit-backdrop-filter:blur(9px) saturate(110%);
  }
}


/* v12 — refined per-slide mobile blur.
   These values are intentionally lighter than v11 so important screenshot details
   remain visible while the captions retain enough separation to stay readable. */
@media(max-width:700px){
  /* Dashboard: the background is already clean/light, so use only a minimal blur. */
  .cms1500-slide-dashboard .cms1500-slide-callout{
    backdrop-filter:blur(4px) saturate(106%);
    -webkit-backdrop-filter:blur(4px) saturate(106%);
  }

  /* Claim workspace: the red form grid is dense, but 8px preserves more of the controls. */
  .cms1500-slide-workspace .cms1500-slide-callout{
    backdrop-filter:blur(8px) saturate(110%);
    -webkit-backdrop-filter:blur(8px) saturate(110%);
  }

  /* Excel Import Preview: medium blur keeps the table/grid recognizable behind the caption. */
  .cms1500-slide-import .cms1500-slide-callout{
    backdrop-filter:blur(6px) saturate(108%);
    -webkit-backdrop-filter:blur(6px) saturate(108%);
  }
}

@media(max-width:480px){
  /* Slightly stronger only on narrow phones, where text needs more help. */
  .cms1500-slide-dashboard .cms1500-slide-callout{
    backdrop-filter:blur(5px) saturate(106%);
    -webkit-backdrop-filter:blur(5px) saturate(106%);
  }
  .cms1500-slide-workspace .cms1500-slide-callout{
    backdrop-filter:blur(9px) saturate(110%);
    -webkit-backdrop-filter:blur(9px) saturate(110%);
  }
  .cms1500-slide-import .cms1500-slide-callout{
    backdrop-filter:blur(7px) saturate(108%);
    -webkit-backdrop-filter:blur(7px) saturate(108%);
  }
}


/* v13 — 837P desktop hero fill correction.
   The electronic-filing page uses the mcs26 hero system, whose generic visual-image
   rules can constrain nested screenshots. Force the CMS-1500 carousel slides to
   fill the same hero area used by the paper page. */
@media(min-width:901px){
  .cms1500-837p-page .mcs26-product-hero .visual.cms1500-screenshot-hero{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    align-self:center !important;
  }

  .cms1500-837p-page .mcs26-product-hero .visual.cms1500-screenshot-hero .cms1500-hero-carousel{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
  }

  .cms1500-837p-page .mcs26-product-hero .cms1500-carousel-viewport{
    width:100% !important;
    aspect-ratio:1547 / 1016 !important;
    min-height:0 !important;
    background:#fff !important;
  }

  .cms1500-837p-page .mcs26-product-hero .cms1500-carousel-slide{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    max-height:none !important;
    margin:0 !important;
  }

  .cms1500-837p-page .mcs26-product-hero .cms1500-carousel-slide img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-width:100% !important;
    min-height:100% !important;
    max-width:none !important;
    max-height:none !important;
    margin:0 !important;
    object-fit:cover !important;
    object-position:center center !important;
    filter:none !important;
  }
}

/* Keep the same clean full-width behavior if the 837P page is stacked on a tablet. */
@media(max-width:900px){
  .cms1500-837p-page .mcs26-product-hero .cms1500-carousel-slide img{
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    max-height:none !important;
  }
}


/* v14 — 837P-specific tablet/phone screenshot framing.
   The electronic-filing page gets its own crop/zoom values so each software
   screenshot fills the hero and keeps the most important controls readable. */
@media(max-width:900px){
  .cms1500-837p-page .mcs26-product-hero .cms1500-carousel-viewport{
    width:100% !important;
    aspect-ratio:4 / 3 !important;
    min-height:0 !important;
    background:#eef6fb !important;
    overflow:hidden !important;
  }

  .cms1500-837p-page .mcs26-product-hero .cms1500-carousel-slide{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    overflow:hidden !important;
  }

  .cms1500-837p-page .mcs26-product-hero .cms1500-carousel-slide img{
    width:100% !important;
    height:100% !important;
    min-width:100% !important;
    min-height:100% !important;
    max-width:none !important;
    max-height:none !important;
    object-fit:cover !important;
    margin:0 !important;
  }

  /* Dashboard: keep left navigation + main dashboard workflow in view. */
  .cms1500-837p-page .cms1500-slide-dashboard img{
    object-position:34% 50% !important;
    transform:scale(1.08) !important;
    transform-origin:35% 50% !important;
  }

  /* Claim workspace: favor the toolbar and upper CMS-1500 entry boxes. */
  .cms1500-837p-page .cms1500-slide-workspace img{
    object-position:42% 29% !important;
    transform:scale(1.15) !important;
    transform-origin:42% 28% !important;
  }

  /* Excel preview: center on grouped claims, filters and row-level issues. */
  .cms1500-837p-page .cms1500-slide-import img{
    object-position:51% 47% !important;
    transform:scale(1.11) !important;
    transform-origin:50% 46% !important;
  }
}

@media(max-width:600px){
  .cms1500-837p-page .mcs26-product-hero .cms1500-carousel-viewport{
    aspect-ratio:1 / 1.02 !important;
  }

  .cms1500-837p-page .cms1500-slide-dashboard img{
    object-position:31% 50% !important;
    transform:scale(1.18) !important;
    transform-origin:32% 50% !important;
  }

  .cms1500-837p-page .cms1500-slide-workspace img{
    object-position:39% 26% !important;
    transform:scale(1.29) !important;
    transform-origin:40% 26% !important;
  }

  .cms1500-837p-page .cms1500-slide-import img{
    object-position:49% 44% !important;
    transform:scale(1.23) !important;
    transform-origin:49% 44% !important;
  }
}

@media(max-width:380px){
  .cms1500-837p-page .mcs26-product-hero .cms1500-carousel-viewport{
    aspect-ratio:1 / 1.08 !important;
  }

  .cms1500-837p-page .cms1500-slide-dashboard img{
    object-position:29% 50% !important;
    transform:scale(1.22) !important;
    transform-origin:30% 50% !important;
  }

  .cms1500-837p-page .cms1500-slide-workspace img{
    object-position:37% 25% !important;
    transform:scale(1.34) !important;
    transform-origin:38% 25% !important;
  }

  .cms1500-837p-page .cms1500-slide-import img{
    object-position:48% 43% !important;
    transform:scale(1.28) !important;
    transform-origin:48% 43% !important;
  }
}


/* v15 — refined 837P per-slide zoom by breakpoint. */
@media (max-width:900px) and (min-width:701px){
  .cms1500-837p-page .cms1500-slide-dashboard img{
    object-position:33% 50% !important;
    transform:scale(1.06) !important;
    transform-origin:34% 50% !important;
  }
  .cms1500-837p-page .cms1500-slide-workspace img{
    object-position:41% 27% !important;
    transform:scale(1.11) !important;
    transform-origin:41% 27% !important;
  }
  .cms1500-837p-page .cms1500-slide-import img{
    object-position:50% 46% !important;
    transform:scale(1.08) !important;
    transform-origin:50% 46% !important;
  }
}
@media (max-width:700px) and (min-width:521px){
  .cms1500-837p-page .cms1500-slide-dashboard img{
    object-position:31% 50% !important;
    transform:scale(1.12) !important;
    transform-origin:32% 50% !important;
  }
  .cms1500-837p-page .cms1500-slide-workspace img{
    object-position:39% 25% !important;
    transform:scale(1.20) !important;
    transform-origin:39% 25% !important;
  }
  .cms1500-837p-page .cms1500-slide-import img{
    object-position:49% 44% !important;
    transform:scale(1.15) !important;
    transform-origin:49% 44% !important;
  }
}
@media (max-width:520px) and (min-width:381px){
  .cms1500-837p-page .cms1500-slide-dashboard img{
    object-position:29% 50% !important;
    transform:scale(1.17) !important;
    transform-origin:30% 50% !important;
  }
  .cms1500-837p-page .cms1500-slide-workspace img{
    object-position:37% 23% !important;
    transform:scale(1.27) !important;
    transform-origin:38% 23% !important;
  }
  .cms1500-837p-page .cms1500-slide-import img{
    object-position:48% 42% !important;
    transform:scale(1.21) !important;
    transform-origin:48% 42% !important;
  }
}
@media (max-width:380px){
  .cms1500-837p-page .cms1500-slide-dashboard img{
    object-position:27% 50% !important;
    transform:scale(1.21) !important;
    transform-origin:28% 50% !important;
  }
  .cms1500-837p-page .cms1500-slide-workspace img{
    object-position:35% 22% !important;
    transform:scale(1.31) !important;
    transform-origin:36% 22% !important;
  }
  .cms1500-837p-page .cms1500-slide-import img{
    object-position:47% 41% !important;
    transform:scale(1.25) !important;
    transform-origin:47% 41% !important;
  }
}


/* v16 — use dashboard + paper form + electronic filing slides, and tune the 837P hero. */
@media(max-width:700px){
  .cms1500-slide-efile img{object-position:52% 31%}
}
@media(max-width:480px){
  .cms1500-slide-efile img{object-position:51% 29%}
}
@media(max-width:380px){
  .cms1500-slide-efile img{object-position:50% 28%}
}

@media(max-width:700px){
  .cms1500-slide-efile img{
    transform:scale(1.16);
    transform-origin:51% 30%;
  }
}
@media(max-width:480px){
  .cms1500-slide-efile img{
    transform:scale(1.24);
    transform-origin:50% 29%;
  }
}
@media(max-width:380px){
  .cms1500-slide-efile img{
    transform:scale(1.28);
    transform-origin:50% 28%;
  }
}

@media(max-width:700px){
  .cms1500-slide-efile .cms1500-slide-callout{
    left:10px;
    right:auto;
    top:10px;
    bottom:auto;
    width:min(58%,308px);
    max-width:308px;
    background:rgba(255,255,255,.968);
    backdrop-filter:blur(7px) saturate(108%);
    -webkit-backdrop-filter:blur(7px) saturate(108%);
  }
}
@media(max-width:480px){
  .cms1500-slide-efile .cms1500-slide-callout{
    left:6px;
    top:6px;
    width:min(62%,220px);
    max-width:220px;
    background:rgba(255,255,255,.978);
    backdrop-filter:blur(8px) saturate(108%);
    -webkit-backdrop-filter:blur(8px) saturate(108%);
  }
}
@media(max-width:380px){
  .cms1500-slide-efile .cms1500-slide-callout{
    width:min(64%,198px);
    max-width:198px;
  }
}

@media(min-width:901px){
  .cms1500-837p-page .mcs26-product-hero .mcs26-wrap.mcs26-product-grid{
    grid-template-columns:minmax(400px,.78fr) minmax(0,1.22fr);
    gap:38px;
    align-items:center;
  }
  .cms1500-837p-page .mcs26-product-hero .visual.cms1500-screenshot-hero,
  .cms1500-837p-page .mcs26-product-hero .visual.cms1500-screenshot-hero .cms1500-hero-carousel{
    width:100% !important;
    max-width:none !important;
  }
  .cms1500-837p-page .mcs26-product-hero .cms1500-carousel-viewport{
    aspect-ratio:1547 / 1016 !important;
    background:#edf6fb !important;
  }
  .cms1500-837p-page .mcs26-product-hero .cms1500-carousel-slide img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    display:block !important;
  }
  .cms1500-837p-page .mcs26-product-hero .cms1500-slide-dashboard img{
    object-position:50% 50% !important;
    transform:none !important;
  }
  .cms1500-837p-page .mcs26-product-hero .cms1500-slide-workspace img{
    object-position:50% 15% !important;
    transform:none !important;
  }
  .cms1500-837p-page .mcs26-product-hero .cms1500-slide-efile img{
    object-position:50% 18% !important;
    transform:none !important;
  }
}

@media (max-width:900px) and (min-width:701px){
  .cms1500-837p-page .cms1500-slide-efile img{
    object-position:51% 30% !important;
    transform:scale(1.10) !important;
    transform-origin:51% 30% !important;
  }
}
@media (max-width:700px) and (min-width:521px){
  .cms1500-837p-page .cms1500-slide-efile img{
    object-position:50% 29% !important;
    transform:scale(1.16) !important;
    transform-origin:50% 29% !important;
  }
}
@media (max-width:520px) and (min-width:381px){
  .cms1500-837p-page .cms1500-slide-efile img{
    object-position:49% 28% !important;
    transform:scale(1.22) !important;
    transform-origin:49% 28% !important;
  }
}
@media (max-width:380px){
  .cms1500-837p-page .cms1500-slide-efile img{
    object-position:48% 27% !important;
    transform:scale(1.26) !important;
    transform-origin:48% 27% !important;
  }
}


/* v17 — 837P hero uses slide backgrounds so screenshots always fill the carousel. */
@media(min-width:901px){
  .cms1500-837p-page .mcs26-product-hero .mcs26-wrap.mcs26-product-grid{
    grid-template-columns:minmax(390px,.76fr) minmax(0,1.24fr) !important;
    gap:36px !important;
    align-items:center !important;
  }
  .cms1500-837p-page .cms1500-screenshot-hero,
  .cms1500-837p-page .cms1500-screenshot-hero .cms1500-hero-carousel{
    width:100% !important;max-width:none !important;min-width:0 !important;margin:0 !important;
  }
  .cms1500-837p-page .cms1500-carousel-viewport{
    width:100% !important;aspect-ratio:16 / 10 !important;min-height:0 !important;background:#edf6fb !important;
  }
}
.cms1500-837p-page .cms1500-carousel-slide{
  background-image:var(--slide-bg) !important;
  background-repeat:no-repeat !important;
  background-size:cover !important;
  background-position:center center !important;
}
.cms1500-837p-page .cms1500-carousel-slide>img{
  opacity:0 !important;
  position:absolute !important;
  width:1px !important;height:1px !important;
  min-width:0 !important;min-height:0 !important;
  max-width:1px !important;max-height:1px !important;
  pointer-events:none !important;
}
.cms1500-837p-page .cms1500-slide-dashboard{background-position:center center !important}
.cms1500-837p-page .cms1500-slide-workspace{background-position:center 12% !important}
.cms1500-837p-page .cms1500-slide-efile{background-position:center 14% !important}
@media(max-width:900px){
  .cms1500-837p-page .cms1500-carousel-viewport{aspect-ratio:4 / 3 !important}
  .cms1500-837p-page .cms1500-slide-dashboard{background-position:34% 50% !important}
  .cms1500-837p-page .cms1500-slide-workspace{background-position:43% 24% !important}
  .cms1500-837p-page .cms1500-slide-efile{background-position:49% 25% !important}
}
@media(max-width:520px){
  .cms1500-837p-page .cms1500-carousel-viewport{aspect-ratio:1 / 1 !important}
  .cms1500-837p-page .cms1500-slide-dashboard{background-position:30% 50% !important}
  .cms1500-837p-page .cms1500-slide-workspace{background-position:39% 21% !important}
  .cms1500-837p-page .cms1500-slide-efile{background-position:46% 22% !important}
}


/* v18 — tuned 837P mobile crop/zoom per slide.
   Because the 837P hero uses CSS background images, zoom is controlled with
   background-size (height percentage) rather than img transforms. */

/* Tablet / small laptop */
@media (max-width:900px) and (min-width:701px){
  .cms1500-837p-page .cms1500-carousel-viewport{
    aspect-ratio:4 / 3 !important;
  }
  .cms1500-837p-page .cms1500-slide-dashboard{
    background-size:auto 106% !important;
    background-position:31% 50% !important;
  }
  .cms1500-837p-page .cms1500-slide-workspace{
    background-size:auto 111% !important;
    background-position:39% 11% !important;
  }
  .cms1500-837p-page .cms1500-slide-efile{
    background-size:auto 109% !important;
    background-position:49% 12% !important;
  }
}

/* Large phones / portrait tablets */
@media (max-width:700px) and (min-width:521px){
  .cms1500-837p-page .cms1500-carousel-viewport{
    aspect-ratio:6 / 5 !important;
  }
  .cms1500-837p-page .cms1500-slide-dashboard{
    background-size:auto 108% !important;
    background-position:29% 50% !important;
  }
  .cms1500-837p-page .cms1500-slide-workspace{
    background-size:auto 116% !important;
    background-position:37% 8% !important;
  }
  .cms1500-837p-page .cms1500-slide-efile{
    background-size:auto 113% !important;
    background-position:48% 9% !important;
  }
}

/* Typical phones */
@media (max-width:520px) and (min-width:381px){
  .cms1500-837p-page .cms1500-carousel-viewport{
    aspect-ratio:1 / 1 !important;
  }
  .cms1500-837p-page .cms1500-slide-dashboard{
    background-size:auto 112% !important;
    background-position:27% 50% !important;
  }
  .cms1500-837p-page .cms1500-slide-workspace{
    background-size:auto 122% !important;
    background-position:35% 6% !important;
  }
  .cms1500-837p-page .cms1500-slide-efile{
    background-size:auto 119% !important;
    background-position:47% 7% !important;
  }
}

/* Narrow phones */
@media (max-width:380px){
  .cms1500-837p-page .cms1500-carousel-viewport{
    aspect-ratio:1 / 1.04 !important;
  }
  .cms1500-837p-page .cms1500-slide-dashboard{
    background-size:auto 116% !important;
    background-position:25% 50% !important;
  }
  .cms1500-837p-page .cms1500-slide-workspace{
    background-size:auto 128% !important;
    background-position:33% 4% !important;
  }
  .cms1500-837p-page .cms1500-slide-efile{
    background-size:auto 124% !important;
    background-position:46% 5% !important;
  }
}


/* v19 — carousel reliability: preload/fallback background for all three CMS-1500 slides. */
.cms1500-hero-carousel .cms1500-carousel-slide{
  background-image:var(--slide-bg);
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center center;
}
.cms1500-hero-carousel .cms1500-slide-workspace{background-position:center 14%}
.cms1500-hero-carousel .cms1500-slide-efile{background-position:center 16%}
@media(max-width:700px){
  .cms1500-hero-carousel .cms1500-slide-dashboard{background-position:36% 50%}
  .cms1500-hero-carousel .cms1500-slide-workspace{background-position:42% 24%}
  .cms1500-hero-carousel .cms1500-slide-efile{background-position:49% 25%}
}
