/* One public column for current giveaways and the permanent archive. */
.giveaways-page { min-height:100vh; display:flex; flex-direction:column; }
.giveaways-main { position:relative; z-index:2; width:100%; max-width:880px; flex:1; padding-top:70px; padding-bottom:80px; }
.giveaways-hero { margin-bottom:48px; }
.giveaways-kicker { color:#8eb2ff; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.14em; }
.giveaways-hero h1 { color:#eaf1ff; font-size:clamp(44px,6vw,68px); line-height:1.1; letter-spacing:-.045em; font-weight:800; margin:16px 0; }
.giveaways-hero h1 span { color:var(--blue-light); }
.giveaways-hero > p:last-child { max-width:560px; color:#a7b4ca; font-size:17px; line-height:1.7; }
.giveaways-section-heading { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:baseline; gap:8px 20px; margin-bottom:18px; }
.giveaways-section-heading h2 { color:#dce7fb; font-size:19px; letter-spacing:-.02em; }
.giveaways-section-heading > span { color:#95a5be; font-size:12px; }
.giveaways-archive { margin-top:48px; padding-top:36px; border-top:1px solid var(--border); }
.giveaway-card { min-width:0; margin-top:18px; padding:32px; border:1px solid #293c5e; border-radius:18px; background:linear-gradient(145deg,rgba(21,35,60,.94),rgba(12,21,38,.92)); }
.giveaway-card h3 { color:#eaf1ff; margin:16px 0; font-size:clamp(23px,3vw,29px); line-height:1.25; letter-spacing:-.025em; overflow-wrap:anywhere; }
.giveaway-card p { color:#a7b4ca; font-size:15px; line-height:1.7; }
.giveaway-current { border-color:rgba(90,144,255,.5); }
.giveaway-badge { display:inline-flex; border:1px solid #41506a; border-radius:999px; padding:4px 10px; color:#b8c7df; font-size:11px; font-weight:650; }
.giveaway-badge-open { color:#a0e6c8; border-color:#336652; background:#163b2e; }
.giveaway-badge-awarded { color:#b6d0ff; border-color:#466ba6; background:#1b3153; }
.giveaway-prize { display:flex; flex-direction:column; gap:4px; padding:16px 20px; margin:18px 0 14px; border-left:2px solid #5a90ff; background:rgba(61,123,255,.07); }
.giveaway-prize > span { color:#98aac7; font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.giveaway-prize strong { color:#eaf1ff; font-size:20px; font-weight:650; overflow-wrap:anywhere; }
.giveaway-card .giveaway-date { font-size:13px; }
.giveaway-card details { margin-top:22px; border-top:1px solid var(--border); padding-top:16px; }
.giveaway-card summary { color:#c5d4ed; font-size:13px; font-weight:550; cursor:pointer; }
.giveaway-card summary span { margin-left:6px; color:#93a3bd; font-size:11px; font-weight:400; }
.giveaway-card .giveaway-rules { white-space:pre-wrap; overflow-wrap:anywhere; font-size:13px; margin-top:14px; }
.giveaway-card form { margin-top:26px; }
.giveaway-card label { display:block; color:#dce6f9; font-size:13px; font-weight:600; }
.giveaway-card input[type=email] { display:block; width:100%; min-height:48px; padding:12px 14px; margin-top:9px; border:1px solid #495b79; border-radius:10px; background:#091222; color:#eaf1ff; font:inherit; font-size:16px; }
.giveaway-card input::placeholder { color:#93a3bd; opacity:1; }
.giveaway-card .giveaway-checkbox { display:flex; align-items:flex-start; gap:12px; margin-top:20px; color:#b5c4dc; font-weight:400; line-height:1.6; }
.giveaway-checkbox input { width:18px; height:18px; flex:none; margin-top:2px; accent-color:var(--blue); }
.giveaway-card .giveaway-note { color:#95a5be; margin:12px 0 20px; font-size:12px; }
.giveaway-card .btn { min-height:46px; cursor:pointer; font-family:inherit; }
.giveaway-card button:disabled { opacity:.65; cursor:default; }
.giveaway-card [role=status]:not(:empty) { margin-top:18px; font-size:14px; }
.giveaway-card .bot-field { position:absolute; left:-10000px; visibility:hidden; }
.giveaway-past, .giveaway-archive-empty { background:rgba(13,23,41,.72); border-color:#27354c; }
.giveaway-past h3 { font-size:23px; }
.giveaway-past .giveaway-prize { border-left-color:#526b91; background:rgba(139,164,204,.045); }
.giveaway-eyebrow { color:#8eb2ff!important; font-size:11px!important; font-weight:700; text-transform:uppercase; letter-spacing:.11em; }
.giveaway-empty h3 { margin-top:12px; }
.giveaway-empty .btn { margin-top:24px; }
.giveaway-archive-empty h3 { margin-top:0; font-size:20px; }
.giveaways-page :is(a,button,input,summary):focus-visible { outline:3px solid #b5ceff; outline-offset:4px; }
.giveaways-page .ao-footer { flex-shrink:0; }
@media(max-width:600px) { .giveaways-main { padding-top:44px; padding-bottom:48px; } .giveaways-hero { margin-bottom:34px; } .giveaway-card { padding:24px; } .giveaways-archive { margin-top:36px; padding-top:28px; } }
@media(max-width:400px) { .giveaways-main { padding-inline:18px; } .giveaway-card { padding:20px; } .giveaway-card .btn { width:100%; justify-content:center; } }
