*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--navy:#0B1020;--navy2:#151A2E;--navy3:#1c2340;--orange:#FF6B2C;--orange-h:#FF844D;--text:#F5F5F5;--muted:#9CA3AF;--border:rgba(255,255,255,0.08);--radius:12px}
html{scroll-behavior:smooth}
body{font-family:'Space Grotesk',sans-serif;background:var(--navy);color:var(--text);overflow-x:hidden;line-height:1.6}
img{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
ul{list-style:none}

/* NAV */
.ipg-nav{position:fixed;top:16px;left:2%;right:2%;width:auto;z-index:100;height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 1.75rem;border-radius:14px;transition:.3s}
.ipg-nav.scrolled{background:rgba(11,16,32,.96);backdrop-filter:blur(14px);border:1px solid var(--border);box-shadow:0 8px 32px rgba(0,0,0,.25)}
.logo-img{height:74px;width:auto;display:block;object-fit:contain}
.logo{display:flex;align-items:center;gap:10px}
.logo-mark{width:36px;height:36px;border-radius:8px;background:var(--orange);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;color:#fff}
.logo-text{font-weight:700;font-size:1rem}
.site-nav-links{display:flex;gap:2.5rem}
.site-nav-links a{color:var(--muted);font-size:.875rem;font-weight:500;transition:color .2s}
.site-nav-links a:hover{color:var(--text)}
.nav-cta{padding:.5rem 1.25rem;background:var(--orange);color:#fff;border-radius:6px;font-size:.875rem;font-weight:600;transition:.2s}
.nav-cta:hover{background:var(--orange-h)}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px}
.hamburger span{width:22px;height:2px;background:var(--text);border-radius:2px;display:block}
.mob-menu{display:none;position:fixed;inset:0;top:68px;background:rgba(11,16,32,.98);z-index:99;flex-direction:column;align-items:center;justify-content:center;gap:2rem}
.mob-menu.open{display:flex}
.mob-menu a{font-size:1.2rem;color:var(--text);font-weight:500}
.mob-menu .nav-cta{font-size:1rem;padding:.7rem 2rem}

/* HERO */
.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:120px 6% 80px;position:relative;overflow:hidden;text-align:center;background-size:cover;background-position:center;background-repeat:no-repeat}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(11,16,32,.82) 0%,rgba(11,16,32,.65) 50%,rgba(11,16,32,.88) 100%);z-index:0}
.hero::before{content:'';position:absolute;top:-200px;left:50%;transform:translateX(-50%);width:700px;height:700px;background:radial-gradient(circle,rgba(255,107,44,.12) 0%,transparent 65%);pointer-events:none;z-index:1}
.hero-body{position:relative;z-index:2;max-width:800px;width:100%}
.hero-label{display:inline-flex;align-items:center;gap:8px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--orange);margin-bottom:1.25rem}
.hero-label::before{content:'';width:24px;height:2px;background:var(--orange);border-radius:2px}
.hero h1{font-family:'Bebas Neue',sans-serif;font-size:clamp(3.2rem,7vw,7rem);font-weight:400;line-height:1;margin-bottom:1.25rem;letter-spacing:.02em}
.hero h1 em{font-style:normal;color:var(--orange)}
.hero p{color:var(--muted);font-size:1rem;line-height:1.8;max-width:520px;margin:0 auto 2rem;font-family:'Inter',sans-serif}
.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}
.btn-primary{padding:.72rem 1.75rem;background:var(--orange);color:#fff;border-radius:6px;font-weight:600;font-size:.9rem;transition:.2s;display:inline-block}
.btn-primary:hover{background:var(--orange-h);transform:translateY(-1px)}
.btn-outline{padding:.72rem 1.75rem;border:1px solid var(--border);color:var(--text);border-radius:6px;font-weight:500;font-size:.9rem;transition:.2s;display:inline-block}
.btn-outline:hover{border-color:rgba(255,255,255,.3);transform:translateY(-1px)}
.hero-stats{display:flex;gap:2.5rem;margin-top:3rem;padding-top:2.5rem;border-top:1px solid var(--border);flex-wrap:wrap;justify-content:center}
.hero-stat strong{display:block;font-family:'Bebas Neue',sans-serif;font-size:2.2rem;letter-spacing:.04em;line-height:1}
.hero-stat span{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-top:.25rem;display:block}

/* SHARED SECTION */
section{padding:90px 6%}
.tag{display:inline-block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--orange);margin-bottom:.75rem}
h2.title{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.4rem,4.5vw,3.8rem);font-weight:400;line-height:1.05;letter-spacing:.02em;margin-bottom:.9rem}
.sub{color:var(--muted);font-size:.95rem;line-height:1.75;max-width:480px;font-family:'Inter',sans-serif}
.center{text-align:center}
.center .sub{margin:0 auto}

/* ABOUT */
.about{background:var(--navy2)}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.about-img{border-radius:16px;overflow:hidden;border:1px solid var(--border);aspect-ratio:4/5;background:var(--navy3)}
.about-img img{width:100%;height:100%;object-fit:cover}
.about-body .sub{max-width:100%;margin-bottom:2rem}
.pills{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:2rem}
.pill{padding:.35rem .9rem;border-radius:50px;border:1px solid var(--border);font-size:.78rem;font-weight:500;color:var(--muted)}
.about-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.a-stat{background:var(--navy3);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1rem;text-align:center}
.a-stat strong{display:block;font-family:'Bebas Neue',sans-serif;font-size:2rem;letter-spacing:.04em;color:var(--orange);line-height:1}
.a-stat span{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;margin-top:.35rem;display:block}

/* GAMES */
.games{background:var(--navy)}
.games-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:2.5rem;flex-wrap:wrap;gap:1rem}
.games-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.card{background:var(--navy2);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:.25s;display:flex;flex-direction:column}
.card:hover{border-color:rgba(255,107,44,.35);transform:translateY(-4px)}
.card-img{width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--navy3);display:block}
.card-body{padding:1.1rem;flex:1}
.card-cat{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--orange);margin-bottom:.4rem;display:block}
.card-body h3{font-size:.95rem;font-weight:600;margin-bottom:.4rem}
.card-body p{font-size:.8rem;color:var(--muted);line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-family:'Inter',sans-serif}
.card-footer{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.1rem;border-top:1px solid var(--border)}
.platform{display:flex;gap:.4rem}
.plat{font-size:.65rem;font-weight:600;padding:.15rem .55rem;border-radius:4px;background:rgba(255,255,255,.06);color:var(--muted)}
.card-link{font-size:.8rem;font-weight:600;color:var(--orange)}

/* SERVICES */
.services{background:var(--navy2)}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:3rem}
.svc{background:var(--navy3);border:1px solid var(--border);border-radius:var(--radius);padding:1.75rem;transition:.25s;position:relative;overflow:hidden}
.svc::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.svc:hover{border-color:rgba(255,107,44,.25);transform:translateY(-3px)}
.svc:hover::after{transform:scaleX(1)}
.svc-icon{width:44px;height:44px;border-radius:10px;background:rgba(255,107,44,.1);border:1px solid rgba(255,107,44,.2);display:flex;align-items:center;justify-content:center;font-size:1.2rem;margin-bottom:1.1rem}
.svc h3{font-size:.95rem;font-weight:600;margin-bottom:.5rem}
.svc p{font-size:.82rem;color:var(--muted);line-height:1.65;font-family:'Inter',sans-serif}

/* PROCESS */
.process{background:var(--navy)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-top:3rem;position:relative;list-style:none}
.steps::after{content:'';position:absolute;top:28px;left:calc(12.5% + 28px);right:calc(12.5% + 28px);height:1px;background:var(--border)}
.step{text-align:center;padding:.5rem 1rem}
.step-n{width:56px;height:56px;border-radius:50%;background:var(--navy2);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem;font-size:.9rem;font-weight:700;color:var(--muted);position:relative;z-index:1}
.step.active .step-n{background:var(--orange);border-color:var(--orange);color:#fff}
.step h4{font-size:.9rem;font-weight:600;margin-bottom:.4rem}
.step p{font-size:.8rem;color:var(--muted);line-height:1.6;font-family:'Inter',sans-serif}

/* CTA */
.cta-section{background:var(--navy2);padding:90px 6%}
.cta-box{background:var(--navy3);border:1px solid var(--border);border-radius:20px;padding:5rem;text-align:center;position:relative;overflow:hidden}
.cta-box::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 80% at 50% 100%,rgba(255,107,44,.08),transparent);pointer-events:none}
.cta-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:2rem;position:relative}

/* FOOTER */
footer{background:var(--navy);border-top:1px solid var(--border);padding:4rem 6% 2rem}
.footer-grid{display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:3rem;margin-bottom:3rem}
.footer-desc{font-size:.83rem;color:var(--muted);line-height:1.7;max-width:220px;font-family:'Inter',sans-serif;margin-top:.9rem}
.footer-socials{display:flex;gap:.6rem;margin-top:1.25rem}
.soc{width:34px;height:34px;border-radius:50%;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:.75rem;font-weight:700;transition:.2s}
.soc:hover{border-color:var(--orange);color:var(--orange)}
.footer-col h5{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--orange);margin-bottom:1rem}
.footer-col ul li{margin-bottom:.55rem}
.footer-col ul li a{font-size:.83rem;color:var(--muted);transition:color .2s}
.footer-col ul li a:hover{color:var(--text)}
.footer-bottom{border-top:1px solid var(--border);padding-top:1.5rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}
.footer-bottom p{font-size:.78rem;color:var(--muted)}

/* PAGINATION */
.navigation.pagination{padding:2rem 0}
.pagination .nav-links{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 .5rem;border-radius:6px;border:1px solid var(--border);color:var(--muted);font-size:.83rem;font-weight:500;transition:.2s}
.pagination .page-numbers:hover{border-color:var(--orange);color:var(--orange)}
.pagination .page-numbers.current{background:var(--orange);border-color:var(--orange);color:#fff}
.pagination .page-numbers.dots{border:none;background:none}

/* ANIMATIONS */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}
.reveal.on{opacity:1;transform:none}

/* SINGLE GAME */
.single-game-hero{padding:120px 6% 60px;background:var(--navy2)}
.single-game-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start;padding:60px 6%;max-width:1200px;margin:0 auto}
.game-meta{display:flex;flex-direction:column;gap:1rem}
.game-meta-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}
.game-store-links{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1rem}
.game-rating{font-family:'Bebas Neue',sans-serif;font-size:3rem;color:var(--orange);letter-spacing:.04em}

/* ARCHIVE */
.archive-header{padding:120px 6% 50px;background:var(--navy2)}
.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;padding:60px 6%}

/* PAGE / 404 */
.page-wrap{padding:120px 6% 80px;max-width:860px;margin:0 auto;min-height:70vh}
.page-wrap h1{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.4rem,5vw,4rem);margin-bottom:1.5rem}
.page-wrap .entry-content{color:var(--muted);font-family:'Inter',sans-serif;line-height:1.8}
.page-wrap .entry-content p{margin-bottom:1.25rem}
.not-found-code{font-family:'Bebas Neue',sans-serif;font-size:8rem;color:var(--orange);line-height:1;letter-spacing:.04em}

/* RESPONSIVE */
@media(max-width:960px){
    .ipg-nav{top:0;left:0;right:0;width:100%;border-radius:0;padding:0 6%}
    .site-nav-links,.nav-cta{display:none}
    .hamburger{display:flex}
    .hero-inner{grid-template-columns:1fr}
    .hero-cards{display:none}
    .about-grid{grid-template-columns:1fr}
    .games-grid{grid-template-columns:repeat(2,1fr)}
    .services-grid{grid-template-columns:1fr 1fr}
    .steps{grid-template-columns:1fr 1fr}
    .steps::after{display:none}
    .footer-grid{grid-template-columns:1fr 1fr}
    .single-game-grid{grid-template-columns:1fr}
    .archive-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:600px){
    .games-grid,.services-grid,.archive-grid{grid-template-columns:1fr}
    .steps{grid-template-columns:1fr}
    .footer-grid{grid-template-columns:1fr}
    .about-stats{grid-template-columns:1fr 1fr}
    .cta-box{padding:2.5rem 1.5rem}
    .hero-stats{flex-wrap:wrap;gap:1.5rem}
}