:root{--black:#000;--ink:#090a0c;--blue:#0047ab;--paper:#edede7;--quiet:#a1a4ab;--line:#292b30;font-family:Arial,Helvetica,sans-serif;color:var(--paper);background:var(--black);font-synthesis:none;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid #81b3ff;outline-offset:6px}::selection{background:var(--blue);color:white}.skip{position:absolute;top:-100px;left:24px;z-index:20;background:var(--paper);color:black;padding:15px}.skip:focus{top:15px}.header{height:116px;margin:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:16px;font-size:12px;line-height:1.3;letter-spacing:2px}.brand img{object-fit:contain}.header nav{display:flex;gap:42px;font-size:13px}.header nav span{margin-left:18px;color:var(--quiet)}.header nav a:hover{color:#72a5ef}.hero{min-height:calc(100svh - 116px);padding:60px 5% 32px;position:relative;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.hero-label,.studio-label{font-size:11px;letter-spacing:2.2px;display:flex;align-items:center;gap:12px}.dot{width:7px;height:7px;border-radius:100%;background:#3175d4;display:inline-block;flex:none}h1{font-size:clamp(65px,8.7vw,140px);font-weight:400;line-height:.99;letter-spacing:-.068em;margin:39px 0 45px;max-width:1250px}h1>span{color:var(--blue)}.hero-bottom{display:flex;align-items:flex-end;justify-content:space-between}.hero-bottom p{color:var(--quiet);font-size:15px;line-height:1.7;margin:0}.round-link{border:1px solid #55595f;border-radius:50%;width:58px;height:58px;display:grid;place-items:center;font-size:25px;transition:background .2s}.round-link:hover{background:var(--blue)}.hero-number{position:absolute;right:5%;top:61px;color:#747983;font-size:10px;letter-spacing:2px}.work{padding:95px 5% 100px;background:#101114;scroll-margin-top:30px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.section-heading h2{font-size:24px;font-weight:400;letter-spacing:-1px;margin:0}.section-heading>span{font-size:10px;letter-spacing:1.5px;color:var(--quiet)}.project{padding:32px 38px;margin-top:20px;min-height:380px;display:flex;flex-direction:column;position:relative;overflow:hidden}.film{background:#d7d2bf;color:#161711}.game{background:var(--blue);color:#eef0eb}.project-top,.project-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px;letter-spacing:1.5px}.project-top{opacity:.75}.project-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:0;padding:35px 0;text-align:left;gap:20px;flex:1}.project-title{font-size:clamp(46px,7.6vw,112px);font-weight:400;letter-spacing:-.06em;line-height:.95}.film .project-title{font-family:Georgia,'Times New Roman',serif}.period{color:var(--blue)}.game .period{color:#79aaff}.project-plus{border:1px solid currentColor;border-radius:50%;width:46px;height:46px;display:grid;place-items:center;font-size:26px;flex:none;transition:transform .25s}.project-toggle[aria-expanded=true] .project-plus{transform:rotate(45deg)}.project-bottom{padding-top:24px;border-top:1px solid currentColor;opacity:.7}.project-kind{letter-spacing:0;text-align:right}.project-details{max-width:600px;padding:0 0 24px;font-size:17px;line-height:1.6}.project-details p{margin:0 0 10px}.detail-note{font-size:14px;opacity:.75}.studio{padding:115px 5% 125px;display:grid;grid-template-columns:1fr 2fr;gap:35px;border-bottom:1px solid var(--line);scroll-margin-top:30px}.studio-label{align-self:start;padding-top:13px}.studio h2{font-weight:400;font-size:clamp(39px,5vw,76px);line-height:1.06;letter-spacing:-.05em;margin:0 0 35px}.studio p{font-size:19px;line-height:1.65;color:var(--quiet);max-width:580px}.studio-signature{margin-top:48px;font-size:13px;color:#6094dc}footer{padding:35px 5%;display:flex;gap:25px;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:1px}footer>span{color:var(--quiet)}footer>div{display:flex;gap:25px;align-items:center}footer button{border:0;background:none;font-size:11px;padding:8px 0;color:var(--quiet)}.footer-name{font-size:11px}.intro{position:fixed;inset:0;background:#000;z-index:30;display:grid;place-items:center;transition:opacity .6s;pointer-events:auto}.intro.is-finished{opacity:0;pointer-events:none}.intro-logo{width:min(55vw,440px)}.intro-logo svg{display:block;width:100%;height:auto;overflow:visible}.intro-logo #original-RS-and-swinging-figure,.intro-logo #editable-type{opacity:0}.intro.is-playing #original-RS-and-swinging-figure{animation:fade-up 1.35s .2s both}.intro.is-playing #editable-type{animation:fade-up 1s 1.65s both}.skip-intro{position:absolute;right:5%;bottom:32px;border:0;background:none;color:#a1a4ab;font-size:11px;padding:12px 0}@keyframes fade-up{from{opacity:0}to{opacity:1}}@media(max-width:650px){.header{height:93px}.brand{gap:10px;font-size:9px;letter-spacing:1px}.brand img{width:54px}.header nav{gap:20px;font-size:11px}.header nav span{display:none}.hero{min-height:calc(90svh - 93px);padding-top:55px}.hero-label{font-size:9px;letter-spacing:1.3px}.hero-number{display:none}h1{font-size:clamp(53px,11.5vw,78px);margin:40px 0 45px}.hero-bottom p{font-size:12px}.round-link{width:45px;height:45px}.work{padding-top:65px;padding-bottom:65px}.section-heading>span{max-width:145px;text-align:right;font-size:8px;line-height:1.5}.project{padding:25px 22px;min-height:310px}.project-top,.project-bottom{font-size:8px;letter-spacing:1px}.project-title{font-size:clamp(39px,9vw,59px)}.project-plus{width:34px;height:34px;font-size:22px}.project-kind{max-width:100px;line-height:1.5}.studio{padding:65px 5%;grid-template-columns:1fr;gap:35px}.studio p{font-size:17px}.studio-signature{margin-top:30px}footer{align-items:flex-start;flex-wrap:wrap;line-height:1.5}footer>span{order:3;width:100%}.intro-logo{width:78vw}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.intro{display:none}}
/* Slow staged ident, fading to black before the home page appears. */
.intro{transition:opacity .1s;touch-action:none}.intro-logo{transition:opacity 1s cubic-bezier(.4,0,.6,1)}.intro.is-darkening .intro-logo{opacity:0}.intro.is-playing #original-RS-and-swinging-figure{animation:fade-up 4s .4s cubic-bezier(.42,0,.58,1) both}.intro.is-playing #editable-type{animation:fade-up 1.5s 4.9s cubic-bezier(.42,0,.58,1) both}.home>.header,.home>main,.home>footer{opacity:0;transition:opacity 1.1s ease}.home.is-ready>.header,.home.is-ready>main,.home.is-ready>footer{opacity:1}.home:not(.is-ready){overflow:hidden}.subpage .work{min-height:calc(100svh - 190px);padding-top:65px}.subpage .studio{min-height:calc(100svh - 190px);align-items:center}.subpage .studio-label{align-self:center}.header nav a[aria-current=page]{color:#72a5ef}@media(prefers-reduced-motion:reduce){.home>.header,.home>main,.home>footer{opacity:1}}

.hero-bottom:has(>.round-link:only-child){justify-content:flex-end}

.games-section{margin-top:46px}.games-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.games-heading h3{font-size:20px;font-weight:400;letter-spacing:-.5px;margin:0}.games-heading>span{font-size:9px;letter-spacing:1.6px;color:var(--quiet)}.games-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.game-tile{background:var(--blue);color:#eef0eb;min-height:230px;padding:25px;display:flex;flex-direction:column;justify-content:space-between}.game-index{font-size:10px;letter-spacing:1.5px;color:#9db9df}.game-tile h4{font-size:clamp(25px,3.3vw,46px);font-weight:400;line-height:1.04;letter-spacing:-.045em;margin:30px 0 3px;overflow-wrap:normal}@media(max-width:760px){.games-grid{grid-template-columns:1fr}.game-tile{min-height:155px;padding:23px}.game-tile h4{font-size:38px}.games-section{margin-top:32px}}

.header .brand{height:100%;display:flex;align-items:center}.header .brand img{height:96px;width:auto;max-width:none;display:block}@media(max-width:650px){.header .brand img{height:76px;width:auto}}

/* SCIF's original title thumbnails, restyled only to the studio cobalt. */
.game-tile.scif-tile,.game-tile.wolverines-tile{padding:0;min-height:0;overflow:hidden}.scif-art{aspect-ratio:16/10;position:relative;display:grid;place-items:center;background:var(--blue)}.scif-ring{position:absolute;inset:14px;border:1px solid rgba(217,178,95,.4)}.game-tile .scif-art h4{font-family:"Big Shoulders Stencil Display",Impact,sans-serif;font-weight:800;font-size:clamp(30px,3.5vw,46px);line-height:.92;letter-spacing:.03em;text-align:center;margin:0;padding:20px;color:#e6edf3}.scif-art h4 small{display:block;font-family:"IBM Plex Mono",monospace;font-size:10px;font-weight:500;letter-spacing:.15em;color:#e4c47d;margin-top:12px;line-height:1.5}.wolverines-art{height:calc(100% - 43px);min-height:150px;position:relative;background:#050505;display:flex;justify-content:center;overflow:hidden}.wolverines-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.game-tile.wolverines-tile h4{height:43px;margin:0;padding:10px 16px;background:var(--blue);font-size:20px;letter-spacing:0;line-height:23px}@media(max-width:760px){.scif-art{aspect-ratio:16/8}.game-tile .scif-art h4{font-size:42px}.wolverines-art{height:210px}}

.hero-hyphen{display:inline-block;margin-left:.07em;margin-right:.002em;letter-spacing:0}

.subpage:has(.studio-gallery) .studio{min-height:0;padding-top:75px;padding-bottom:65px}.studio-gallery{padding:0 5% 90px}.studio-gallery figure{margin:0}.studio-gallery img{display:block;width:100%;height:auto;object-fit:cover}.studio-gallery .stage-photo img{aspect-ratio:16/8;object-position:center}.studio-gallery figcaption{padding:17px 0 25px;color:var(--quiet);font-size:12px;letter-spacing:1.2px}.bay-photos{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:20px}.bay-photos img{aspect-ratio:16/9}@media(max-width:650px){.subpage:has(.studio-gallery) .studio{padding-top:50px;padding-bottom:40px}.bay-photos{grid-template-columns:1fr;gap:12px;margin-top:8px}.studio-gallery .stage-photo img{aspect-ratio:16/9}.studio-gallery{padding-bottom:40px}}

.project-details.trailer-details{max-width:none;width:100%;padding-bottom:28px}.trailer-frame{aspect-ratio:16/9;background:#000;position:relative}.trailer-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.trailer-caption{display:flex;justify-content:space-between;gap:16px;font-size:12px;padding-top:12px}.trailer-caption a{text-decoration:underline;text-underline-offset:3px}

.harvest-trailer{margin-top:20px}.harvest-trailer .trailer-caption{color:var(--quiet);margin-bottom:0}

.games-page .games-section{margin-top:0}.games-page .games-heading{margin-bottom:30px}.games-page .games-heading h2{font-size:24px;font-weight:400;letter-spacing:-1px;margin:0}@media(max-width:650px){.header nav{gap:14px;font-size:10px}}

.film-heading{padding:22px 0 36px}.film-category{font-size:10px;letter-spacing:2px;color:var(--quiet);margin:0 0 18px}.film-heading h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(46px,7vw,100px);line-height:1.05;letter-spacing:-.045em;margin:0;max-width:none}.trailer-label{font-size:12px;font-weight:400;letter-spacing:1.5px;text-transform:uppercase;color:var(--quiet);margin:0 0 16px}@media(max-width:650px){.film-heading{padding:16px 0 28px}.film-heading h1{font-size:clamp(40px,9vw,60px)}}

.film-synopsis{max-width:850px;margin:0 0 40px}.film-synopsis p{font-size:18px;line-height:1.8;color:var(--quiet);margin:0}@media(max-width:650px){.film-synopsis{margin-bottom:30px}.film-synopsis p{font-size:16px;line-height:1.75}}

.film-recognition{max-width:850px;margin:0 0 28px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px;line-height:1.7;color:var(--paper)}.film-recognition span{margin:0 8px;color:var(--quiet)}

.full-film{margin-top:48px;padding-top:32px;border-top:1px solid var(--line)}.film-access-note{font-size:13px;color:var(--quiet);margin:0 0 18px}

.games-page .game-tile.scif-tile{background:transparent;justify-content:flex-start;overflow:visible}.game-synopsis{font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.75;color:var(--quiet);margin:20px 0 0}.games-page .scif-art{width:100%;flex:none}@media(max-width:760px){.games-page .games-grid{gap:32px}.game-synopsis{margin-top:16px}}

/* Home occupies one viewport, including its header and footer. */
html:has(>body.home){height:100%;overflow:hidden}
body.home{height:100vh;height:100dvh;overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.home>main{min-height:0;overflow:hidden}
.home .hero{height:100%;min-height:0;padding-top:clamp(12px,4dvh,60px);padding-bottom:clamp(12px,3dvh,32px)}
.home h1{font-size:clamp(32px,min(8.7vw,15dvh),140px);margin:0 0 clamp(14px,4dvh,45px)}
.home>footer{padding-top:clamp(10px,2dvh,24px);padding-bottom:clamp(10px,2dvh,24px)}
.home .hero-number{top:24px}
@media(max-width:650px){.home h1{font-size:clamp(32px,min(11.5vw,12dvh),78px)}.home>footer{gap:8px}.home>footer>div{gap:14px}}
@media(max-height:500px){.home .header{height:64px}.home .header .brand img{height:54px}.home .hero{padding-top:8px;padding-bottom:8px}.home h1{font-size:min(8vw,14dvh);margin-bottom:8px}.home .round-link{width:32px;height:32px;font-size:18px}.home .hero-number{display:none}.home>footer{padding-top:8px;padding-bottom:8px}}
