/* Hide secondary image descriptions in every locale and viewport. */
body .umbrella-detail-view .umbrella-detail__mobile-copy > p { display:none; }

/* Phone gallery geometry matches the compact putter detail viewer. */
@media (max-width:700px) {
  body .umbrella-detail-view { display:grid; place-items:center; background:rgba(24,35,43,.52); }
  body .umbrella-detail__panel { height:min(100dvh,calc(75vw + 242px)); min-height:0; }
  body .umbrella-detail__header { flex:0 0 68px; min-height:68px; }
  body .umbrella-detail__body {
    flex:0 0 auto; align-self:center;
    width:min(calc(100vw - 24px),calc((100dvh - 260px) * 4 / 3));
    height:auto; aspect-ratio:4 / 3;
  }
  body .umbrella-detail__footer { flex:0 0 192px; min-height:192px; padding:14px 18px 12px; }
  body .umbrella-detail__mobile-copy { min-height:104px; }
  body .umbrella-detail__mobile-copy small { margin-bottom:6px; }
  body .umbrella-detail__mobile-copy strong { margin-bottom:8px; }
  body .umbrella-detail__swipe { margin-top:8px; }
  body .umbrella-detail__panel.is-light .umbrella-detail__shot img {
    object-fit:cover; object-position:center; transform:none;
  }
  body .umbrella-detail__panel .umbrella-detail__arrow { top:calc(68px + (min(100dvh,75vw + 242px) - 260px) / 2); }
}

/* Immersive umbrella detail overlay — shared by all language editions. */
body.umbrella-detail-open { overflow: hidden; }

.umbrella-detail-view[hidden] { display: none !important; }

.umbrella-detail-view {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: grid;
  place-items: center;
  padding: 2.4vh 2vw;
  box-sizing: border-box;
  background: rgba(2, 12, 20, .78);
  -webkit-backdrop-filter: blur(18px) saturate(.66);
  backdrop-filter: blur(18px) saturate(.66);
  opacity: 0;
  transition: opacity .42s ease;
}

.umbrella-detail-view.is-open { opacity: 1; }

.umbrella-detail__panel {
  position: relative;
  display: flex;
  width: min(96vw, 1800px);
  height: min(92vh, 980px);
  min-height: 650px;
  flex-direction: column;
  overflow: hidden;
  color: #071c2e;
  background: radial-gradient(circle at 46% 40%, #f7f6f2 0, #eeede8 56%, #e5e4df 100%);
  box-shadow: 0 42px 110px rgba(0, 8, 15, .40);
  transform: translateY(22px) scale(.985);
  transform-origin: center;
  transition: transform .62s cubic-bezier(.22, .78, .16, 1);
}

.umbrella-detail-view.is-open .umbrella-detail__panel { transform: none; }

.umbrella-detail__header {
  position: relative;
  z-index: 5;
  display: grid;
  grid-template-columns: auto auto 1fr auto auto;
  align-items: center;
  gap: clamp(18px, 3vw, 56px);
  min-height: 76px;
  padding: 0 clamp(24px, 3vw, 54px);
  border-bottom: 1px solid rgba(7, 28, 46, .13);
  box-sizing: border-box;
}

.umbrella-detail__back,
.umbrella-detail__close {
  position: relative;
  display: grid;
  width: 42px;
  height: 42px;
  padding: 0;
  place-items: center;
  border: 0;
  color: #071c2e;
  background: transparent;
  cursor: pointer;
}

.umbrella-detail__back:focus-visible,
.umbrella-detail__close:focus-visible {
  outline: 1px solid rgba(7, 28, 46, .28);
  outline-offset: -7px;
}

.umbrella-detail__back { display: none; }
.umbrella-detail__close { font: 300 31px/1 Arial, sans-serif; }
.umbrella-detail__close::before,
.umbrella-detail__close::after {
  content: "";
  position: absolute;
  width: 23px;
  height: 1px;
  background: currentColor;
}
.umbrella-detail__close::before { transform: rotate(45deg); }
.umbrella-detail__close::after { transform: rotate(-45deg); }

.umbrella-detail__swipe { display: none; }

.umbrella-detail__brand,
.umbrella-detail__system,
.umbrella-detail__patent,
.umbrella-detail__count {
  margin: 0;
  font-family: Inter, "Helvetica Neue", Arial, sans-serif;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
}

.umbrella-detail__brand { font-size: 14px; font-weight: 650; letter-spacing: .34em; }
.umbrella-detail__system,
.umbrella-detail__patent { color: #657078; font-size: 9px; font-weight: 600; letter-spacing: .24em; }
.umbrella-detail__count { font-size: 11px; font-weight: 700; letter-spacing: .24em; }

.umbrella-detail__body {
  position: relative;
  display: flex;
  min-height: 0;
  flex: 1;
  overflow: hidden;
  background: #deded9;
}

.umbrella-detail__product {
  position: relative;
  min-width: 0;
  flex: .40 1 0;
  overflow: hidden;
  border-right: 1px solid rgba(247, 246, 242, .86);
  cursor: pointer;
  opacity: .46;
  filter: grayscale(1) saturate(0) contrast(.92) brightness(.86);
  transition: flex .9s cubic-bezier(.18,.82,.15,1), opacity .58s ease, filter .62s ease;
}

.umbrella-detail__product.is-active { flex: 2.4 1 0; opacity: 1; filter: none; }

.umbrella-detail__product::after {
  content: "";
  position: absolute;
  left: 16%;
  right: 16%;
  bottom: 8%;
  height: 22px;
  border-radius: 50%;
  background: rgba(7, 28, 46, .10);
  filter: blur(22px);
}

.umbrella-detail__product img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  padding: 0;
  box-sizing: border-box;
  object-fit: cover;
  filter: saturate(.78) contrast(.98);
  transition: transform .8s cubic-bezier(.22,.78,.16,1), filter .55s ease;
}

.umbrella-detail__product.is-active img {
  padding: 0;
  object-fit: cover;
  object-position: 50% 50%;
  filter: none;
}

.umbrella-detail__shots {
  display: contents;
}

.umbrella-detail__shot {
  --shot-position: 50% 42%;
  position: relative;
  min-width: 0;
  padding: 0;
  flex: .40 1 0;
  overflow: hidden;
  border: 0;
  border-left: 1px solid rgba(247, 246, 242, .86);
  background: #e4e5e2;
  cursor: pointer;
  opacity: .46;
  filter: grayscale(1) saturate(0) contrast(.92) brightness(.86);
  transition: flex .9s cubic-bezier(.18,.82,.15,1), opacity .58s ease, filter .62s ease;
}

.umbrella-detail__shot:first-child { border-left: 0; }
.umbrella-detail__shot.is-active { flex: 2.4 1 0; opacity: 1; filter: none; }

.umbrella-detail__shot img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: var(--shot-position);
  transform: scale(1.12);
  transition: transform 1.12s cubic-bezier(.18,.82,.15,1);
}

.umbrella-detail__shot.is-active img { transform: scale(1.02); }
.umbrella-detail__shot--canopy,
.umbrella-detail__shot--airflow,
.umbrella-detail__shot--handle,
.umbrella-detail__shot--mist { --shot-position: 50% 50%; }

.umbrella-detail__shot::before {
  content: "";
  position: absolute;
  inset: auto 0 0;
  z-index: 2;
  height: 34%;
  pointer-events: none;
  background: linear-gradient(180deg, transparent, rgba(12, 24, 32, .30));
  transition: opacity .42s ease;
}

.umbrella-detail__shot.is-active::before { opacity: 0; }

.umbrella-detail__shot::after { display: none; }

.umbrella-detail__footer {
  position: relative;
  z-index: 5;
  min-height: 88px;
  padding: 0 clamp(26px, 4vw, 70px);
  box-sizing: border-box;
  background: rgba(241, 240, 235, .98);
}

.umbrella-detail__options {
  --active-index: 0;
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  height: 100%;
  gap: clamp(18px, 2.5vw, 52px);
}

.umbrella-detail__option {
  position: relative;
  display: grid;
  align-content: center;
  gap: 7px;
  min-width: 0;
  padding: 13px 0 9px;
  border: 0;
  border-top: 1px solid rgba(7, 28, 46, .18);
  color: #5f6b73;
  text-align: left;
  background: transparent;
  cursor: pointer;
  transition: color .38s ease;
}

.umbrella-detail__option.is-active { color: #071c2e; }
.umbrella-detail__option small { font: 600 8px/1 Inter, "Helvetica Neue", Arial, sans-serif; letter-spacing: .26em; }
.umbrella-detail__option strong { overflow: hidden; font: 500 11px/1.1 Inter, "Helvetica Neue", Arial, sans-serif; letter-spacing: .22em; text-overflow: ellipsis; white-space: nowrap; }

.umbrella-detail__indicator {
  position: absolute;
  left: calc(var(--active-index) * 20%);
  top: 0;
  width: calc(20% - clamp(18px, 2.5vw, 52px) * .8);
  height: 1px;
  pointer-events: none;
  background: #071c2e;
  box-shadow: none;
  transition: left .82s cubic-bezier(.18,.82,.15,1), width .56s ease;
}

.umbrella-detail__mobile-copy { display: none; }

.umbrella-detail__live {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

/* Layout C — full-bleed editorial stage on desktop. */
@media (min-width: 981px) {
  .umbrella-detail__panel {
    display: block;
    background: #e9e8e3;
  }

  .umbrella-detail__header {
    position: absolute;
    inset: 0 0 auto;
    z-index: 8;
    grid-template-columns: auto auto 1fr auto auto;
    min-height: 88px;
    padding: 0 clamp(30px, 3.2vw, 60px);
    border-bottom-color: rgba(255, 255, 255, .24);
    color: #fff !important;
    pointer-events: none;
    transition: color .55s ease, border-color .55s ease;
  }

  .umbrella-detail__header > * { pointer-events: auto; }
  .umbrella-detail__back { display: none; }
  .umbrella-detail__close { color: inherit; }
  .umbrella-detail__brand { font-weight: 500; letter-spacing: .38em; }
  .umbrella-detail__brand,
  .umbrella-detail__count { color: inherit !important; }
  .umbrella-detail__system,
  .umbrella-detail__patent { color: rgba(255,255,255,.70) !important; }

  .umbrella-detail__panel.is-overview .umbrella-detail__header {
    color: #071c2e !important;
    border-bottom-color: rgba(7, 28, 46, .14);
  }
  .umbrella-detail__panel.is-overview .umbrella-detail__system,
  .umbrella-detail__panel.is-overview .umbrella-detail__patent {
    color: #657078 !important;
  }

  .umbrella-detail__body {
    position: absolute;
    inset: 0;
    display: block;
    min-height: 0;
    background: #deded9;
  }

  .umbrella-detail__body::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 3;
    pointer-events: none;
    background:
      linear-gradient(90deg, rgba(3,14,22,.90) 0%, rgba(3,14,22,.69) 19%, rgba(3,14,22,.30) 36%, rgba(3,14,22,0) 58%),
      linear-gradient(0deg, rgba(3,14,22,.74) 0%, rgba(3,14,22,.16) 23%, rgba(3,14,22,0) 48%);
    transition: opacity .6s ease;
  }

  .umbrella-detail__panel.is-overview .umbrella-detail__body::after {
    opacity: .24;
    background: linear-gradient(0deg, rgba(7,28,46,.40), transparent 32%);
  }

  .umbrella-detail__product,
  .umbrella-detail__shots,
  .umbrella-detail__shot {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    min-width: 0;
    border: 0;
  }

  .umbrella-detail__product {
    z-index: 1;
    overflow: hidden;
    opacity: 0;
    filter: none;
    pointer-events: none;
    transform: scale(1.018);
    transition: opacity .68s ease, transform 1.05s cubic-bezier(.2,.72,.15,1);
  }

  .umbrella-detail__product.is-active {
    flex: none;
    opacity: 1;
    pointer-events: auto;
    transform: scale(1);
  }

  .umbrella-detail__product::after { display: none; }

  .umbrella-detail__product img,
  .umbrella-detail__product.is-active img {
    width: 100%;
    height: 100%;
    padding: clamp(34px, 5vh, 66px) clamp(34px, 8vw, 150px) clamp(78px, 10vh, 108px);
    object-fit: contain;
    object-position: center;
    background: radial-gradient(circle at 50% 42%, #f8f8f5 0, #ecebe6 70%, #e2e1dc 100%);
    filter: saturate(.90) contrast(.99);
    transform: none;
  }

  .umbrella-detail__shots {
    z-index: 2;
    display: block;
    background: #dfe0dc;
    opacity: 1;
    transition: opacity .68s ease;
  }

  .umbrella-detail__panel.is-overview .umbrella-detail__shots {
    opacity: 0;
    pointer-events: none;
  }

  .umbrella-detail__shot,
  .umbrella-detail__shot:first-child {
    display: block;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    filter: none;
    pointer-events: none;
    transform: scale(1.025);
    transition: opacity .68s ease, transform 1.05s cubic-bezier(.2,.72,.15,1);
  }

  .umbrella-detail__shot.is-active {
    z-index: 2;
    flex: none;
    opacity: 1;
    pointer-events: auto;
    transform: scale(1);
  }

  .umbrella-detail__shot img,
  .umbrella-detail__shot.is-active img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: var(--shot-position);
    transform: none;
    filter: saturate(.88) contrast(.98);
  }

  .umbrella-detail__shot::before,
  .umbrella-detail__shot.is-active::before { display: none; }

  .umbrella-detail__footer {
    position: absolute;
    inset: 0;
    z-index: 7;
    min-height: 0;
    padding: 0;
    color: #fff !important;
    background: transparent;
    pointer-events: none;
  }

  .umbrella-detail__mobile-copy {
    position: absolute;
    left: clamp(32px, 4.2vw, 78px);
    bottom: 138px;
    display: block;
    width: min(440px, 34vw);
    min-height: 0;
    color: #fff;
    text-shadow: 0 2px 24px rgba(0,0,0,.22);
    transition: color .55s ease, text-shadow .55s ease;
  }

  .umbrella-detail__mobile-copy small {
    display: block;
    margin-bottom: 16px;
    font: 600 9px/1 Inter, "Helvetica Neue", Arial, sans-serif;
    letter-spacing: .30em;
  }

  .umbrella-detail__mobile-copy strong {
    display: block;
    margin-bottom: 13px;
    font: 300 clamp(30px, 3.5vw, 58px)/1 Inter, "Helvetica Neue", Arial, sans-serif;
    letter-spacing: .025em;
    text-transform: uppercase;
  }

  .umbrella-detail__mobile-copy p {
    max-width: 420px;
    margin: 0;
    color: rgba(255,255,255,.78);
    font: 400 clamp(12px, .92vw, 15px)/1.6 Inter, "Helvetica Neue", Arial, sans-serif;
  }

  .umbrella-detail__panel.is-overview .umbrella-detail__mobile-copy {
    color: #071c2e !important;
    text-shadow: none;
  }
  .umbrella-detail__panel.is-overview .umbrella-detail__mobile-copy p { color: #596b77 !important; }

  .umbrella-detail__options {
    --active-index: 0;
    position: absolute;
    left: clamp(30px, 3.2vw, 60px);
    right: clamp(30px, 3.2vw, 60px);
    bottom: 0;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    height: 102px;
    gap: clamp(18px, 2.6vw, 52px);
    pointer-events: auto;
  }

  .umbrella-detail__option {
    align-content: center;
    gap: 8px;
    height: 100%;
    padding: 13px 0 8px;
    border-top: 1px solid rgba(255,255,255,.40);
    color: rgba(255,255,255,.60);
    text-shadow: 0 1px 12px rgba(0,0,0,.22);
  }

  .umbrella-detail__option:hover,
  .umbrella-detail__option.is-active { color: #fff; }
  .umbrella-detail__option small { font-size: 8px; }
  .umbrella-detail__option strong { font-size: 10px; font-weight: 500; }

  .umbrella-detail__panel.is-overview .umbrella-detail__option {
    border-top-color: rgba(7,28,46,.22);
    color: #74818a;
    text-shadow: none;
  }
  .umbrella-detail__panel.is-overview .umbrella-detail__option:hover,
  .umbrella-detail__panel.is-overview .umbrella-detail__option.is-active { color: #071c2e; }

  .umbrella-detail__indicator {
    top: 0;
    height: 2px;
    background: #fff;
    box-shadow: none;
  }
  .umbrella-detail__panel.is-overview .umbrella-detail__indicator { background: #0797da; }
}

@media (max-width: 980px) {
  .umbrella-detail-view { display: block; padding: 0; background: #eeede8; }
  .umbrella-detail__panel { width: 100%; height: 100dvh; min-height: 0; background: #eeede8; box-shadow: none; transform: translateX(22px); }
  .umbrella-detail__header { grid-template-columns: 42px 1fr 42px; gap: 6px; min-height: 68px; padding: 0 12px; }
  .umbrella-detail__back { display: grid; position: relative; }
  .umbrella-detail__back::before,
  .umbrella-detail__back::after { content: ""; position: absolute; left: 14px; width: 14px; height: 1px; background: currentColor; transform-origin: left; }
  .umbrella-detail__back::before { transform: rotate(42deg); }
  .umbrella-detail__back::after { transform: rotate(-42deg); }
  .umbrella-detail__brand,
  .umbrella-detail__patent,
  .umbrella-detail__count { display: none; }
  .umbrella-detail__system { color: #071c2e; text-align: center; font-size: 14px; line-height:1.35; letter-spacing: .04em; }
  .umbrella-detail__body { display: block; min-height: 0; flex: 1; }
  .umbrella-detail__product,
  .umbrella-detail__shots { position: absolute; inset: 0; }
  .umbrella-detail__product { border: 0; opacity: 0; pointer-events: none; transform: none; transition: opacity .55s ease; }
  .umbrella-detail__panel.is-overview .umbrella-detail__product { opacity: 1; filter: none; }
  .umbrella-detail__product img { padding: 5vw 4vw 8vw; }
  .umbrella-detail__shots { display: block; background: #e7e7e3; }
  .umbrella-detail__panel.is-overview .umbrella-detail__shots { opacity: 0; pointer-events: none; }
  .umbrella-detail__shot,
  .umbrella-detail__shot:first-child {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
    opacity: 0;
    filter: saturate(.22) contrast(.92) brightness(1.06);
    pointer-events: none;
    transition: opacity .55s ease, filter .55s ease;
  }
  .umbrella-detail__shot.is-active { opacity: 1; filter: none; pointer-events: auto; }
  .umbrella-detail__shot img,
  .umbrella-detail__shot.is-active img { transform: scale(1.12); }
  .umbrella-detail__shot::before { height: 25%; }
  .umbrella-detail__shot::after { display: none; }
  .umbrella-detail__footer { min-height: 208px; padding: 20px 22px 18px; }
  .umbrella-detail__mobile-copy { display: block; min-height: 88px; }
  .umbrella-detail__mobile-copy small { display: block; margin-bottom: 12px; color: #43545f; font: 600 13px/1.2 Arial, sans-serif; letter-spacing: .06em; }
  .umbrella-detail__mobile-copy strong { display: block; margin-bottom: 12px; font: 500 clamp(20px, 5.6vw, 25px)/1.1 Arial, sans-serif; letter-spacing: .12em; }
  .umbrella-detail__mobile-copy p { max-width: 380px; margin: 0; color: #5b6971; font: 400 13px/1.55 Arial, sans-serif; }
  .umbrella-detail__options { height: 44px; gap: 10px; }
  .umbrella-detail__option { display: block; height: 44px; padding: 0; border-top-color: rgba(7, 28, 46, .20); color: #758089; text-align: center; }
  .umbrella-detail__option small { display: block; padding-top: 12px; font-size: 14px; line-height:1.3; }
  .umbrella-detail__option strong { display: none; }
  .umbrella-detail__indicator { width: calc(20% - 8px); box-shadow: -16px 0 0 rgba(7,151,218,.12); }
  .umbrella-detail__swipe { display: block; margin-top: 13px; color: #53616a; font: 500 12px/1.4 Arial, sans-serif; letter-spacing: .06em; text-align: center; }
}

@media (max-width: 380px) {
  .umbrella-detail__header { min-height: 60px; }
  .umbrella-detail__footer { min-height: 194px; padding: 16px 18px 13px; }
  .umbrella-detail__mobile-copy { min-height: 84px; }
  .umbrella-detail__mobile-copy strong { font-size: 19px; }
  .umbrella-detail__mobile-copy p { font-size: 14px; line-height: 1.45; }
}

@media (prefers-reduced-motion: reduce) {
  .umbrella-detail-view,
  .umbrella-detail__panel,
  .umbrella-detail__product,
  .umbrella-detail__product img,
  .umbrella-detail__shot,
  .umbrella-detail__shot img,
  .umbrella-detail__shot::after,
  .umbrella-detail__indicator { transition-duration: .01ms !important; animation: none !important; }
}
.umbrella-detail__panel .umbrella-detail__arrow { position:absolute; z-index:10; top:45%; width:76px; height:116px; padding:0; border:0; background:transparent; color:#657078; cursor:pointer; transform:translateY(-50%); }
.umbrella-detail__panel .umbrella-detail__prev { left:12px; }
.umbrella-detail__panel .umbrella-detail__next { right:12px; }
.umbrella-detail__panel .umbrella-detail__arrow::before { content:""; position:absolute; top:50%; left:50%; width:38px; height:38px; border-top:1px solid currentColor; border-left:1px solid currentColor; transform:translate(-35%,-50%) rotate(-45deg); }
.umbrella-detail__panel .umbrella-detail__next::before { transform:translate(-65%,-50%) rotate(135deg); }
.umbrella-detail__panel .umbrella-detail__arrow:hover { color:#22b6e8; }
.umbrella-detail__panel .umbrella-detail__arrow:focus-visible { outline:2px solid #22b6e8; outline-offset:-4px; }
@media(max-width:700px) {
 .umbrella-detail__panel .umbrella-detail__arrow { width:44px; height:80px; top:43%; }
 .umbrella-detail__panel .umbrella-detail__prev { left:0; } .umbrella-detail__panel .umbrella-detail__next { right:0; }
 .umbrella-detail__panel .umbrella-detail__arrow::before { width:22px; height:22px; }
}
@media(min-width:981px) { .umbrella-detail__panel:not(.is-overview) .umbrella-detail__arrow { color:rgba(255,255,255,.8); } }

/* New A/C photographs: preserve their lighting and blend the studio backdrop. */
.umbrella-detail__panel.is-ac-product .umbrella-detail__product img,
.umbrella-detail__panel.is-ac-photo .umbrella-detail__shot--canopy img { filter:none; }
@media(min-width:981px) {
  .umbrella-detail__panel.is-ac-photo.is-overview,
  .umbrella-detail__panel.is-ac-photo.is-overview .umbrella-detail__body { background:#e2e5ed; }
  .umbrella-detail__panel.is-ac-photo.is-overview .umbrella-detail__body::after { content:none; }
  .umbrella-detail__panel.is-ac-product .umbrella-detail__product img {
    position:absolute; left:50%; top:50%;
    width:min(92%,calc((92vh - 160px) * 4800 / 3584));
    height:auto; max-height:calc(100% - 130px); aspect-ratio:4800 / 3584;
    padding:0; object-fit:contain; background:transparent;
    transform:translate(-50%,-54%);
    mask-image:none;
  }
  .umbrella-detail__panel.is-ac-photo[data-slide-index="1"] .umbrella-detail__body::after {
    background:linear-gradient(180deg,rgba(3,14,22,.16),transparent 14%,transparent 75%,rgba(3,14,22,.25));
  }
  .umbrella-detail__panel.is-ac-photo[data-slide-index="1"] .umbrella-detail__mobile-copy {
    text-shadow:0 1px 4px rgba(0,0,0,.8);
  }
}
@media(max-width:980px) {
  .umbrella-detail__panel.is-ac-photo.is-overview .umbrella-detail__body { background:#e2e5ed; }
  .umbrella-detail__panel.is-ac-product .umbrella-detail__product img { padding:0; object-fit:contain; }
  .umbrella-detail__panel.is-ac-photo .umbrella-detail__shot--canopy img { transform:none; object-fit:contain; }
}
/* Keep outgoing image geometry stable; fade slides, not their wrapper twice. */
@media(min-width:981px) {
  .umbrella-detail__panel.is-ac-product .umbrella-detail__product,
  .umbrella-detail__panel.is-ac-product .umbrella-detail__shot { transform:none; transition:opacity .5s ease; }
  .umbrella-detail__panel.is-ac-product .umbrella-detail__product img { transition:none; }
  .umbrella-detail__panel.is-ac-product .umbrella-detail__shots { background:transparent; opacity:1; transition:none; }
}
@media(prefers-reduced-motion:reduce) {
  .umbrella-detail__panel.is-ac-product .umbrella-detail__product,
  .umbrella-detail__panel.is-ac-product .umbrella-detail__shot { transition:none; }
}
/* Crop the rain photograph to the canopy, without dark edge overlays. */
.umbrella-detail__panel.is-ac-product .umbrella-detail__shot--handle img {
  object-fit:cover; object-position:50% 0%;
  transform:scale(1.5); transform-origin:50% 0%; filter:none;
}
.umbrella-detail__panel.is-ac-product .umbrella-detail__options { grid-template-columns:repeat(4,minmax(0,1fr)); }
.umbrella-detail__panel.is-ac-product .umbrella-detail__indicator { display:none; }
.umbrella-detail__panel.is-ac-product .umbrella-detail__option.is-active { border-top:2px solid currentColor; }
.umbrella-detail__panel.is-light .umbrella-detail__options { grid-template-columns:repeat(5,minmax(0,1fr)); }
.umbrella-detail__panel.is-light .umbrella-detail__indicator { left:calc(var(--active-index) * 20%); width:calc(20% - 32px); }
.umbrella-detail__panel.is-light .umbrella-detail__shot img { object-fit:contain; object-position:center; transform:none; filter:none; background:#182022; }
.umbrella-detail__panel.is-light .umbrella-detail__shot--canopy img { background:#f5f6f8; }
.umbrella-detail__panel.is-light .umbrella-detail__product img { background:#fff; filter:none; }
.umbrella-detail__panel.is-ac-product .umbrella-detail__body::after,
.umbrella-detail__panel.is-ac-product .umbrella-detail__shot::before { display:none; }
.umbrella-detail__panel.is-ac-product .umbrella-detail__shot--airflow img {
  object-position:50% 50%; filter:none;
  transform:translateX(3.3%) scale(1.08);
}
.umbrella-detail__panel.is-light .umbrella-detail__body::after,
.umbrella-detail__panel.is-light .umbrella-detail__shot::before { display:none; }
@media(min-width:981px) {
  .umbrella-detail__panel.is-ac-product .umbrella-detail__shot--canopy img {
    transform:translateX(3.8%) scale(1.08);
  }
  .umbrella-detail__panel.is-light .umbrella-detail__product img {
    padding:12px 0 28px;
  }
  .umbrella-detail__panel.is-light .umbrella-detail__shot--canopy {
    background:#f5f6f8;
  }
  .umbrella-detail__panel.is-light .umbrella-detail__shot--canopy img {
    position:absolute; left:50%; top:50%;
    width:100%; height:100%; aspect-ratio:auto; object-fit:contain;
    transform:translate(-50%,-50%);
    mask-image:none;
  }
}

/* Narrow the desktop viewport, not the original photo canvas. */
@media(min-width:981px) {
  .umbrella-detail__panel {
    width:min(96vw,1800px,max(975px,min(138vh,1470px)));
    overflow:hidden;
  }
  .umbrella-detail__panel .umbrella-detail__body {
    left:50%; right:auto;
    width:min(96vw,1800px);
    transform:translateX(-50%);
  }
  .umbrella-detail__panel.is-ac-product .umbrella-detail__product {
    left:50%; right:auto;
    width:min(96vw,1800px,max(975px,min(138vh,1470px)));
    transform:translateX(-50%);
  }
  .umbrella-detail__panel.is-ac-product .umbrella-detail__product img {
    inset:0;
    width:100%; height:100%; max-height:none;
    aspect-ratio:auto; padding:0;
    object-fit:cover; object-position:center;
    transform:none; mask-image:none;
  }
}

/* Keep all letterboxing black without changing photograph sizing. */
body .umbrella-detail__panel .umbrella-detail__body,
body .umbrella-detail__panel .umbrella-detail__shot,
body .umbrella-detail__panel .umbrella-detail__shot img,
body .umbrella-detail__panel .umbrella-detail__product,
body .umbrella-detail__panel .umbrella-detail__product img {
  background:#000 !important;
}
body .umbrella-detail__panel .umbrella-detail__shots {
  background:transparent !important;
}
body .umbrella-detail__panel .umbrella-detail__arrow {
  color:#fff !important;
}
@media(min-width:981px) {
  body .umbrella-detail__panel .umbrella-detail__header *,
  body .umbrella-detail__panel .umbrella-detail__footer * {
    color:#fff !important;
    text-shadow:0 1px 3px rgba(0,0,0,.65);
  }
}
