/* Homepage: ALL portal cards identical — games boxes match lab boxes exactly (desktop only; mobile untouched) */
@media(min-width:701px){
  .home .portal .project-card.compact .card-art{height:54px}
  .home .portal .project-card.compact .card-art img{object-fit:cover}
  .home .portal .project-card.compact .card-copy{padding:10px 14px}
  .home .portal .project-card.compact .card-copy h3{font-size:15px;margin-bottom:3px}
  .home .portal .project-card.compact{margin-bottom:10px}
  .home .portal .portal-button{margin-top:4px}
}
/* Mobile: panorama hero on landing, seamless starfield below, smaller tiles */
@media(max-width:700px){
  .home .horizon-art{display:block;position:relative;inset:auto;z-index:0;height:44svh;min-height:280px}
  .home .horizon{background-color:#04060d;
    background-image:url("/assets/starfield-tile.svg"),radial-gradient(900px 480px at 18% 0%,#16224d59,transparent 70%),radial-gradient(760px 560px at 85% 22%,#2b174d59,transparent 70%);
    background-repeat:repeat,no-repeat,no-repeat}
  .home .portal:before,.home .lab-portal:before{display:none}
  .home .portal,.home .lab-portal{padding:26px 18px 30px;min-height:0;background:none}
  .home .project-card.compact .card-art{height:96px}
  .home .project-card.compact .card-copy{padding:10px 12px}
  .home .project-card.compact .card-copy h3{font-size:15px;margin-bottom:3px}
  .home .project-card.compact{margin-bottom:10px}
  .home .site-footer{background-color:#04060d;background-image:url("/assets/starfield-tile.svg");background-repeat:repeat}
}

/* Lab page: space the feature panels, present app art as cover banners */
.lab-page .feature-panel + .feature-panel{margin-top:18px}
.lab-page .app-panel .card-art{height:180px}
.lab-page .app-panel .card-art img{width:100%;height:100%;object-fit:cover}
@media(max-width:700px){
  .lab-page .app-panel .card-art{height:150px}
}

/* Game page screenshot galleries */
.game-shots{display:grid;gap:24px;margin:40px 0 8px}
.game-shots figure{margin:0}
.game-shots img{width:100%;display:block;border-radius:8px;border:1px solid #ffffff29}
.game-shots figcaption{font-size:10px;line-height:1.6;color:#aab8ca;margin-top:12px}

/* Homepage: game cards match Lab cards — full-width stacked boxes, not a 2-col grid */
.home-games{grid-template-columns:1fr}

/* Homepage: Games column matches The Lab column, so the boxes are the same size */
@media(min-width:701px){
  .games-portal{width:26%;max-width:340px}
}

/* Press Run preview: plan status badge in the hero */
.plan-status{margin-top:18px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.plan-pill{display:inline-block;padding:8px 16px;border-radius:999px;font-size:13px;font-weight:700;letter-spacing:.04em}
.plan-pill.free{background:#1c2942;color:#9fb3d9;border:1px solid #2c3f63}
.plan-pill.trial{background:#3a2b12;color:#f5b301;border:1px solid #6b4d1a}
.plan-pill.pro{background:#12351f;color:#4ade80;border:1px solid #1e5c33}

/* Shared business-page pricing (Cerberus pattern, reused by Press Run) */
.pressrun-page{--accent:#f5a623;--accent-soft:#f5a62326}
.pressrun-page .eyebrow{color:var(--accent)}
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1060px;margin:26px 0 20px}
.price-card{border:1px solid #ffffff1c;border-radius:12px;padding:32px;text-align:center;background:#081120d9}
.price-card.featured{border-color:var(--accent);box-shadow:0 10px 40px var(--accent-soft)}
.price-card .amount{font-size:44px;font-weight:700;letter-spacing:-.03em}
.price-card .per{color:#9fb0c6;font-size:14px}
.price-card h3{margin:0 0 10px;font-size:15px;letter-spacing:.12em;color:#9fb0c6}
.price-card p{font-size:13.5px;color:#aebdd2;line-height:1.7}
.trial-note{max-width:760px;margin:0 0 72px}
@media(max-width:900px){.price-grid{grid-template-columns:1fr}}

/* Shared business-page buttons (Cerberus pattern, reused by Press Run) */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 26px;border-radius:8px;font-size:15px;font-weight:650;letter-spacing:.01em;border:1px solid transparent;cursor:pointer;text-decoration:none;transition:transform .15s,box-shadow .15s,background .15s}
.btn-primary{background:var(--accent,#e5484d);color:#fff;box-shadow:0 8px 28px var(--accent-soft,#e5484d33)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 34px var(--accent-soft,#e5484d4d)}
.btn-ghost{border-color:#ffffff2e;color:var(--fg,#e8edf5);background:#ffffff08}
.btn-ghost:hover{border-color:var(--accent,#e5484d);color:#fff}

/* Dope District marketing page (scoped, CSP-safe) */
.dd-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:34px 0 8px}
.dd-stat{border:1px solid #ffffff17;border-radius:12px;padding:20px 12px;text-align:center;background:#081120d9}
.dd-stat b{display:block;font-size:32px;font-weight:750;letter-spacing:-.02em;color:#d8f26e}
.dd-stat span{font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:#9fb0c6}
.dd-faq{max-width:760px}
.dd-faq h3{font-size:17px;margin:22px 0 6px;color:#f2f5fa}
.dd-faq p{margin:0 0 4px;color:#aebdd2;line-height:1.7;font-size:15px}
.dd-cta-band{border:1px solid #d8f26e44;border-radius:14px;padding:38px 30px;text-align:center;background:#0a1420e6;margin:40px 0 8px}
.dd-cta-band h2{margin:0 0 10px}
.dd-cta-band p{color:#aebdd2;max-width:560px;margin:0 auto 22px;line-height:1.7}
.dd-sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;align-items:center;justify-content:center;gap:14px;padding:12px 16px;background:#060d17f2;border-top:1px solid #ffffff1c;backdrop-filter:blur(8px)}
.dd-sticky-cta span{font-size:14px;color:#c6d2e2}
@media(max-width:900px){.dd-stats{grid-template-columns:repeat(2,1fr)}.dd-sticky-cta span{display:none}}
.dd-page{padding-bottom:84px}
.dd-sticky-cta .portal-button{padding:10px 24px;font-size:14px}

/* Homepage: three even portals — Games | WoW Addons | The Lab, tops aligned */
.home .portals{align-items:start}
@media(min-width:701px){
  .home .portal,.home .games-portal{width:31%;max-width:400px}
}

/* Homepage portal headers: uniform eyebrows, smaller restyled headings */
.home .portal .eyebrow{color:#a3b4cc;font-size:9px;letter-spacing:.22em;font-weight:600;margin-bottom:8px}
.home .portal h2{font-size:clamp(1.7rem,2.4vw,2.3rem);line-height:1.1;letter-spacing:.01em;margin-bottom:14px}
.home .portal h2::after{content:"";display:block;width:36px;height:2px;background:var(--accent);margin-top:12px;border-radius:2px}

/* Cerberus transparent logo treatments (site-wide).
   The logo is a transparent PNG — these rules present it as a floating
   emblem instead of a boxed picture. Loaded after the main stylesheet. */
a.project-card.cerberus-card .card-art {
  height: 170px;
  display: grid;
  place-items: center;
  background: radial-gradient(ellipse at 50% 50%, #e5484d26, transparent 65%), #070f1c;
}
a.project-card.cerberus-card .card-art img {
  width: auto;
  height: auto;
  max-width: 80%;
  max-height: 150px;
  object-fit: contain;
  filter: drop-shadow(0 0 18px #e5484d55);
}
.feature-panel .card-art {
  display: grid;
  place-items: center;
  background: radial-gradient(ellipse at 50% 50%, #e5484d26, transparent 65%), #071220;
  min-height: 300px;
  padding: 24px;
}
.feature-panel .card-art img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 320px;
  object-fit: contain;
  filter: drop-shadow(0 0 30px #e5484d55);
}
