/* V182: intrinsic foreground images, fixed 1920px cap and the #051E32 EVCA surround.
   First important layer. Desktop overlap uses intrinsic CSS grid sizing; no measured flow swap. */
@layer comemso-hero-v182 {
  body[data-v182-hero-page] :is(#main-content, #page-content) {
    width:100%!important; max-width:none!important; margin:0!important; padding:0!important;
  }
  [data-v182-width-hero], [data-v182-width-hero] * { box-sizing:border-box!important; }
  [data-v182-width-hero] {
    --hero-art-max-width:1920px!important;
    position:relative!important; isolation:isolate!important; display:flex!important;
    flex-direction:column!important; width:100%!important; max-width:none!important;
    height:auto!important; min-height:0!important; max-height:none!important;
    margin:0!important; padding:0!important; border:0!important; border-radius:0!important;
    background:#051E32!important; overflow:visible!important; aspect-ratio:auto!important;
    box-shadow:none!important; filter:none!important; mask:none!important; transform:none!important;
  }
  [data-v182-width-hero]::before, [data-v182-width-hero]::after,
  [data-v182-width-hero] .cmo-fullbleed-art::before, [data-v182-width-hero] .cmo-fullbleed-art::after,
  [data-v182-width-hero] .cmo-home-stage::before, [data-v182-width-hero] .cmo-home-stage::after,
  [data-v182-width-hero] .cmo-home-scene__media::before, [data-v182-width-hero] .cmo-home-scene__media::after {
    content:none!important;
  }
  [data-v182-width-hero] > .cmo-fullbleed-art {
    position:relative!important; inset:auto!important; order:2!important; display:block!important;
    width:100%!important; max-width:var(--hero-art-max-width)!important; min-width:0!important;
    height:auto!important; min-height:0!important; max-height:none!important;
    margin:0 auto!important; padding:0!important; border:0!important; border-radius:0!important;
    background:transparent!important; box-shadow:none!important; aspect-ratio:auto!important;
    overflow:visible!important; transform:none!important;
  }
  [data-v182-width-hero] :is(.cmo-fullbleed-art, .cmo-home-scene__media) img {
    display:block!important; position:static!important; inset:auto!important;
    width:100%!important; max-width:none!important; min-width:0!important;
    height:auto!important; min-height:0!important; max-height:none!important;
    aspect-ratio:auto!important; object-fit:contain!important; object-position:center!important;
    margin:0!important; padding:0!important; border:0!important; border-radius:0!important;
    filter:none!important; mask:none!important; opacity:1!important; mix-blend-mode:normal!important;
    transform:none!important; box-shadow:none!important;
  }
  [data-v182-width-hero="detail"] > .cmo-hero-layout {
    position:relative!important; inset:auto!important; order:1!important; z-index:1!important;
    display:flex!important; flex-direction:column!important; justify-content:center!important;
    align-items:stretch!important; gap:20px!important; width:100%!important;
    max-width:var(--content-width,1180px)!important; min-width:0!important;
    height:auto!important; min-height:0!important; max-height:none!important;
    margin:0 auto!important; padding:32px var(--content-gutter,24px)!important;
    background:#fff!important; color:#001c32!important; overflow:visible!important;
    transform:none!important; border:0!important; box-shadow:none!important;
  }
  [data-v182-width-hero="detail"] :is(.cmo-hero-heading-row, .cmo-hero-copy) {
    display:block!important; position:static!important; inset:auto!important; width:100%!important;
    max-width:none!important; min-width:0!important; height:auto!important;
    min-height:0!important; max-height:none!important; margin:0!important; padding:0!important;
    background:transparent!important; color:inherit!important; overflow:visible!important; transform:none!important;
  }
  [data-v182-width-hero="detail"] :is(h1,p) {
    color:inherit!important; -webkit-text-fill-color:currentColor!important;
    max-width:none!important; text-shadow:none!important; opacity:1!important;
  }
  [data-v182-width-hero="detail"] h1 {
    margin:0!important; padding:0!important; font-size:clamp(2rem,3vw,3.3rem)!important;
    line-height:1.15!important; overflow-wrap:break-word!important; hyphens:auto;
  }
  [data-v182-width-hero="detail"] .cmo-hero-copy > p {
    margin:0 0 16px!important; padding:0!important;
    font-size:clamp(1rem,1.25vw,1.15rem)!important; line-height:1.55!important;
  }
  [data-v182-width-hero="detail"] .cmo-hero-heading-row > p {
    margin:0 0 16px!important; padding:0!important; font-size:.875rem!important;
    line-height:1.4!important; letter-spacing:.05em!important; color:#006097!important;
  }
  [data-v182-width-hero="detail"] :is([data-design-actions], .emc179-actions) {
    display:flex!important; flex-wrap:wrap!important; gap:12px!important; width:100%!important;
    margin:24px 0 0!important; padding:0!important; background:transparent!important; color:inherit!important;
  }
  [data-v182-width-hero="detail"] :is([data-design-actions], .emc179-actions) > a {
    display:inline-flex!important; align-items:center!important; justify-content:center!important;
    width:auto!important; max-width:100%!important; min-width:0!important;
    min-height:48px!important; height:auto!important; padding:12px 18px!important;
    font-size:1rem!important; line-height:1.35!important; white-space:normal!important;
    text-align:center!important; text-decoration:none!important; overflow-wrap:anywhere!important;
    -webkit-text-fill-color:currentColor!important;
  }
  [data-v182-width-hero="detail"] :is([data-design-button="primary"], .emc179-primary) {
    background:#006097!important; color:#fff!important; border:1px solid #006097!important;
  }
  [data-v182-width-hero="detail"] :is([data-design-button="outline"], .emc179-secondary) {
    background:transparent!important; color:inherit!important; border:1px solid currentColor!important;
  }
  [data-v182-width-hero] :is(a,button):focus-visible {
    outline:3px solid #006097!important; outline-offset:4px!important;
  }

  /* Home: existing five slide positions, controls, labels and order are retained. */
  [data-v182-width-hero="home"] .cmo-home-stage {
    --home-text:#001c32!important; --home-accent:#006097!important;
    position:relative!important; display:grid!important; grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:auto auto auto auto auto!important; gap:0!important;
    width:100%!important; max-width:var(--hero-art-max-width)!important;
    height:auto!important; min-height:0!important; max-height:none!important;
    margin:0 auto!important; padding:0!important; aspect-ratio:auto!important;
    background:#fff!important; overflow:visible!important; color:var(--home-text)!important;
  }
  [data-v182-width-hero="home"] .cmo-home-scene { display:contents!important; }
  [data-v182-width-hero="home"] .cmo-home-scene[hidden],
  [data-v182-width-hero="home"] [data-home-carousel-controls][hidden] { display:none!important; }
  [data-v182-width-hero="home"] .cmo-home-contained {
    width:calc(100% - 2 * var(--content-gutter,24px))!important;
    max-width:var(--content-width,1180px)!important; min-width:0!important;
    margin-inline:auto!important; position:relative!important; inset:auto!important; z-index:2!important;
  }
  [data-v182-width-hero="home"] .cmo-home-intro {
    grid-area:1/1!important; padding:32px 0 0!important; align-self:start!important;
  }
  [data-v182-width-hero="home"] .cmo-home-intro h1 {
    max-width:none!important; margin:0!important; color:var(--home-text)!important;
    -webkit-text-fill-color:currentColor!important;
    font-size:clamp(2rem,3vw,3.3rem)!important; line-height:1.15!important;
    overflow-wrap:break-word!important;
  }
  [data-v182-width-hero="home"] .cmo-home-scene__copy {
    grid-area:2/1!important; align-self:start!important; padding:20px 0 24px!important;
    height:auto!important; min-height:0!important; max-height:none!important; overflow:visible!important;
    background:transparent!important; color:var(--home-text)!important;
  }
  [data-v182-width-hero="home"] .cmo-home-scene__copy p {
    max-width:65ch!important; color:var(--home-text)!important;
    -webkit-text-fill-color:currentColor!important; margin:0 0 24px!important;
  }
  [data-v182-width-hero="home"] .cmo-home-scene__copy a {
    max-width:100%!important; white-space:normal!important; height:auto!important;
  }
  [data-v182-width-hero="home"] .cmo-home-carousel-controls {
    grid-area:3/1!important; padding:0 0 12px!important; align-self:end!important;
  }
  [data-v182-width-hero="home"] .cmo-home-stage__switch {
    grid-area:4/1!important; padding:0!important; margin-block:0!important; color:var(--home-text)!important;
  }
  [data-v182-width-hero="home"] .cmo-home-stage__switch button {
    color:var(--home-text)!important; -webkit-text-fill-color:currentColor!important;
  }
  [data-v182-width-hero="home"] .cmo-home-stage__switch button:is([aria-pressed="true"],:hover) {
    color:var(--home-accent)!important; border-bottom-color:var(--home-accent)!important;
  }
  [data-v182-width-hero="home"] .cmo-home-scene__media {
    grid-area:5/1!important; display:block!important; position:relative!important; inset:auto!important;
    width:100%!important; max-width:none!important; min-width:0!important;
    height:auto!important; min-height:0!important; max-height:none!important;
    margin:0!important; padding:0!important; aspect-ratio:2048/641!important;
    background:none!important; overflow:visible!important; border:0!important;
    border-radius:0!important; box-shadow:none!important; z-index:0!important;
  }
  [data-v182-width-hero="home"] .cmo-home-scene__media picture {
    display:block!important; position:static!important; inset:auto!important;
    width:100%!important; height:auto!important;
  }
  [data-v182-width-hero="home"] .made-in-germany {
    position:relative!important; grid-area:5/1!important; align-self:start!important; justify-self:start!important;
    inset:auto!important; width:94px!important; max-width:25%!important; margin:16px!important; z-index:2!important;
  }
  @media (max-width:760px) {
    [data-v182-width-hero="home"] .cmo-home-contained { width:calc(100% - 32px)!important; }
  }

  /* Inactive text contributes to the same grid row; inert/aria-hidden exclude it
     from interaction and accessibility. Images of inactive slides stay hidden. */
  [data-v182-width-hero="home"] .cmo-home-scene[hidden] {
    display:contents!important;
  }
  [data-v182-width-hero="home"] .cmo-home-scene[hidden] .cmo-home-scene__copy {
    visibility:hidden!important; pointer-events:none!important;
  }
  [data-v182-width-hero="home"] .cmo-home-scene[hidden] .cmo-home-scene__media {
    display:none!important;
  }
  [data-v182-width-hero] :is(.cmo-hero-layout,.cmo-fullbleed-art,.cmo-home-stage,.cmo-home-scene__copy,.cmo-home-scene__media) {
    transition:none!important; animation:none!important;
  }
  [data-v182-width-hero="home"] .cmo-home-scene__copy {
    align-self:stretch!important; display:flex!important; flex-direction:column!important;
    align-items:flex-start!important; justify-content:flex-start!important;
  }
  [data-v182-width-hero="home"] .cmo-home-scene__copy a { margin-top:auto!important; }
  /* Reserve the exact navigation row before the carousel script binds. */
  [data-v182-width-hero="home"] .cmo-home-carousel-controls,
  [data-v182-width-hero="home"] [data-home-carousel-controls][hidden] {
    display:block!important; min-height:62px!important; padding:0 0 12px!important;
  }
  [data-v182-width-hero="home"] [data-home-carousel-controls][hidden] { visibility:hidden!important; }
  [data-v182-width-hero="home"] .cmo-home-carousel-navigation {
    display:flex!important; align-items:center!important; gap:8px!important;
    width:276px!important; max-width:100%!important; height:50px!important;
    padding:3px 6px!important; box-sizing:border-box!important;
  }
  [data-v182-width-hero="home"] :is([data-home-prev],[data-home-next]) {
    display:flex!important; align-items:center!important; justify-content:center!important;
    flex:0 0 44px!important; width:44px!important; height:44px!important; min-height:44px!important;
    margin:0!important; padding:0!important;
  }
  [data-v182-width-hero="home"] [data-home-dots] {
    display:flex!important; flex:0 0 160px!important; width:160px!important;
    height:32px!important; align-items:center!important; gap:0!important;
  }
  [data-v182-width-hero="home"] .cmo-home-dot {
    position:relative!important; display:block!important; flex:0 0 32px!important;
    width:32px!important; height:32px!important; min-height:32px!important;
    border:0!important; padding:0!important; margin:0!important;
    background:transparent!important; box-shadow:none!important;
  }
  [data-v182-width-hero="home"] .cmo-home-dot::before {
    content:""!important; position:absolute!important; width:7px!important; height:7px!important;
    left:12.5px!important; top:12.5px!important; border-radius:50%!important;
    background:currentColor!important; opacity:.5!important;
  }
  [data-v182-width-hero="home"] .cmo-home-dot[aria-pressed="true"]::before {
    opacity:1!important; transform:scale(1.3)!important;
  }
  [data-v182-width-hero="home"] .made-in-germany { justify-self:end!important; }
  /* Image and copy share one intrinsic grid area. Long copy can extend the blue
     section; the image remains proportional and is never height-stretched. */
  @media (min-width:1100px) {
    [data-v182-width-hero="detail"] {
      display:grid!important; grid-template-columns:minmax(0,1fr)!important;
    }
    [data-v182-width-hero="detail"] > .cmo-fullbleed-art {
      grid-area:1/1!important; align-self:center!important; justify-self:center!important;
    }
    [data-v182-width-hero="detail"] > .cmo-hero-layout {
      grid-area:1/1!important; align-self:center!important; justify-self:center!important;
      background:transparent!important; color:#fff!important;
    }
    [data-v182-width-hero="detail"] :is(.cmo-hero-heading-row,.cmo-hero-copy) {
      width:46%!important; max-width:590px!important;
    }
    [data-v182-width-hero="detail"] .cmo-hero-heading-row > p { color:#53d4fa!important; }
    [data-v182-width-hero="home"] .cmo-home-stage {
      --home-text:#fff!important; --home-accent:#53d4fa!important;
      grid-template-rows:auto 1fr auto auto!important; background:#051E32!important;
    }
    [data-v182-width-hero="home"] .cmo-home-scene__media {
      grid-area:1/1/5/2!important; align-self:center!important;
    }
    [data-v182-width-hero="home"] .cmo-home-intro h1 { max-width:56%!important; }
    [data-v182-width-hero="home"] .cmo-home-scene__copy p { max-width:46%!important; }
    [data-v182-width-hero="home"] .made-in-germany {
      grid-area:1/1/5/2!important; align-self:start!important; justify-self:end!important;
      margin:32px max(var(--content-gutter,24px),calc((100% - var(--content-width,1180px))/2))!important;
      width:130px!important;
    }
    [data-v182-width-hero] :is(a,button):focus-visible { outline-color:#79dcff!important; }
  }
}
