@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--paper:#f7f5ec;--ink:#262822;--muted:#696a61;--lime:#d9ed8b;--line:#d6d7ca;--display:'Space Grotesk',Arial,sans-serif;--body:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.5 var(--body);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #7361d4;outline-offset:6px}::selection{background:#d9ed8b;color:#262822}.skip{position:fixed;top:-70px;left:20px;background:var(--ink);color:white;padding:12px;z-index:20}.skip:focus{top:10px}.header{height:96px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:5}.brand{font-family:var(--display);font-weight:700;font-size:28px;letter-spacing:-2px;line-height:1}.brand-dot{font-size:11px;vertical-align:top;margin-left:3px;letter-spacing:0}.header-note{font-size:11px;display:flex;align-items:center;gap:9px;margin-left:30px}.status-dot{width:6px;height:6px;background:#607a36;border-radius:50%}nav{display:flex;align-items:center;gap:28px;font-size:12px}nav>a:not(.nav-contact):hover{color:#7261c6}.nav-contact{border:1px solid #a9ab9b;padding:9px 17px;border-radius:30px}.nav-contact span{margin-left:14px}.hero{padding:27px 4.5% 30px;position:relative;overflow:hidden;isolation:isolate}.hero-top,.section-top{display:flex;align-items:center;justify-content:space-between}.eyebrow,.tiny{font-size:10px;font-weight:550;letter-spacing:1.1px}.eyebrow{text-transform:uppercase}.motion-toggle{padding:5px 0 5px 12px;font-size:10px;background:none;border:0;cursor:pointer;display:flex;gap:12px}.hero-intro{display:flex;justify-content:space-between;align-items:center;padding-top:45px}h1,h2,h3,p{margin:0}h1{font:500 clamp(54px,7.5vw,112px)/.98 var(--display);letter-spacing:-.065em}h1>span{color:#777c6c}.hero-aside{display:flex;align-items:center;gap:28px;margin-right:2%}.hero-aside p{font-size:12px;line-height:1.6}.orb-wrap{position:relative;width:116px;height:130px}.orb{height:105px;width:105px;border-radius:50%;background:radial-gradient(circle at 32% 24%,#f6ffd6 0%,#dfefa0 30%,#b9cb70 62%,#6f8940 85%,#d0df8d 100%);box-shadow:inset -8px -8px 15px #7f913555,0 14px 18px -14px #526024;position:relative;transform:rotate(-15deg)}.orb-eye{position:absolute;width:6px;height:13px;border-radius:50%;background:#3c4733;top:32px;left:34px;transform:rotate(12deg)}.orb-eye+.orb-eye{left:65px}.orb-smile{position:absolute;top:42px;left:33px;width:39px;height:30px;border-bottom:3px solid #3c4733;border-radius:50%;transform:rotate(-2deg)}.orbit-caption{font-size:6px;position:absolute;bottom:0;left:-3px;white-space:nowrap;letter-spacing:1px;transform:rotate(-8deg)}.wordmark-wrap{height:clamp(240px,28vw,410px);position:relative;margin:24px -2% 0}.wordmark-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font:bold 24vw/.9 var(--display);letter-spacing:-.075em;color:#9683da}.wordmark-wrap.ready .wordmark-fallback{visibility:hidden}#wordmark{position:relative;width:100%;height:100%;display:block;touch-action:pan-y}.bubble-note{position:absolute;left:27%;bottom:0px;font-size:11px;transform:rotate(-5deg);color:#736c7e}.sticker{position:absolute;right:2%;bottom:22px;width:122px;height:122px;border-radius:50%;background:var(--lime);border:1px solid #a9b86a;display:flex;align-items:center;justify-content:center;flex-direction:column;font:500 16px/1.1 var(--display);transform:rotate(12deg);box-shadow:0 4px 0 #3038270d}.sticker i{font:italic 20px Georgia,serif}.sticker>span{margin-top:8px;font-size:25px}.hero-bottom{display:flex;justify-content:space-between;align-items:center;padding:41px 0 12px}.hero-bottom p{font-size:12px;color:var(--muted)}.pill{padding:16px 22px;border-radius:40px;background:var(--ink);color:var(--paper);display:flex;gap:45px;align-items:center;font-size:12px;transition:background .2s,transform .2s}.pill:hover{background:#505840;transform:translateY(-3px)}.pill span{font-size:21px;line-height:1}.scroll-link{display:flex;gap:30px;font-size:10px;align-items:center}.scroll-link span{font-size:21px}.hero-glow{position:absolute;inset:20% -10% -45%;z-index:-1;opacity:.65;background:radial-gradient(ellipse at 20% 60%,#e6dcf0 0,transparent 45%),radial-gradient(ellipse at 70% 60%,#e3f0d8 0,transparent 45%);filter:blur(30px)}.marquee{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;background:#eeefe6}.marquee-track{display:flex;width:max-content;animation:marquee 35s linear infinite;font:500 15px var(--display);letter-spacing:-.4px}.marquee-track span{white-space:nowrap}.marquee b{font-size:22px;margin:0 34px;color:#7c8770}@keyframes marquee{to{transform:translateX(-50%)}}.section{padding:85px 4.5%}.section-heading{display:flex;align-items:end;justify-content:space-between;margin:45px 0 55px}.section-heading h2,.services h2{font:500 clamp(42px,5.2vw,76px)/1.02 var(--display);letter-spacing:-.06em}h2 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.055em}.section-heading p{font-size:13px;margin-right:8%;color:var(--muted);line-height:1.7}.experiments{display:grid;grid-template-columns:1fr 1fr;gap:36px}.experiment.second{padding-top:85px}.art{aspect-ratio:1/.99;position:relative;padding:26px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.art-type{background:#dadfa8;color:#393f27}.art-meta,.art-bottom{position:relative;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.6px;z-index:2}.art-bottom{font-size:10px;letter-spacing:0;align-items:center}.art-bottom>span{font-size:24px}.type-stack{font:700 clamp(55px,7.7vw,112px)/.76 var(--display);letter-spacing:-.085em;position:relative;padding:25px 0}.type-stack>span:not(.type-spark){font-family:Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-.07em}.type-spark{position:absolute;right:3%;top:38%;font-size:100px;color:#f7f5ec;font-weight:400}.art-orbit{background:#d8ceef;color:#49396a}.orbit-title{font:500 clamp(36px,5.4vw,74px)/.9 var(--display);letter-spacing:-.06em;position:absolute;top:16%;left:7%;z-index:2}.orbit-title i{font-family:Georgia,serif;font-weight:400}.sculpture{position:absolute;inset:21% 4% 5% 15%}.torus{position:absolute;width:65%;aspect-ratio:1;border-radius:50%;border:clamp(24px,4.6vw,64px) solid #f3b876;box-shadow:inset 8px 8px 10px #9c563550,inset -8px -8px 10px #fff5dc80,14px 20px 24px #68467725, inset 0 0 1px 2px #c18963;background:transparent}.torus-one{left:20%;top:12%;transform:rotate(-30deg) scaleX(.8);border-color:#c1d982;filter:drop-shadow(4px 6px 0 #729d6630)}.torus-two{left:1%;top:36%;transform:rotate(-35deg) scaleY(.58);border-color:#ece8e4}.mini-orb{position:absolute;width:22%;aspect-ratio:1;right:4%;bottom:10%;border-radius:50%;background:radial-gradient(circle at 27% 24%,#d5b9ff,#9786d5 45%,#5c4689 86%,#bda6ea);box-shadow:10px 18px 15px #57407133}.art-label{display:flex;justify-content:space-between;align-items:center;padding-top:17px;gap:14px}.art-label h3{font-size:14px;font-weight:500;letter-spacing:-.4px}.art-label>span{font-size:9px;color:var(--muted)}.studio{background:#e9ecde;position:relative;overflow:hidden;padding-bottom:95px}.studio h2{font:500 clamp(53px,8vw,118px)/1.02 var(--display);letter-spacing:-.07em;margin:52px 0}.studio h2>span{color:#92997f}.studio-star{position:absolute;right:9%;top:20%;font:160px/1 Georgia;color:#a7b978}.studio-bottom{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start}.studio-bottom>div{max-width:510px}.studio-bottom p{font-size:18px;line-height:1.65;letter-spacing:-.3px}.studio-bottom .muted{font-size:13px;color:var(--muted);margin-top:20px;letter-spacing:0}.services-layout{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin-top:65px}.services h2{font-size:clamp(38px,4.2vw,65px)}details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{display:flex;align-items:center;gap:20px;list-style:none;cursor:pointer;padding:24px 0}summary::-webkit-details-marker{display:none}.service-number{font-size:9px;color:var(--muted)}summary h3{font:500 clamp(18px,2vw,27px) var(--display);letter-spacing:-1px}.plus{margin-left:auto;font-size:24px;font-weight:400;transition:transform .25s}details[open] .plus{transform:rotate(45deg)}.service-body{padding:0 25px 25px 34px}.service-body p{font-size:13px;color:var(--muted);max-width:330px}.service-body>span{display:block;font-size:10px;margin-top:15px}.contact{background:var(--lime);margin:0 20px;padding:55px calc(4.5vw - 20px) 45px;border-radius:6px}.contact-main{display:flex;justify-content:space-between;align-items:center;margin:60px 0 45px}.contact h2{font:500 clamp(63px,9vw,132px)/.95 var(--display);letter-spacing:-.07em}.contact-arrow{width:140px;height:140px;display:grid;place-items:center;border:1px solid #424b2f;border-radius:50%;font:85px/1 var(--body);transition:background .25s,transform .25s}.contact-arrow:hover{background:var(--paper);transform:rotate(8deg)}.contact-bottom{display:flex;align-items:center;gap:30px}.contact-bottom p{font-size:13px}.email{font-size:18px;border-bottom:1px solid #697747;padding-bottom:3px}.contact-doodle{margin-left:auto;font-size:55px;line-height:1;transform:rotate(12deg)}footer{display:flex;align-items:center;justify-content:space-between;padding:38px 4.5%;font-size:10px}footer .brand{font-size:23px}footer>a:last-child{font-size:11px}footer>a:last-child span{margin-left:25px}[data-parallax]{translate:0 var(--py,0px)}.motion-off .marquee-track{animation-play-state:paused}.motion-off [data-parallax]{translate:none}.motion-off{scroll-behavior:auto}
@media(min-width:1500px){.header,.hero,.section,footer{padding-left:max(4.5%,calc((100% - 1400px)/2));padding-right:max(4.5%,calc((100% - 1400px)/2))}.wordmark-wrap{height:400px}.hero-intro{padding-top:65px}}
@media(max-width:1000px){.header-note{display:none}.hero-aside{gap:10px;margin:0}.hero-aside p{display:none}.hero-intro{padding-top:40px}.sticker{width:100px;height:100px;font-size:13px}.sticker i{font-size:17px}.section{padding-top:65px;padding-bottom:65px}.type-spark{font-size:75px}.art-label{align-items:start;flex-direction:column;gap:4px}.studio-star{font-size:120px;right:6%}.contact-arrow{width:110px;height:110px;font-size:60px}}
@media(max-width:640px){.header{height:77px;padding:0 6%}.brand{font-size:25px}nav{gap:17px;font-size:10px}nav>a:first-child{display:none}.nav-contact{padding:8px 13px}.nav-contact span{margin-left:8px}.hero{padding:21px 6% 25px}.eyebrow{font-size:8px;letter-spacing:.8px}.motion-toggle{font-size:9px;gap:6px}.hero-top{gap:12px}.hero-intro{padding-top:43px;position:relative;align-items:start}h1{font-size:clamp(40px,9.6vw,62px);max-width:90%;line-height:1.02}.hero-aside{position:absolute;right:-4px;top:116px}.orb-wrap{transform:scale(.58);transform-origin:right top}.wordmark-wrap{height:200px;margin:28px -3% 0}.sticker{height:74px;width:74px;right:2%;bottom:-24px;font-size:10px}.sticker i{font-size:13px}.sticker>span{font-size:18px;margin-top:5px}.bubble-note{left:7%;bottom:0;font-size:9px}.hero-bottom{padding-top:60px;flex-wrap:wrap;gap:27px}.hero-bottom p{font-size:10px}.pill{font-size:10px;gap:16px;padding:14px 16px}.scroll-link{width:100%;justify-content:space-between;font-size:9px;padding-top:12px;border-top:1px solid var(--line)}.marquee{padding:14px 0}.marquee-track{font-size:12px}.marquee b{margin:0 20px;font-size:17px}.section{padding:48px 6%}.section-top>.tiny{display:none}.section-heading{margin:32px 0;display:block}.section-heading h2,.services h2{font-size:44px}.section-heading p{margin-top:24px;font-size:12px}.experiments{grid-template-columns:1fr;gap:32px}.experiment.second{padding-top:0}.art{padding:24px}.type-stack{font-size:23vw}.type-spark{font-size:25vw}.orbit-title{font-size:17vw}.torus{border-width:12vw}.art-label{flex-direction:row;align-items:center}.art-label h3{font-size:12px}.art-label>span{font-size:8px}.studio h2{font-size:12.1vw;margin:38px 0}.studio-star{font-size:70px;top:65px;right:6%;opacity:.45}.studio-bottom{grid-template-columns:1fr;gap:23px}.studio-bottom p{font-size:16px}.studio-bottom .muted{font-size:12px}.tiny{font-size:8px}.services-layout{grid-template-columns:1fr;margin-top:32px;gap:32px}summary{padding:22px 0}summary h3{font-size:22px}.contact{margin:0 12px;padding:35px calc(6vw - 12px)}.contact-main{margin:38px 0 30px;gap:10px}.contact h2{font-size:14.4vw}.contact-arrow{width:65px;height:65px;min-width:65px;font-size:38px}.contact-bottom{display:block;position:relative}.contact-bottom p{font-size:11px;margin-bottom:12px}.email{font-size:16px}.contact-doodle{position:absolute;right:0;bottom:0;font-size:36px}footer{padding:30px 6%;flex-wrap:wrap;gap:24px}footer .brand{font-size:24px}footer>a:last-child{width:100%;border-top:1px solid var(--line);padding-top:15px;display:flex;justify-content:space-between}footer>span{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee-track{animation:none}[data-parallax]{translate:none!important}*,*::before,*::after{transition:none!important}}

/* Refined identity: restrained colour, precise geometry, quieter expression. */
:root{--paper:#f7f5ef;--ink:#2c2d2a;--muted:#6b6c64;--lime:#dfe4d1;--line:#d8d9d0;--plum:#514859}
.brand{display:inline-flex;align-items:center;gap:11px;letter-spacing:-1.6px;font-size:25px;color:var(--plum)}
.brand-icon{width:30px;height:30px;flex:none;display:block}.brand-dot{display:none}
.header-note{margin-left:0;color:var(--muted)}.status-dot{background:#828970}
h1{font-size:clamp(48px,6.9vw,104px);letter-spacing:-.06em}h1>span{color:#797782}
.hero-aside{gap:23px;margin-right:0}.hero-mark{width:114px;flex:none}.hero-mark img{display:block;width:100%;height:auto}.hero-aside p{font-size:11px;color:var(--muted);line-height:1.8}
.wordmark-wrap{margin-top:33px}.bubble-note{left:50%;transform:translateX(-50%);font-size:10px;letter-spacing:.35px;color:#77727e;white-space:nowrap}
.hero-glow{opacity:.35}.pill{background:var(--plum);gap:40px}.pill:hover{background:#665a70;transform:translateY(-2px)}
.marquee{background:#eeeee7;padding:15px 0}.marquee-track{font-size:12px;letter-spacing:.6px;animation-duration:55s}.marquee b{font-size:15px;color:#918997;margin:0 36px}
.section-heading h2{font-size:clamp(38px,4.6vw,68px)}.section-heading p{margin-right:0;max-width:300px;font-size:12px}.section-heading{gap:35px}
.art-type{background:#dfe3d1;color:#3b4035}.type-stack{font-size:clamp(44px,6.4vw,95px);line-height:.88;letter-spacing:-.065em}.type-spark{right:2%;top:8%;font-size:initial}.type-spark img{width:clamp(30px,4.4vw,65px);height:auto;opacity:.7}
.art-orbit{background:#ded9e5;color:var(--plum)}.orbit-title{font-size:clamp(34px,4.8vw,68px)}.torus-one{border-color:#bec7a9;filter:drop-shadow(4px 6px 0 #729d6615)}.torus-two{border-color:#eeeae3}.mini-orb{background:radial-gradient(circle at 27% 24%,#ded5e6,#aca0ba 45%,#786586 86%,#c8bbd5);box-shadow:10px 18px 15px #57407120}
.studio{background:#ebece5}.studio h2{font-size:clamp(48px,7.4vw,108px)}.studio h2>span{color:#888779}.studio-star{right:7%;top:27%;font-size:initial;opacity:.55}.studio-star img{display:block;width:130px;height:auto}
.studio-bottom p{font-size:17px}.contact{background:#dfe4d1;border-radius:2px}.contact h2{font-size:clamp(56px,8vw,115px)}.contact-arrow{width:122px;height:122px;font-size:68px;border-color:#787d6c}.contact-mark{margin-left:auto;opacity:.8}.contact-bottom{gap:35px}.contact-bottom p{font-size:12px}.contact-doodle{display:none}footer .brand-icon{width:26px;height:26px}footer .brand{font-size:22px}
@media(max-width:1000px){.hero-aside p{display:none}.hero-mark{width:100px}.studio-star img{width:100px}.studio-star{top:23%;right:6%}.contact-arrow{width:100px;height:100px;font-size:54px}}
@media(max-width:640px){.brand{font-size:22px;gap:8px}.brand-icon{width:25px;height:25px}.header nav{gap:14px}.hero-intro{padding-top:39px;display:block}h1{font-size:clamp(33px,8.8vw,56px);max-width:100%;line-height:1.06}.hero-aside{position:static;margin-top:27px;display:flex;align-items:center;justify-content:space-between}.hero-aside p{display:block;font-size:10px;text-align:right}.hero-mark{width:43px}.wordmark-wrap{height:160px;margin-top:14px}.bubble-note{font-size:9px;bottom:0}.hero-bottom{padding-top:35px;gap:24px}.hero-bottom p{font-size:9px}.pill{gap:18px}.section-heading h2{font-size:clamp(31px,8.4vw,45px)}.section-heading p{max-width:100%;margin-top:22px}.type-stack{font-size:19.5vw;line-height:.87}.type-spark img{width:12vw}.orbit-title{font-size:14.6vw}.studio h2{font-size:10.6vw;line-height:1.05}.studio-star{top:50px;right:6%;opacity:.25}.studio-star img{width:45px}.studio-bottom p{font-size:15px}.services h2{font-size:42px}.contact h2{font-size:12vw}.contact-arrow{width:54px;height:54px;min-width:54px;font-size:30px}.contact-bottom{padding-right:38px}.contact-bottom p{font-size:11px}.contact-mark{width:29px;height:29px;position:absolute;right:0;bottom:0}.email{font-size:15px}.marquee-track{font-size:10px}.marquee b{font-size:12px;margin:0 24px}}

/* Particle-led hero; the symbol is reserved for the navigation signature. */
.header{height:86px}.header .brand{gap:9px;font-size:23px}.header .brand-icon{width:26px;height:26px}.header-note{font-size:10px}
.hero{padding-top:24px;padding-bottom:30px;background:#f8f7f2}.hero-top .eyebrow{font-size:9px;letter-spacing:1.2px}.hero-intro{padding-top:48px;align-items:flex-end;gap:35px}h1{font-size:clamp(32px,3.75vw,58px);font-weight:500;line-height:1.1;letter-spacing:-.05em}h1>span{color:#7b7b82}.hero-aside{display:block;max-width:310px;margin:0 0 5px}.hero-aside p{display:block;font-size:12px;line-height:1.8;color:#77777c}.wordmark-wrap{height:clamp(300px,34vw,495px);margin:6px -2% 0}.bubble-note{bottom:0;font-size:9px;letter-spacing:.5px;color:#88868e}.hero-bottom{padding-top:35px;padding-bottom:5px}.hero-glow{inset:25% 0 -25%;opacity:.28;filter:blur(50px)}.hero-bottom p{font-size:11px}.pill{padding:15px 21px;font-size:11px}.wordmark-fallback{color:#6978b4;opacity:.7}.contact-bottom{justify-content:space-between}.studio-star,.type-spark{display:none}
@media(min-width:1500px){.hero-intro{padding-top:50px}.wordmark-wrap{height:450px}}
@media(max-width:1000px){.hero-aside{max-width:260px}.hero-aside p{font-size:11px}.header-note{display:none}.wordmark-wrap{height:33vw;min-height:265px}}
@media(max-width:640px){.header{height:74px}.header .brand{font-size:21px;gap:8px}.header .brand-icon{width:24px;height:24px}.hero{padding-top:20px;padding-bottom:22px}.hero-top .eyebrow{font-size:7px;letter-spacing:.7px}.hero-intro{padding-top:35px;display:block}h1{font-size:clamp(29px,7.8vw,44px);line-height:1.1;max-width:100%}.hero-aside{margin-top:21px;max-width:100%}.hero-aside p{text-align:left;font-size:10px;line-height:1.7}.wordmark-wrap{height:205px;min-height:0;margin:12px -4% 0}.bubble-note{font-size:8px;bottom:6px;letter-spacing:.15px}.hero-bottom{padding-top:23px;gap:22px}.hero-bottom p{font-size:9px}.pill{font-size:10px;padding:13px 16px;gap:16px}.contact-bottom{padding-right:0}}

/* Equal repeated groups keep the entire viewport filled throughout the loop. */
.marquee-track{animation:marquee-continuous var(--marquee-duration,320s) linear infinite;will-change:transform}
.marquee-group{display:flex;flex:0 0 auto;min-width:100vw}
.marquee-group>span{display:block;flex:0 0 auto}
@keyframes marquee-continuous{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.motion-off .marquee-track{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.marquee-track{animation:none}}
