/* Site-aligned cards and text, with GTA artwork confined to the hero. */
body.gta-page > .aurora { display:none; }
body.gta-page .gta-hub {
    --hub-pink:#b91e63;
    --hub-cyan:#087a83;
    --surface-color:#fff;
    --text-primary:#191c2b;
    --text-secondary:#626b80;
    --glass-border:#e5e3ee;
    --gta-soft-surface:#f4f1fa;
    --gta-accent-soft:rgba(185,30,99,.07);
    padding-top:8px;
    padding-bottom:72px;
    color:var(--text-primary);
}
body.gta-page.dark-theme .gta-hub {
    --hub-pink:#ff94bf;
    --hub-cyan:#85e4dc;
    --surface-color:#1b1626;
    --text-primary:#fff7f3;
    --text-secondary:#d1c7dc;
    --glass-border:rgba(235,216,246,.18);
    --gta-soft-surface:#241c30;
    --gta-accent-soft:rgba(255,148,191,.12);
}
.gta-page .gta-hub .hero-card {
    min-height:440px;
    border:1px solid rgba(255,195,220,.26);
    border-radius:24px;
    background:#28152b;
    box-shadow:0 24px 72px rgba(0,0,0,.28);
    isolation:isolate;
}
.gta-page .gta-hub .hero-card-bg { background:linear-gradient(120deg,#23172d,#52354c 58%,#b17783); }
.gta-page .gta-hub .hero-card-bg img,.gta-page .gta-hub .hero-card-bg video { opacity:.88; object-position:66% 35%; }
.gta-page .gta-hub .hero-card-bg .gta-hero-default { inset:0 0 0 auto; width:60%; object-fit:contain; object-position:right center; opacity:1; }
.gta-page .gta-hub .hero-grid-bg {
    z-index:1;
    background:linear-gradient(90deg,#1b1027 0%,rgba(27,16,39,.96) 28%,rgba(27,16,39,.75) 39%,transparent 57%);
    mask-image:none;
}
.gta-page .gta-hub .hero-palms {
    display:none;
    z-index:1;
    height:80%;
    left:38%;
    opacity:.58;
    background:url('/assets/images/gta/palms.svg') right bottom / contain no-repeat;
    pointer-events:none;
}
.gta-page .gta-hero-mark {
    display:none;
    position:absolute;
    right:34px;
    bottom:22px;
    z-index:1;
    color:rgba(255,190,218,.12);
    -webkit-text-stroke:1px rgba(255,199,219,.36);
    font:900 clamp(12rem,24vw,24rem)/.8 Impact,'Arial Narrow',sans-serif;
    letter-spacing:-.07em;
    pointer-events:none;
    user-select:none;
}
.gta-page .gta-hub .hero-content { min-height:440px; max-width:50%; padding:36px 40px; }
.gta-page .gta-hub .hero-tag { padding:9px 14px; border-radius:6px; font-size:11px; letter-spacing:1.9px; background:rgba(19,12,27,.55); }
.gta-page .gta-hub .hero-tag .pulse { background:#ffb1cf; box-shadow:0 0 12px rgba(255,148,191,.4); }
.gta-page .gta-hub .hero-title {
    max-width:520px;
    font-family:Impact,'Arial Narrow','Open Sans',sans-serif;
    font-size:clamp(3rem,5.4vw,5.25rem);
    font-weight:900;
    text-transform:uppercase;
    line-height:.94;
    letter-spacing:-.025em;
    color:#fff7f3;
    text-shadow:0 4px 26px rgba(8,3,14,.22);
}
.gta-page .gta-hub .hero-title span { background:linear-gradient(100deg,#fff0cc,#ff9cc6 78%); background-clip:text; -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
.gta-page .gta-hub .hero-sub { max-width:430px; margin:16px 0; font-size:14px; line-height:1.6; color:#f3e6ef; }
.gta-page .gta-hub .hero-meta { margin-bottom:20px; gap:8px 16px; color:#f2e8ef; font-size:11px; }
.gta-page .gta-hub .hero-cta { gap:12px; }
.gta-page .gta-hub .hero-cta > a { justify-content:center; min-height:56px; padding:15px 24px; border-radius:8px; font-size:15px; font-weight:800; }
.gta-page .gta-hub .hero-cta .btn-primary { background:#ffb4d2; color:#251329; }
.gta-page .gta-hub .hero-cta .btn-ghost { border-color:rgba(255,235,244,.4); background:rgba(32,21,42,.45); color:#fff7f3; }
.gta-page .gta-hub .countdown { top:16px; right:16px; min-width:150px; padding:12px 16px; border-color:rgba(255,206,226,.25); border-radius:10px; background:rgba(22,13,32,.88); }
.gta-page .gta-hub .countdown-label { color:#e2c8da; opacity:1; font-size:10px; }
.gta-page .gta-hub .countdown [data-gta-days] { font-size:34px; color:#ffd7a9; }
.gta-page .gta-hub .countdown time { color:#c6b8cb; font-size:12px; }
.gta-page .gta-hub-nav { gap:5px; margin-top:14px; padding:6px; border-radius:12px; background:var(--surface-color); border-color:var(--glass-border); }
.gta-page .gta-hub-nav a { min-height:44px; padding:12px 17px; border-radius:6px; color:var(--text-secondary); font-size:13px; }
.gta-page .gta-hub-nav a:hover,.gta-page .gta-hub-nav a:focus-visible { background:var(--gta-accent-soft); color:var(--hub-pink); }
.gta-page .gta-hub .gta-stats { margin-top:14px; }
.gta-page .gta-hub .gta-stat { padding:14px 18px; border-radius:14px; background:var(--surface-color); border-color:var(--glass-border); }
.gta-page .gta-hub .gta-stat-num { font:800 28px/1 'Open Sans',sans-serif; color:var(--hub-pink); }
.gta-page .gta-hub #facts { margin-top:28px; }
.gta-page .gta-hub .gta-stat:nth-child(even) .gta-stat-num { color:var(--hub-cyan); }
.gta-page .gta-hub .gta-stat-label { color:var(--text-secondary); font-size:11px; }
.gta-page .gta-hub .gta-eyebrow { display:flex; align-items:center; gap:14px; color:var(--hub-pink); font-size:11px; letter-spacing:2px; }
.gta-page .gta-hub .gta-eyebrow::before { content:''; width:25px; height:2px; background:currentColor; flex-shrink:0; }
.gta-page .gta-hub .gta-hub-heading h2,.gta-page .gta-hub .gta-section-head h2,.gta-page .gta-map-copy h2 { color:var(--text-primary); font-size:clamp(26px,2.6vw,34px); line-height:1.2; font-weight:800; letter-spacing:-.035em; }
.gta-page .gta-hub #facts .gta-hub-heading { max-width:900px; margin-bottom:18px; }
.gta-page .gta-hub #facts .gta-hub-heading h2 { margin-bottom:8px; }
.gta-page .gta-hub #facts .gta-hub-heading p { font-size:13px; line-height:1.6; }
.gta-page .gta-hub #facts .gta-eyebrow { margin-bottom:8px; }
.gta-page .gta-hub .gta-facts-grid article { position:relative; padding:18px; border-radius:14px; background:var(--surface-color); border-color:var(--glass-border); }
.gta-page .gta-hub .gta-facts-grid article::before { content:''; position:absolute; top:18px; left:0; width:3px; height:24px; background:var(--hub-pink); border-radius:0 3px 3px 0; }
.gta-page .gta-hub .gta-facts-grid article:nth-child(even)::before { background:var(--hub-cyan); }
.gta-page .gta-hub .gta-facts-grid article > span { min-height:0; font-size:11px; line-height:1.4; }
.gta-page .gta-facts-grid strong { margin:10px 0 6px; font-size:21px; line-height:1.25; color:var(--text-primary); }
.gta-page .gta-hub .gta-facts-grid small { font-size:11px; }
.gta-page .gta-platform-pair { display:flex; flex-wrap:wrap; gap:6px; margin-top:10px; }
.gta-page .gta-platform-pair a { display:flex; flex:1 1 130px; align-items:center; justify-content:flex-start; gap:7px; min-height:44px; padding:8px; border:1px solid var(--glass-border); border-radius:8px; background:var(--gta-soft-surface); color:var(--text-primary); font:700 12px/1.35 'Open Sans',sans-serif; text-decoration:none; }
.gta-page .gta-platform-pair a:hover { border-color:var(--hub-pink); }
.gta-page .gta-platform-pair img { flex:0 0 22px; width:22px; height:22px; object-fit:contain; }
body.gta-page.dark-theme .gta-platform-pair img { filter:brightness(0) invert(1); }
.gta-page .gta-hub .gta-guide-card { background:var(--surface-color); border-radius:14px; border-color:var(--glass-border); }
.gta-page .gta-hub .gta-guide-card:hover { border-color:var(--hub-pink); }
.gta-page .gta-hub .gta-guide-filters button { min-height:44px; border-radius:8px; background:var(--surface-color); color:var(--text-secondary); }
.gta-page .gta-hub .gta-guide-filters button.active { background:var(--gta-accent-soft); border-color:var(--hub-pink); color:var(--hub-pink); }
.gta-page .gta-hub .gta-guide-empty { border-radius:16px; background:var(--gta-soft-surface); border-color:var(--glass-border); }
.gta-page .gta-hub .gta-person { min-height:440px; aspect-ratio:1.35; border-radius:16px; border:1px solid rgba(244,203,227,.2); }
.gta-page .gta-hub .gta-person::after { background:linear-gradient(180deg,transparent 40%,rgba(19,10,28,.32) 65%,rgba(19,10,28,.95)); }
.gta-page .gta-hub .gta-person h3 { font-size:clamp(28px,3.5vw,48px); }
.gta-page .gta-hub .gta-places-grid li { background:var(--surface-color); border-radius:10px; border-color:var(--glass-border); }
.gta-page .gta-hub .gta-map-panel { border-radius:18px; background:var(--surface-color); border-color:var(--glass-border); }
.gta-page .gta-hub .gta-map-art { background:radial-gradient(ellipse at 20% 0,#28545a,transparent 65%),linear-gradient(145deg,#121b29,#432741); }
.gta-page .gta-hub .gta-status-planned { color:var(--hub-cyan); background:var(--gta-soft-surface); border-color:var(--glass-border); }
.gta-page .gta-hub .gta-video-card { background:var(--surface-color); border-color:var(--glass-border); border-radius:15px; }
.gta-page .gta-hub .gta-video-thumb .play-btn { width:58px; height:58px; background:#ffbad5; color:#29172d; }
.gta-page .gta-hub .gta-gallery-item { border-radius:14px; border:1px solid var(--glass-border); }
.gta-page .gta-hub .gta-roadmap { border-radius:16px; background:var(--surface-color); border-color:var(--glass-border); }
.gta-page .gta-hub .gta-roadmap li { padding:32px; }
.gta-page .gta-hub .gta-faq { padding:0 24px; border:1px solid var(--glass-border); border-radius:16px; background:var(--surface-color); }
.gta-page .gta-hub .gta-faq details:last-child { border-bottom:0; }
.gta-page .gta-hub .gta-follow { padding:32px; border-radius:18px; background:var(--gta-soft-surface); border-color:var(--glass-border); }
.gta-page .gta-hub .gta-follow h2 { color:var(--text-primary); }
.gta-page .gta-hub .gta-follow > a { min-height:54px; align-items:center; border-radius:8px; background:#ffb4d2; color:#251329; font-size:14px; }
@media(max-width:1000px) {
    .gta-page .gta-hub .hero-content { padding-left:36px; padding-right:36px; }
    .gta-page .gta-hub .hero-sub { max-width:520px; }
    .gta-page .gta-hub .gta-person { min-height:360px; }
}
@media(min-width:1001px) {
    .gta-page .gta-hub .gta-facts-grid { grid-template-columns:1fr 1.4fr 1fr 1fr; }
}
@media(max-width:680px) {
    .gta-page .gta-hub { padding-top:0; padding-bottom:36px; }
    .gta-page .gta-hub .hero { padding:0 14px; }
    .gta-page .gta-hub .hero-card { min-height:0; border-radius:18px; }
    .gta-page .gta-hub .hero-card-bg { position:relative; aspect-ratio:16/9; }
    .gta-page .gta-hub .hero-card-bg .gta-hero-default { width:100%; }
    .gta-page .gta-hub .hero-grid-bg { display:none; }
    .gta-page .gta-hub .hero-content { min-height:0; max-width:none; padding:20px 22px 24px; }
    .gta-page .gta-hub .hero-tag { display:none; }
    .gta-page .gta-hub .hero-title { font-size:36px; }
    .gta-page .gta-hub .hero-sub { margin:12px 0; font-size:13px; line-height:1.55; }
    .gta-page .gta-hub .hero-meta { flex-direction:row; gap:8px 14px; font-size:11px; }
    .gta-page .gta-hub .hero-cta > a { flex:1 1 auto; min-height:50px; padding:12px 14px; font-size:13px; }
    .gta-page .gta-hub .countdown { position:relative; inset:auto; margin:14px 20px 0; padding:10px 14px; }
    .gta-page .gta-hub .countdown [data-gta-days] { font-size:34px; }
    .gta-page .gta-hub .countdown time { font-size:11px; }
    .gta-page .gta-hero-mark { right:18px; bottom:30px; font-size:13rem; opacity:.7; }
    .gta-page .gta-hub .hero-palms { left:12%; height:75%; opacity:.36; }
    .gta-page .gta-hub .gta-stat { padding:13px 14px; gap:10px; }
    .gta-page .gta-hub .gta-stat-num { font-size:26px; }
    .gta-page .gta-hub .gta-stat-label { font-size:11px; }
    .gta-page .gta-hub .gta-hub-heading h2,.gta-page .gta-hub .gta-section-head h2,.gta-page .gta-map-copy h2 { font-size:28px; }
    .gta-page .gta-hub .gta-eyebrow { font-size:10px; letter-spacing:1.4px; }
    .gta-page .gta-hub .gta-facts-grid article { padding:16px 14px; }
    .gta-page .gta-platform-pair a { flex-basis:100%; padding:7px 5px; font-size:11px; }
    .gta-page .gta-hub .gta-person { min-height:340px; aspect-ratio:1.15; padding:26px; }
    .gta-page .gta-hub .gta-person h3 { font-size:34px; }
    .gta-page .gta-hub .gta-roadmap li { padding:25px; }
    .gta-page .gta-hub .gta-faq { padding:0 18px; }
    .gta-page .gta-hub .gta-follow { padding:28px 24px; }
    .gta-page .gta-hub .gta-follow > a { justify-content:center; width:100%; white-space:normal; }
}
/* The exact timer remains separate from any date-only editorial countdown. */
.gta-page .gta-hub .countdown[data-release-at] { width:260px; min-width:0; max-width:calc(50% - 32px); }
.gta-page .gta-hub .countdown[data-release-at] .countdown-label { max-width:none; }
.gta-page .gta-hub .gta-countdown-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin:8px 0 10px; }
.gta-page .gta-hub .gta-countdown-unit { display:flex; flex-direction:column; align-items:center; gap:3px; min-width:0; }
.gta-page .gta-hub .countdown .gta-countdown-unit > strong { color:#ffd7a9; font:800 28px/1.1 'Open Sans',sans-serif; font-variant-numeric:tabular-nums; }
.gta-page .gta-hub .gta-countdown-unit > small { color:#d9c8de; font-size:10px; line-height:1.3; }
.gta-page .gta-hub .gta-countdown-zone { display:block; margin-top:3px; color:#c6b8cb; font-size:10px; line-height:1.4; }
@media(max-width:680px) {
    .gta-page .gta-hub .countdown[data-release-at] { display:block; width:auto; max-width:none; }
    .gta-page .gta-hub .gta-countdown-grid { gap:6px; }
}
@media(prefers-reduced-motion:reduce) {
    .gta-page .gta-hub * { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}
