@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:200 800;font-display:block;src:url("/fonts/plus-jakarta-sans-latin-069be307.woff2") format("woff2")}@font-face{font-family:"Libre Baskerville";font-style:italic;font-weight:400;font-display:block;src:url("/fonts/libre-baskerville-italic-latin-30500bfe.woff2") format("woff2")}:root{--sans: "Plus Jakarta Sans", system-ui, sans-serif;--serif: "Libre Baskerville", Georgia, serif;--black: #141414;--white: #ffffff;--mint: #e8f3d4;--lime: #d4ed5e;--muted: #4a4a4a;--border: #c8c8c8}*,*::before,*::after{box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{margin:0;font-family:var(--sans);font-weight:500;line-height:1.6;color:var(--black);background:var(--white);-webkit-font-smoothing:antialiased}a{color:inherit}em{font-family:var(--serif);font-style:italic;font-weight:400}.site-header{display:grid;grid-template-columns:1fr auto;grid-template-areas:"logo end" "nav nav";gap:1rem 1.5rem;align-items:center;padding:1.25rem 1.5rem;background:var(--white);border-bottom:1px solid #eee}@media (min-width: 48rem){.site-header{grid-template-columns:1fr auto 1fr;grid-template-areas:"logo nav end";padding:1.5rem 2.5rem}}.site-header--overlay{position:absolute;top:0;left:0;right:0;z-index:10;background:transparent;border-bottom:none;color:var(--white)}.site-header--overlay .site-header__logo,.site-header--overlay .site-header__nav a,.site-header--overlay .site-header__email{color:var(--white)}.site-header--overlay .site-header__nav a:hover,.site-header--overlay .site-header__nav a[aria-current="page"],.site-header--overlay .site-header__email:hover{opacity:0.75}.site-header__logo{-ms-grid-row:1;-ms-grid-column:1;grid-area:logo;font-size:1.1rem;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;text-decoration:none}.site-header__nav{-ms-grid-row:3;-ms-grid-column:1;-ms-grid-column-span:3;grid-area:nav;display:flex;justify-content:center;gap:2rem}.site-header__nav a{font-size:0.68rem;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;text-decoration:none;color:var(--black)}.site-header__nav a:hover,.site-header__nav a[aria-current="page"]{opacity:0.55}.site-header__end{-ms-grid-row:1;-ms-grid-column:3;grid-area:end;justify-self:end}@media (min-width: 48rem){.site-header__logo{-ms-grid-row:1;-ms-grid-column:1}.site-header__nav{-ms-grid-row:1;-ms-grid-column:2;-ms-grid-column-span:1}.site-header__end{-ms-grid-row:1;-ms-grid-column:3}}.site-header__email{font-size:0.68rem;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;text-decoration:none;color:var(--black)}.site-header__email:hover{opacity:0.55}.btn{display:inline-flex;align-items:center;gap:0.4rem;padding:0.9rem 1.6rem;border-radius:999px;font-family:var(--sans);font-size:0.68rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;text-decoration:none;border:none;cursor:pointer;transition:opacity 0.2s ease}.btn:hover{opacity:0.85}.btn--lime{background:var(--lime);color:var(--black)}.btn--outline{background:transparent;border:1.5px solid var(--black);color:var(--black)}.hero{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:center}.hero__image{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;filter:brightness(0.55) saturate(0.9)}.hero__overlay{position:absolute;inset:0;background:linear-gradient(135deg, rgba(10,12,8,0.55) 0%, rgba(10,12,8,0.25) 50%, rgba(10,12,8,0.45) 100%)}.hero__content{position:relative;z-index:1;padding:7rem 1.5rem 4rem;max-width:52rem}@media (min-width: 48rem){.hero__content{padding:8rem 2.5rem 5rem}}.hero__title{margin:0 0 2rem;font-size:clamp(2.75rem, 7vw, 5rem);font-weight:800;line-height:1.05;letter-spacing:-0.03em;color:var(--white);text-transform:capitalize}.hero__sub{margin:1.25rem 0 0;max-width:22rem;font-size:0.95rem;font-weight:500;line-height:1.55;color:rgba(255,255,255,0.75)}.intro{background:var(--mint);padding:4rem 1.5rem}@media (min-width: 48rem){.intro{padding:5rem 2.5rem}}.intro__inner{max-width:72rem;margin:0 auto;display:grid;gap:3rem;align-items:center}@media (min-width: 56rem){.intro__inner{grid-template-columns:1fr 1fr;gap:4rem}}.intro__copy h2{margin:0 0 1.5rem;font-size:clamp(2rem, 4.5vw, 3rem);font-weight:800;line-height:1.1;letter-spacing:-0.02em}.intro__copy p{margin:0 0 1rem;font-size:0.95rem;font-weight:500;line-height:1.7;color:var(--muted);max-width:28rem}.intro__copy .btn{margin-top:0.5rem}.intro__visual img{display:block;width:100%;height:auto;border-radius:0.75rem;aspect-ratio:4 / 3;-o-object-fit:cover;object-fit:cover}.intro__caption{margin:1rem 0 0;font-size:0.85rem;font-weight:500;line-height:1.5;color:var(--muted);text-align:right}.intro__caption strong{color:var(--black);font-weight:700}.page-intro{padding:2rem 1.5rem 3rem;background:var(--mint)}@media (min-width: 48rem){.page-intro{padding:2.5rem 2.5rem 3.5rem}}.page-intro--banner{position:relative;display:flex;align-items:flex-end;padding:1.5rem 1.5rem 2rem;min-height:14rem;overflow:hidden;background:var(--mint)}@media (min-width: 48rem){.page-intro--banner{padding:2rem 2.5rem 2.5rem;min-height:18rem}}.page-intro--banner .page-intro__inner{width:100%}.page-intro__image{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center}.page-intro__inner{position:relative;z-index:1;max-width:72rem;margin:0 auto}.page-intro__inner h1{margin:0 0 0.5rem;font-size:clamp(2.5rem, 5vw, 3.5rem);font-weight:800;letter-spacing:-0.02em;line-height:1.05}.page-intro__inner p{margin:0;font-size:1rem;font-weight:500;color:var(--muted)}.games-section{padding:4rem 1.5rem;background:var(--white)}@media (min-width: 48rem){.games-section{padding:5rem 2.5rem}}.games-section--page{padding-top:2rem}.games-section__inner{max-width:72rem;margin:0 auto}.games-section__head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:2.5rem}.games-section__head h2{margin:0;font-size:clamp(1.75rem, 3vw, 2.25rem);font-weight:800;letter-spacing:-0.02em}.games-section__link{font-size:0.68rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;text-decoration:none;color:var(--muted)}.games-section__link:hover{color:var(--black)}.game-grid{list-style:none;margin:0;padding:0;display:grid;gap:2.5rem}@media (min-width: 40rem){.game-grid{grid-template-columns:repeat(2, 1fr);gap:2.5rem 2rem}}.game--card{display:flex;flex-direction:column}.game__image{display:block;overflow:hidden;line-height:0;text-decoration:none;border-radius:0.5rem;background:#eee}.game__image img{display:block;width:100%;height:auto;aspect-ratio:16 / 10;-o-object-fit:cover;object-fit:cover;transition:transform 0.4s ease}.game__image:hover img{transform:scale(1.02)}.game__body{padding-top:1rem}.game__title{margin:0 0 0.35rem;font-size:1.15rem;font-weight:700;letter-spacing:-0.01em}.game__title a{text-decoration:none;color:var(--black)}.game__title a:hover{opacity:0.6}.game__status{margin:0 0 0.35rem;font-size:0.8rem;font-weight:500;color:var(--muted)}.game__desc{margin:0 0 0.75rem;font-size:0.9rem;font-weight:500;color:var(--muted);line-height:1.55}.game__link{font-size:0.68rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;text-decoration:none;color:var(--black)}.game__link:hover{opacity:0.55}.muted{color:var(--muted);font-weight:500}.work-section{padding:2rem 1.5rem 4rem;background:var(--white)}@media (min-width: 48rem){.work-section{padding:2.5rem 2.5rem 5rem}}.work-section__inner{max-width:48rem;margin:0 auto}.work-section__inner--wide{max-width:72rem}.case-study-list{display:grid;gap:0}.case-study{padding:2.5rem 0;border-bottom:1px solid #eee}.case-study:first-child{padding-top:0}.case-study:last-child{border-bottom:none;padding-bottom:0}@media (min-width: 48rem){.case-study{padding:3rem 0}}.case-study__header{max-width:40rem}.case-study__meta{display:inline-block;margin:0 0 0.75rem;padding:0.35rem 0.75rem;font-size:0.62rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--black);background:var(--lime);border-radius:999px}.case-study__title{margin:0 0 0.75rem;font-size:clamp(1.5rem, 3vw, 2rem);font-weight:800;letter-spacing:-0.02em;line-height:1.15}.case-study__summary{margin:0;font-size:1rem;font-weight:500;line-height:1.65;color:var(--muted)}.case-study__grid{display:grid;gap:2rem;margin-top:2rem;padding-top:2rem;border-top:1px solid #eee}@media (min-width: 56rem){.case-study__grid{grid-template-columns:repeat(3, 1fr);gap:2rem 2.5rem}}.case-study__block{min-width:0}.case-study__label{margin:0 0 0.85rem;font-size:0.68rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--black)}.case-study__list{list-style:none;margin:0;padding:0;font-size:0.9rem;font-weight:500;line-height:1.6;color:var(--muted)}.case-study__list li{position:relative;padding-left:1rem}.case-study__list li::before{content:"";position:absolute;left:0;top:0.55em;width:0.3rem;height:0.3rem;border-radius:50%;background:var(--lime)}.case-study__list li+li{margin-top:0.65rem}.work-group{margin-top:3.5rem;padding-top:3.5rem;border-top:1px solid #eee}.work-group__title{margin:0 0 2rem;font-size:0.68rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted)}.work-list{list-style:none;margin:0;padding:0;display:grid;gap:2.5rem}.work-item__meta{margin:0 0 0.35rem;font-size:0.8rem;font-weight:500;color:var(--muted)}.work-item__title{margin:0 0 0.5rem;font-size:1.35rem;font-weight:700;letter-spacing:-0.01em}.work-item__title a{text-decoration:none;color:var(--black)}.work-item__title a:hover{opacity:0.6}.work-item__desc{margin:0;font-size:0.95rem;font-weight:500;line-height:1.65;color:var(--muted)}.work-section__cta{margin-top:3.5rem;padding-top:2.5rem;border-top:1px solid #eee;text-align:center}.work-section__cta p{margin:0 0 1.25rem;font-size:0.95rem;font-weight:500;color:var(--muted)}.site-footer{padding:2rem 1.5rem;background:var(--black);color:rgba(255,255,255,0.55);text-align:center}@media (min-width: 48rem){.site-footer{padding:2.5rem}}.site-footer p{margin:0;font-size:0.8rem;font-weight:500}.site-footer .site-footer__copy{margin-top:0.4rem;font-size:0.7rem;opacity:0.6}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.game__image img{transition:none}.game__image:hover img{transform:none}}