@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--ink:#14231c;--paper:#edf0df;--green:#9efc74;--gold:#d99d25;--line:#c5cebc;--muted:#56634f;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0}img{max-width:100%;height:auto;display:block}a{color:inherit}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #268642;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Barlow Condensed','Arial Narrow',Arial,sans-serif;font-weight:800}h1{font-size:clamp(56px,6.7vw,106px);line-height:.91;letter-spacing:-2px;text-transform:uppercase}h2{font-size:clamp(38px,4.7vw,66px);line-height:1;text-transform:uppercase}h3{font-size:30px;line-height:1.1}p{line-height:1.65}figure{margin:0}.wrap{width:min(1280px,calc(100% - 80px));margin:auto}.kicker{font:600 11px/1.5 'DM Sans',Arial,sans-serif;letter-spacing:2px;text-transform:uppercase}.green{color:var(--green)}.dark{background:var(--ink);color:var(--paper)}.dark p{color:#c8d2c2}.site-header{background:var(--ink);color:var(--paper);border-bottom:1px solid #344238}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:100px}.logo{width:166px;height:auto}.nav{display:flex;align-items:center;flex-wrap:wrap;gap:28px}.nav a{text-decoration:none;font-size:13px;min-height:44px;display:inline-flex;align-items:center}.nav .design-link{color:var(--green);font-size:12px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:14px 23px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);text-decoration:none;font-size:13px;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button.outline{background:transparent;color:inherit;border-color:#8c9984}.dark .button{background:var(--green);color:var(--ink);border-color:var(--green)}.dark .button.outline{background:transparent;color:var(--paper);border-color:#71806b}.hero-grid{display:grid;grid-template-columns:.86fr 1.14fr}.company-half{background:var(--ink);color:var(--paper);padding:60px max(40px,calc((100vw - 1280px)/2)) 48px;position:relative}.company-half h1{margin:24px 0;font-size:clamp(52px,6vw,88px)}.company-half p{max-width:350px;color:#c8d2c2;font-size:16px}.game-half{padding:52px max(40px,calc((100vw - 1280px)/2)) 45px 48px}.game-half h2{margin:17px 0;font-size:clamp(45px,5.4vw,78px)}.game-half>p{max-width:430px;font-size:16px}.hero-image{margin-top:30px;border:1px solid #9daa8e}.hero-image img{width:100%;aspect-ratio:1.6;object-fit:contain;background:#143720}.caption{font-size:10px;letter-spacing:1.4px;text-transform:uppercase;display:flex;justify-content:space-between;gap:15px;margin-top:10px}.squad-mini{display:flex;gap:12px;margin-top:42px;align-items:flex-end}.squad-mini img{width:calc((100% - 24px)/3);max-width:100px;image-rendering:pixelated;box-shadow:5px 5px 0 #0a150e;transition:transform .2s}.squad-mini img:nth-child(2){transform:translateY(-14px)}.squad-mini img:hover{transform:translateY(-18px) rotate(-3deg)}.ticker{padding:17px 0;border-top:1px solid #bac6b0;border-bottom:1px solid #bac6b0;font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}.ticker .wrap{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}.section{padding:86px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:35px}.section-head h2{margin-top:12px}.section-head p{max-width:360px;font-size:14px}.mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.mode{border-top:2px solid currentColor;padding-top:22px}.mode h3{margin:12px 0}.mode p{max-width:500px;font-size:15px}.mode img{margin-top:26px;aspect-ratio:1.6;object-fit:contain;width:100%;background:#082016}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.shot-button{display:block;padding:0;border:0;width:100%;background:transparent;color:inherit;text-align:left}.shot-button img{width:100%;aspect-ratio:1.6;object-fit:contain;background:#082016;transition:filter .2s}.shot-button:hover img{filter:brightness(1.12)}.shot-button span{display:block;font-size:12px;margin-top:12px}.player-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;margin-top:38px}.player-card{transition:transform .2s;transform:rotate(-2deg)}.player-card:nth-child(even){transform:rotate(2deg)}.player-card:hover{transform:translateY(-12px) rotate(0)}.player-card img{width:100%;image-rendering:pixelated}.player-card figcaption{padding:12px;background:var(--ink);color:var(--paper);display:flex;justify-content:space-between;font-size:11px}.studio-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px;align-items:center}.studio-grid img{width:230px}.studio-grid p{max-width:640px;margin-top:23px}.studio-grid h2{margin-top:14px}.release{padding:45px 0;border-top:1px solid #b9c5af}.release .wrap{display:flex;justify-content:space-between;align-items:center;gap:25px}.release h3{font-size:34px}.release p{margin-top:8px;font-size:13px}.footer{padding:32px 0;background:var(--ink);color:var(--paper);font-size:12px}.footer .wrap{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.footer-links{display:flex;gap:22px}.footer a{text-decoration:none}.preview-bar{background:#0b140e;color:#b8c7ad;padding:11px 20px;font-size:11px;display:flex;justify-content:center;align-items:center;gap:18px;flex-wrap:wrap}.preview-bar a{text-decoration:none;min-height:24px;display:inline-flex;align-items:center}.preview-bar a[aria-current]{color:var(--green);text-decoration:underline;text-underline-offset:4px}
/* Matchday: editorial masthead, oversize player cards, full-width stadium. */
.matchday{--paper:#f2eedf;--ink:#17251e}.matchday .hero-grid{grid-template-columns:1fr 1fr}.matchday .company-half{padding-top:65px;background:#17251e}.matchday .company-half h1{font-size:clamp(65px,7vw,112px)}.matchday .game-half{padding-top:65px}.matchday .game-half h2{font-size:clamp(50px,6vw,90px)}.cover-players{display:flex;gap:15px;align-items:flex-end;margin-top:30px}.cover-players img{width:calc((100% - 30px)/3);max-width:130px;image-rendering:pixelated;border:5px solid #14231c}.cover-players img:nth-child(1){transform:rotate(-7deg)}.cover-players img:nth-child(2){transform:translateY(-15px)}.cover-players img:nth-child(3){transform:rotate(7deg)}.matchday .game-half .issue{border-top:2px solid var(--ink);padding-top:16px;margin-top:30px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:1px}.stadium-section{padding:48px 0;background:#17251e;color:var(--paper)}.stadium-section .section-head{margin-bottom:28px}.stadium-section .shot-button img{aspect-ratio:1.6}.matchday .mode-grid{gap:60px}.matchday .mode{display:grid;grid-template-columns:76px 1fr;column-gap:20px}.mode-num{font-family:'Barlow Condensed',sans-serif;font-size:72px;color:#829774;line-height:1}.matchday .mode img{grid-column:1/-1}.matchday .player-grid{grid-template-columns:repeat(4,1fr);max-width:950px;margin:40px auto 0;gap:30px}.matchday .player-card{border:8px solid var(--paper);box-shadow:8px 8px 0 #09160f}.matchday .player-card figcaption{background:var(--paper);color:var(--ink)}.matchday .player-section{background:#22372a;color:var(--paper)}
/* Player Select: compact split intro and an interactive character showcase. */
.player-select{--paper:#e6eddb;--ink:#101e17}.player-select .hero-grid{grid-template-columns:.9fr 1.1fr}.player-select .company-half{background:#101e17;display:flex;flex-direction:column;justify-content:center}.player-select .game-half{background:#e6eddb}.player-select .game-half h2{font-size:clamp(46px,5.2vw,76px)}.portrait-stage{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center;margin-top:26px}.portrait-frame{position:relative;background:var(--gold);padding:14px;box-shadow:8px 8px 0 #17281d}.portrait-frame img{width:100%;max-height:260px;object-fit:contain;image-rendering:pixelated}.portrait-stage h3{font-size:38px}.portrait-stage p{font-size:13px;margin:13px 0}.portrait-label{font-size:11px;letter-spacing:1.2px;text-transform:uppercase}.picker{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:25px}.pick{padding:3px;background:#c4ceb7;border:2px solid transparent;min-height:48px;transition:transform .15s}.pick img{width:100%;aspect-ratio:.7;object-fit:cover;object-position:top;image-rendering:pixelated}.pick[aria-pressed=true]{border-color:var(--ink);background:var(--green);transform:translateY(-5px)}.pick:hover{transform:translateY(-5px)}.feature-showcase{display:grid;grid-template-columns:.65fr 1.35fr;align-items:center;gap:45px}.feature-showcase h2{margin:15px 0 22px}.feature-showcase p{font-size:15px}.feature-showcase img{width:100%;aspect-ratio:1.6;object-fit:contain;background:#082016}.career-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:30px 0 20px}.career-tab{padding:12px 20px;border:1px solid #9eac92;background:transparent;color:var(--ink);font-size:13px;min-height:44px}.career-tab[aria-selected=true]{background:var(--ink);color:var(--paper)}.career-screen img{width:100%;aspect-ratio:1.6;object-fit:contain;background:#082016}.career-screen figcaption{font-size:14px;margin-top:15px}.comparison{padding:65px 0}.comparison h1{max-width:850px;margin:20px 0}.comparison>p{max-width:700px}.concept-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:45px}.concept{background:var(--ink);color:var(--paper);padding:24px;text-decoration:none;display:flex;flex-direction:column;gap:20px}.concept img{width:100%;aspect-ratio:1.6;object-fit:contain}.concept h2{font-size:38px}.concept p{font-size:14px;color:#c8d2c2}.concept span{margin-top:auto;font-size:13px;color:var(--green)}
dialog{border:0;padding:0;background:#0b180f;color:var(--paper);width:min(1080px,calc(100% - 30px));max-height:92vh}dialog::backdrop{background:#051009e8}.dialog-top{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:15px 20px;font-size:13px}.dialog-close{background:var(--paper);color:var(--ink);border:0;padding:10px 18px;min-height:44px}.dialog-media img{width:100%;max-height:75vh;object-fit:contain}.dialog-media video{width:100%;max-height:75vh;background:#000}.skip{position:absolute;left:15px;top:-100px;background:var(--green);color:var(--ink);padding:15px;z-index:5}.skip:focus{top:15px}
@media(min-width:1600px){.company-half{padding-right:70px}.game-half{padding-left:65px}}
@media(max-width:1050px){.wrap{width:calc(100% - 48px)}.company-half{padding:45px 24px}.game-half{padding:45px 24px}.hero-grid,.matchday .hero-grid,.player-select .hero-grid{grid-template-columns:1fr 1fr}.nav{gap:18px}.company-half h1{font-size:68px}.player-grid{gap:12px}.feature-showcase{gap:30px}.portrait-stage{gap:16px}.portrait-stage h3{font-size:30px}.picker{gap:6px}.concept-grid{gap:15px}}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}.header-inner{min-height:85px;gap:10px;flex-wrap:wrap;padding:18px 0}.logo{width:140px}.nav{gap:16px}.nav a{font-size:12px}.hero-grid,.matchday .hero-grid,.player-select .hero-grid{grid-template-columns:1fr}.company-half,.game-half,.matchday .company-half,.matchday .game-half{padding:40px 18px}.company-half h1,.matchday .company-half h1{font-size:72px}.company-half p{max-width:500px}.squad-mini{margin-top:32px}.game-half h2,.matchday .game-half h2{font-size:64px}.section{padding:56px 0}.section-head{display:block}.section-head p{margin-top:20px;max-width:500px}.mode-grid{grid-template-columns:1fr;gap:35px}.gallery-grid{grid-template-columns:1fr 1fr;gap:18px}.gallery-grid figure:last-child{grid-column:1/-1}.player-grid{grid-template-columns:repeat(3,1fr);gap:20px 12px}.studio-grid{grid-template-columns:1fr;gap:30px}.studio-grid img{width:180px}.release .wrap{display:block}.release .actions{margin-top:22px}.matchday .player-grid{grid-template-columns:repeat(2,1fr);gap:30px 20px}.matchday .mode-grid{gap:38px}.cover-players img{max-width:105px}.feature-showcase{grid-template-columns:1fr}.portrait-frame img{max-height:260px}.picker{gap:8px}.concept-grid{grid-template-columns:1fr}.concept img{max-height:240px}.comparison{padding:40px 0}.comparison h1{font-size:60px}.preview-bar{gap:12px;font-size:10px}}
.artwork-feature{background:var(--ink);color:var(--paper);padding:40px 0}.artwork-frame{width:min(1280px,calc(100% - 80px));margin:auto}.artwork-feature .shot-button img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;background:transparent}.artwork-caption{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding-top:20px}.artwork-caption .button{background:var(--green);color:var(--ink);border-color:var(--green)}.clubhouse .artwork-feature{background:var(--paper);color:var(--ink);border-top:1px solid var(--line)}.clubhouse .artwork-caption .button{background:var(--ink);color:var(--paper);border-color:var(--ink)}.matchday .artwork-feature{padding:0}.matchday .artwork-frame{width:100%}.matchday .artwork-caption{width:min(1280px,calc(100% - 80px));margin:auto;padding:24px 0}.player-select .artwork-feature{border-top:1px solid #344238}
@media(max-width:1050px){.artwork-frame,.matchday .artwork-caption{width:calc(100% - 48px)}.matchday .artwork-frame{width:100%}}
@media(max-width:760px){.artwork-feature{padding:24px 0}.artwork-frame,.matchday .artwork-caption{width:calc(100% - 36px)}.matchday .artwork-frame{width:100%}.artwork-caption{gap:16px}.artwork-caption .kicker{letter-spacing:1px}}
.concept-grid.four-designs{grid-template-columns:repeat(2,1fr)}
@media(max-width:760px){.concept-grid.four-designs{grid-template-columns:1fr}}
.hero-grid>*{min-width:0}.mode-grid>*,.feature-showcase>*,.portrait-stage>*{min-width:0}
@media(max-width:380px){.nav{gap:12px}.company-half h1,.matchday .company-half h1{font-size:56px}.game-half h2,.matchday .game-half h2,.player-select .game-half h2{font-size:46px}.portrait-stage{grid-template-columns:1fr 1fr;gap:15px}.portrait-stage h3{font-size:28px}.portrait-stage p{font-size:12px}.picker{gap:4px}.button{padding:13px 17px}.player-grid{gap:16px 8px}.player-card figcaption{padding:8px;font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
