@font-face{font-family:Space Grotesk;src:url("assets/space-grotesk-bold.ttf") format("truetype");font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:Inter;src:url("assets/inter-regular.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
:root{--ink:#173b36;--paper:#f7f8f4;--mint:#c3ddd5;--accent:#f5755d;--line:rgba(23,59,54,.2);--body:#4a605b;--gutter:64px;--display:"Space Grotesk",Arial,sans-serif;--sans:Inter,Arial,sans-serif;color-scheme:light}
*,*::before,*::after{box-sizing:border-box;letter-spacing:0}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{border:0;background:none}button:disabled{cursor:default}
button svg,a svg{width:20px;height:20px;stroke-width:1.6;flex-shrink:0}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #d44c32;outline-offset:6px}::selection{background:var(--accent);color:var(--ink)}
h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);font-weight:700}h2{font-size:58px;line-height:1.12}p{line-height:1.8}img{max-width:100%}[hidden]{display:none!important}
.skip-link{position:fixed;top:12px;left:12px;background:var(--ink);color:white;padding:12px 20px;z-index:100;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}
.site-header{height:88px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;position:relative;z-index:20;background:var(--paper);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:12px;font-family:var(--display);font-size:20px;line-height:1.08;font-weight:700}.brand-subtitle{display:block;font-family:var(--sans);font-size:9px;margin-top:5px}
.brand-symbol{display:inline-block;width:30px;height:35px;border:6px solid currentColor;border-radius:17px 17px 2px 2px;position:relative;flex:0 0 auto}.brand-symbol::after{content:"";position:absolute;background:currentColor;width:16px;height:5px;bottom:-4px;right:-8px;transform:rotate(44deg)}
.desktop-nav{display:flex;align-items:center;gap:44px;font-size:13px}.desktop-nav a{padding:12px 0;position:relative}.desktop-nav a::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .25s}.desktop-nav a:hover::after{transform:scaleX(1)}.nav-company{display:flex;align-items:center;gap:18px}
.icon-button{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;transition:background .2s,transform .2s}.icon-button:hover{background:rgba(255,255,255,.55);transform:translateY(-2px)}.menu-toggle{display:none}
.hero{height:min(730px,calc(100svh - 158px));min-height:530px;position:relative;overflow:hidden;background:var(--mint);isolation:isolate}
.hero-art,.scene-fallback,#quest-world{position:absolute;inset:0;width:100%;height:100%}.hero-art{z-index:-1}.scene-fallback img{width:100%;height:100%;object-fit:cover}.hero-art.is-live .scene-fallback{visibility:hidden}#quest-world{display:block;opacity:0;transition:opacity .8s}.hero-art.is-live #quest-world{opacity:1}
.hero-intro{position:absolute;top:65px;left:var(--gutter);z-index:2;max-width:470px;animation:hero-enter .85s .1s both}
.eyebrow{font-size:10px;line-height:1.5;font-weight:400}.hero-intro .eyebrow{display:flex;align-items:center;gap:12px}.tiny-cross{font-family:Arial,sans-serif;font-size:22px;font-weight:400;line-height:1}.hero-tagline{font-family:var(--display);font-size:36px;line-height:1.25;margin:27px 0 23px}.text-link{display:inline-flex;align-items:center;gap:24px;font-size:12px;border-bottom:1px solid currentColor;padding-bottom:9px}.text-link svg{transition:transform .2s}.text-link:hover svg{transform:translate(3px,3px)}
.hero h1{position:absolute;left:calc(var(--gutter) - 4px);bottom:70px;font-size:150px;line-height:1;font-weight:700;z-index:1;animation:hero-enter 1s .24s both;white-space:nowrap}.hero-asterisk{display:inline-block;color:var(--accent);font-size:135px;line-height:0;vertical-align:-8px;margin-left:5px}
.hero-bottom{position:absolute;bottom:25px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:center;font-size:12px;animation:hero-enter .8s .4s both}.hero-bottom a{font-size:9px;display:flex;gap:17px;align-items:center}.hero-bottom a svg{width:17px;height:17px}
.scene-controls{position:absolute;bottom:250px;right:var(--gutter);display:flex;gap:8px;z-index:3}.scene-controls .icon-button{width:37px;height:37px;background:rgba(247,248,244,.36)}.scene-controls .icon-button:hover{background:var(--paper)}.scene-controls svg{width:16px;height:16px}
.section-wrap{padding-left:var(--gutter);padding-right:var(--gutter)}.section-label{display:flex;justify-content:space-between;align-items:center;font-size:10px;margin-bottom:54px;line-height:1.5}.studio{padding-top:38px;padding-bottom:55px}.studio-content{display:grid;grid-template-columns:1.35fr 1fr;gap:60px;align-items:start}.muted{color:#829891}.studio-copy{max-width:450px;padding-top:2px}.studio-copy .lead{font-size:23px;line-height:1.5;color:var(--ink);margin-bottom:27px}.lead em{font-family:Georgia,serif;font-weight:400}.studio-copy p{font-size:14px;color:var(--body);margin-bottom:18px}
.studio-note{margin-top:63px;padding-top:30px;border-top:1px solid var(--line);display:flex;align-items:center;gap:20px}.studio-note .brand-symbol{width:16px;height:20px;border-width:3px;border-radius:10px 10px 1px 1px}.studio-note .brand-symbol::after{width:9px;height:3px;right:-5px;bottom:-2px}.studio-note p{font-size:13px}.studio-note>span:last-child{margin-left:auto;font-size:9px;color:var(--body)}
.practice{background:#edeee9;padding-top:48px;padding-bottom:80px}.practice-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:50px}.practice-heading h2{font-size:52px}.practice-heading>p{font-size:13px;color:var(--body);width:280px;padding-bottom:5px}.practice-item{border-top:1px solid var(--line)}.practice-item:last-child{border-bottom:1px solid var(--line)}.practice-item summary{list-style:none;display:grid;grid-template-columns:80px 1fr 46px;align-items:center;gap:20px;cursor:pointer;padding:29px 0}.practice-item summary::-webkit-details-marker{display:none}.practice-number{font-size:11px;color:var(--body)}.practice-name{font-size:29px;font-family:var(--display);transition:transform .25s}.practice-item summary:hover .practice-name{transform:translateX(8px)}.disclosure-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;transition:background .2s}.disclosure-icon svg{width:18px;height:18px;transition:transform .25s}.practice-item[open] .disclosure-icon{background:var(--accent);border-color:var(--accent)}.practice-item[open] .disclosure-icon svg{transform:rotate(45deg)}.practice-detail{margin-left:100px;padding-bottom:30px;display:flex;justify-content:space-between;gap:55px;animation:detail-in .25s ease-out}.practice-detail p{max-width:510px;font-size:14px;color:var(--body)}.practice-caption{font-size:9px;align-self:flex-end;white-space:nowrap;padding-bottom:5px}
.belief{background:#ee816e;color:#173b36;overflow:hidden}.belief-inner{padding-top:44px;padding-bottom:185px;position:relative;isolation:isolate}.belief .section-label{color:#304b41;margin-bottom:65px}.belief-heading .eyebrow{color:#304b41;margin-bottom:24px}.belief h2{font-size:68px;line-height:1.08}.belief-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-top:64px;position:relative;z-index:1}.principle{padding-top:24px;border-top:1px solid #b87462}.principle>span{font-size:10px;color:#304b41}.principle h3{font-size:23px;margin:21px 0 14px}.principle p{font-size:13px;color:#304b41;max-width:320px}.belief-watermark{position:absolute;right:30px;bottom:-116px;font-family:var(--display);font-size:350px;color:#e57663;z-index:-1;line-height:1;user-select:none}
.company{padding-top:45px;padding-bottom:55px}.company-main{display:flex;justify-content:space-between;align-items:center;margin:10px 0 65px}.company-main h2{font-size:53px;line-height:1.16}.circle-link{width:96px;height:96px;background:var(--accent);border-radius:50%;display:grid;place-items:center;transition:transform .3s,background .3s}.circle-link svg{width:34px;height:34px}.circle-link:hover{transform:rotate(-45deg);background:#f88d78}.company-details{display:grid;grid-template-columns:1.4fr .9fr 1fr;gap:25px;border-top:1px solid var(--line);padding-top:30px}.detail-label{font-size:9px;color:var(--body);display:block;margin-bottom:12px}.company-details p,.copy-domain{font-size:12px;line-height:1.8}.copy-domain{padding:0;display:flex;gap:20px;align-items:center}.copy-domain svg{width:14px;height:14px}.copy-domain:hover{text-decoration:underline}
.site-footer{min-height:100px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-brand{font-family:var(--display);font-size:21px;font-weight:700}.footer-brand span{color:#d7553d;font-size:28px;vertical-align:-3px}.site-footer p,.legal-button{font-size:9px}.legal-button{padding:12px 0;text-decoration:underline;text-underline-offset:4px}
.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,15px);opacity:0;pointer-events:none;background:var(--ink);color:white;border:1px solid #718b82;padding:12px 22px;border-radius:4px;max-width:calc(100% - 32px);font-size:13px;z-index:50;transition:opacity .2s,transform .2s}.toast.is-visible{opacity:1;transform:translate(-50%,0)}
dialog{border:0;padding:32px;background:var(--paper);color:var(--ink);width:min(540px,calc(100% - 32px));max-height:85svh;border-radius:6px}dialog::backdrop{background:rgba(14,34,29,.65);backdrop-filter:blur(5px)}.dialog-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}dialog h2{font-size:32px;margin-bottom:24px}dialog p{font-size:14px;line-height:1.8;margin-bottom:18px;color:var(--body)}.privacy-company{font-size:10px!important;margin-top:26px}
.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.js .reveal.is-visible{opacity:1;transform:none}@keyframes hero-enter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes detail-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){:root{--gutter:88px}.hero h1{font-size:178px}.hero-asterisk{font-size:160px}.hero-intro{top:75px}.hero-tagline{font-size:42px}.studio-content{grid-template-columns:1.4fr 1fr}.studio h2{font-size:70px}.studio-copy{max-width:520px}}
@media(min-width:1920px){:root{--gutter:120px}.hero h1{font-size:210px}.hero-asterisk{font-size:180px}.hero{height:780px}.scene-controls{bottom:290px}}
@media(max-width:1200px){:root{--gutter:40px}.hero h1{font-size:118px}.hero-asterisk{font-size:110px}.hero-tagline{font-size:30px}.hero-intro{top:48px}.scene-controls{bottom:217px}h2{font-size:48px}.studio-content{grid-template-columns:1.2fr 1fr;gap:36px}.practice-detail{gap:25px}.practice-caption{font-size:8px}.belief h2{font-size:60px}.belief-principles{gap:35px}.company-main h2{font-size:48px}}
@media(max-width:980px){.hero h1{font-size:96px}.hero-asterisk{font-size:87px}.hero-intro .eyebrow{font-size:8px}.hero-tagline{font-size:26px}.hero-intro{max-width:350px}.hero{min-height:510px}.studio-content{grid-template-columns:1fr 1fr}.studio h2{font-size:39px}.studio-copy .lead{font-size:21px}.practice-detail{display:block}.practice-caption{display:block;margin-top:22px}.company-details{grid-template-columns:1.25fr .8fr 1fr}.company-details p{font-size:10px}.practice-heading h2{font-size:47px}.belief-principles{gap:25px}.principle h3{font-size:20px}.company-main h2{font-size:43px}.desktop-nav{gap:27px}}
@media(max-width:700px){:root{--gutter:24px}.site-header{height:76px}.brand{font-size:17px;gap:11px}.brand-symbol{width:25px;height:30px;border-width:5px}.brand-symbol::after{width:13px;height:4px;right:-7px;bottom:-4px}.brand-subtitle{font-size:8px;margin-top:4px}.desktop-nav{display:none}.menu-toggle{display:grid}.mobile-nav{position:absolute;top:76px;left:0;right:0;padding:20px 24px 28px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 18px 22px #173b361a}.mobile-nav a{display:flex;justify-content:space-between;padding:22px 0;font-family:var(--display);font-size:24px;border-bottom:1px solid var(--line)}.mobile-nav a:last-child{border:0}.hero{height:calc(100svh - 136px);min-height:500px;max-height:740px}.hero-intro{top:28px;max-width:calc(100% - 48px)}.hero-intro .eyebrow{font-size:8px;gap:8px}.hero-tagline{font-size:26px;margin-top:15px;line-height:1.2}.hero-link{font-size:11px;gap:17px;padding-bottom:7px}.hero h1{font-size:65px;left:22px;bottom:69px}.hero-asterisk{font-size:59px;margin-left:1px;vertical-align:-4px}.hero-bottom{font-size:10px;bottom:26px}.hero-bottom a{font-size:8px;gap:7px}.hero-bottom a svg{width:14px;height:14px}.scene-controls{bottom:151px;right:20px;flex-direction:column;gap:6px}.scene-controls .icon-button{height:32px;width:32px}.scene-controls svg{width:14px;height:14px}.section-label{font-size:9px;margin-bottom:35px}.studio{padding-top:29px;padding-bottom:35px}.studio-content{grid-template-columns:1fr;gap:30px}.studio h2{font-size:43px;line-height:1.14}.studio-copy{max-width:100%;padding:0}.studio-copy .lead{font-size:22px;margin-bottom:21px}.studio-copy p{font-size:13px}.desktop-only{display:none}.studio-note{margin-top:25px;padding-top:22px;gap:14px}.studio-note p{font-size:11px}.studio-note>span:last-child{display:none}.practice{padding-top:32px;padding-bottom:43px}.practice-heading{display:block;margin-bottom:32px}.practice-heading h2{font-size:43px}.practice-heading>p{margin-top:21px;font-size:12px}.practice-item summary{grid-template-columns:25px 1fr 34px;gap:10px;padding:24px 0}.practice-number{font-size:10px}.practice-name{font-size:23px}.disclosure-icon{width:32px;height:32px}.disclosure-icon svg{width:16px;height:16px}.practice-detail{margin-left:35px;padding-bottom:24px}.practice-detail p{font-size:12px}.practice-caption{font-size:8px;margin-top:18px}.belief-inner{padding-top:32px;padding-bottom:108px}.belief .section-label{margin-bottom:43px}.belief-heading .eyebrow{font-size:9px;margin-bottom:20px}.belief h2{font-size:45px;line-height:1.1}.belief-principles{grid-template-columns:1fr;gap:30px;margin-top:41px}.principle{display:grid;grid-template-columns:23px 1fr;column-gap:12px;padding-top:22px}.principle>span{padding-top:6px}.principle h3{font-size:23px;margin:0 0 12px}.principle p{grid-column:2;max-width:100%;font-size:12px}.belief-watermark{font-size:160px;bottom:-55px;right:15px}.company{padding-top:33px;padding-bottom:37px}.company-main{margin:5px 0 35px;gap:14px}.company-main h2{font-size:31px}.circle-link{width:54px;height:54px;flex:0 0 54px}.circle-link svg{width:26px;height:26px}.company-details{grid-template-columns:1fr;gap:27px;padding-top:27px}.company-details p,.copy-domain{font-size:12px}.detail-label{margin-bottom:8px}.site-footer{padding-top:27px;padding-bottom:24px;display:grid;grid-template-columns:1fr auto;gap:15px}.site-footer p{font-size:8px;grid-row:2;grid-column:1 / -1}.legal-button{grid-column:2;grid-row:1}.footer-brand{font-size:19px}.footer-brand span{font-size:25px}dialog{padding:24px}dialog h2{font-size:28px}}
@media(max-width:460px){.hero h1{font-size:49px}.hero-asterisk{font-size:47px}.hero{min-height:480px}.hero-tagline{font-size:25px}.scene-controls{bottom:138px}.studio h2{font-size:37px}.belief h2{font-size:39px}.practice-heading h2{font-size:39px}.practice-name{font-size:21px}.company-main h2{font-size:28px}}
@media(max-width:370px){:root{--gutter:20px}.hero h1{font-size:43px;left:18px}.hero-asterisk{font-size:37px}.hero-intro{max-width:calc(100% - 40px)}.hero-intro .eyebrow{font-size:7px}.hero-tagline{font-size:23px}.studio h2{font-size:32px}.practice-name{font-size:18px}.belief h2{font-size:35px}.company-main h2{font-size:24px}.company-main{gap:10px}.circle-link{width:45px;height:45px;flex-basis:45px}}
@media(max-height:700px) and (min-width:701px){.hero{min-height:420px}.hero-intro{top:27px}.hero-tagline{font-size:26px;margin:17px 0}.hero h1{font-size:105px;bottom:57px}.hero-asterisk{font-size:95px}.scene-controls{bottom:200px}.hero-bottom{bottom:21px}}
@media(max-height:650px) and (max-width:700px){.hero{min-height:410px;height:calc(100svh - 120px)}.hero-tagline{font-size:22px;margin:14px 0}.hero-intro{top:22px}.hero h1{bottom:53px}.hero-bottom{bottom:21px}.scene-controls{bottom:117px}}
@media(max-height:500px) and (min-width:701px){.site-header{height:64px}.hero{height:calc(100svh - 108px);min-height:0}.hero-intro{top:18px}.hero-intro .eyebrow{font-size:8px}.hero-tagline{font-size:21px;line-height:1.15;margin:12px 0}.hero-link{font-size:10px;padding-bottom:5px}.hero h1{font-size:64px;bottom:42px}.hero-asterisk{font-size:60px;vertical-align:-4px}.hero-bottom{bottom:15px;font-size:10px}.hero-bottom a{font-size:8px}.scene-controls{bottom:78px}.scene-controls .icon-button{width:30px;height:30px}.scene-controls svg{width:14px;height:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}
