/* Upcoming paid FiveM scripts: deliberately separate from published products. */
.upcoming{margin:85px 0 80px;padding-top:45px;border-top:1px solid var(--line);position:relative}
.upcoming-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:30px}
.upcoming-heading h2{font-size:clamp(48px,5.6vw,78px);line-height:.96;margin:16px 0 0}
.upcoming-intro{max-width:360px}.upcoming-intro p{color:var(--muted);line-height:1.8;margin:15px 0 0}
.upcoming-status{display:inline-flex;align-items:center;gap:9px;color:var(--mint);font-size:11px;letter-spacing:1.1px;text-transform:uppercase}
.upcoming-status:before{content:"";width:6px;height:6px;background:var(--mint);box-shadow:0 0 14px #9eebad80}
.upcoming-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.upcoming-card{min-width:0;border:1px solid var(--line);background:var(--panel);display:flex;flex-direction:column;border-top:2px solid var(--mint)}
.upcoming-weather{border-top-color:#ebbb78}.upcoming-gang{border-top-color:#c6a6ee}
.upcoming-visual{margin:0;position:relative;overflow:hidden;background:#172019;aspect-ratio:3/2}
.upcoming-visual img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.upcoming-card:hover .upcoming-visual img{transform:scale(1.035)}
.upcoming-visual:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#07110dcc);pointer-events:none}
.upcoming-visual figcaption{position:absolute;top:12px;right:12px;font-size:9px;color:#e1e9e4;background:#101713dd;padding:5px 8px;border:1px solid #778c7c66;z-index:1}
.upcoming-category{position:absolute;bottom:17px;left:20px;z-index:1;font-size:10px;letter-spacing:1.3px;color:#e0f4e5;font-weight:700}
.upcoming-body{padding:25px 23px 22px;display:flex;flex-direction:column;flex:1}
.upcoming-name{font-family:monospace;font-size:12px;color:var(--mint);letter-spacing:.4px}
.upcoming-weather .upcoming-name{color:#ebbb78}.upcoming-gang .upcoming-name{color:#c6a6ee}
.upcoming-body h3{font:700 21px/1.3 'Nunito Sans',sans-serif;letter-spacing:-.6px;margin:12px 0}
.upcoming-body>p{color:var(--muted);font-size:12px;line-height:1.85;margin:0 0 24px}
.upcoming-price{font-size:11px;color:var(--text);padding:14px 0;border-top:1px solid var(--line);margin-top:auto}
.upcoming-progress-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:7px 0 10px}
.upcoming-progress-heading label{color:var(--muted);font-size:10px;margin:0;text-transform:none;letter-spacing:0}
.upcoming-progress-heading strong{font-size:23px;font-weight:700;line-height:1;letter-spacing:-1px}
.upcoming-progress-heading strong span{font-size:12px;color:var(--muted);margin-left:3px}
.upcoming progress{display:block;width:100%;height:4px;border:0;border-radius:0;background:#303b33;color:var(--mint);appearance:none}
.upcoming progress::-webkit-progress-bar{background:#303b33}.upcoming progress::-webkit-progress-value{background:var(--mint)}.upcoming progress::-moz-progress-bar{background:var(--mint)}
.upcoming-weather progress::-webkit-progress-value{background:#ebbb78}.upcoming-weather progress::-moz-progress-bar{background:#ebbb78}
.upcoming-gang progress::-webkit-progress-value{background:#c6a6ee}.upcoming-gang progress::-moz-progress-bar{background:#c6a6ee}
.upcoming-stage{font-size:9px;letter-spacing:.6px;text-transform:uppercase;color:var(--muted);margin-top:11px}
.upcoming-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:24px}
.upcoming-bottom p{font-size:10px;line-height:1.8;max-width:580px;color:var(--muted);margin:0}.upcoming-bottom .button{white-space:nowrap;font-size:10px}
.upcoming a:focus-visible{outline:2px solid var(--mint);outline-offset:5px}
@media(max-width:900px){.upcoming-grid{gap:12px}.upcoming-body{padding:20px 16px}.upcoming-body h3{font-size:19px}.upcoming-bottom{align-items:start;flex-direction:column;gap:18px}}
@media(max-width:650px){.upcoming{margin:55px 0;padding-top:30px}.upcoming-heading{flex-direction:column;align-items:start;gap:22px}.upcoming-heading h2{font-size:57px}.upcoming-intro{max-width:100%}.upcoming-grid{grid-template-columns:1fr;gap:24px}.upcoming-body{padding:24px}.upcoming-body h3{font-size:23px}.upcoming-body>p{font-size:13px}.upcoming-visual{aspect-ratio:3/2}.upcoming-bottom .button{white-space:normal}}
@media(prefers-reduced-motion:reduce){.upcoming-visual img{transition:none}}

