:root{--page:#fafafa;--text:#202321;--line:#bdc4bd;--subtle:#596259;--band:#e8eee8;color-scheme:light}html[data-theme=dark]{--page:#151715;--text:#edf2ed;--line:#424b42;--subtle:#b1bdb1;--band:#242a24;color-scheme:dark}body,body.playground,body.workshop{background:var(--page);color:var(--text)}header,.playground header{background:var(--page)}h1,.playground h1,.workshop h1{font-size:86px;overflow-wrap:anywhere}.hero-copy{max-width:960px}.theme-control{display:flex;align-items:center;gap:9px;font:12px Arial,sans-serif;cursor:pointer;flex-shrink:0;position:relative;min-height:44px}.theme-control input{position:absolute;opacity:0;width:42px;height:24px;margin:0}.theme-track{width:42px;height:24px;border:1px solid var(--line);border-radius:20px;background:var(--band);padding:3px;display:block}.theme-track:before{content:'';display:block;width:16px;height:16px;border-radius:50%;background:var(--text)}.theme-control input:checked+.theme-track{background:#a7ed55}.theme-control input:checked+.theme-track:before{transform:translateX(17px);background:#202321}.theme-control input:focus-visible+.theme-track{outline:3px solid #e44767;outline-offset:4px}.services{padding:65px 8%;background:var(--band)}.service-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px;padding:35px 0}.service h2{font-size:30px;line-height:1.2;margin:18px 0;overflow-wrap:anywhere}.service p,.service li{font-size:15px;line-height:1.75}.service ul{padding-left:18px;color:var(--subtle)}.service-process{border-top:1px solid var(--line);padding-top:26px;display:grid;grid-template-columns:1fr 2fr;gap:30px}.service-process p{margin:0;line-height:1.7;font-size:14px;max-width:650px}.section-label,.project{border-color:var(--line)}.tag,.secondary{color:var(--subtle)}.about,.playground .about,.workshop .about{background:var(--band);color:var(--text)}.playground .projects{background:var(--page)}html[data-theme=dark] .playground h2{color:#ff9aba}html[data-theme=dark] footer{background:var(--page);color:var(--text)}@media(max-width:900px){header{flex-wrap:wrap}.service-list{grid-template-columns:1fr;gap:0}.service{padding:24px 0;border-bottom:1px solid var(--line)}.service:last-child{border-bottom:0}.service-process{grid-template-columns:1fr;gap:12px}}@media(max-width:700px){h1,.playground h1,.workshop h1{font-size:52px}.hero-copy{padding:35px 24px}.services{padding:40px 24px}header nav{order:3;flex-basis:100%;justify-content:center}.service h2{font-size:28px}.theme-control{margin-left:auto}}
