/* One campaign composition, shared by the home placement, rules page and popup. */
.ct-hero{position:relative;isolation:isolate;overflow:hidden;min-height:0;padding:0;border:1px solid #35343c;border-radius:6px;background:#1b1c21;color:#f4f3f7}
.ct-keyvisual{position:absolute;inset:0 0 0 auto;z-index:-3;display:block;width:58%;height:100%;object-fit:cover;object-position:72% 40%}
.ct-hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#1b1c21 36%,#1b1c21e6 49%,#1b1c2126 83%)}
.ct-hero-copy{position:relative;z-index:1;max-width:650px;padding:42px 44px 28px}
.ct-hero .ct-eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 24px;color:#d7cde8;font-size:10px;letter-spacing:.07em}
.ct-mark{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;background:#a88ad5;color:#1c1725;font-size:17px;letter-spacing:-1px}
.ct-hero h1{margin:0 0 20px;font-size:clamp(36px,4vw,52px);font-weight:700;line-height:1.18;letter-spacing:-.05em;word-break:keep-all}
.ct-hero h1>span{display:inline-block;margin-bottom:8px;font-size:.55em;font-weight:500;letter-spacing:-.02em;color:#c4b8d4}
.ct-lead{margin:0 0 8px;font-size:17px;font-weight:500;letter-spacing:-.025em;line-height:1.65;word-break:keep-all}
.ct-hero .ct-muted{max-width:390px;margin:0;color:#b9b3c2;font-size:13px;line-height:1.75;word-break:keep-all}
.ct-hero-date{display:flex;align-items:center;flex-wrap:wrap;gap:13px;margin:24px 0 10px}
.ct-hero-date>span{font-size:12px;color:#b7aec2}
.ct-hero-date strong{font-size:22px;font-weight:550;line-height:1.5;letter-spacing:.01em;font-variant-numeric:tabular-nums}
.ct-hero-date i{margin-inline:3px;color:#a99bb8;font-style:normal;font-weight:400}
.ct-hero-date small{font-size:11px;color:#b1a8bd}
.ct-hero .ct-button{min-width:224px;margin-top:6px;justify-content:space-between;box-shadow:none}
.ct-hero-condition{margin:14px 0 0;color:#b9b1c4;font-size:12px;line-height:1.7}
.ct-hero-condition span{margin-inline:8px;color:#8e819e}
.ct-visual-caption{display:none}
.ct-prizes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0}
.ct-prizes>div{min-width:0;padding:0 24px;border-left:1px solid #48434f}
.ct-prizes>div:first-child{padding-left:0;border-left:0}
.ct-prizes small{display:block;margin-bottom:5px;color:#bfb5cc;font-size:12px;line-height:1.5}
.ct-prizes strong{font-size:32px;font-weight:650;letter-spacing:-.045em;line-height:1.2;font-variant-numeric:tabular-nums}
.ct-prizes strong span{margin-left:5px;font-size:12px;font-weight:500;letter-spacing:-.02em;color:#d2c9dc}
.ct-prizes>div:first-child strong{color:#dec8ff}
.ct-awards{position:relative;z-index:1;max-width:740px;margin:0 44px;padding:21px 0;border-top:1px solid #66586f80}
.ct-support-callout{position:relative;z-index:1;margin:0 44px 28px;padding:17px 0 0;border:0;border-top:1px solid #66586f80;background:transparent;color:#e3d8f0;line-height:1.65}
.ct-support-callout strong{font-size:14px;font-weight:600}
.ct-support-callout p{max-width:780px;margin:7px 0 0;color:#bcb1c8;font-size:12px;line-height:1.8}
/* A visible campaign, without taking over the catalogue's first screen. */
.ct-compact{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;min-height:252px;border:1px solid #3c3646;border-radius:6px;background:#222129;color:#eeeaf5}
.ct-compact-copy{position:relative;z-index:1;width:64%;max-width:690px;padding:27px 32px}
.ct-compact-copy>span{display:block;color:#bda9db;font-size:11px;font-weight:550;line-height:1.4;letter-spacing:.015em}
.ct-compact h2{margin:9px 0 10px;font-size:31px;font-weight:650;line-height:1.25;letter-spacing:-.045em}
.ct-compact h2 em{color:#d9bfff;font-style:normal}
.ct-compact p{margin:5px 0;font-size:14px;line-height:1.6;color:#d8d3e1}
.ct-compact .ct-compact-support{margin-top:8px;font-size:13px;color:#bfb6ce}
.ct-compact-support strong{color:#e8dff5;font-weight:600}
.ct-compact .ct-compact-meta{max-width:430px;font-size:12px;color:#aca4b8}
.ct-compact a{display:inline-flex;align-items:center;min-height:36px;margin-top:9px;color:#d5bcff;font-size:13px;font-weight:600;line-height:1.5;text-decoration:none;text-underline-offset:4px}
.ct-compact a:hover{text-decoration:underline}
.ct-compact>img{position:absolute;inset:0 0 0 auto;z-index:-1;display:block;width:38%;height:100%;object-fit:cover;object-position:73% 25%;mask-image:linear-gradient(90deg,transparent,#000 25%)}
/* Campaign dialog: the image is an illustration; rules and actions remain readable. */
/* The home campaign and sponsor benefits share one quiet, readable module. */
.ct-home-combined{min-width:0;max-width:100%;border:1px solid #42384e;border-radius:7px;background:#24212b;color:#f4f0f8}
.ct-home-combined p{margin:0}.ct-home-campaign{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,1fr);align-items:center;gap:28px;min-height:194px;padding:22px 30px}
.ct-home-copy,.ct-home-awards{position:relative;z-index:1;min-width:0}.ct-home-date{color:#c5b6d9;font-size:13px;line-height:1.5;font-variant-numeric:tabular-nums}.ct-home-combined h2{margin:5px 0 8px;font-size:30px;line-height:1.25;font-weight:650;letter-spacing:-.04em;word-break:keep-all}.ct-home-rules{color:#c3bbce;font-size:13px;line-height:1.6}
.ct-home-action{display:inline-flex;align-items:center;gap:22px;min-height:36px;margin-top:10px;color:#e0c7ff;font-size:13px;font-weight:650;line-height:1.5;text-decoration:none}.ct-home-action:hover{text-decoration:underline;text-underline-offset:4px}.ct-home-action:focus-visible{outline:2px solid #c7aaff;outline-offset:5px}
.ct-home-entry{display:flex;align-items:center;gap:12px 20px;flex-wrap:wrap}.ct-home-entry .ct-home-action{margin-top:0;gap:12px}
.ct-home-awards>p{font-size:14px;line-height:1.7}.ct-home-awards .ct-home-grand{display:flex;align-items:baseline;gap:14px;margin-bottom:3px;color:#e2d6f1;font-size:16px}.ct-home-grand>strong{color:#ead8ff;font-size:38px;font-weight:650;line-height:1.2;letter-spacing:-.04em}.ct-home-grand>strong>span{margin-left:5px;font-size:17px;font-weight:500}.ct-home-awards .ct-home-support{margin-top:12px;color:#c8bfd4;font-size:13px}.ct-home-support>strong{color:#f4eafd}.ct-home-tax{display:block;color:#a99db8;font-size:13px}.ct-home-art{position:absolute;inset:0 0 0 auto;z-index:-1;width:32%;height:100%;object-fit:cover;object-position:73% 25%;opacity:.25;mask-image:linear-gradient(90deg,transparent,#000 70%);border-radius:0 6px 0 0}
.ct-home-sponsor{display:grid;grid-template-columns:230px minmax(0,1fr);gap:28px;align-items:center;padding:17px 30px 18px;border-top:1px solid #ffffff1a;background:#1d1e23;border-radius:0 0 6px 6px}.ct-home-sponsor-brand{display:flex;flex-wrap:wrap;align-items:center;gap:9px 12px;min-width:0}.ct-home-sponsor-brand>span{width:100%;color:#aaa3b4;font-size:13px;line-height:1.4}.ct-home-sponsor-brand img{display:block;height:auto;object-fit:contain;max-width:100%}.ct-home-company{width:170px}.ct-home-easypass{display:flex;align-items:center;gap:7px;min-width:0}.ct-home-easypass-icon{width:30px;flex-shrink:0}.ct-home-easypass-logo{width:190px;min-width:0}
.ct-home-sponsor-copy{min-width:0}.ct-home-sponsor-copy h3{margin:0 0 9px;color:#e5dbea;font-size:14px;font-weight:600;line-height:1.45;word-break:keep-all}.ct-home-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;margin:0}.ct-home-benefits>div{min-width:0}.ct-home-benefits dt{margin:0 0 3px;color:#aaa2b6;font-size:13px;line-height:1.4}.ct-home-benefits dd{margin:0;color:#d8d1e1;font-size:13px;line-height:1.55;word-break:keep-all}.ct-home-benefits dd strong{color:#eee5f8;font-weight:600}.ct-home-sponsor-copy .ct-home-sponsor-description{margin-top:10px;color:#a9a2b3;font-size:13px;line-height:1.5;word-break:keep-all}
.ct-home-sponsor{color:inherit;text-decoration:none}.ct-home-sponsor:hover{background:#232229}.ct-home-sponsor:focus-visible{outline:2px solid #c7aaff;outline-offset:3px}.ct-home-sponsor-link{display:block;margin-top:6px;color:#d5bcff;font-size:13px;font-weight:550;line-height:1.5}
.ct-home-sponsor-heading{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 18px;margin-bottom:9px}.ct-home-sponsor-heading h3{margin:0}.ct-home-sponsor-heading .ct-home-sponsor-link{margin:0;white-space:nowrap}
.ct-home-sponsor-copy{overflow-wrap:anywhere}
.ct-home-mobile-sponsor{display:none}
@media(max-width:900px){.ct-home-campaign{gap:20px;padding:22px 24px;grid-template-columns:minmax(0,1.2fr) minmax(230px,1fr)}.ct-home-combined h2{font-size:26px}.ct-home-sponsor{padding-inline:24px;grid-template-columns:210px minmax(0,1fr);gap:20px}.ct-home-benefits{gap:12px}}
@media(max-width:650px){.ct-home-campaign{min-height:0;grid-template-columns:minmax(0,1fr);gap:11px;padding:18px}.ct-home-combined h2{font-size:24px;margin:4px 0 5px}.ct-home-date,.ct-home-rules,.ct-home-action{font-size:13px}.ct-home-action{min-height:36px;margin-top:6px}.ct-home-awards{display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 14px}.ct-home-awards .ct-home-grand{gap:9px;margin:0}.ct-home-grand>strong{font-size:28px}.ct-home-grand>strong>span{font-size:14px}.ct-home-awards>p{font-size:13px}.ct-home-awards .ct-home-support{width:100%;margin-top:2px;font-size:13px}.ct-home-tax{display:inline;margin-left:8px;font-size:13px}.ct-home-art{width:44%;opacity:.17;border-radius:0 6px 0 0}.ct-home-sponsor{grid-template-columns:minmax(0,1fr);gap:12px;padding:15px 18px 17px}.ct-home-sponsor-brand{gap:8px 15px}.ct-home-sponsor-brand>span{width:auto}.ct-home-company{width:140px}.ct-home-easypass-icon{width:26px}.ct-home-easypass-logo{width:150px}.ct-home-easypass{gap:6px}.ct-home-sponsor-copy h3{font-size:13px;line-height:1.45;margin-bottom:8px}.ct-home-benefits{gap:12px}.ct-home-benefits dt,.ct-home-benefits dd{font-size:13px}.ct-home-benefits dd strong{display:block}.ct-home-sponsor-copy .ct-home-sponsor-description{margin-top:9px;font-size:13px;line-height:1.45}}
@media(max-width:650px){
 .ct-home-campaign{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:14px 18px}
 .ct-home-copy{display:contents}.ct-home-date,.ct-home-combined h2{grid-column:1/-1}.ct-home-combined h2{margin:0;font-size:24px;line-height:1.3}.ct-home-date{line-height:1.5}
 .ct-home-entry{grid-column:1;min-width:0}.ct-home-entry .ct-home-rules,.ct-home-awards>p:not(.ct-home-grand){display:none}.ct-home-entry .ct-home-action{min-height:44px;margin:0;gap:7px;line-height:1.4}
 .ct-home-awards{grid-column:2;align-self:center;gap:0}.ct-home-awards .ct-home-grand{gap:7px;font-size:13px}.ct-home-grand>strong{font-size:28px}.ct-home-grand>strong>span{font-size:13px;margin-left:3px}
 .ct-home-sponsor{display:none}.ct-home-mobile-sponsor{display:block;min-width:0;padding:10px 18px 2px;border-top:1px solid #ffffff1a;border-radius:0 0 6px 6px;background:#1d1e23}
 .ct-home-mobile-logos{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:8px 14px;min-width:0;min-height:0;color:#bdb1ce;text-decoration:none}.ct-home-mobile-logos:focus-visible,.ct-home-mobile-details summary:focus-visible{outline:2px solid #c7aaff;outline-offset:3px}
 .ct-home-mobile-label{grid-column:1/-1;color:#aaa3b4;font-size:13px;line-height:1.3}.ct-home-mobile-company{display:flex;align-items:center;width:100%;max-width:140px;min-width:0;min-height:26px}.ct-home-mobile-company>img{display:block;width:100%;height:auto;max-height:26px;object-fit:contain}
 .ct-home-mobile-easypass{display:flex;align-items:center;gap:5px;width:100%;max-width:140px;min-width:0;min-height:26px}.ct-home-mobile-easypass img{display:block;height:auto;object-fit:contain}.ct-home-mobile-icon{width:22px;flex-shrink:0}.ct-home-mobile-wordmark{width:calc(100% - 27px);min-width:0}.ct-home-mobile-external{position:absolute;top:0;right:0;font-size:13px}
 .ct-home-mobile-details{min-width:0;margin-top:5px}.ct-home-mobile-details summary{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;min-height:44px;list-style:none;cursor:pointer;color:#d5bcff;font-size:13px;line-height:1.5}.ct-home-mobile-details summary::-webkit-details-marker{display:none}.ct-home-mobile-details[open] summary>span{transform:rotate(180deg)}
 .ct-home-mobile-benefit-body{padding:5px 0 14px;min-width:0;font-size:13px;line-height:1.6;color:#bfb6cb;overflow-wrap:anywhere}.ct-home-mobile-benefit-body .ct-home-benefits{grid-template-columns:minmax(0,1fr);gap:12px}.ct-home-mobile-benefit-body .ct-home-benefits dd strong{display:inline}.ct-home-mobile-benefit-body>p{margin-top:10px}.ct-home-mobile-benefit-body strong{color:#eee5f8}
}
.ct-popup{display:grid;grid-template-columns:180px minmax(0,1fr);column-gap:24px;align-items:start;padding:0;color:#f1edf6}
.ct-popup>*{grid-column:2;min-width:0}
.ct-popup-visual{position:relative;grid-column:1;grid-row:1/10;align-self:stretch;overflow:hidden;min-height:430px;margin:0;border-radius:4px;background:#25222b}
.ct-popup-visual img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:73% 20%}
.ct-popup-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#17151d99,transparent 50%)}
.ct-popup-visual>span{position:absolute;z-index:1;bottom:16px;left:15px;color:#e3d3fa;font-size:10px;letter-spacing:.08em}
.ct-popup .ct-eyebrow{margin:0 0 10px;font-size:9px;letter-spacing:.07em;color:#baacd1}
.ct-popup h2{margin:0 0 10px;font-size:27px;font-weight:650;line-height:1.3;letter-spacing:-.045em;word-break:keep-all}
.ct-popup>p{margin:7px 0;color:#c2baca;font-size:12px;line-height:1.75}
.ct-popup .ct-prizes{margin:14px 0;gap:0}
.ct-popup .ct-prizes>div{padding-inline:11px}
.ct-popup .ct-prizes>div:first-child{padding-left:0}
.ct-popup .ct-prizes small{font-size:11px}
.ct-popup .ct-prizes strong{font-size:27px}
.ct-popup .ct-prizes strong span{margin-left:3px;font-size:10px}
.ct-popup .ct-support-callout{margin:0;padding:13px 0 7px;border-color:#45404d}
.ct-popup .ct-support-callout strong{font-size:13px}
.ct-popup .ct-support-callout p{margin-top:6px;font-size:11px;line-height:1.75}
.ct-popup .ct-button{display:flex;margin-top:9px;padding-inline:12px;font-size:13px}
.ct-popup .ct-muted{font-size:11px;color:#a59cae}
.ct-popup .ct-check{align-items:center;min-height:44px;margin:9px 0 0;padding-top:9px;border-top:1px solid #45404d;font-size:12px;color:#c3bbcD}
.ct-popup .ct-check input{width:19px;height:19px;margin:0}
@media(max-width:900px){.ct-hero-copy{padding:34px 32px 25px;max-width:600px}.ct-hero h1{font-size:43px}.ct-awards{margin-inline:32px}.ct-support-callout{margin-inline:32px}.ct-compact-copy{padding:26px}.ct-compact h2{font-size:29px}}
@media(max-width:650px){.ct-keyvisual{width:100%;height:100%;object-position:73% 25%;opacity:.32}.ct-hero-shade{background:linear-gradient(90deg,#1b1c21e6,#1b1c21aa)}.ct-hero-copy{max-width:none;padding:27px 22px 22px}.ct-hero .ct-eyebrow{margin-bottom:20px;font-size:9px}.ct-mark{width:23px;height:23px;font-size:15px}.ct-hero h1{font-size:34px;margin-bottom:17px;line-height:1.2}.ct-hero h1>span{font-size:.55em;margin-bottom:6px}.ct-lead{font-size:15px}.ct-hero .ct-muted{font-size:12px}.ct-hero-date{gap:10px;margin:19px 0 8px}.ct-hero-date strong{font-size:21px}.ct-hero-date small{font-size:10px}.ct-hero .ct-button{width:100%;min-width:0;justify-content:center;gap:24px}.ct-hero-condition{margin-top:12px;font-size:11px}.ct-hero-condition span{margin-inline:4px}.ct-awards{margin-inline:22px;padding:19px 0}.ct-awards .ct-prizes>div{padding-inline:16px}.ct-awards .ct-prizes>div:first-child{padding-left:0}.ct-prizes small{font-size:11px}.ct-prizes strong{font-size:28px}.ct-prizes strong span{font-size:10px;margin-left:4px}.ct-support-callout{margin:0 22px 22px;padding-top:15px}.ct-support-callout strong{font-size:13px}.ct-support-callout p{font-size:11px}.ct-compact{min-height:250px}.ct-compact-copy{width:calc(100% - 100px);max-width:none;padding:21px 18px}.ct-compact-copy>span{font-size:10px}.ct-compact h2{font-size:25px;line-height:1.3}.ct-compact p{font-size:12px}.ct-compact .ct-compact-support{font-size:12px}.ct-compact .ct-compact-meta{font-size:11px;line-height:1.65}.ct-compact a{font-size:12px}.ct-compact>img{width:115px;object-position:73% 20%;opacity:.8;mask-image:linear-gradient(90deg,transparent,#000 30%)}.ct-popup{display:block}.ct-popup-visual{height:120px;min-height:0;margin:0 0 18px}.ct-popup-visual img{object-position:73% 20%}.ct-popup-visual>span{bottom:12px;font-size:9px}.ct-popup .ct-eyebrow{font-size:9px;margin-bottom:9px}.ct-popup h2{font-size:26px}.ct-popup .ct-prizes{margin-block:15px}.ct-popup .ct-prizes>div{padding-inline:16px}.ct-popup .ct-prizes>div:first-child{padding-left:0}.ct-popup .ct-prizes strong{font-size:28px}.ct-popup .ct-support-callout{padding-block:12px 7px}.ct-popup .ct-support-callout strong{font-size:13px}.ct-popup .ct-button{font-size:14px}.ct-popup .ct-check{font-size:12px}}
@media(max-width:360px){.ct-compact-copy{width:calc(100% - 78px);padding-inline:15px}.ct-compact>img{width:90px}.ct-compact h2{font-size:23px}.ct-popup h2{font-size:24px}.ct-popup .ct-prizes>div{padding-inline:10px}.ct-popup .ct-prizes strong{font-size:25px}}

/* The official sponsor description stays prominent on desktop and mobile. */
.ct-home-combined .ct-home-sponsor-description{color:#a66dff;font-size:14px;font-weight:700;line-height:1.65}
