
:root{
  --ip-g:#55c44f;
  --ip-gd:#2f8d38;
  --ip-lime:#b7ef68;
  --ip-cyan:#4dd8ff;
  --ip-red:#ff4f48;
  --ip-bg:#0e150f;
  --ip-dark:#101812;
  --ip-darker:#0b120d;
  --ip-panel:#172019;
  --ip-panel2:#202c22;
  --ip-cream:#f4f0df;
  --ip-muted:#bfc9bf;
  --ip-line:rgba(255,255,255,.11);
  --ip-shadow:0 20px 55px rgba(0,0,0,.32);
}

.ip-pagepack-shell,
.ip-pagepack-shell > .e-con-inner{
  width:100%!important;
  max-width:none!important;
  padding:0!important;
  margin:0!important;
}

.ip-pagepack,
.ip-pagepack *{box-sizing:border-box}

.ip-pagepack{
  width:100vw;
  margin-left:calc(50% - 50vw);
  overflow:hidden;
  background:var(--ip-bg);
  color:#fff;
  font-family:Arial,Helvetica,sans-serif;
  line-height:1.5;
}

.ip-pagepack a{text-decoration:none}
.ip-pagepack button{font:inherit}
.ip-pagepack .ip-wrap{width:min(1180px,92%);margin:0 auto}

/* NAV — intentionally matches the current homepage */
.ip-pagepack .ip-nav{
  position:relative;
  z-index:30;
  background:#090e0a;
  border-bottom:1px solid #ffffff1c;
}
.ip-pagepack .ip-navin{
  min-height:76px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.ip-pagepack .ip-brand{
  display:flex;
  align-items:center;
  gap:12px;
  color:#fff;
  font-weight:900;
  font-size:20px;
}
.ip-pagepack .ip-logo{
  width:58px;
  height:58px;
  display:block;
  flex:0 0 58px;
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
}
.ip-pagepack .ip-menu{
  display:flex;
  align-items:center;
  gap:25px;
}
.ip-pagepack .ip-menu a{
  color:#d9e0da;
  font-size:14px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.6px;
}
.ip-pagepack .ip-menu a:hover{color:var(--ip-lime)}
.ip-pagepack .ip-menu .ip-play{
  padding:12px 18px;
  background:var(--ip-g);
  color:#071008!important;
  border-bottom:4px solid var(--ip-gd);
}

/* HERO */
.ip-pagepack .ip-page-hero{
  position:relative;
  min-height:560px;
  display:grid;
  place-items:center;
  text-align:center;
  isolation:isolate;
  background-color:#14291e;
  background-image:
    linear-gradient(#07100973,#0710099f),
    var(--page-hero-image),
    radial-gradient(circle at 18% 22%,#a9e85d38,transparent 28%),
    radial-gradient(circle at 78% 20%,#5b9fff24,transparent 30%),
    linear-gradient(180deg,#1d392c 0%,#14291e 43%,#0f1b13 44%,#0b120d 100%);
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
}
.ip-pagepack .ip-page-hero:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  opacity:.22;
  background-image:
    linear-gradient(#ffffff12 1px,transparent 1px),
    linear-gradient(90deg,#ffffff12 1px,transparent 1px);
  background-size:48px 48px;
}
.ip-pagepack .ip-hero-inner{
  width:min(920px,92%);
  padding:90px 0;
}
.ip-pagepack .ip-pill{
  display:inline-block;
  padding:8px 14px;
  border:1px solid #a9e85d73;
  background:#07100999;
  color:var(--ip-lime);
  font-size:13px;
  font-weight:900;
  letter-spacing:1.7px;
  text-transform:uppercase;
}
.ip-pagepack .ip-page-hero h1{
  margin:24px 0 12px;
  font:clamp(60px,9vw,116px)/.9 Impact,"Arial Black",sans-serif;
  text-transform:uppercase;
  letter-spacing:2px;
  text-shadow:0 7px 0 #1a5d2f,0 14px 28px #0008;
}
.ip-pagepack .ip-page-hero p{
  max-width:760px;
  margin:24px auto 0;
  color:#e6ede7;
  font-size:clamp(18px,2vw,24px);
}

/* COMMON */
.ip-pagepack .ip-sec{padding:92px 0}
.ip-pagepack .ip-dark{background:var(--ip-dark)}
.ip-pagepack .ip-darker{background:var(--ip-darker)}
.ip-pagepack .ip-section-heading{margin-bottom:42px}
.ip-pagepack .ip-kicker{
  display:block;
  margin:0 0 10px;
  color:var(--ip-lime);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:1.6px;
  font-size:13px;
}
.ip-pagepack .ip-h2{
  margin:0;
  font:clamp(40px,5vw,68px)/1 Impact,"Arial Black",sans-serif;
  text-transform:uppercase;
  letter-spacing:1px;
}
.ip-pagepack .ip-lead{
  max-width:760px;
  margin:18px 0 0;
  color:var(--ip-muted);
  font-size:18px;
}
.ip-pagepack .ip-badge{
  display:inline-block;
  margin-bottom:12px;
  padding:6px 9px;
  background:var(--ip-g);
  color:#081109;
  font-weight:900;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:1px;
}
.ip-pagepack .ip-badge-cyan{background:var(--ip-cyan)}
.ip-pagepack .ip-badge-red{background:var(--ip-red);color:#fff}
.ip-pagepack .ip-btn{
  appearance:none;
  display:inline-block;
  min-width:180px;
  border:0;
  padding:16px 24px;
  cursor:pointer;
  text-align:center;
  font-weight:900;
  letter-spacing:.8px;
  text-transform:uppercase;
  transition:transform .18s ease,filter .18s ease;
}
.ip-pagepack .ip-btn:hover{transform:translateY(-3px);filter:brightness(1.08)}
.ip-pagepack .ip-primary{
  background:var(--ip-g);
  color:#081109;
  border-bottom:5px solid var(--ip-gd);
  box-shadow:var(--ip-shadow);
}
.ip-pagepack .ip-ghost{
  background:transparent;
  color:#fff;
  border:1px solid rgba(255,255,255,.26);
}
.ip-pagepack .ip-actions-inline{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:24px;
}

/* GAMEMODES */
.ip-pagepack .ip-mode-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:28px;
  align-items:stretch;
  margin-top:34px;
}
.ip-pagepack .ip-mode-reverse .ip-mode-art{order:2}
.ip-pagepack .ip-mode-reverse .ip-mode-copy{order:1}
.ip-pagepack .ip-mode-art,
.ip-pagepack .ip-mode-copy{
  min-height:460px;
  border:1px solid var(--ip-line);
  box-shadow:var(--ip-shadow);
}
.ip-pagepack .ip-mode-art{
  display:grid;
  place-items:center;
  padding:24px;
  background:#0c120e;
  overflow:hidden;
}
.ip-pagepack .ip-mode-art img{
  width:100%;
  height:100%;
  max-height:520px;
  object-fit:contain;
  transition:transform .35s ease;
}
.ip-pagepack .ip-mode-row:hover .ip-mode-art img{transform:scale(1.035)}
.ip-pagepack .ip-mode-copy{
  padding:40px;
  background:var(--ip-panel);
}
.ip-pagepack .ip-mode-copy h2{
  margin:0 0 12px;
  font:clamp(44px,5vw,70px)/1 Impact,"Arial Black",sans-serif;
  text-transform:uppercase;
}
.ip-pagepack .ip-mode-copy p,
.ip-pagepack .ip-mode-copy li{
  color:var(--ip-muted);
}
.ip-pagepack .ip-mode-copy ul{padding-left:20px}
.ip-pagepack .ip-mode-copy li{margin:7px 0}
.ip-pagepack .ip-green-edge{border-left:6px solid var(--ip-g)}
.ip-pagepack .ip-cyan-edge{border-left:6px solid var(--ip-cyan)}
.ip-pagepack .ip-red-edge{border-left:6px solid var(--ip-red)}

/* INKY / INFO */
.ip-pagepack .ip-profile-grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:28px;
}
.ip-pagepack .ip-profile-art,
.ip-pagepack .ip-profile-copy{
  min-height:480px;
  border:1px solid var(--ip-line);
  box-shadow:var(--ip-shadow);
}
.ip-pagepack .ip-profile-art{
  display:grid;
  place-items:center;
  padding:30px;
  background:#0c120e;
}
.ip-pagepack .ip-profile-art img{
  width:100%;
  height:100%;
  object-fit:contain;
  max-height:440px;
}
.ip-pagepack .ip-profile-copy{
  padding:44px;
  background:var(--ip-panel);
}
.ip-pagepack .ip-profile-copy p{color:var(--ip-muted)}
.ip-pagepack .ip-info-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.ip-pagepack .ip-info-card{
  padding:26px;
  background:var(--ip-panel);
  border:1px solid var(--ip-line);
  border-left:5px solid var(--ip-g);
  box-shadow:var(--ip-shadow);
  transition:transform .2s ease,border-color .2s ease;
}
.ip-pagepack .ip-info-card:hover{transform:translateY(-6px);border-color:#b7ef6866}
.ip-pagepack .ip-info-card h3{
  margin:0 0 8px;
  color:#fff;
  font:28px/1.05 Impact,"Arial Black",sans-serif;
  text-transform:uppercase;
}
.ip-pagepack .ip-info-card p{margin:0;color:var(--ip-muted)}

/* RULES */
.ip-pagepack .ip-rules-list{display:grid;gap:14px}
.ip-pagepack .ip-rule{
  background:var(--ip-panel);
  border:1px solid var(--ip-line);
}
.ip-pagepack .ip-rule summary{
  cursor:pointer;
  padding:22px 24px;
  font:30px Impact,"Arial Black",sans-serif;
  text-transform:uppercase;
}
.ip-pagepack .ip-rule>div{padding:0 24px 24px}
.ip-pagepack .ip-rule h3{margin:18px 0 5px;color:var(--ip-lime)}
.ip-pagepack .ip-rule p{margin:0 0 12px;color:var(--ip-muted)}
.ip-pagepack .ip-warning{
  margin-top:30px;
  padding:22px;
  background:#261b11;
  border-left:5px solid #eab308;
  color:#e8dfcf;
}

/* JOIN */
.ip-pagepack .ip-connect-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
}
.ip-pagepack .ip-connect-card{
  padding:38px;
  text-align:center;
  background:var(--ip-panel);
  border:1px solid var(--ip-line);
  box-shadow:var(--ip-shadow);
}
.ip-pagepack .ip-connect-card h2{
  margin:14px 0 8px;
  color:var(--ip-lime);
  font:clamp(34px,5vw,58px)/1 Impact,"Arial Black",sans-serif;
}
.ip-pagepack .ip-connect-card p{color:var(--ip-muted)}
.ip-pagepack .ip-help-card{
  padding:40px;
  background:var(--ip-panel);
  border:1px solid var(--ip-line);
  box-shadow:var(--ip-shadow);
}
.ip-pagepack .ip-help-card li{margin:8px 0;color:var(--ip-muted)}

/* GALLERY */
.ip-pagepack .ip-gallery-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}
.ip-pagepack .ip-gallery-card{
  margin:0;
  overflow:hidden;
  background:var(--ip-panel);
  border:1px solid var(--ip-line);
  box-shadow:var(--ip-shadow);
  transition:transform .2s ease,border-color .2s ease;
}
.ip-pagepack .ip-gallery-card:hover{transform:translateY(-6px);border-color:#b7ef6866}
.ip-pagepack .ip-gallery-card img{
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
  display:block;
  transition:transform .35s ease;
}
.ip-pagepack .ip-gallery-card:hover img{transform:scale(1.045)}
.ip-pagepack .ip-gallery-card figcaption{padding:18px 20px}
.ip-pagepack .ip-gallery-card strong{display:block;color:#fff;text-transform:uppercase}
.ip-pagepack .ip-gallery-card span{color:var(--ip-muted)}

/* ROADMAP */
.ip-pagepack .ip-roadmap-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.ip-pagepack .ip-roadmap-card{
  padding:34px 30px;
  background:var(--ip-panel);
  border:1px solid var(--ip-line);
  box-shadow:var(--ip-shadow);
}
.ip-pagepack .ip-roadmap-card h2{
  margin:15px 0 12px;
  font:42px Impact,"Arial Black",sans-serif;
  text-transform:uppercase;
}
.ip-pagepack .ip-roadmap-card li{margin:8px 0;color:var(--ip-muted)}
.ip-pagepack .ip-roadmap-tag{
  display:inline-block;
  padding:7px 10px;
  font-size:11px;
  font-weight:900;
  letter-spacing:1px;
  text-transform:uppercase;
}
.ip-pagepack .ip-tag-done{background:var(--ip-g);color:#071008}
.ip-pagepack .ip-tag-dev{background:#eab308;color:#111}
.ip-pagepack .ip-tag-plan{background:var(--ip-cyan);color:#061016}

/* FORMS */
.ip-pagepack .ip-form-layout{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:28px;
}
.ip-pagepack .ip-form-info,
.ip-pagepack .ip-form-panel{
  padding:38px;
  background:var(--ip-panel);
  border:1px solid var(--ip-line);
  box-shadow:var(--ip-shadow);
}
.ip-pagepack .ip-form-info li{margin:8px 0;color:var(--ip-muted)}
.ip-pagepack .ip-form-panel p{color:var(--ip-muted)}

/* UPDATES */
.ip-updates-area{
  width:100vw;
  margin-left:calc(50% - 50vw);
  padding:0 0 92px;
  background:var(--ip-dark);
  color:#fff;
  font-family:Arial,Helvetica,sans-serif;
}
.ip-updates-area .ip-wrap{width:min(1180px,92%);margin:auto}
.ip-updates-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.ip-update-card{
  overflow:hidden;
  background:var(--ip-panel);
  border:1px solid var(--ip-line);
  box-shadow:var(--ip-shadow);
}
.ip-update-image{
  display:block;
  aspect-ratio:16/10;
  overflow:hidden;
  background:#111912;
}
.ip-update-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .35s ease;
}
.ip-update-card:hover .ip-update-image img{transform:scale(1.045)}
.ip-update-placeholder{
  display:grid;
  place-items:center;
  color:var(--ip-lime);
  font:76px Impact,"Arial Black",sans-serif;
}
.ip-update-body{padding:24px}
.ip-update-category{
  display:inline-block;
  padding:6px 9px;
  background:var(--ip-g);
  color:#071008;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
}
.ip-update-body h3{
  margin:14px 0 7px;
  font:30px/1.05 Impact,"Arial Black",sans-serif;
  text-transform:uppercase;
}
.ip-update-body h3 a{color:#fff;text-decoration:none}
.ip-update-meta{color:#849087;font-size:12px}
.ip-update-body p{color:var(--ip-muted);line-height:1.55}
.ip-update-read{color:var(--ip-lime);font-size:12px;font-weight:900;text-transform:uppercase;text-decoration:none}
.ip-updates-empty{
  width:min(900px,92%);
  margin:30px auto 90px;
  padding:24px;
  background:var(--ip-panel);
  border:1px dashed #b7ef6873;
  color:var(--ip-muted);
}

/* FOOTER */
.ip-pagepack .ip-foot{
  padding:34px 0;
  background:#080d09;
  border-top:1px solid var(--ip-line);
  color:#9da89f;
  font-size:14px;
}
.ip-pagepack .ip-footin{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  flex-wrap:wrap;
}
.ip-pagepack .ip-foot a{color:#d9e1da;margin-left:18px}
.ip-pagepack .ip-foot a:hover{color:var(--ip-lime)}

/* ANIMATIONS */
.ip-reveal{
  opacity:0;
  transition:
    opacity .72s ease,
    transform .72s cubic-bezier(.2,.75,.25,1);
  will-change:opacity,transform;
}
.ip-reveal.ip-up{transform:translateY(34px)}
.ip-reveal.ip-left{transform:translateX(-64px)}
.ip-reveal.ip-right{transform:translateX(64px)}
.ip-reveal.is-visible{opacity:1;transform:none}
.ip-info-grid .ip-reveal:nth-child(2),
.ip-gallery-grid .ip-reveal:nth-child(2),
.ip-updates-grid .ip-reveal:nth-child(2){transition-delay:.08s}
.ip-info-grid .ip-reveal:nth-child(3),
.ip-gallery-grid .ip-reveal:nth-child(3),
.ip-updates-grid .ip-reveal:nth-child(3){transition-delay:.16s}
.ip-info-grid .ip-reveal:nth-child(4),
.ip-gallery-grid .ip-reveal:nth-child(4){transition-delay:.24s}

/* Forminator styling */
.forminator-ui.forminator-custom-form{
  width:min(900px,92%)!important;
  margin:0 auto 92px!important;
  padding:32px!important;
  background:var(--ip-panel)!important;
  border:1px solid var(--ip-line)!important;
  box-shadow:var(--ip-shadow)!important;
}
.forminator-ui .forminator-label{color:#fff!important;font-weight:800!important}
.forminator-ui input,
.forminator-ui textarea,
.forminator-ui select{
  background:#0c120e!important;
  color:#fff!important;
  border:1px solid var(--ip-line)!important;
}
.forminator-ui .forminator-button-submit{
  background:var(--ip-g)!important;
  color:#071008!important;
  font-weight:900!important;
  text-transform:uppercase!important;
}

/* Single update posts and comments */
.single-post .site-main,
.single-post main{
  background:var(--ip-bg);
}
.single-post article.post{
  width:min(980px,92%);
  margin:50px auto;
  padding:38px;
  background:var(--ip-panel);
  border:1px solid var(--ip-line);
  color:#fff;
}
.single-post article.post h1,
.single-post article.post h2,
.single-post article.post h3{color:#fff}
.single-post article.post p,
.single-post article.post li{color:var(--ip-muted)}
.single-post #comments{
  width:min(980px,92%);
  margin:30px auto 80px;
  padding:30px;
  background:var(--ip-panel);
  border:1px solid var(--ip-line);
  color:#fff;
}
.single-post #comments input,
.single-post #comments textarea{
  width:100%;
  background:#0c120e;
  color:#fff;
  border:1px solid var(--ip-line);
  padding:12px;
}
.single-post #comments input[type=submit]{
  width:auto;
  background:var(--ip-g);
  color:#071008;
  font-weight:900;
  border:0;
  padding:13px 20px;
}

/* RESPONSIVE */
@media(max-width:980px){
  .ip-pagepack .ip-menu a:not(.ip-play){display:none}
  .ip-pagepack .ip-mode-row,
  .ip-pagepack .ip-profile-grid,
  .ip-pagepack .ip-form-layout{grid-template-columns:1fr}
  .ip-pagepack .ip-mode-reverse .ip-mode-art,
  .ip-pagepack .ip-mode-reverse .ip-mode-copy{order:initial}
  .ip-pagepack .ip-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ip-pagepack .ip-roadmap-grid{grid-template-columns:1fr}
  .ip-updates-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:700px){
  .ip-pagepack .ip-page-hero{min-height:480px}
  .ip-pagepack .ip-page-hero h1{font-size:58px}
  .ip-pagepack .ip-sec{padding:70px 0}
  .ip-pagepack .ip-actions-inline{flex-direction:column}
  .ip-pagepack .ip-btn{width:100%}
  .ip-pagepack .ip-connect-grid,
  .ip-pagepack .ip-info-grid,
  .ip-pagepack .ip-gallery-grid{grid-template-columns:1fr}
  .ip-updates-grid{grid-template-columns:1fr}
  .ip-pagepack .ip-footin{justify-content:center;text-align:center}
  .ip-pagepack .ip-foot a{margin:0 8px}
  .ip-reveal.ip-left,
  .ip-reveal.ip-right{transform:translateY(34px)}
}

@media(prefers-reduced-motion:reduce){
  .ip-reveal{opacity:1!important;transform:none!important;transition:none!important}
}
