@charset "UTF-8";
/* Shared design language; each repository owns its own complete copy. */
:root{--paper:#f4f3ee;--ink:#20221e;--muted:#66685e;--line:#d6d8cc;--accent:#426c38;--soft:#e4e9dc;--on-accent:#fff;--width:1320px;color-scheme:light;font-family:Arial,"Helvetica Neue",system-ui,sans-serif;font-synthesis:none;font-size:16px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,select{font:inherit}a,button,summary,select{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:6px}::selection{background:var(--accent);color:var(--on-accent)}.wrap{max-width:var(--width);margin-inline:auto;padding-inline:clamp(22px,5vw,80px)}.skip{position:fixed;inset-block-start:10px;inset-inline-start:16px;transform:translateY(-200%);z-index:20;background:var(--ink);color:var(--paper);padding:12px 20px;border-radius:6px}.skip:focus{transform:none}.topbar{position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:110px;border-bottom:1px solid var(--line)}.wordmark{display:inline-flex;align-items:center;gap:11px;font-size:25px;letter-spacing:-1px;font-weight:750;white-space:nowrap;line-height:1}.wordmark svg{width:32px;height:32px;color:var(--accent)}.wordmark .division{font-weight:400;letter-spacing:-.6px;opacity:.7}.nav{display:flex;gap:26px;align-items:center;font-size:13px;letter-spacing:.02em}.nav>a{position:relative;padding-block:12px}.nav>a:after{content:"";position:absolute;inset-inline:0;bottom:7px;height:1px;background:currentColor;transform:scaleX(0);transition:transform .25s}.nav>a:hover:after,.nav>a[aria-current]:after{transform:scaleX(1)}.language{position:relative}.language>summary{cursor:pointer;display:flex;align-items:center;gap:8px;padding:10px 0 10px 12px;list-style:none;white-space:nowrap;font-size:12px}.language>summary::-webkit-details-marker{display:none}.language>summary svg{width:17px;height:17px}.language>summary:after{content:"⌄";margin-inline-start:2px}.language-panel{position:absolute;inset-inline-end:0;top:calc(100% + 12px);width:min(490px,calc(100vw - 44px));max-height:65vh;overflow:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;padding:14px;background:var(--paper);border:1px solid var(--line);box-shadow:0 18px 55px #0002;border-radius:12px;z-index:10}.language-panel a{padding:9px;font-size:13px;line-height:1.4;overflow-wrap:anywhere;border-radius:5px}.language-panel a:hover,.language-panel a[aria-current]{background:var(--soft);color:var(--ink)}.hero{position:relative;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:30px;min-height:650px;padding-block:85px 96px}.hero-copy{position:relative;z-index:2}.eyebrow{display:flex;align-items:center;gap:9px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;text-transform:uppercase;font-size:11px;letter-spacing:.16em;margin:0 0 34px}.eyebrow:before{content:"";width:6px;height:6px;background:var(--accent);border-radius:50%;flex-shrink:0}h1{font-size:clamp(45px,5.9vw,82px);font-weight:500;letter-spacing:-.065em;line-height:1.04;margin:0 0 30px;max-width:9.7em;text-wrap:balance;overflow-wrap:break-word}p{margin:0}.intro{font-size:clamp(16px,1.4vw,18px);line-height:1.75;color:var(--muted);max-width:31em}.cta{display:inline-flex;align-items:center;justify-content:space-between;gap:42px;margin-top:36px;font-size:14px;font-weight:600;padding:15px 22px;border-radius:100px;background:var(--ink);color:var(--paper);transition:background .2s,transform .2s}.cta:hover{background:var(--accent);color:var(--on-accent);transform:translateY(-3px)}.arrow{display:inline-block;font-size:23px;font-weight:400;line-height:1}.hero-art{position:relative;width:100%;aspect-ratio:1;max-width:540px;justify-self:end;isolation:isolate;--px:0deg;--py:0deg;perspective:1000px}.art-surface{position:absolute;inset:0;transform:rotateX(var(--py)) rotateY(var(--px));transition:transform .5s ease-out}.art-grid{position:absolute;inset:5%;border-radius:50%;background-image:radial-gradient(var(--ink) .7px,transparent .7px);background-size:17px 17px;opacity:.12;mask-image:radial-gradient(circle,#000 20%,transparent 70%)}.art-ring{position:absolute;inset:12%;border:48px solid var(--accent);border-radius:50%;transform:rotate(-30deg);box-shadow:inset 0 1px 0 #ffffff50,0 30px 60px #20221e12;animation:breathe 4s ease-in-out 1}.art-ring:before{content:"";position:absolute;inset:-49px;border:1px solid var(--ink);border-radius:50%;opacity:.15}.art-ring.ring-two{inset:25% 0 25% 50%;border-width:28px;border-color:#a4b59a;animation-delay:.2s;transform:rotate(45deg)}.art-ring.ring-three{inset:49% 44% 1% 6%;border-width:28px;border-color:#c8d1b7;animation-delay:.4s;transform:rotate(90deg)}.art-dot{position:absolute;inset:35% auto auto 35%;width:30%;height:30%;border-radius:50%;background:var(--paper);box-shadow:0 12px 40px #20221e15;display:grid;place-items:center}.art-dot svg{width:40%;height:40%;color:var(--accent)}.art-label{position:absolute;inset-block-end:0;inset-inline:10%;display:flex;justify-content:space-between;align-items:center;font:10px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.12em;opacity:.6}.art-cross{position:absolute;inset:9% auto auto 4%;font:26px ui-monospace,monospace;font-weight:200;opacity:.4}.art-axis{position:absolute;inset:9% 4% auto auto;width:44px;height:44px;border-top:1px solid var(--line);border-right:1px solid var(--line)}.hero-index{position:absolute;inset-block-end:25px;inset-inline-start:0;color:var(--muted);font:10px ui-monospace,monospace;letter-spacing:.1em}.section-label{display:flex;justify-content:space-between;gap:20px;align-items:baseline;margin-bottom:32px}.section-label h2{font-size:13px;letter-spacing:.02em;font-weight:500;margin:0}.section-label span{font:11px ui-monospace,monospace;color:var(--muted)}.work{padding-block:50px 90px;border-top:1px solid var(--line)}.division-link{display:grid;grid-template-columns:65px 1fr 1.15fr 40px;align-items:center;gap:25px;border-top:1px solid var(--line);padding:35px 16px;transition:background .3s,padding .3s}.division-link:last-child{border-bottom:1px solid var(--line)}.division-link:hover{background:var(--soft);padding-inline:26px}.division-link .index{font:11px ui-monospace,monospace;color:var(--muted)}.division-link h3{font-size:clamp(34px,4vw,54px);line-height:1.1;font-weight:400;letter-spacing:-.05em;margin:0}.division-link p{color:var(--muted);font-size:14px;line-height:1.7;max-width:32em}.division-link .arrow{text-align:end;transition:transform .3s}.division-link:hover .arrow{transform:translate(4px,-4px)}.division-link .tiny-mark{display:inline-block;width:10px;height:10px;border-radius:50%;margin-inline-start:8px;vertical-align:middle}.tech-dot{background:#6879ef}.studio-dot{background:#cf6948}.games-dot{background:#8d6db6}.project{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border:1px solid var(--line);border-radius:5px;transition:transform .3s,box-shadow .3s}.project:hover{transform:translateY(-4px);box-shadow:0 20px 45px #15162a0a}.project-art{background:#e4e9dc;min-height:330px;display:grid;place-items:center;padding:45px;position:relative}.product-symbol{width:160px;height:160px;background:#f9faf5;border-radius:38px;display:grid;place-items:center;transform:rotate(-8deg);box-shadow:14px 17px 0 #b7c7a5,0 35px 60px #35452e18}.product-symbol svg{width:85px;height:85px;color:#426c38}.product-orbit{position:absolute;width:245px;height:245px;border:1px solid #426c3830;border-radius:50%;transform:rotate(-30deg) scaleX(1.35)}.project-copy{padding:45px;display:flex;flex-direction:column;justify-content:center;align-items:start;gap:14px;background:var(--soft)}.project-copy .project-type{font-size:12px;color:var(--muted)}.project-copy h3{font-size:40px;letter-spacing:-.05em;font-weight:500;line-height:1.2;margin:0}.project-copy p{font-size:15px;line-height:1.75;max-width:33em;color:var(--muted)}.project-copy .project-go{margin-top:18px;display:flex;gap:16px;align-items:center;font-size:13px}.coming{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;border:1px solid var(--line);padding:clamp(28px,5vw,68px);min-height:310px;background:var(--soft);position:relative;overflow:hidden;border-radius:5px}.coming h3{font-size:clamp(30px,4vw,48px);font-weight:400;line-height:1.2;letter-spacing:-.04em;margin:0 0 18px}.coming p{font-size:15px;color:var(--muted);line-height:1.75;max-width:30em}.coming-graphic{display:grid;place-items:center;min-height:160px}.coming-graphic span{width:120px;height:120px;border:1px solid var(--accent);display:block;transform:rotate(45deg);position:relative;opacity:.65}.coming-graphic span:before,.coming-graphic span:after{content:"";position:absolute;inset:18px;border:1px solid var(--accent)}.coming-graphic span:after{inset:36px;background:var(--accent);opacity:.4}.family{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-block:38px;gap:30px}.family>a{display:flex;align-items:center;gap:14px;font-size:13px}.family>a>svg{width:25px;height:25px}.family nav{display:flex;gap:26px;font-size:13px}.family nav a:hover{text-decoration:underline;text-underline-offset:5px}.footer{border-top:1px solid var(--line);padding-block:25px;display:flex;justify-content:space-between;gap:25px;font:11px ui-monospace,monospace;color:var(--muted)}.footer a:hover{color:var(--ink)}.footer .footer-note{display:flex;gap:20px}.theme-tech{--paper:#f0f1f8;--ink:#222435;--muted:#616476;--line:#d4d6e4;--accent:#4356cc;--soft:#e7e9f5}.theme-tech .art-ring{border-radius:24%;border-width:44px;inset:17%}.theme-tech .ring-two{inset:6% 4% 54% 56%;border-width:22px;border-color:#aab4f6;border-radius:22%}.theme-tech .ring-three{inset:55% 55% 5% 5%;border-width:22px;border-color:#c9cef2;border-radius:22%}.theme-tech .art-dot{border-radius:22%;background:#f8f9ff}.theme-studio{--paper:#f6efe6;--ink:#332722;--muted:#78675b;--line:#ded0c4;--accent:#b84d2d;--soft:#efe2d5}.theme-studio .art-ring{inset:13% 15% 20% 13%;border-width:0;background:#b84d2d;border-radius:50% 50% 2% 50%;box-shadow:inset -20px -20px 60px #76331422,0 30px 60px #63200d12;transform:rotate(-30deg)}.theme-studio .ring-two{inset:35% 0 10% 43%;background:#e0af6c;border-radius:50% 50% 50% 2%;border-width:0;mix-blend-mode:multiply;transform:rotate(-30deg)}.theme-studio .ring-three{inset:1% 40% 49% 6%;background:#dba58a;mix-blend-mode:multiply;border-width:0;border-radius:50%}.theme-studio .art-dot{background:var(--paper);inset:35% auto auto 35%;width:22%;height:22%}.theme-games{--paper:#1d1c26;--ink:#f0ecf7;--muted:#b4afc1;--line:#3e3a4d;--accent:#c0dba6;--soft:#2a2736;--on-accent:#20221e;color-scheme:dark}.theme-games .art-ring{border-radius:30%;inset:15%;border-color:#aa8cd1;box-shadow:inset 0 0 40px #c0acf41a,0 18px 65px #9570c522;transform:rotate(45deg)}.theme-games .ring-two{border-color:#c0dba6;border-radius:12%;border-width:24px;inset:3% 8% 62% 58%;transform:rotate(15deg)}.theme-games .ring-three{border-color:#d5bdd9;border-radius:50%;border-width:24px;inset:56% 54% 9% 11%}.theme-games .art-dot{border-radius:22%;background:#2b2638;box-shadow:0 0 40px #0e0a1866}.theme-games .coming-graphic span{border-radius:12px}.theme-games .wordmark svg{color:#c0dba6}.theme-games .cta{background:#c0dba6;color:#20221e}.theme-games .cta:hover{background:#d8ebc6}.theme-games .art-grid{opacity:.28}.theme-games .art-dot svg{color:#c0dba6}.theme-games ::selection{background:#c0dba6;color:#20221e}.theme-games .language-panel{box-shadow:0 18px 55px #0005}.reveal{animation:arrive .9s both}.hero-art.reveal{animation-delay:.12s}.theme-home .art-ring{border-color:#687b58}.theme-home .ring-two{border-color:#a4b59a}.theme-home .ring-three{border-color:#c8d1b7}
@keyframes arrive{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes breathe{0%,100%{translate:0 0}50%{translate:0 -12px}}
@media(min-width:1500px){.hero{min-height:710px}}@media(max-width:960px){.nav{gap:18px}.hero{min-height:580px;gap:10px;padding-block:65px 80px}h1{font-size:clamp(42px,6.4vw,66px)}.hero-art{max-width:430px}.art-ring{border-width:35px}.art-ring.ring-two,.art-ring.ring-three{border-width:22px}.division-link{grid-template-columns:35px 1fr 1.2fr 25px;gap:18px}.project-copy{padding:30px}.project-art{padding:30px}}
@media(max-width:640px){.wrap{padding-inline:22px}.topbar{min-height:84px;gap:15px;flex-wrap:wrap;padding-block:22px}.wordmark{font-size:23px}.wordmark svg{width:28px;height:28px}.nav{gap:18px}.nav>a{display:none}.language>summary{padding-block:3px}.hero{grid-template-columns:1fr;gap:12px;padding-block:48px 62px;min-height:auto}.eyebrow{margin-bottom:27px;font-size:10px}h1{font-size:clamp(43px,11.8vw,65px);max-width:12em;letter-spacing:-.055em;margin-bottom:25px}.intro{font-size:16px;max-width:34em}.cta{margin-top:28px;padding:13px 20px}.hero-art{width:min(100%,370px);justify-self:center;margin-block:10px 0}.art-label{font-size:9px}.hero-index{bottom:16px}.work{padding-block:32px 55px}.section-label{margin-bottom:22px}.division-link{grid-template-columns:25px 1fr 24px;gap:12px;padding:25px 0}.division-link:hover{padding-inline:8px}.division-link h3{font-size:38px}.division-link p{grid-column:2;grid-row:2;font-size:14px;max-width:30em}.division-link>.arrow{grid-column:3;grid-row:1}.division-link .index{align-self:center}.project{grid-template-columns:1fr}.project-art{min-height:260px}.product-symbol{width:130px;height:130px;border-radius:32px}.product-symbol svg{width:70px;height:70px}.product-orbit{width:200px;height:200px}.project-copy{padding:30px 26px}.project-copy h3{font-size:36px}.coming{grid-template-columns:1fr;gap:24px;padding:32px 26px}.coming-graphic{min-height:120px;order:-1}.coming-graphic span{width:85px;height:85px}.family{align-items:start;flex-direction:column;gap:22px;padding-block:30px}.family nav{flex-wrap:wrap;gap:22px}.footer{font-size:10px;gap:15px}.footer .footer-note{gap:14px}.language-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.theme-tech .art-ring{border-width:34px}.theme-tech .ring-two,.theme-tech .ring-three{border-width:20px}.theme-games .ring-two,.theme-games .ring-three{border-width:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.art-surface{transform:none!important}.project:hover,.cta:hover{transform:none}}@media(forced-colors:active){.art-ring,.art-dot,.product-symbol{border:2px solid CanvasText}.cta{border:1px solid CanvasText}.tiny-mark{border:1px solid CanvasText}}[dir=rtl] h1{letter-spacing:normal;line-height:1.28}[dir=rtl] .wordmark{direction:ltr}[dir=rtl] .eyebrow{letter-spacing:.04em}[dir=rtl] .division-link h3{letter-spacing:normal}[lang=ta] h1,[lang=ml] h1,[lang=kn] h1,[lang=my] h1,[lang=si] h1,[lang=km] h1,[lang=am] h1{line-height:1.4;letter-spacing:-.02em}

/* Keep the decorative orbit outlines inside their own visual canvas. */
.kitchen-dot{background:#a87922}
.theme-kitchen{--paper:#faf4df;--ink:#332f22;--muted:#75684c;--line:#e0d5b7;--accent:#8b5d14;--soft:#f0e7c9}
.theme-kitchen .art-ring{inset:14%;border:30px solid #d9ad45;background:#f3e6bf;box-shadow:inset 0 0 0 2px #faf4df,inset 0 0 0 20px #e9d59d,0 24px 55px #68502218;transform:rotate(-15deg)}
.theme-kitchen .art-ring:before{inset:-42px;border-color:#8b5d14}
.theme-kitchen .ring-two{inset:6% 5% 62% 63%;border:0;border-radius:70% 4% 70% 4%;background:#a4ae78;box-shadow:inset -12px -10px 25px #5f723220;transform:rotate(14deg)}
.theme-kitchen .ring-three{inset:60% 65% 9% 6%;border:0;border-radius:50%;background:#d9ad45;box-shadow:inset -12px -12px 25px #8b5d1420;transform:rotate(-25deg)}
.theme-kitchen .art-dot{background:#fffaf0;box-shadow:0 8px 24px #68502214}
.theme-kitchen .coming-graphic span,.theme-kitchen .coming-graphic span:before,.theme-kitchen .coming-graphic span:after{border-radius:50%}
/* Four divisions and long native language names must fit between tablet breakpoints. */
@media(min-width:641px) and (max-width:1050px){.topbar{flex-wrap:wrap;gap:6px;padding-block:22px}.nav{margin-inline-start:auto;flex-wrap:wrap;justify-content:flex-end;column-gap:20px;row-gap:4px}.language>summary span{max-width:150px}.family{flex-wrap:wrap}.family nav{flex-wrap:wrap}}
.hero-art{overflow:clip}

/* Long words and complex scripts must be able to shrink inside grid cells. */
.hero{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
.hero-copy,.project-copy,.coming>div,.division-link h3,.division-link p{min-width:0}
h1,.intro,.project-copy p,.coming p,.division-link p{overflow-wrap:anywhere}
.language>summary span{max-width:180px;white-space:normal;overflow-wrap:anywhere}
.footer,.footer-note{flex-wrap:wrap}
@media(max-width:640px){.hero{grid-template-columns:minmax(0,1fr)}.language>summary span{max-width:145px}.nav{margin-inline-start:auto}.footer-note{row-gap:10px}}
