@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--bg:#eceee7;--ink:#242923;--muted:#6a7168;--lime:#d9f993;--line:#cdd2c6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible{outline:3px solid #5d7938;outline-offset:6px}.wrap{width:min(1240px,calc(100% - 112px));margin:auto}.nav{display:flex;align-items:center;justify-content:space-between;height:104px;border-bottom:1px solid var(--line)}.brand{font-family:'Manrope',sans-serif;font-size:34px;font-weight:800;letter-spacing:-3px;display:flex;align-items:center;gap:7px}.brand-dot{font-size:29px;letter-spacing:0}.nav nav{display:flex;gap:36px;font-size:13px;font-weight:600}.nav nav a{padding:12px 0}.nav nav span{font-size:10px;vertical-align:super;margin-left:4px}.nav-note{font-size:11px;color:var(--muted)}.hero{padding-top:72px}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:650;display:flex;align-items:center;gap:10px}.dot{width:7px;height:7px;background:#648340;border-radius:50%}.hero h1{position:relative;font-family:'Manrope',sans-serif;font-size:clamp(56px,6.9vw,98px);font-weight:500;letter-spacing:-6px;line-height:1.08;margin:28px 0 36px;max-width:1110px}.italic{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic;letter-spacing:-.06em}.asterisk{width:88px;height:88px;margin-left:35px;transform:translateY(10px) rotate(12deg);stroke:#6e8554;stroke-width:12;transition:transform .6s}.hero:hover .asterisk{transform:translateY(10px) rotate(60deg)}.hero-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px}.hero-bottom p{font-size:16px;line-height:1.65;color:var(--muted);margin:0}.button{border:0;border-radius:100px;display:inline-flex;justify-content:center;align-items:center;gap:30px;padding:18px 25px;font-size:12px;font-weight:600;cursor:pointer;transition:background .2s,transform .2s}.button span{font-size:20px;line-height:1}.dark{background:var(--ink);color:#fff}.dark:hover{background:#4a583e;transform:translateY(-2px)}.hero-line{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:65px;padding-top:17px;font-size:9px;letter-spacing:1.5px;color:var(--muted)}.projects{padding-top:100px;padding-bottom:112px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.muted{color:var(--muted)}h2{font-family:'Manrope',sans-serif;font-weight:500;letter-spacing:-2px;font-size:42px;line-height:1.15;margin:18px 0 0}.small-count{font-family:'DM Sans',sans-serif;font-size:12px;vertical-align:top;letter-spacing:0;margin-left:12px;display:inline-block;padding-top:7px}.section-heading p{color:var(--muted);font-size:12px;line-height:1.6;margin:0 0 2px}.filters{display:flex;gap:8px;margin:29px 0 32px;flex-wrap:wrap}.filter{border:1px solid var(--line);background:transparent;border-radius:30px;padding:9px 17px;font-size:11px;cursor:pointer;transition:.2s}.filter span{margin-left:8px;opacity:.6}.filter.active{background:var(--ink);color:white;border-color:var(--ink)}.filter:hover:not(.active){background:#dfe4d7}.grid{display:grid;grid-template-columns:1fr 1fr;gap:44px 28px}.project[hidden]{display:none}.project-open{border:0;background:none;text-align:left;padding:0;cursor:pointer;width:100%;display:block}.art{height:360px;border-radius:5px;position:relative;overflow:hidden;padding:25px;display:flex;flex-direction:column;justify-content:space-between}.art-top,.art-bottom{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:1.3px;font-weight:600}.art-top span:last-child{opacity:.55;font-size:8px}.round-arrow{width:34px;height:34px;border:1px solid currentColor;border-radius:50%;font-size:21px;display:grid;place-items:center;transition:transform .3s}.project-open:hover .round-arrow{transform:rotate(45deg)}.chatelier{background:#dce4d1;color:#314333;background-image:radial-gradient(#31433312 1px,transparent 1px);background-size:15px 15px}.chatelier-symbol{position:absolute;width:290px;left:50%;top:47%;transform:translate(-50%,-50%);transition:transform .45s}.chatelier-symbol svg{width:100%;fill:none;stroke:#496344;stroke-width:17;stroke-linecap:round}.project-open:hover .chatelier-symbol{transform:translate(-50%,-50%) rotate(-7deg)}.minecraft{background:#263a31;color:#e2edd7}.blocks{position:absolute;width:340px;left:50%;top:46%;transform:translate(-50%,-50%);transition:transform .4s;filter:drop-shadow(0 20px 15px #0002)}.project-open:hover .blocks{transform:translate(-50%,-54%)}.orbit{background:#dedbed;color:#514765;background-image:radial-gradient(ellipse at center,#f2eef9,transparent 70%)}.orbit-system{position:absolute;left:50%;top:48%;width:330px;height:240px;transform:translate(-50%,-50%)}.orbit-ring{position:absolute;width:320px;height:130px;border:1px solid #81719970;border-radius:50%;top:55px;left:5px}.r1{transform:rotate(-28deg)}.r2{transform:rotate(28deg)}.r3{transform:rotate(90deg)}.planet{position:absolute;left:116px;top:70px;width:100px;height:100px;background:#706285;border-radius:50%;box-shadow:inset -16px -12px 25px #433a54,inset 10px 10px 25px #bca5d4,12px 17px 22px #6c5a8920;color:#ede7f5;font:italic 80px Georgia;letter-spacing:-10px;padding-left:14px;padding-top:2px;line-height:1}.planet span{font-size:65px}.moon{position:absolute;width:21px;height:21px;background:#67577f;border-radius:50%;top:48px;right:46px;box-shadow:inset -4px -3px 7px #30273d;transition:transform .5s}.project-open:hover .moon{transform:translate(14px,14px)}.star{position:absolute;font:23px Georgia;color:#877299}.s1{left:25px;top:20px}.s2{right:25px;bottom:20px;font-size:15px}.optimizer{background:#222723;color:#d9f993}.performance{width:270px;position:absolute;left:50%;top:49%;transform:translate(-50%,-50%);text-align:center}.gauge{position:relative;height:149px}.gauge svg{width:260px;fill:none;stroke-width:17;stroke-dasharray:3 5}.gauge-bg{stroke:#424b3f}.gauge-fill{stroke:#d9f993;stroke-dasharray:3 5;clip-path:polygon(0 0,78% 0,78% 100%,0 100%)}.bolt{position:absolute;bottom:2px;left:109px;font-size:65px;line-height:1}.perf-label{display:block;margin-top:5px;font-size:8px;letter-spacing:1.8px;opacity:.8}.signal{display:flex;align-items:end;justify-content:center;gap:5px;margin-top:24px;height:23px}.signal i{background:#d9f993;width:4px;height:30%;opacity:.4}.signal i:nth-child(3n){height:75%}.signal i:nth-child(2n){height:50%}.signal i:nth-child(5n){height:100%}.project-open:hover .signal i{opacity:1}.project-meta{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:20px}.project-meta h3{font-size:19px;font-weight:550;letter-spacing:-.5px;margin:0}.project-meta>span{font-size:10px;color:var(--muted);white-space:nowrap}.project-open>p{font-size:13px;color:var(--muted);margin:9px 0 0;line-height:1.5}.about{background:#dfe4d7;padding:78px 0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.about-mark{font-family:'Manrope',sans-serif;font-size:125px;letter-spacing:-12px;font-weight:750;line-height:1;margin-top:76px}.about-mark span{display:inline-block;color:#7a9062;font-size:100px;vertical-align:top;letter-spacing:0;padding-left:15px}.about h2{font-size:52px;margin-top:0}.about p{color:#626b5d;font-size:15px;line-height:1.8;max-width:510px;margin:26px 0 0}.about p+p{margin-top:15px}.about-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:28px}.about-tags span{border:1px solid #bdc6b3;border-radius:30px;padding:8px 13px;font-size:10px}.closing{padding-top:90px;padding-bottom:85px;text-align:center}.closing>.eyebrow{justify-content:center}.closing h2{font-size:64px;letter-spacing:-3px;margin:23px 0 28px}.closing .button{font-size:11px}footer{padding:24px 0 32px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted)}footer a:hover,.nav nav a:hover{text-decoration:underline;text-underline-offset:5px}.skip{position:fixed;left:20px;top:-100px;background:var(--ink);color:white;padding:15px;z-index:10}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}dialog{border:1px solid var(--line);border-radius:16px;background:var(--bg);color:var(--ink);width:min(600px,calc(100% - 32px));padding:55px 40px 35px;box-shadow:0 30px 100px #0003}dialog::backdrop{background:#1c251ccc;backdrop-filter:blur(8px)}dialog h2{font-size:42px;margin-top:22px}dialog>p{font-size:16px;line-height:1.8;color:var(--muted);margin:25px 0 35px}.dialog-close{position:absolute;right:17px;top:12px;border:0;background:none;font-size:30px;cursor:pointer;padding:4px 10px}.dialog-footer{border-top:1px solid var(--line);padding-top:24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.dialog-footer>span{font-size:11px;line-height:1.8}.dialog-footer .button{font-size:10px;padding:14px 19px}body.modal-open{overflow:hidden}
@media(min-width:1550px){.hero h1{font-size:102px}}@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.hero h1{font-size:73px;letter-spacing:-4px}.asterisk{width:60px;height:60px;margin-left:18px}.art{height:310px;padding:20px}.art-top span:last-child{display:none}.project-meta{align-items:start}.project-meta>span{font-size:9px}.project-meta h3{font-size:17px}.chatelier-symbol{width:250px}.blocks{width:300px}.about-mark{font-size:100px}.about-mark span{font-size:75px}.nav-note{font-size:9px}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.nav{height:80px}.brand{font-size:29px}.nav-note{display:none}.nav nav{gap:22px;font-size:11px}.hero{padding-top:45px}.hero .eyebrow{font-size:9px;letter-spacing:1.3px}.hero h1{font-size:clamp(43px,8.4vw,59px);letter-spacing:-2.8px;line-height:1.14;margin:27px 0}.asterisk{width:34px;height:34px;margin-left:12px;transform:translateY(5px) rotate(12deg)}.hero:hover .asterisk{transform:translateY(5px) rotate(60deg)}.hero-bottom{align-items:start;flex-direction:column;gap:25px}.hero-bottom p{font-size:14px}.button{padding:16px 22px}.hero-line{margin-top:38px;font-size:7px;letter-spacing:1px}.projects{padding-top:62px;padding-bottom:65px}.section-heading h2{font-size:31px;letter-spacing:-1.5px}.section-heading>p{display:none}.small-count{font-size:10px;margin-left:8px}.eyebrow{font-size:8px;letter-spacing:1.5px}.filters{gap:6px;margin-top:23px;margin-bottom:25px}.filter{padding:9px 13px;font-size:10px}.grid{grid-template-columns:1fr;gap:32px}.art{height:330px;padding:22px}.art-top span:last-child{display:block}.project-meta{align-items:center;margin-top:17px}.project-meta h3{font-size:19px}.project-meta>span{font-size:10px}.project-open>p{font-size:12px}.about{padding:48px 0}.about-grid{grid-template-columns:1fr;gap:24px}.about-mark{display:none}.about h2{font-size:45px}.about p{font-size:14px;margin-top:22px}.closing{padding-top:62px;padding-bottom:60px}.closing h2{font-size:48px;letter-spacing:-2px}footer{flex-wrap:wrap;font-size:9px;gap:15px}footer>span:nth-child(2){display:none}dialog{padding:55px 25px 28px}dialog h2{font-size:34px}.dialog-footer{align-items:start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
