.advertisement-creative {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 4 / 1;
  overflow: hidden;
  isolation: isolate;
  background: #101715;
  color: #fff;
  text-align: left;
}

.advertisement-photo {
  position: absolute;
  z-index: -2;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-height: none;
  aspect-ratio: auto;
  object-fit: cover;
  background: transparent;
  transition: transform 500ms ease;
}
.advertisement-placement .advertisement-photo { height: 100%; aspect-ratio: auto; object-fit: cover; background: transparent; }

.advertisement-placement a:hover .advertisement-photo,
.story-ad-placement a:hover .advertisement-photo { transform: scale(1.025); }

.advertisement-copy {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  width: 58%;
  height: 100%;
  padding: clamp(16px, 3.2vw, 38px) clamp(18px, 4vw, 54px);
}

.advertisement-brand { display: flex; align-items: center; min-height: 24px; margin-bottom: 13px; }
.advertisement-brand img { display: block; width: auto; max-width: 148px; max-height: 34px; object-fit: contain; }
.advertisement-brand span { color: inherit; font: 800 15px/1 var(--sans, Arial, sans-serif); letter-spacing: .19em; }
.advertisement-eyebrow { margin: 0 0 9px; color: currentColor; font: 700 9px/1.25 var(--sans, Arial, sans-serif); letter-spacing: .17em; text-transform: uppercase; opacity: .78; }
.advertisement-copy h3 { max-width: 570px; margin: 0; color: currentColor; font: 600 clamp(22px, 2.7vw, 37px)/1.05 var(--display, Georgia, serif); letter-spacing: 0; text-wrap: balance; }
.advertisement-deck { max-width: 460px; margin: 10px 0 0; color: currentColor; font: 500 clamp(10px, 1.05vw, 13px)/1.45 var(--sans, Arial, sans-serif); opacity: .88; }
.advertisement-cta { display: inline-flex; align-items: center; min-height: 31px; margin-top: 13px; padding: 0 14px; border: 1px solid currentColor; color: inherit; font: 700 9px/1 var(--sans, Arial, sans-serif); letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; }

.brand-callaway { background: #121b17; color: #fff; }
.brand-callaway::before { position: absolute; z-index: -1; inset: 0 34% 0 0; background: linear-gradient(90deg, #101a16 0%, #101a16 70%, rgba(16, 26, 22, .76) 100%); content: ''; }
.brand-callaway .advertisement-photo { left: 48%; width: 52%; object-position: center 42%; }
.brand-callaway .advertisement-copy { width: 61%; }
.brand-callaway .advertisement-brand span { color: #fff; }
.brand-callaway .advertisement-eyebrow { color: #d0ec54; }
.brand-callaway .advertisement-cta { border-color: #d0ec54; background: #d0ec54; color: #142018; }

.brand-monarch { background: #171b18; color: #fff; }
.brand-monarch::before { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgba(9, 14, 12, .94) 0%, rgba(9, 14, 12, .74) 38%, rgba(9, 14, 12, .05) 76%); content: ''; }
.brand-monarch .advertisement-photo { object-position: center 56%; }
.brand-monarch .advertisement-brand img { filter: brightness(0) invert(1); }
.brand-monarch .advertisement-eyebrow { color: #c4d2a7; }
.brand-monarch .advertisement-copy h3 { font-weight: 500; }
.brand-monarch .advertisement-cta { border-color: rgba(255, 255, 255, .8); background: rgba(12, 18, 14, .36); }

.brand-panerai { background: #05090a; color: #f3efe5; }
.brand-panerai::before { position: absolute; z-index: -1; inset: 0 40% 0 0; background: linear-gradient(90deg, #080c0d 0%, #080c0d 72%, rgba(8, 12, 13, .62) 100%); content: ''; }
.brand-panerai .advertisement-photo { left: 42%; width: 58%; object-position: center 48%; }
.brand-panerai .advertisement-copy { width: 58%; }
.brand-panerai .advertisement-brand span { font-size: 18px; letter-spacing: .28em; }
/* Preserve the complete official wordmark; generic ad-image ratios must not crop it. */
.brand-panerai .advertisement-brand { flex: 0 0 auto; padding: 3px 0; }
.advertisement-placement .brand-panerai .advertisement-brand img,
.story-ad-placement .brand-panerai .advertisement-brand img {
  width: 148px;
  max-width: 100%;
  height: auto;
  max-height: none;
  aspect-ratio: auto;
  object-fit: contain;
  background: transparent;
  filter: invert(1);
}
.brand-panerai .advertisement-eyebrow { color: #c8b56c; }
.brand-panerai .advertisement-copy h3 { font-family: Georgia, serif; font-weight: 400; }
.brand-panerai .advertisement-cta { border-color: #c8b56c; color: #e3ce7d; }

.brand-aviara { background: #c9d5cd; color: #102a22; }
.brand-aviara::before { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgba(243, 246, 238, .98) 0%, rgba(243, 246, 238, .94) 36%, rgba(243, 246, 238, .36) 64%, rgba(9, 39, 28, .02) 100%); content: ''; }
.brand-aviara .advertisement-photo { object-position: center 48%; }
.brand-aviara .advertisement-copy { width: 62%; }
.brand-aviara .advertisement-brand { min-width: 112px; min-height: 33px; margin-bottom: 9px; padding: 4px 8px; background: rgba(255, 255, 255, .82); }
.brand-aviara .advertisement-brand img { max-width: 105px; max-height: 27px; }
.brand-aviara .advertisement-eyebrow { color: #536f56; }
.brand-aviara .advertisement-copy h3 { font-family: Georgia, serif; font-weight: 400; }
.brand-aviara .advertisement-cta { border-color: #163a2e; background: #163a2e; color: #fff; }

.story-ad-placement .advertisement-creative { width: 100%; }
.story-ad-placement .advertisement-photo { max-height: none; aspect-ratio: auto; object-fit: cover; background: transparent; }
.story-ad-placement .advertisement-brand img { max-width: 148px; max-height: 34px; }

@media (max-width: 640px) {
  .advertisement-creative { min-height: 205px; aspect-ratio: 1.55 / 1; }
  .advertisement-copy { width: 76%; padding: 17px 18px; }
  .advertisement-brand { min-height: 18px; margin-bottom: 8px; }
  .advertisement-brand img { max-width: 112px; max-height: 26px; }
  .advertisement-brand span { font-size: 11px; }
  .advertisement-eyebrow { margin-bottom: 7px; font-size: 8px; }
  .advertisement-copy h3 { max-width: 260px; font-size: clamp(21px, 6vw, 29px); }
  .advertisement-deck { max-width: 260px; margin-top: 7px; font-size: 10px; }
  .advertisement-cta { min-height: 27px; margin-top: 9px; padding-inline: 10px; font-size: 8px; }
  .brand-callaway .advertisement-photo { left: 38%; width: 62%; opacity: .76; }
  .brand-callaway::before { right: 15%; }
  .brand-monarch::before { background: linear-gradient(90deg, rgba(9, 14, 12, .95), rgba(9, 14, 12, .72) 57%, rgba(9, 14, 12, .12)); }
  .brand-panerai .advertisement-photo { left: 34%; width: 66%; opacity: .72; }
  .brand-panerai::before { right: 13%; }
  .brand-aviara .advertisement-copy { width: 76%; }
  .brand-aviara::before { background: linear-gradient(90deg, rgba(243, 246, 238, .97), rgba(243, 246, 238, .86) 62%, rgba(243, 246, 238, .13)); }
}

@media (prefers-reduced-motion: reduce) {
  .advertisement-photo { transition: none; }
}

/* Complete brand marks over full-bleed photography, without banner-image boxes.
   Panerai's separately reviewed artwork intentionally retains its existing layout. */
.advertisement-creative:is(.brand-callaway, .brand-monarch, .brand-aviara) {
  color: #fff;
  min-height: 280px;
}
.advertisement-creative:is(.brand-callaway, .brand-monarch, .brand-aviara) .advertisement-photo {
  left: 0;
  width: 100%;
  opacity: 1;
}
.advertisement-creative:is(.brand-callaway, .brand-monarch, .brand-aviara)::before {
  inset: 0;
  background: linear-gradient(90deg, rgba(7, 15, 12, .96) 0%, rgba(7, 15, 12, .82) 38%, rgba(7, 15, 12, .22) 76%);
}
.advertisement-creative:is(.brand-callaway, .brand-monarch, .brand-aviara) .advertisement-copy {
  width: 64%;
  min-height: 280px;
  padding-block: 18px;
}
.advertisement-creative:is(.brand-callaway, .brand-monarch, .brand-aviara) .advertisement-brand {
  flex: 0 0 auto;
  width: fit-content;
  min-width: 0;
  min-height: 0;
  padding: 0;
  margin-bottom: 10px;
  background: transparent;
}
.advertisement-creative:is(.brand-callaway, .brand-monarch, .brand-aviara) .advertisement-brand img {
  display: block;
  width: auto;
  height: 74px;
  max-width: 270px;
  max-height: none;
  aspect-ratio: auto;
  object-fit: contain;
  background: transparent;
  filter: brightness(0) invert(1);
}
.advertisement-creative.brand-aviara .advertisement-brand img { height: 90px; }
.advertisement-creative.brand-aviara .advertisement-eyebrow { color: #e1d19a; }
.advertisement-creative.brand-aviara .advertisement-cta {
  color: #fff;
  border-color: rgba(255,255,255,.8);
  background: transparent;
}
.story-ad-placement .advertisement-creative:is(.brand-callaway, .brand-monarch, .brand-aviara) {
  min-height: 300px;
}
.story-ad-placement .advertisement-creative:is(.brand-callaway, .brand-monarch, .brand-aviara) .advertisement-copy {
  width: 88%;
  min-height: 300px;
  padding-inline: 24px;
}
@media (max-width: 640px) {
  .advertisement-creative:is(.brand-callaway, .brand-monarch, .brand-aviara) {
    min-height: 300px;
    aspect-ratio: auto;
  }
  .advertisement-creative:is(.brand-callaway, .brand-monarch, .brand-aviara) .advertisement-copy {
    width: 88%;
    min-height: 300px;
    padding: 20px 18px;
  }
  .advertisement-creative:is(.brand-callaway, .brand-monarch, .brand-aviara) .advertisement-brand img {
    height: 66px;
    max-width: min(230px, 100%);
  }
  .advertisement-creative.brand-aviara .advertisement-brand img { height: 94px; }
}
