.contest-apollos {--contest-bg:#fff3dc;--contest-ink:#15352b;--contest-accent:#a84100}
.contest-bmy {--contest-bg:#191514;--contest-ink:#fff9ee;--contest-accent:#ff9c40}
.contest-ipluto {--contest-bg:#08223b;--contest-ink:#fff8ed;--contest-accent:#ff9c40}
.contest-pair.apollos-promos,.contest-pair.brand-home-promos {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:stretch}
.contest-pair > :is(.apollos-promo,.brand-home-promo,.contest-hero) {grid-column:auto;min-width:0;width:auto}
.contest-hero,.contest-strip,.contest-dialog {background:var(--contest-bg);color:var(--contest-ink);border-radius:16px}
.contest-hero {position:relative;isolation:isolate;overflow:hidden;display:grid;align-items:center;min-height:300px}
.contest-hero > img {position:absolute;z-index:-2;right:0;top:0;width:62%;height:100%;object-fit:cover;object-position:right center}
.contest-hero::before {content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--contest-bg) 37%,transparent 78%)}
.contest-copy {padding:clamp(18px,3vw,42px);width:min(66%,650px)}
.contest-copy h1,.contest-copy h2 {color:inherit;line-height:1.08;margin:.45em 0;font-size:clamp(1.45rem,3.4vw,3.2rem)}
.contest-pair .contest-copy h2 {font-size:clamp(1.25rem,2vw,2rem)}
.contest-label,.contest-strip small {display:block;font-size:.82rem;font-weight:750}
.contest-code {display:inline-block;margin:.4rem 0;padding:.35em .6em;border-radius:7px;background:#fff2d6;color:#342010;font-weight:850;overflow-wrap:anywhere}
.contest-action {display:inline-flex;align-items:center;justify-content:center;margin:.3rem;padding:.45rem .8rem;border-radius:9px;border:1px solid currentColor;background:transparent;color:var(--contest-accent);font:inherit;font-weight:750;cursor:pointer;text-decoration:none}
.contest-strip {display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin:12px 0;padding:12px 15px;border:1px solid #a0855b44}
.contest-strip strong {display:block}
.contest-dialog {position:fixed;width:min(92vw,650px);max-height:88vh;border:0;padding:0;overflow:auto;box-shadow:0 18px 80px #0006}
.contest-dialog:not([open]) {display:none}
.contest-dialog::backdrop {background:#0b171ab0}
.contest-dialog > img {width:100%;height:auto;max-height:240px;object-fit:cover}
.contest-close {position:absolute;right:12px;top:12px;border:0;border-radius:50%;width:40px;height:40px;background:#fff;color:#162222;font-size:24px;cursor:pointer}
.contest-dialog-copy {padding:16px 24px}
.contest-steps {padding:24px 0}
.contest-steps ol,.contest-steps ul {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0;list-style:none}
.contest-steps li {padding:16px;border-radius:12px;background:#fff4e0;color:#243026;font-weight:650}
@media(max-width:720px) {
 .contest-pair.apollos-promos,.contest-pair.brand-home-promos,.contest-steps ol,.contest-steps ul {grid-template-columns:1fr}
 .contest-hero {min-height:0}
 .contest-hero > img {position:static;width:100%;height:auto;max-height:210px;z-index:auto}
 .contest-hero::before {display:none}
 .contest-copy {width:auto}
}

.contest-page-layout{display:grid;grid-template-columns:minmax(175px,225px) minmax(0,1fr);gap:14px;margin:12px 0 30px}
.contest-sidebar{display:grid;align-content:start;gap:16px;border:1px solid #eee4d7;padding:20px;border-radius:14px}
.contest-sidebar a{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none}
.contest-sidebar svg,.contest-step-icon svg{width:22px;height:22px;flex:none}
.contest-hero{min-height:370px}
.contest-hero>img{width:100%;object-position:right center}
.contest-hero::before{background:linear-gradient(90deg,var(--contest-bg) 4%,var(--contest-bg) 32%,transparent 72%)}
.contest-copy{position:relative;width:min(58%,680px);z-index:1}
.contest-copy h1{font-size:clamp(1.8rem,3.2vw,3.6rem);font-weight:900;letter-spacing:-.045em}
.contest-label{display:inline-block;background:#ffe1ac;color:#33230f;border-radius:50px;padding:6px 12px}
.contest-prize{position:absolute;right:26px;top:18px;z-index:2;background:#fff5dd;color:#17372a;border:2px solid #ff8617;border-radius:50px;padding:8px 14px;font-weight:850}
.contest-ticket{position:relative;display:grid;gap:2px;justify-items:center;width:fit-content;max-width:100%;padding:10px 23px;margin:12px 0 0;background:linear-gradient(135deg,#ff9d16,#ed5500);color:#fff;border:2px solid #fff0c8;box-shadow:0 5px 20px #a542002e;clip-path:polygon(0 0,100% 0,100% 30%,98% 40%,98% 60%,100% 70%,100% 100%,0 100%,0 70%,2% 60%,2% 40%,0 30%)}
.contest-ticket strong{font-size:clamp(1.1rem,2.55vw,2.6rem);line-height:1.1;overflow-wrap:anywhere}
.contest-pair .contest-hero{min-height:300px}
.contest-pair .contest-copy{width:67%;padding:20px}
.contest-pair .contest-ticket strong{font-size:clamp(1rem,1.6vw,1.55rem)}
.contest-pair .contest-prize{display:none}
.contest-pair .contest-action{margin-left:0}
.contest-steps{padding:12px 0 0}
.contest-steps ol{gap:8px;background:#fff8ec;padding:10px;border-radius:14px}
.contest-steps ol li{display:flex;align-items:center;gap:10px;background:transparent;padding:6px}
.contest-step-icon{display:grid;place-items:center;width:46px;height:46px;flex:none;background:#ffebc7;border-radius:14px;color:#be5000}
.contest-steps ul{gap:10px}
.contest-steps ul li{border-top:3px solid #f77d16}
.contest-mini-art{width:94px;height:58px;object-fit:cover;object-position:right;border-radius:8px;margin-left:auto}
.contest-strip .contest-action{white-space:nowrap}
@media(max-width:720px){
 .contest-page-layout{grid-template-columns:1fr}
 .contest-sidebar{display:none}
 .contest-hero,.contest-pair .contest-hero{min-height:0}
 .contest-copy,.contest-pair .contest-copy{width:auto}
 .contest-prize{right:12px;top:12px}
 .contest-mini-art{width:55px;height:42px}
 .contest-steps ol,.contest-steps ul{grid-template-columns:1fr}
}