/* Client campaign layouts: keep copy clear of the product photography. */
@font-face{font-family:Poppins;src:url('./poppins-semibold.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}
.campaign.citizen .slide-copy{font-family:Poppins,Arial,sans-serif;font-weight:600}
.campaign.citizen .campaign-description{font-family:Poppins,Arial,sans-serif;font-weight:600;font-size:13px}
.campaign.citizen .campaign-title{font-family:Poppins,Arial,sans-serif;font-weight:600;line-height:1.22;font-size:34px}
.carousel:has(.campaign){height:560px;min-height:0;max-height:none}
.campaign{background:#121517}
.campaign .slide-layout{padding-block:35px}
.campaign .slide-copy{width:42%;max-width:500px;padding:0}
.campaign .slide-copy .eyebrow{font-size:10px;color:#c8cdd0;margin-bottom:26px}
.campaign-brand{margin:0 0 28px}
.campaign-brand img{width:240px;height:46px;object-fit:contain;object-position:left center}
.campaign-title{font:400 38px/1.13 Georgia,'Times New Roman',serif;color:white;max-width:440px;text-wrap:balance}
.campaign-description{font:400 14px/1.75 Arial,Helvetica,sans-serif;color:#d9dde0;margin:20px 0 26px;max-width:430px}
.campaign .slide-copy .button{background:transparent;border-color:#ffffff70;padding:12px 20px;min-height:46px}
.campaign .slide-copy .button:hover{background:#fff;color:#171c1e}
.campaign.citizen .slide-image-link{width:58%}
.campaign.citizen .slide-image-link{overflow:hidden}
.campaign.citizen .slide-image-link img{height:116.2%;top:-16.2%;object-fit:cover;object-position:center bottom}
.campaign.citizen .slide-shade{background:linear-gradient(90deg,transparent 46%,#121517 59%)}
.campaign-technology{display:flex;align-items:center;gap:18px;margin:0 0 27px}
.campaign-technology img{width:100px;height:18px;object-fit:contain}
.campaign-technology span{border-left:1px solid #ffffff50;padding-left:18px;font-size:9px;line-height:1.5;text-transform:uppercase;max-width:165px;color:#c8cdd0}
.campaign-anniversary{position:absolute;left:max(28px,calc((100% - 1280px)/2));bottom:30px;width:80px;height:75px;object-fit:contain}
.campaign.luminox .slide-layout{justify-content:flex-start}
.campaign.luminox .slide-copy{width:45%;max-width:530px}
.campaign.luminox .slide-image-link img{object-position:right center}
.campaign.luminox .slide-shade{background:linear-gradient(90deg,#060b1270,transparent 65%)}
.campaign.luminox .campaign-brand{margin-bottom:36px}
.campaign.luminox .campaign-brand img{width:100%;height:auto;max-width:390px}
.campaign.bulova .slide-image-link{width:56%}
.campaign.bulova .slide-image-link img{object-position:center 43%}
.campaign.bulova .slide-shade{background:linear-gradient(90deg,transparent 43%,#121517 56%)}
.campaign.bulova .slide-copy{width:42%}
.campaign.bulova .campaign-brand img{width:230px}
@media(min-width:1600px){.carousel:has(.campaign){height:610px}}
@media(min-width:721px) and (max-width:1050px){
  .campaign .slide-copy,.campaign.bulova .slide-copy{width:44%}
  .campaign-title{font-size:32px}
  .campaign.citizen .campaign-title{font-size:29px}
  .campaign-description{font-size:13px}
  .campaign-technology{gap:12px}
  .campaign-technology span{padding-left:12px}
}
@media(max-width:720px){
  .carousel:has(.campaign){height:690px;min-height:0;max-height:none}
  .campaign .slide-image-link,.campaign.citizen .slide-image-link,.campaign.bulova .slide-image-link{width:100%;height:310px}
  .campaign.citizen .slide-image-link img{object-fit:cover;object-position:center bottom;background:#202427}
  .campaign.bulova .slide-image-link img{object-position:center 43%}
  .campaign .slide-shade,.campaign.citizen .slide-shade,.campaign.bulova .slide-shade{background:linear-gradient(0deg,#121517 0%,#121517 54%,transparent 65%)}
  .campaign .slide-layout,.campaign.bulova .slide-layout{align-items:flex-end;padding-top:0;padding-bottom:28px}
  .campaign .slide-copy,.campaign.bulova .slide-copy{width:100%;max-width:none}
  .campaign .slide-copy .eyebrow,.campaign.bulova .slide-copy .eyebrow{margin-bottom:17px;font-size:9px}
  .campaign-brand{margin-bottom:20px}
  .campaign-brand img,.campaign.bulova .campaign-brand img{width:190px;height:35px}
  .campaign-title{font-size:30px;max-width:460px}
  .campaign.citizen .campaign-title{font-size:27px}
  .campaign-description{font-size:13px;line-height:1.65;margin:14px 0 20px;max-width:520px}
  .campaign-technology{margin-bottom:20px}
  .campaign-technology img{width:90px;height:auto}
  .campaign-technology span{font-size:8px;max-width:none}
  .campaign-anniversary{left:auto;right:20px;top:20px;bottom:auto;width:52px;height:49px}
  .campaign.luminox .slide-image-link{height:460px}
  .campaign.luminox .slide-image-link img{object-position:88% top}
  .campaign.luminox .slide-shade{background:linear-gradient(0deg,#080e16 0%,#080e16 30%,transparent 56%)}
  .campaign.luminox .slide-copy{width:100%;max-width:440px}
  .campaign.luminox .campaign-brand{margin-bottom:28px}
  .campaign.luminox .campaign-brand img{height:auto;max-width:330px}
}
@media(max-width:360px){
  .carousel:has(.campaign){height:720px}
  .campaign-title{font-size:28px}
  .campaign.citizen .campaign-title{font-size:25px}
  .campaign-technology{gap:10px}
  .campaign-technology span{padding-left:10px}
}
/* October review: preserve photography, move campaign copy to the left. */
@media(min-width:721px){
  .campaign .slide-layout{justify-content:flex-start}
  .campaign.citizen .slide-image-link,.campaign.bulova .slide-image-link{left:auto;right:0;width:60%}
  .campaign.citizen .slide-shade,.campaign.bulova .slide-shade{background:linear-gradient(90deg,#121517 0%,#121517 38%,transparent 58%)}
  .campaign-anniversary{left:auto;right:max(28px,calc((100% - 1280px)/2));bottom:26px}
  .campaign.luminox .slide-copy{width:48%;max-width:570px}
  .campaign.luminox .campaign-brand img{max-width:460px}
}
.campaign:not([hidden]) .slide-copy{animation:campaign-enter .65s ease both}
@keyframes campaign-enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.campaign:not([hidden]) .slide-copy{animation:none}}
.carousel:has(.campaign){margin-bottom:0}
.campaign:not([hidden]){animation:banner-reveal .7s ease both}
@keyframes banner-reveal{from{opacity:0}to{opacity:1}}
@media(max-width:720px){
  .carousel:has(.campaign){height:690px}
  .campaign .slide-layout,.campaign.bulova .slide-layout{padding-bottom:28px}
}
@media(max-width:360px){.carousel:has(.campaign){height:720px}}
@media(prefers-reduced-motion:reduce){.campaign:not([hidden]){animation:none}}
