:root{color-scheme:dark;--ink:#f0eff7;--muted:#b0b3c3;--purple:#b79aff;--purple-dark:#6840ce;--line:#303440;--paper:#181b25;--background:#10121a;--action:#7545df;--orange:#f0804c;--radius:16px;--width:1200px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--background);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{touch-action:manipulation}a,button{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #a77aff;outline-offset:5px}img{display:block;width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.08;letter-spacing:-.055em}h1{font-size:clamp(3.2rem,6.3vw,5.5rem);font-weight:600}h2{font-size:clamp(2rem,3.4vw,3rem);font-weight:600}h3{font-size:1.55rem;font-weight:600;letter-spacing:-.035em}p{color:var(--muted)}.wrap{width:min(var(--width),calc(100% - 96px));margin:auto}.section{padding:78px 0}.eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;margin-bottom:24px;color:var(--purple)}.eyebrow.neutral{color:var(--muted)}.accent{color:var(--purple)}.skip-link{position:fixed;top:-80px;left:20px;z-index:100;background:var(--action);color:#fff;padding:12px 20px}.skip-link:focus{top:10px}.site-header{background:rgba(16,18,26,.97);position:sticky;top:0;z-index:30;border-bottom:1px solid var(--line)}.header-inner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:32px}.wordmark{display:inline-flex;align-items:center;gap:12px;font-size:1.03rem;line-height:1.12;font-weight:700;letter-spacing:-.035em}.mark{font-size:1.65rem;letter-spacing:-.12em;font-weight:800;color:var(--purple);padding-right:4px}.brand-text{width:95px}.nav{display:flex;align-items:center;gap:31px;font-size:.9rem}.nav>a:not(.button){position:relative;padding:10px 0}.nav>a:not(.button):after{content:'';position:absolute;height:2px;background:var(--purple);bottom:3px;left:0;width:0;transition:width .2s}.nav>a:hover:after,.nav>a[aria-current=page]:after{width:100%}.nav .button{margin-left:14px}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;min-height:52px;padding:13px 25px;border:1px solid var(--action);border-radius:8px;background:var(--action);color:white;font-size:.9rem;font-weight:600;line-height:1.4;cursor:pointer;transition:transform .2s,background .2s}.button:hover{background:var(--purple-dark);transform:translateY(-2px)}.button.purple{background:var(--action);border-color:var(--action)}.button.purple:hover{background:var(--purple-dark)}.button.outline{color:var(--ink);background:transparent;border-color:var(--line)}.button.outline:hover{background:var(--paper)}.arrow{font-size:1.2rem;line-height:1}.text-link{display:inline-flex;gap:18px;align-items:center;font-size:.92rem;font-weight:600;border-bottom:1px solid currentColor;padding-bottom:4px}.text-link:hover{color:var(--purple)}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:.95fr 1.05fr;gap:36px;align-items:center;padding:52px 0 48px}.hero h1{max-width:670px;font-size:clamp(2.5rem,4.6vw,4rem)}.hero .intro{max-width:540px;margin:22px 0 25px;font-size:1.06rem;line-height:1.7}.actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap}.hero-art{position:relative;aspect-ratio:1.45;isolation:isolate}.hero-art img{border-radius:18px;aspect-ratio:1.45;object-fit:cover;border:1px solid var(--line)}.art-caption{position:absolute;bottom:20px;left:20px;right:20px;display:flex;justify-content:space-between;gap:10px;font-size:.75rem;color:#e4e0ee;letter-spacing:.025em;background:rgba(13,16,24,.86);padding:10px 12px;border-radius:7px}.location{display:flex;align-items:center;gap:9px;font-size:.8rem;margin-top:24px;color:var(--muted)}.location svg{width:15px;height:15px}.service-band{display:flex;justify-content:space-between;gap:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;font-size:.78rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.service-band span:nth-child(even){color:#a19bab}.section-top{display:flex;justify-content:space-between;gap:45px;align-items:end;margin-bottom:32px}.section-top h2{max-width:660px}.section-top>p{max-width:360px}.section-top .text-link{flex-shrink:0;margin-bottom:8px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{position:relative;border:1px solid var(--line);border-radius:var(--radius);padding:24px;min-height:252px;background:#151821;transition:border-color .25s,transform .25s,background .25s}.service-card:hover{border-color:#7961aa;background:#1d2030;transform:translateY(-4px)}.card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}.service-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:12px;background:#29223d;color:var(--purple)}.service-icon svg{width:23px;height:23px}.service-card h3{font-size:1.4rem;margin-bottom:15px;max-width:270px;letter-spacing:-.04em}.service-card p{font-size:.92rem;padding-right:8px;line-height:1.65}.card-arrow{position:absolute;bottom:25px;right:27px;color:var(--purple)}.connected{background:var(--paper)}.connected-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.connected h2{max-width:510px}.connected p{margin:25px 0}.connection-list{border-top:1px solid var(--line)}.connection-list article{padding:20px 0;border-bottom:1px solid var(--line);display:block}.connection-list h3{font-size:1.25rem;letter-spacing:-.03em}.connection-list p{margin:9px 0 0;font-size:.93rem}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:35px}.process-grid h3{font-size:1.25rem;line-height:1.3;margin-bottom:14px;letter-spacing:-.03em}.process-grid p{font-size:.92rem}.projects-section{background:#12101b;color:#fff}.projects-section .eyebrow{color:#bd9cff}.projects-section p{color:#b8b4c4}.projects-section .text-link:hover{color:#c5b0ff}.projects-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.project-art{overflow:hidden;border-radius:18px;aspect-ratio:1.58;background:#2d2548;position:relative}.project-art img{height:100%;object-fit:cover;transition:transform .6s}.project:hover .project-art img{transform:scale(1.035)}.art-label{position:absolute;top:18px;left:18px;background:rgba(16,11,25,.65);color:#fff;backdrop-filter:blur(6px);border:1px solid #ffffff30;border-radius:30px;padding:6px 13px;font-size:.74rem}.project-caption{display:flex;justify-content:space-between;align-items:center;margin:18px 0 10px}.project-caption h3{font-size:1.8rem}.project-caption .round-arrow{display:grid;place-items:center;border:1px solid #6c647b;border-radius:50%;width:45px;height:45px;font-size:1.3rem}.project p{max-width:490px;font-size:.98rem}.project-link{display:inline-block;margin-top:19px;font-size:.82rem;color:#d8cbf7;border-bottom:1px solid #736487}.project.life .project-link{color:#f5c9b3}.local-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px}.local-copy p{margin-bottom:25px}.place-line{font-size:1.05rem;color:var(--ink);margin:28px 0 0;padding-top:25px;border-top:1px solid var(--line)}.cta{background:#211b34;color:#fff;padding:48px 0;border-top:1px solid #443359;border-bottom:1px solid #443359}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:50px}.cta h2{font-size:clamp(1.9rem,3vw,2.7rem);max-width:650px}.cta p{color:#e2d7ff;margin-top:16px}.cta .button{background:var(--action);color:#fff;border-color:var(--action);flex-shrink:0}.site-footer{padding:36px 0 20px;background:#0c0e15}.footer-top{display:grid;grid-template-columns:1.3fr 1fr 1.1fr;gap:45px}.footer-brand p{font-size:.87rem;max-width:250px;margin-top:19px}.footer-heading{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:16px;color:var(--muted)}.footer-links{display:flex;flex-wrap:wrap;gap:7px 22px;max-width:250px;font-size:.87rem}.footer-contact{font-size:.87rem;overflow-wrap:anywhere}.footer-contact p{margin-top:12px;font-size:.82rem}.footer-bottom{margin-top:28px;padding-top:17px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:.75rem;color:var(--muted)}.footer-game-links{display:flex;gap:22px}.site-footer a:hover{color:var(--purple)}.page-hero{padding:55px 0 45px;max-width:910px}.page-hero h1{font-size:clamp(2.4rem,4.8vw,4rem)}.page-hero>p:last-child{max-width:680px;font-size:1.1rem;margin-top:27px}.service-detail{padding:34px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:.65fr 1.35fr;gap:55px;scroll-margin-top:110px}.service-title .service-icon{margin-bottom:22px}.service-title h2{font-size:2rem;max-width:330px}.service-body>p{max-width:650px}.service-body ul{margin:22px 0;padding-left:20px;color:var(--muted)}.service-body li{padding:4px 0}.service-body .text-link{margin-top:6px;color:var(--purple)}.service-details{padding-bottom:52px}.faq{background:var(--paper)}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px}.faq details{border-top:1px solid var(--line);padding:22px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{font-size:1.05rem;font-weight:600;cursor:pointer;list-style:none;display:flex;gap:25px;justify-content:space-between;line-height:1.5}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';color:var(--purple);font-size:1.4rem;line-height:1}.faq details[open] summary:after{content:'−'}.faq details p{margin-top:17px;font-size:.96rem}.project-page{padding-top:15px}.project-page .project{margin-bottom:30px}.project-page .project-art{aspect-ratio:1.35}.project-page .project p{max-width:none}.project-page .projects-grid{gap:50px}.project-page .art-label{top:auto;bottom:18px}.project-page-foot{border-top:1px solid #494153;margin-top:30px;padding-top:35px;display:flex;justify-content:space-between;gap:35px;align-items:center}.project-page-foot p{max-width:620px}.about-statement{background:#191728;color:#fff;border:1px solid #383049;border-radius:18px;padding:44px;margin-bottom:58px;font-size:clamp(1.9rem,3.7vw,3.2rem);line-height:1.2;letter-spacing:-.04em}.about-statement span{color:#b391ff}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:35px}.values-grid h3{font-size:1.4rem;margin:18px 0}.values-grid p{font-size:.96rem}.values-grid article{border-top:1px solid var(--line);padding-top:20px}.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:55px;padding-bottom:62px}.contact-direct{padding:33px 0;border-top:1px solid var(--line)}.contact-direct h2{font-size:1.8rem;margin-bottom:23px}.email-link{font-size:clamp(1rem,1.7vw,1.3rem);color:var(--purple);border-bottom:1px solid #c6b2fd;overflow-wrap:anywhere}.copy-button{display:block;background:none;border:0;padding:13px 0;cursor:pointer;color:var(--muted);font-size:.85rem;text-decoration:underline;text-underline-offset:4px}.status{font-size:.85rem;line-height:1.5;color:var(--purple);min-height:24px}.contact-note{margin-top:34px}.contact-note p{margin-top:12px}.inquiry{background:var(--paper);padding:28px;border:1px solid var(--line);border-radius:16px}.inquiry h2{font-size:1.8rem;margin-bottom:12px}.inquiry>p{font-size:.9rem;margin-bottom:24px}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{margin-bottom:20px}.field label{display:block;font-size:.87rem;font-weight:600;margin-bottom:7px}.field label span{font-weight:400;color:var(--muted)}input,textarea,select{width:100%;border:1px solid #434858;background:#10131c;border-radius:7px;min-height:46px;padding:10px 12px;color:var(--ink);font-size:1rem}textarea{resize:vertical;min-height:130px}input:hover,textarea:hover,select:hover{border-color:#877aab}.inquiry .button{width:100%}.inquiry .status{margin-top:16px;margin-bottom:0}.no-script{padding:12px;background:#29213d;font-size:.9rem}.no-script a{text-decoration:underline}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(min-width:1600px){:root{--width:1280px}.hero{gap:45px}h1{font-size:4.5rem}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.nav{gap:22px}.hero{gap:20px}.hero h1{font-size:clamp(2.5rem,4.6vw,4rem)}.hero .intro{font-size:1rem}.services-grid{gap:13px}.service-card{padding:22px;min-height:262px}.connected-grid,.local-grid{gap:60px}.process-grid{gap:24px}.contact-layout{gap:50px}.service-detail{gap:55px}}
@media(max-width:800px){.wrap{width:calc(100% - 40px)}.header-inner{height:70px}.menu-toggle{display:block;background:transparent;border:1px solid var(--line);padding:9px 15px;border-radius:7px;font-size:.9rem;cursor:pointer;color:var(--ink)}.nav{display:none;position:absolute;top:69px;left:0;right:0;background:#151822;padding:22px;box-shadow:0 14px 18px #19182312;flex-direction:column;align-items:stretch;gap:8px;border-bottom:1px solid var(--line)}.nav.open{display:flex}.nav .button{margin:10px 0 0}.nav>a:not(.button){padding:9px 8px}.nav>a[aria-current=page]{color:var(--purple)}.nav>a:after{display:none}.hero{padding:35px 0;grid-template-columns:1fr;gap:28px}.hero h1{font-size:clamp(2.6rem,7vw,3.6rem);max-width:690px}.hero .intro{max-width:600px}.hero-art{max-width:560px;justify-self:center;width:100%}.hero-art img{aspect-ratio:1.5}.hero-art{aspect-ratio:1.5}.service-band{flex-wrap:wrap;justify-content:center;font-size:.71rem;gap:9px 18px;padding:20px 0}.service-band span:nth-child(even){display:none}.section{padding:54px 0}.section-top{align-items:start;flex-direction:column;gap:23px;margin-bottom:34px}.section-top>p{max-width:580px}.services-grid{grid-template-columns:repeat(2,1fr)}.service-card{min-height:248px}.connected-grid,.local-grid{grid-template-columns:1fr;gap:40px}.connected h2{max-width:620px}.connected p{max-width:610px}.process-grid{grid-template-columns:repeat(2,1fr);gap:34px}.project-caption h3{font-size:1.65rem}.projects-grid{gap:22px}.project-art{aspect-ratio:1.25}.project p{font-size:.92rem}.cta-inner{flex-direction:column;align-items:start;gap:28px}.footer-top{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-brand p{max-width:none}.page-hero{padding:38px 0}.service-detail{grid-template-columns:1fr;gap:24px}.service-title h2{max-width:none}.service-title .service-icon{margin-bottom:15px}.faq-grid{grid-template-columns:1fr;gap:35px}.project-page .projects-grid{gap:28px}.about-statement{padding:35px;margin-bottom:55px}.values-grid{gap:30px;grid-template-columns:1fr}.contact-layout{grid-template-columns:1fr;gap:25px}.contact-direct{padding:25px 0}.page-hero>p:last-child{font-size:1rem}.project-page-foot{align-items:start;flex-direction:column}.email-link{font-size:1.25rem}}
@media(max-width:480px){.hero h1{font-size:clamp(2rem,9vw,2.8rem);letter-spacing:-.055em}.hero .eyebrow{font-size:.71rem}.actions{gap:22px}.actions .button{padding:13px 18px;gap:13px}.actions .text-link{font-size:.86rem}.art-caption{font-size:.68rem;bottom:13px;left:13px;right:13px;padding:10px}.art-caption span:last-child{display:none}.services-grid,.projects-grid{grid-template-columns:1fr}.service-card{min-height:216px;padding:22px}.card-head{margin-bottom:23px}.service-card p{max-width:330px}.process-grid{gap:30px 24px}.process-grid h3{font-size:1.14rem}.process-grid p{font-size:.87rem}.project-art{aspect-ratio:1.5}.project+.project{margin-top:23px}.footer-top{grid-template-columns:1fr;gap:28px}.footer-brand{grid-column:auto}.footer-bottom{flex-direction:column;gap:13px}.inquiry{padding:25px 20px}.field-pair{grid-template-columns:1fr;gap:0}.about-statement{padding:29px 25px}.location{font-size:.74rem}.project-page .project-art{aspect-ratio:1.5}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.site-header,.site-footer,.cta,.menu-toggle{display:none}.wrap{width:100%}.section{padding:25px 0}body{color:#000;background:#fff}.project-art{max-height:250px}a{text-decoration:underline}.projects-section{background:white;color:black}.projects-section p{color:#333}}

input::placeholder,textarea::placeholder{color:#979cad;opacity:1}.button:disabled{opacity:.55;cursor:not-allowed}.hero>div,.service-card,.local-copy{min-width:0}.service-body>.eyebrow{letter-spacing:.04em;text-transform:none;font-size:1rem;margin-bottom:15px}.footer-game-links{display:none}

.ai-note{max-width:620px;margin:40px auto 0;text-align:center;font-size:.78rem;line-height:1.6;color:var(--muted)}.values-grid h3{margin-top:0}

.process-grid>article{border-top:1px solid var(--line);padding-top:18px}
/* Editorial homepage and project presentation */
.home-services{background:var(--background)}
.service-list{border-top:1px solid var(--line)}
.service-list>a{display:grid;grid-template-columns:minmax(190px,.7fr) minmax(0,1.5fr) 36px;align-items:center;gap:30px;padding:24px 3px;border-bottom:1px solid var(--line);transition:background .2s,color .2s}
.service-list>a:hover{background:#181b25;color:var(--purple)}
.service-list h3{font-size:1.28rem;line-height:1.25}
.service-list p{font-size:.97rem;max-width:560px}
.service-list span{font-size:1.35rem;color:var(--purple);justify-self:end}
.project-showcase{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(250px,.8fr);gap:20px;align-items:stretch}
.featured-project{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(230px,.9fr);overflow:hidden;border:1px solid #373140;border-radius:14px;background:#1a1826}
.featured-art{display:block;height:100%;min-height:340px;overflow:hidden}
.featured-art img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.featured-art:hover img{transform:scale(1.025)}
.featured-copy,.writing-project{padding:30px;min-width:0}
.featured-copy h3,.writing-project h3{margin:0 0 18px;font-size:clamp(1.5rem,2.3vw,2rem)}
.featured-copy .eyebrow,.writing-project .eyebrow{margin-bottom:28px}
.featured-copy p:not(.eyebrow),.writing-project p:not(.eyebrow){font-size:.96rem;line-height:1.65}
.featured-copy .text-link,.writing-project .text-link{margin-top:26px;color:#e2d4ff}
.writing-project{border:1px solid #373140;border-radius:14px;background:#181822;display:flex;flex-direction:column;align-items:flex-start}
.writing-project .text-link{margin-top:auto;padding-top:26px}
.hero-art{aspect-ratio:1.45}
.hero-art picture,.hero-art img{width:100%;height:100%}
.hero-art img{object-position:55% 50%}
.actions{gap:12px}
.actions .button{min-width:166px}
@media(max-width:1050px){.project-showcase{grid-template-columns:1fr}.writing-project{min-height:230px}.writing-project .text-link{margin-top:10px}}
@media(max-width:800px){.hero-art{aspect-ratio:1.45}.service-list>a{grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr) 24px;gap:16px}.featured-art{min-height:280px}}
@media(max-width:640px){.service-list>a{grid-template-columns:1fr 24px;gap:8px 12px;padding:21px 0}.service-list h3{grid-column:1}.service-list p{grid-column:1;grid-row:2}.service-list span{grid-column:2;grid-row:1 / 3}.featured-project{grid-template-columns:1fr}.featured-art{height:auto;min-height:0;aspect-ratio:1.9}.featured-copy,.writing-project{padding:24px}.hero-art,.hero-art img{aspect-ratio:1.38}.actions .button{min-width:0}}
