/* RUXSORA · Celebrity Call — responsive contest showcase */
.giveaway{
  position:relative;
  overflow:hidden;
  background:var(--bg);
  color:var(--text);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  isolation:isolate;
  /* Override the global .pad so this section scales independently. */
  padding-block:clamp(64px,7vw,112px);
  padding-inline:clamp(18px,5vw,80px);
}
.giveaway:before{content:"";position:absolute;inset:-20%;background:radial-gradient(circle at 82% 10%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 28%),radial-gradient(circle at 8% 88%,color-mix(in srgb,var(--accent) 10%,transparent),transparent 25%);pointer-events:none;z-index:-2}
.giveaway-noise{position:absolute;inset:0;opacity:.14;pointer-events:none;z-index:-1;background-image:repeating-linear-gradient(0deg,transparent 0 5px,rgba(255,255,255,.028) 6px)}
.giveaway-shell{width:min(1380px,100%);margin-inline:auto;min-width:0}
.giveaway-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;border-bottom:1px solid var(--line);padding-bottom:20px}
.giveaway-head .eyebrow{color:var(--text)}.giveaway-index{margin:0;font:600 9px/1 var(--body);letter-spacing:.2em;color:var(--muted)}
.giveaway-status{display:inline-flex;margin-top:12px;padding:7px 10px;border:1px solid var(--line);font:700 8px/1 var(--body);letter-spacing:.18em;color:var(--text);white-space:nowrap}
.giveaway-status[data-state="open"]{border-color:var(--accent);color:var(--accent);box-shadow:0 0 30px color-mix(in srgb,var(--accent) 16%,transparent)}
.giveaway-status[data-state="revealed"]{background:var(--accent);border-color:var(--accent);color:var(--text)}.giveaway-status[data-state="closed"]{color:var(--muted)}

.giveaway-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);align-items:end;gap:clamp(38px,6vw,92px);padding:clamp(58px,7vw,104px) 0}
.giveaway-copy{min-width:0}
.giveaway-copy h2{margin:0;max-width:11ch;font:900 clamp(48px,6.9vw,108px)/.87 var(--display);letter-spacing:-.065em;text-transform:uppercase;color:var(--text);overflow-wrap:break-word}
.giveaway-description{max-width:58ch;margin:24px 0 0;color:var(--muted);font:400 clamp(12px,1vw,14px)/1.7 var(--body)}
.giveaway-prize{margin-top:clamp(34px,4vw,48px);padding-top:18px;border-top:1px solid var(--line);max-width:680px}.giveaway-prize>span,.giveaway-facts span,.giveaway-step{display:block;font:700 8px/1 var(--body);letter-spacing:.18em;color:var(--accent);text-transform:uppercase}.giveaway-prize strong{display:block;margin-top:11px;font:600 clamp(21px,2.5vw,36px)/1.08 var(--body);letter-spacing:-.035em;overflow-wrap:anywhere}.giveaway-prize p{margin:11px 0 0;color:var(--muted);font-size:12px;line-height:1.55}
.giveaway-facts{align-self:end;display:grid;border-top:1px solid var(--line);min-width:0}.giveaway-facts>div{display:grid;grid-template-columns:minmax(72px,90px) minmax(0,1fr);gap:16px;padding:17px 0;border-bottom:1px solid var(--line);align-items:center}.giveaway-facts strong{font:700 clamp(12px,1.15vw,14px)/1.25 var(--body);text-align:right;overflow-wrap:anywhere;color:var(--text)}

.giveaway-rules-block{display:grid;grid-template-columns:minmax(190px,.42fr) minmax(0,1fr);gap:clamp(30px,6vw,88px);padding:clamp(44px,5.5vw,76px) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.giveaway-rules-copy h3,.giveaway-contestants-head h3{margin:14px 0 0;font:700 clamp(29px,3.5vw,52px)/.98 var(--body);letter-spacing:-.05em;color:var(--text);overflow-wrap:anywhere}
.giveaway-condition-list{list-style:none;counter-reset:gcond;margin:0;padding:0}.giveaway-condition-list li{counter-increment:gcond;display:grid;grid-template-columns:38px minmax(0,1fr);gap:16px;padding:18px 0;border-top:1px solid var(--line);font:500 clamp(13px,1.15vw,15px)/1.6 var(--body)}.giveaway-condition-list li:first-child{border-top:0;padding-top:2px}.giveaway-condition-list li:before{content:"0" counter(gcond);font:700 8px/1 var(--body);letter-spacing:.1em;color:var(--accent);margin-top:7px}
.giveaway-source-link,.giveaway-reveal-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:26px;padding:13px 17px;border:1px solid var(--accent);color:var(--accent);font:800 9px/1.2 var(--body);letter-spacing:.14em;text-align:center;text-decoration:none;transition:.2s;max-width:100%}.giveaway-source-link{grid-column:2;justify-self:start;margin-top:-10px}.giveaway-source-link:hover,.giveaway-reveal-link:hover{background:var(--accent);color:var(--text)}

.giveaway-contestants{padding:clamp(48px,6vw,88px) 0 4px}.giveaway-contestants-head{display:flex;justify-content:space-between;align-items:flex-end;gap:22px;margin-bottom:28px}.giveaway-reveal-link{margin:0;flex:none}
.giveaway-contestant-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(8px,1vw,14px)}.giveaway-contestant-card{min-width:0;border:1px solid var(--line);background:var(--panel)}.giveaway-contestant-media{background:#000;min-height:0}.giveaway-video-frame{position:relative;width:100%;aspect-ratio:16/9;background:#000;overflow:hidden}.giveaway-video-frame--portrait{aspect-ratio:9/12}.giveaway-video-frame iframe,.giveaway-video-frame video{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:contain;background:#000}.giveaway-video-fallback{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:9/12;overflow:hidden;text-decoration:none;background:linear-gradient(145deg,#140308,#050505);color:var(--text)}.giveaway-video-fallback img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.75;transition:.35s}.giveaway-video-fallback:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(0,0,0,.86))}.giveaway-video-fallback span{position:absolute;left:16px;bottom:16px;z-index:2;font:800 9px/1.2 var(--body);letter-spacing:.14em}.giveaway-video-fallback:hover img{transform:scale(1.025);opacity:.9}.giveaway-video-fallback--plain span{position:static}.giveaway-contestant-meta{padding:16px}.giveaway-contestant-meta span{display:block;font:700 8px/1 var(--body);letter-spacing:.16em;color:var(--accent)}.giveaway-contestant-meta strong{display:block;margin-top:8px;font:700 clamp(18px,1.8vw,22px)/1.08 var(--body);letter-spacing:-.035em;overflow-wrap:anywhere}.giveaway-contestant-meta em{display:block;margin-top:6px;font:500 11px/1.3 var(--body);font-style:normal;color:var(--muted);overflow-wrap:anywhere}
.giveaway-empty{grid-column:1/-1;display:grid;place-items:center;min-height:190px;border:1px dashed var(--line);color:var(--muted);font:500 12px/1.6 var(--body);text-align:center;padding:26px}

/* Large desktop: keep the section from becoming comically oversized on ultrawide screens. */
@media(min-width:1600px){
  .giveaway{padding-inline:max(80px,calc((100vw - 1540px)/2))}
  .giveaway-shell{width:min(1420px,100%)}
  .giveaway-copy h2{font-size:108px}
}

/* Laptop / small desktop */
@media(max-width:1180px){
  .giveaway{padding-inline:clamp(24px,4vw,48px)}
  .giveaway-hero{grid-template-columns:minmax(0,1.15fr) minmax(250px,.85fr);gap:44px}
  .giveaway-copy h2{font-size:clamp(48px,7.3vw,82px)}
  .giveaway-rules-block{gap:44px}
}

/* Tablet */
@media(max-width:900px){
  .giveaway{padding-block:64px;padding-inline:clamp(20px,4vw,36px)}
  .giveaway-hero{grid-template-columns:1fr;gap:38px;padding:56px 0}
  .giveaway-copy h2{font-size:clamp(46px,10vw,78px);max-width:12ch}
  .giveaway-description{margin-top:20px}
  .giveaway-prize{margin-top:34px}
  .giveaway-facts{max-width:none}
  .giveaway-facts>div{grid-template-columns:110px minmax(0,1fr)}
  .giveaway-rules-block{grid-template-columns:1fr;gap:28px;padding:48px 0}
  .giveaway-source-link{grid-column:1;margin-top:-4px}
  .giveaway-contestant-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Phone */
@media(max-width:650px){
  .giveaway{padding:54px max(15px,env(safe-area-inset-right)) 54px max(15px,env(safe-area-inset-left))!important}
  .giveaway-head{padding-bottom:16px;gap:12px}
  .giveaway-index{display:none}
  .giveaway-status{margin-top:10px;padding:7px 9px;font-size:7px}
  .giveaway-hero{padding:44px 0 46px;gap:30px}
  .giveaway-copy h2{font-size:clamp(39px,12.2vw,58px);line-height:.91;letter-spacing:-.055em;max-width:100%}
  .giveaway-description{margin-top:18px;font-size:12px;line-height:1.6;max-width:44ch}
  .giveaway-prize{margin-top:28px;padding-top:16px}
  .giveaway-prize strong{font-size:clamp(20px,6.3vw,27px)}
  .giveaway-prize p{font-size:11px}
  .giveaway-facts>div{grid-template-columns:84px minmax(0,1fr);gap:12px;padding:15px 0}
  .giveaway-facts strong{font-size:12px}
  .giveaway-rules-block{padding:38px 0;gap:22px}
  .giveaway-rules-copy h3,.giveaway-contestants-head h3{font-size:clamp(28px,8.5vw,40px)}
  .giveaway-condition-list li{grid-template-columns:27px minmax(0,1fr);gap:11px;padding:15px 0;font-size:12.5px;line-height:1.55}
  .giveaway-condition-list li:before{margin-top:6px;font-size:7px}
  .giveaway-source-link,.giveaway-reveal-link{width:100%;margin-top:18px;padding:12px 14px;letter-spacing:.1em}
  .giveaway-source-link{margin-top:0}
  .giveaway-contestants{padding-top:42px}
  .giveaway-contestants-head{align-items:stretch;flex-direction:column;gap:18px;margin-bottom:22px}
  .giveaway-reveal-link{margin:0}
  .giveaway-contestant-grid{grid-template-columns:1fr;gap:12px}
  .giveaway-video-frame--portrait,.giveaway-video-fallback{aspect-ratio:4/5}
  .giveaway-contestant-meta{padding:14px}
  .giveaway-contestant-meta strong{font-size:20px}
  .giveaway-empty{min-height:150px;padding:22px 18px;font-size:11px}
}

/* Small phones (320–390 px) */
@media(max-width:390px){
  .giveaway{padding-block:46px!important}
  .giveaway-copy h2{font-size:clamp(36px,11.8vw,46px);letter-spacing:-.05em}
  .giveaway-hero{padding:38px 0 40px}
  .giveaway-description{font-size:11.5px}
  .giveaway-prize strong{font-size:20px}
  .giveaway-facts>div{grid-template-columns:72px minmax(0,1fr);padding:13px 0}
  .giveaway-facts span{font-size:7px;letter-spacing:.14em}
  .giveaway-rules-block{padding:34px 0}
  .giveaway-condition-list li{font-size:12px}
  .giveaway-contestants{padding-top:36px}
}

/* Very narrow devices */
@media(max-width:340px){
  .giveaway{padding-inline:12px!important}
  .giveaway-copy h2{font-size:35px}
  .giveaway-facts>div{grid-template-columns:1fr;gap:6px}
  .giveaway-facts strong{text-align:left}
  .giveaway-condition-list li{grid-template-columns:23px minmax(0,1fr);gap:8px}
}

/* Landscape phones / short screens: reduce vertical footprint. */
@media(max-height:560px) and (orientation:landscape){
  .giveaway{padding-block:38px}
  .giveaway-hero{padding:34px 0}
  .giveaway-rules-block{padding:32px 0}
  .giveaway-contestants{padding-top:34px}
}

/* V3.8 — match the active site vibe, including serif headings and softer cards. */
.giveaway{transition:background-color .55s,color .55s,border-color .55s}
.giveaway-copy h2,.giveaway-rules-copy h3,.giveaway-contestants-head h3,.giveaway-prize strong,.giveaway-contestant-meta strong{font-family:var(--display)}
.giveaway-contestant-card{border-radius:var(--radius);overflow:hidden}
.giveaway-status[data-state="revealed"],.giveaway-source-link:hover,.giveaway-reveal-link:hover{color:#fff}
html[data-theme="bloom"] .giveaway-copy h2,html[data-theme="heritage"] .giveaway-copy h2{font-weight:500;text-transform:none;line-height:.98;letter-spacing:-.035em;max-width:15ch}
html[data-theme="bloom"] .giveaway-rules-copy h3,html[data-theme="bloom"] .giveaway-contestants-head h3,html[data-theme="heritage"] .giveaway-rules-copy h3,html[data-theme="heritage"] .giveaway-contestants-head h3{font-weight:500;letter-spacing:-.025em}
html[data-theme="bloom"] .giveaway-noise{opacity:.04}

.giveaway-video-fallback{color:#fff}
