:root{--opp-orange:#f47a00;--opp-green:#b8ff51;--opp-dark:#0b0d0b;--opp-paper:#f4f1e7;--opp-line:#ded9ce}
body{background:var(--opp-paper)}
.opp-hero{padding:78px 0 64px;background:radial-gradient(circle at 82% 12%,rgba(244,122,0,.2),transparent 28%),#0b0d0b;color:#fff}
.opp-hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:44px;align-items:end}
.opp-hero h1{max-width:850px;margin:10px 0 18px;font:900 clamp(52px,8vw,96px)/.88 'Manrope',sans-serif;letter-spacing:-.07em}
.opp-hero h1 em{font-style:normal;color:var(--opp-orange)}
.opp-hero p:not(.eyebrow){max-width:720px;color:#aab1aa;line-height:1.7}
.opp-trust-card{padding:24px;border:1px solid #333b33;border-radius:24px;background:#121612}
.opp-trust-card h2{margin:14px 0 8px;font:850 28px/1 'Manrope',sans-serif;letter-spacing:-.035em}
.opp-live{display:inline-flex;align-items:center;gap:7px;color:var(--opp-green);font-size:9px;font-weight:950;letter-spacing:.1em}
.opp-live i,.opp-statusbar i{width:7px;height:7px;border-radius:50%;background:var(--opp-green)}
.opp-trust-points{display:flex;gap:7px;flex-wrap:wrap;margin-top:17px}.opp-trust-points span{padding:7px 9px;border-radius:999px;background:#202620;color:#d8ddd8;font-size:9px;font-weight:850}
.opp-main{padding-top:52px;padding-bottom:76px}
.opp-head{display:grid;grid-template-columns:1fr .8fr;gap:30px;align-items:end;margin-bottom:22px}.opp-head h2{margin:6px 0 0;font:900 clamp(34px,5vw,58px)/.95 'Manrope',sans-serif;letter-spacing:-.055em}.opp-head>p{color:#626962;line-height:1.65}
.opp-controls{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:10px;padding:14px;border:1px solid var(--opp-line);border-radius:20px;background:#fff}
.opp-controls label{display:grid;gap:6px}.opp-controls label>span{font-size:9px;font-weight:900;letter-spacing:.08em;color:#687067;text-transform:uppercase}.opp-controls input,.opp-controls select{width:100%;box-sizing:border-box;border:1px solid #ddd8cd;border-radius:12px;padding:11px 12px;background:#faf9f5;font:inherit}
.opp-controls .opp-check{display:flex;align-items:center;gap:8px;padding:22px 8px 0}.opp-controls .opp-check input{width:auto}.opp-controls .opp-check span{white-space:nowrap}
.opp-statusbar{display:flex;justify-content:space-between;gap:14px;align-items:center;margin:16px 0;color:#687067;font-size:10px;font-weight:850;letter-spacing:.06em}.opp-statusbar span{display:flex;align-items:center;gap:7px}.opp-statusbar i{background:#54a84f}
.opp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.opp-card{display:flex;flex-direction:column;min-height:320px;padding:21px;border:1px solid var(--opp-line);border-radius:22px;background:#fff}
.opp-card-top,.opp-card-footer{display:flex;justify-content:space-between;gap:10px;align-items:center}.opp-card .tag{font-size:9px;font-weight:950;letter-spacing:.08em;color:var(--opp-orange);text-transform:uppercase}.opp-source{font-size:8px;font-weight:900;color:#397637}
.opp-card h3{margin:15px 0 8px;font:850 25px/1.05 'Manrope',sans-serif;letter-spacing:-.035em}.opp-card .organizer{color:#3d443d;font-weight:750;font-size:11px}.opp-card p{color:#687067;line-height:1.6;font-size:12px}
.opp-meta{display:grid;gap:7px;margin:16px 0 20px;padding:13px 0;border-top:1px solid #eee9df;border-bottom:1px solid #eee9df;font-size:10px}.opp-meta div{display:flex;justify-content:space-between;gap:10px}.opp-meta span{color:#7a817a}.opp-meta strong{text-align:right}
.opp-card-footer{margin-top:auto}.opp-deadline{font-size:9px;font-weight:850}.opp-deadline.closed{color:#a33c31}.opp-deadline.open{color:#397637}
.opp-empty{grid-column:1/-1;padding:52px;border:1px dashed #cdc7bb;border-radius:22px;text-align:center;color:#697069;background:rgba(255,255,255,.45)}
.opp-safety{display:grid;grid-template-columns:.85fr 1.15fr;gap:28px;margin-top:46px;padding:28px;border-radius:24px;background:#0b0d0b;color:#fff}.opp-safety h2{margin:6px 0 0;font:850 36px/1 'Manrope',sans-serif}.opp-safety>p{color:#aab1aa;line-height:1.7}
@media(max-width:920px){.opp-hero-grid,.opp-head,.opp-safety{grid-template-columns:1fr}.opp-grid{grid-template-columns:1fr 1fr}.opp-controls{grid-template-columns:1fr 1fr}.opp-controls .opp-check{padding-top:8px}}
@media(max-width:620px){.opp-hero{padding:60px 0 48px}.opp-grid,.opp-controls{grid-template-columns:1fr}.opp-card{min-height:auto}}
