/* Focused changes requested in the campaign review. */
.hero-brand{position:absolute;top:27px;left:5px;width:90px;height:auto;z-index:5}
.hero-copy{padding-bottom:78px}
.hero-device>img{height:100%;filter:drop-shadow(5px 7px 4px #42060b55)}
.hero-device::before{content:"";position:absolute;z-index:-1;background:#4d071a6b;border-radius:50%;filter:blur(7px);pointer-events:none}
.hero-device-r03a{left:4%;top:87px;width:72%;height:415px}
.hero-device-r03a>img{transform:rotate(65deg)}
.hero-device-r03a::before{left:5%;top:53%;width:65%;height:18px;transform:rotate(-12deg)}
.hero-device-kc03{top:344px;left:-10%;height:195px}
.hero-device-kc03>img{transform:rotate(4deg)}
.hero-device-kc03::before{left:12%;bottom:8%;width:65%;height:13px;transform:rotate(3deg)}
.hero-device-h02>img{transform:rotate(3deg)}
.hero-device-h02::before{left:15%;bottom:9%;width:73%;height:13px;transform:rotate(-9deg)}
@media(min-width:1700px){.hero-device-r03a{top:120px;height:470px}.hero-device-kc03{top:410px;height:215px}}
@media(max-width:1200px){
 .hero-brand{left:0;width:82px;top:24px}
 .hero-device-r03a{top:105px;height:350px;left:5%;width:76%}
 .hero-device-kc03{top:316px;left:-1%}
 .hero-device-h02{top:301px}
}
@media(max-width:960px){
 .hero-brand{width:72px;top:22px}
 .hero-device-r03a{height:300px;top:115px;left:4%;width:80%}
 .hero-device-kc03{top:290px;left:1%}
 .hero-device-h02{top:274px}
}
@media(max-width:680px){
 .hero-brand{width:60px;top:17px;left:0}
 .hero-copy{padding-top:90px;padding-bottom:0}
 .hero-offers{margin-bottom:9px}
 .hero-visual{margin-top:0;height:317px}
 .hero-device-r03a{left:calc(100% - 315px);top:-20px;width:285px;height:245px}
 .hero-device-r03a>img{height:100%}
 .hero-device-kc03{top:120px;left:calc(100% - 342px);width:146px;height:110px}
 .hero-device-h02{top:125px;left:calc(100% - 139px);right:auto;width:146px;height:120px}
 .hero-device>img{height:100%}
 .hero-device::before{filter:blur(4px)}
}
@media(max-width:360px){
 .hero{background-size:auto 305px}
 .hero-visual{height:280px}
 .hero-device-r03a{left:0;top:-10px;width:260px;height:225px}
 .hero-device-kc03{left:-2%;top:123px;width:126px;height:95px}
 .hero-device-h02{left:auto;right:0;top:120px;width:130px;height:108px}
}
.campaign-rules{margin-top:28px;margin-bottom:28px;background:#fff;border:1px solid #e9bf7c;border-radius:10px;overflow:hidden}
.campaign-footer-banner{width:100%;height:auto}
.rules-copy{padding:24px 28px 28px;color:#322421;font-size:13px;line-height:1.85;overflow-wrap:anywhere}
.rules-copy h2{margin:0 0 18px;color:#8e1821;font-size:20px;line-height:1.5}
.rules-copy h3{margin:18px 0 8px;font-size:15px;color:#6b2d28;line-height:1.7}
.rules-copy p{margin:8px 0;font-weight:400}
.rules-copy .rules-source{margin-top:22px;padding-top:14px;border-top:1px solid #ecdfd1;font-size:12px;color:#8b7064}
.rules-source a{color:#9e2530;text-decoration:underline;text-underline-offset:3px}
@media(min-width:1100px) and (max-width:1599px){.campaign-rules{width:min(1296px,calc(100% - 210px));margin-left:32px;margin-right:178px}}
@media(max-width:680px){.campaign-rules{margin-top:20px;margin-bottom:20px;border-radius:7px}.rules-copy{padding:20px 16px;font-size:12px;line-height:1.9}.rules-copy h2{font-size:18px}.rules-copy h3{font-size:14px}.rules-copy .rules-source{font-size:11px}}
/* Lu's marked section headings and closing campaign statement. */
.section-heading{
  height:auto;
  min-height:146px;
  padding:24px 28px;
}
.section-heading::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,transparent 16%,#73061224 36%,#73061224 64%,transparent 84%);
  pointer-events:none;
}
.section-heading>div{position:relative;z-index:1;max-width:100%}
.section-heading .section-kicker{
  margin-bottom:10px;
  color:#ffe8b6;
  font-size:12px;
  letter-spacing:2px;
  line-height:1.5;
}
.section-heading .section-kicker>span{font-size:14px}
.section-heading h2{
  color:#fff0c2;
  font-size:46px;
  font-weight:800;
  letter-spacing:3px;
  line-height:1.25;
  text-shadow:0 2px 0 #7c1220,0 4px 10px #65061660;
}
.service-section{padding-block:32px}
.service-inner{min-height:300px}
.service-inner>div{max-width:100%}
.service-inner .section-kicker{
  margin-bottom:16px;
  color:#ffe8b6;
  font-size:13px;
  letter-spacing:2px;
}
.service-inner h2{
  color:#fff0c2;
  font-size:48px;
  font-weight:800;
  letter-spacing:2px;
  line-height:1.5;
  text-shadow:0 2px 0 #7c1220,0 4px 12px #65061655;
}
.service-inner>div>p:last-child{
  color:#ffe2af;
  font-size:14px;
  line-height:1.6;
  letter-spacing:2px;
  margin-top:21px;
}
@media(max-width:960px){
  .section-heading{min-height:132px;padding:22px 24px}
  .section-heading h2{font-size:40px;letter-spacing:2px}
  .service-inner{min-height:280px}
  .service-inner h2{font-size:40px;letter-spacing:1.5px}
}
@media(max-width:680px){
  .section-heading{min-height:112px;padding:20px 14px}
  .section-heading .section-kicker{
    font-size:10px;
    letter-spacing:1px;
    gap:8px;
    margin-bottom:8px;
  }
  .section-heading .section-kicker>span{font-size:11px;padding-right:8px}
  .section-heading h2{
    font-size:clamp(25px,6.7vw,30px);
    letter-spacing:1px;
    line-height:1.3;
  }
  .service-section{padding-block:30px}
  .service-inner{min-height:216px;padding-inline:0}
  .service-inner .section-kicker{
    font-size:10px;
    letter-spacing:1px;
    margin-bottom:13px;
  }
  .service-inner h2{
    font-size:clamp(25px,6.9vw,30px);
    letter-spacing:.5px;
    line-height:1.55;
  }
  .service-inner>div>p:last-child{
    font-size:11px;
    letter-spacing:1px;
    margin-top:16px;
  }
}

