:root{color-scheme:dark;--ink:#f1effa;--muted:#b6bed4;--navy:#10172a;--cyan:#94dff4;--blush:#edb9e2;--lavender:#b9b8f6;--line:rgba(214,210,235,.2);--serif:Georgia,'Times New Roman',serif;--sans:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--navy);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.65}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--cyan);outline-offset:5px}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.15}h2{font-size:clamp(32px,3.4vw,46px);letter-spacing:-.035em}h3{font-size:27px;letter-spacing:-.025em}em{font-style:normal;color:var(--cyan)}.wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.skip-link{position:fixed;top:12px;left:12px;z-index:99;background:var(--cyan);color:var(--navy);padding:10px 18px;transform:translateY(-180%)}.skip-link:focus{transform:none}
.site-header{position:absolute;z-index:3;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;width:min(1320px,calc(100% - 72px));height:108px;margin-inline:auto}.brand{display:flex;align-items:center;gap:14px;font-family:var(--serif);font-size:25px;letter-spacing:-.025em;line-height:1.2}.brand img{height:60px;width:41px;object-fit:contain}.brand>span>span{white-space:nowrap}nav{display:flex;align-items:center;gap:32px;font-size:18px;font-weight:600}nav>a{padding:8px 0}nav>a:hover{color:var(--cyan)}.nav-contact{border:1px solid #c9c5d45c;padding:8px 18px;border-radius:24px}.menu-toggle{display:none}
.hero{position:relative;isolation:isolate;min-height:720px;height:min(800px,100svh);overflow:hidden;background:#11182b}.hero-art{position:absolute;z-index:-3;width:100%;height:100%;object-fit:cover;object-position:60% 48%}.hero-shade{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,rgba(9,15,32,.9),rgba(10,15,29,.7) 32%,rgba(10,15,29,.1) 68%),linear-gradient(0deg,var(--navy),rgba(16,23,42,.05) 30%,rgba(9,13,25,.15))}.hero-content{padding-top:235px}.eyebrow{font-size:15px;line-height:1.5;color:#d8d6e7;letter-spacing:.04em;margin:0 0 16px}h1{font-size:clamp(48px,6.1vw,84px);letter-spacing:-.05em;line-height:1.05}h1 em{white-space:nowrap}.hero-intro{font-size:18px;line-height:1.7;color:var(--ink);margin-top:20px;max-width:550px}.hero-actions{margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;border:1px solid transparent;border-radius:30px;font-size:16px;font-weight:600;min-height:48px;transition:background .2s}.button-blush{background:var(--blush);color:#17182b}.button-blush:hover{background:#f6d1ef}.text-link{display:inline-block;font-size:16px;border-bottom:1px solid var(--muted);padding-block:7px;line-height:1.5}.text-link:hover{color:var(--cyan);border-color:var(--cyan)}
.work-section{padding-top:44px;padding-bottom:56px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-bottom:22px}.section-heading>p{font-size:17px;color:var(--muted);max-width:640px;line-height:1.65}.work-note{font-size:15px;color:var(--muted);margin-bottom:22px;line-height:1.65}.project-grid{display:grid;grid-template-columns:1fr}.project-open{width:100%;border:0;padding:0;background:none;text-align:left;display:block}.project-image{display:block;position:relative;overflow:hidden;border-radius:6px;aspect-ratio:1672/941;background:#222438}.project-image img{width:100%;height:100%;object-fit:cover;object-position:50% 50%;transition:transform .5s}.project-open:hover .project-image img{transform:scale(1.025)}
.surfing-section{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:42px;align-items:center;padding-bottom:56px}.surfing-copy h2{margin-bottom:18px}.surfing-copy>p{font-size:17px;line-height:1.75;color:var(--muted)}.surfing-art{margin:0;min-width:0}.surfing-art img{width:100%;height:auto;border-radius:6px}.digging-section{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr)}.digging-section .surfing-art{grid-column:1;grid-row:1}.digging-section .surfing-copy{grid-column:2;grid-row:1}
.possibilities{padding-block:48px 56px;border-top:1px solid var(--line)}.possibilities .section-heading{margin-bottom:28px}.service-list article{display:grid;grid-template-columns:.9fr 1.1fr;gap:32px;align-items:start;padding:24px 0;border-top:1px solid var(--line)}.service-list article:last-child{border-bottom:1px solid var(--line)}.service-list p{font-size:17px;color:var(--muted);line-height:1.7}
.studio-section{overflow:hidden;background:radial-gradient(ellipse at 20% 50%,#26324c55,transparent 48%),#121624;border-block:1px solid #a3acc012}.studio-inner{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:center;padding-block:48px}.symbol-scene{position:relative;display:grid;place-items:center;height:310px;background:radial-gradient(ellipse,#b8b6ff12,transparent 66%)}.symbol-scene>img{width:150px;height:auto;filter:drop-shadow(0 0 38px #b5bee638);position:relative}.orbit{position:absolute;border:1px solid #99afcf1d;border-radius:50%;width:260px;height:260px;transform:rotate(-28deg) scaleY(.75)}.orbit-two{width:330px;height:330px;transform:rotate(44deg) scaleY(.75);border-color:#99afcf10}.scene-star{position:absolute;color:var(--blush)}.star-one{top:32px;right:45px;font-size:19px}.star-two{bottom:36px;left:35px;font-size:25px;color:var(--cyan)}.star-three{left:20px;top:75px;font-size:40px;color:var(--lavender)}.studio-copy>p{font-size:17px;color:var(--muted);margin-top:20px;line-height:1.75}.studio-copy .studio-lead{color:var(--ink)}
.contact-section{text-align:center;padding-block:64px}.contact-section h2{font-size:clamp(36px,4.5vw,56px);line-height:1.15}.contact-section h2 em{color:var(--lavender)}.contact-section>p{margin-top:22px;font-size:18px;color:var(--muted)}.contact-section .button{margin-top:26px}.site-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:22px;padding-block:25px;border-top:1px solid var(--line)}.footer-brand{font-size:21px;gap:12px}.footer-brand img{height:44px;width:30px}.site-footer>a:not(.brand):not(.button),.site-footer small{font-size:14px;color:var(--muted)}.site-footer>a:not(.brand):not(.button):hover{color:var(--cyan)}
.project-dialog{padding:0;width:min(900px,calc(100% - 40px));max-height:90svh;border:1px solid #535369;border-radius:8px;background:var(--navy);color:var(--ink);overflow-y:auto;box-shadow:0 24px 150px #0009}.project-dialog::backdrop{background:#050918d9;backdrop-filter:blur(8px)}.dialog-close{position:absolute;right:16px;top:16px;z-index:2;display:flex;align-items:center;gap:13px;background:#10172af5;border:1px solid #ada9bf70;border-radius:30px;padding:9px 17px;font-size:16px;min-height:48px}.dialog-close span{font-size:23px;line-height:1}.dialog-art{width:100%;height:auto;object-fit:contain}.dialog-copy{padding:28px 36px 32px}.dialog-copy h2{font-size:40px}.dialog-copy>p{font-size:17px;line-height:1.75;color:var(--muted);margin-top:18px}.dialog-copy .dialog-intro{font-size:21px;color:var(--ink);line-height:1.5}.dialog-copy .dialog-disclaimer{font-size:15px;border-top:1px solid var(--line);padding-top:18px;margin-top:24px}.dialog-copy .text-link{margin-top:18px}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.site-header{width:calc(100% - 56px)}.brand{font-size:23px}.hero-content{padding-top:220px}.section-heading{align-items:flex-start}.section-heading>p{max-width:60%}.surfing-section{gap:30px}.studio-inner{gap:30px}.orbit-two{width:290px;height:290px}}
@media(max-width:760px){body{font-size:16px}.wrap{width:calc(100% - 40px)}.site-header{height:96px;width:calc(100% - 40px)}.brand{font-size:21px;gap:10px}.brand img{height:49px;width:34px}.menu-toggle{display:flex;align-items:center;gap:8px;font-size:16px;background:#111729cc;border:1px solid #aeb0c360;border-radius:25px;padding:9px 12px;min-height:44px}.menu-toggle span{font-size:16px}.site-header nav{display:none;position:absolute;right:0;top:86px;background:#171d2ff5;backdrop-filter:blur(18px);width:min(300px,100%);padding:16px;border:1px solid #9c9bb343;border-radius:8px;gap:0;box-shadow:0 15px 40px #05091880}.site-header nav.is-open{display:flex;flex-direction:column;align-items:stretch}.site-header nav>a{padding:12px}.site-header nav .nav-contact{margin-top:8px}.hero{height:800px;min-height:800px}.hero-art{object-position:77% 50%;height:470px;bottom:0}.hero-shade{background:linear-gradient(0deg,var(--navy) 0%,rgba(16,23,42,.06) 14%,rgba(16,23,42,.08) 32%,rgba(16,23,42,.9) 52%,var(--navy) 63%)}.hero-content{padding-top:143px}.hero .eyebrow{font-size:14px;letter-spacing:0;margin:0 0 12px}.hero h1{font-size:clamp(40px,8.4vw,62px);line-height:1.08;letter-spacing:-.055em}.hero-intro{font-size:16px;line-height:1.65;margin-top:18px;max-width:440px}.hero-actions{margin-top:22px}.button{font-size:16px;padding:11px 21px}.desktop-break{display:none}.work-section{padding-block:30px 38px}.section-heading{display:block;margin-bottom:18px}.section-heading>p{max-width:none;font-size:16px;margin-top:17px}.work-note{font-size:14px;line-height:1.6;margin-bottom:18px}.project-image{aspect-ratio:1.5}.surfing-section{grid-template-columns:1fr;gap:20px;padding-bottom:40px}.surfing-copy h2{font-size:32px;margin-bottom:13px}.surfing-copy>p{font-size:16px;line-height:1.7}.digging-section .surfing-art,.digging-section .surfing-copy{grid-column:auto;grid-row:auto}.possibilities{padding-block:38px 40px}.possibilities .section-heading{margin-bottom:22px}.service-list article{grid-template-columns:1fr;gap:10px;padding:21px 0}.service-list h3{font-size:26px}.service-list p{font-size:16px;line-height:1.7}.studio-inner{grid-template-columns:1fr;gap:15px;padding-block:25px 40px}.symbol-scene{height:215px;width:100%;max-width:320px;margin:auto}.symbol-scene>img{width:108px}.orbit{width:200px;height:200px}.orbit-two{width:250px;height:250px}.star-one{top:20px;right:40px}.star-two{bottom:15px;left:35px}.star-three{left:30px;top:45px}.studio-copy>p{font-size:16px;margin-top:17px}.contact-section{padding-block:43px}.contact-section h2{font-size:36px;letter-spacing:-.04em}.contact-section>p{font-size:16px;line-height:1.65;margin-top:20px}.site-footer{gap:20px;padding-block:24px}.footer-brand{font-size:21px;width:100%}.site-footer small{font-size:14px}.project-dialog{width:calc(100% - 24px)}.dialog-close{top:12px;right:12px;font-size:15px}.dialog-copy{padding:24px}.dialog-copy h2{font-size:34px}.dialog-copy>p{font-size:16px}.dialog-copy .dialog-intro{font-size:20px}.dialog-copy .dialog-disclaimer{font-size:14px}}
@media(max-width:380px){.brand{font-size:18px;gap:8px}.brand img{width:30px;height:44px}.hero h1{font-size:38px}.hero .eyebrow{font-size:14px}.hero-intro{font-size:16px}.contact-section h2{font-size:33px}.footer-brand{font-size:20px}.menu-toggle{padding-inline:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Featured games: one stationary game; manual controls only for two or more. */
.hero-slide{position:absolute;inset:0;isolation:isolate}.hero-art{object-position:var(--hero-image-position,60% 48%)}.hero-intro{max-width:620px}.hero-controls[hidden]{display:none}.hero-controls button{position:absolute;z-index:1;top:55%;display:grid;place-items:center;width:48px;height:48px;border:1px solid #d8d6e780;border-radius:50%;background:#10172ae8;color:var(--ink);font-size:34px;line-height:1}.hero-controls button:hover{background:var(--blush);color:var(--navy)}.hero-previous{left:16px}.hero-next{right:16px}.hero.has-multiple-games .hero-content{padding-inline:28px}.hero.has-multiple-games .hero-slide{touch-action:pan-y}.hero:focus-visible{outline:3px solid var(--cyan);outline-offset:-5px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:760px){.hero-art{object-position:var(--hero-mobile-image-position,77% 50%)}.hero.has-multiple-games .hero-content{padding-inline:0}.hero-controls button{top:auto;bottom:24px}.hero-previous{left:20px}.hero-next{right:20px}}
/* Lava City updates panel. */
.game-updates{margin-bottom:24px}.updates-panel{max-width:620px;margin-top:18px;padding:20px;border:1px solid var(--line);border-radius:6px;background:#171d2f}.updates-panel[hidden]{display:none}.updates-panel h3{font-size:26px}.updates-panel p{margin-top:12px;color:var(--muted);font-size:16px;line-height:1.7}.updates-close{margin-top:14px;padding:8px 16px;min-height:44px;border:1px solid var(--line);border-radius:24px;background:transparent}.updates-close:hover{color:var(--cyan);border-color:var(--cyan)}
/* The themed Brevo form stays isolated from the site stylesheet. */
.updates-frame{display:block;width:100%;height:300px;margin-top:20px;border:0;border-radius:6px;background:#171d2f}

/* Match the signup and studio contact sections. */
.updates-section .game-updates{margin-bottom:0}.updates-section .updates-panel{margin-inline:auto;text-align:left}

/* Footer: primary identity and contact row, quieter copyright below. */
.site-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px 32px;padding-block:32px 24px}
.site-footer .footer-brand{width:auto;font-size:21px;gap:12px;justify-self:start}
.site-footer .footer-contact{justify-self:end;min-height:44px}
.site-footer small{grid-column:1/-1;font-size:13px;line-height:1.5;color:var(--muted)}
@media(max-width:600px){.site-footer{grid-template-columns:1fr;justify-items:center;gap:20px;padding-block:28px}.site-footer .footer-brand,.site-footer .footer-contact{justify-self:center}.site-footer small{text-align:center}}

.studio-page .site-header{position:relative}.studio-page main{min-height:60vh;display:grid;align-items:center}.studio-page .studio-section{width:100%}.studio-page .studio-inner{padding-block:80px}.studio-page h1{font-size:clamp(36px,4.5vw,56px);letter-spacing:-.035em}.site-header [aria-current="page"]{color:var(--cyan)}
@media(max-width:760px){.studio-page .studio-inner{padding-block:32px 48px}}

/* Compact footer across both pages. */
.site-footer{grid-template-columns:auto 1fr auto;gap:16px 24px;padding-block:18px}
.site-footer .footer-brand{font-size:18px;gap:10px}
.site-footer .footer-brand img{width:25px;height:36px}
.site-footer .footer-contact{grid-column:3;grid-row:1;padding:8px 20px;font-size:14px;min-height:44px}
.site-footer small{grid-column:2;grid-row:1;text-align:center;font-size:12px}
@media(max-width:760px){.site-footer{grid-template-columns:1fr auto;gap:10px 16px;padding-block:16px}.site-footer .footer-brand{justify-self:start;font-size:18px}.site-footer .footer-contact{grid-column:2;justify-self:end}.site-footer small{grid-column:1/-1;grid-row:2;justify-self:start;text-align:left}}

.studio-page main{display:block;min-height:0}
.studio-contact{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-block:56px}
.studio-contact h2{font-size:clamp(30px,3.4vw,42px)}
.studio-contact p{margin-top:12px;color:var(--muted)}
.studio-contact .button{flex-shrink:0}
.studio-page .site-footer{grid-template-columns:1fr auto}
.studio-page .site-footer small{justify-self:end}
@media(max-width:760px){.studio-contact{flex-direction:column;align-items:flex-start;gap:24px;padding-block:36px}.studio-page .site-footer{grid-template-columns:1fr}.studio-page .site-footer small{grid-column:1;grid-row:2;justify-self:start}}

.site-footer{grid-template-columns:1fr auto}.site-footer small{justify-self:end}
@media(max-width:760px){.site-footer{grid-template-columns:1fr}.site-footer small{grid-column:1;grid-row:2;justify-self:start}}

/* Keep the company wordmark and copyright balanced in one compact row. */
.site-footer{grid-template-columns:minmax(0,1fr) auto;gap:12px 20px;padding-block:12px}
.site-footer .footer-brand{font-size:17px;gap:9px}
.site-footer .footer-brand img{width:23px;height:34px}
.site-footer small{grid-column:2;grid-row:1;justify-self:end;text-align:right;font-size:12px}
@media(max-width:760px){.site-footer{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding-block:10px}.site-footer .footer-brand{width:auto;justify-self:start;font-size:15px;gap:7px}.site-footer .footer-brand img{width:21px;height:31px}.site-footer small,.studio-page .site-footer small{grid-column:2;grid-row:1;justify-self:end;text-align:right;font-size:11px}}

/* Artwork labels belong beneath the images. */
.project-figure{margin:0}.art-caption{padding-top:9px;font-size:13px;line-height:1.5;color:var(--muted);text-align:right}.hero-art-caption{padding-top:10px}

@media(min-width:761px){.hero .hero-intro{max-width:620px}}

@media(min-width:761px){.hero .hero-intro{font-size:20px;line-height:1.6;max-width:700px}}

.hero-title-group{width:max-content;max-width:100%}.hero-title-group .eyebrow{text-align:center}
