@font-face{font-family:Manrope;src:url('fonts/manrope-400.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Manrope;src:url('fonts/manrope-500.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Manrope;src:url('fonts/manrope-600.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
:root{--paper:#eeece6;--ink:#151716;--accent:#e4472d;--muted:#73766f;--line:#cbc9c1;--dark-line:#444640;--gutter:clamp(24px,4.55vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px;scrollbar-gutter:stable}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,"Segoe UI",Arial,sans-serif;font-weight:400;-webkit-font-smoothing:antialiased}body.dialog-open{overflow:hidden}::selection{background:var(--accent);color:#fff}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{color:inherit;cursor:pointer}button:disabled{cursor:default}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex="0"]:focus-visible{outline:2px solid var(--accent);outline-offset:6px}button{border-radius:0}[hidden]{display:none!important}.skip-link{position:fixed;top:-100px;left:20px;padding:15px;background:var(--ink);color:white;z-index:100}.skip-link:focus{top:15px}
.header{height:100px;display:flex;align-items:center;justify-content:space-between;gap:35px;padding:0 var(--gutter);position:relative;z-index:10}.brand{display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:23px;letter-spacing:-1.3px;font-weight:600}.brand-symbol{width:36px;height:36px;margin-left:-4px;flex-shrink:0}.brand-dot{font-size:11px;vertical-align:top;padding-left:3px;letter-spacing:0}.desktop-nav{display:flex;align-items:center;gap:32px;font-size:11px;font-weight:500}.desktop-nav a{display:flex;align-items:center;gap:6px;padding:8px 0}.desktop-nav a>span{font-size:7px;color:#797c74;align-self:flex-start;padding-top:1px}.desktop-nav a:hover{color:var(--accent)}.header-contact{font-size:11px;display:flex;align-items:center;gap:26px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);border-radius:30px;padding:13px 20px;transition:background .25s,color .25s}.header-contact>span{font-size:19px;line-height:1}.header-contact:hover{background:var(--accent);border-color:var(--accent)}.menu-toggle{display:none;padding:10px 0 10px 10px;background:none;border:0}.menu-toggle span{display:block;height:1px;width:24px;background:var(--ink);margin:6px 0}.mobile-menu{position:absolute;top:78px;left:0;right:0;background:var(--paper);padding:20px var(--gutter) 32px;z-index:20;border-bottom:1px solid var(--line)}.mobile-menu a{display:flex;justify-content:space-between;font-size:24px;padding:17px 0;border-bottom:1px solid var(--line);letter-spacing:-.8px}.mobile-menu a>span{font-size:10px;color:var(--muted)}
.hero{padding:25px var(--gutter) 0;overflow:hidden}.hero-meta{display:flex;justify-content:space-between;align-items:center;gap:30px}.eyebrow{display:flex;align-items:center;gap:8px;font-size:8px;font-weight:500;letter-spacing:1.1px;line-height:1.6}.live-dot{width:5px;height:5px;display:inline-block;background:var(--accent);border-radius:50%;flex-shrink:0}.hero-meta-right{font-size:8px;letter-spacing:1.2px;color:#686d63}.hero-stage{position:relative;height:clamp(350px,30.5vw,530px);margin-top:33px}.hero h1{position:relative;z-index:2;pointer-events:none;font-size:clamp(125px,14.8vw,265px);font-weight:500;letter-spacing:-.09em;line-height:.79;margin:0;padding-top:32px;width:max-content}.hero h1>span{display:block}.hero h1>span+span{padding-left:6.7vw;margin-top:14px}.title-period{color:var(--accent)}.hero-visual{position:absolute;right:-1%;top:-20%;width:58%;height:132%;z-index:3}.hero-visual canvas{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:2;filter:drop-shadow(0 22px 16px #53554a12)}.orbit-line{position:absolute;width:76%;aspect-ratio:1;border:1px solid #b9bdb366;border-radius:50%;left:12%;top:12%;transform:rotateX(55deg) rotate(-25deg);opacity:.8}.orbit-line:before,.orbit-line:after{content:'+';font-size:16px;color:#8c9384;position:absolute;left:-4px;top:46%;font-weight:400}.orbit-line:after{left:auto;right:-4px}.sculpture-ground{position:absolute;width:54%;height:5%;left:26%;bottom:12%;background:#666a59;filter:blur(20px);border-radius:50%;opacity:.2}.art-coordinate{position:absolute;font-size:7px;letter-spacing:1px;color:#777f70;font-family:monospace;z-index:4}.art-coordinate-top{top:14%;right:8%;writing-mode:vertical-rl}.art-coordinate-bottom{bottom:3%;left:41%}.hero-side-note{position:absolute;left:0;bottom:2px;writing-mode:vertical-rl;transform:rotate(180deg);font-size:7px;letter-spacing:1.3px;color:#70776b}.sculpture-fallback{position:absolute;inset:14%;display:grid;place-items:center;perspective:700px}.sculpture-fallback i{position:absolute;width:74%;aspect-ratio:1;border-radius:50%;border:45px solid #adb2ab;background:transparent;box-shadow:inset 12px 15px 15px #f9faf5,12px 8px 15px #555d4b55;transform:rotateY(40deg) rotateX(20deg)}.sculpture-fallback i:nth-child(2){transform:rotateZ(120deg) rotateY(40deg) rotateX(20deg)}.sculpture-fallback i:nth-child(3){transform:rotateZ(240deg) rotateY(40deg) rotateX(20deg)}.hero-visual:has(canvas[data-ready="true"]) .sculpture-fallback{display:none}
.hero-lower{display:grid;grid-template-columns:1.2fr 1fr 125px;gap:45px;align-items:center;position:relative;z-index:4;margin:22px 0 42px}.hero-statement{display:flex;gap:21px;align-items:flex-start}.small-cross{font-size:38px;font-weight:400;line-height:1;color:var(--accent)}.hero-statement .small-cross{font-size:33px;margin-top:5px}.hero-statement h2{font-size:clamp(24px,2.4vw,40px);letter-spacing:-1.4px;line-height:1.27;font-weight:400;margin:0}.hero-description p{font-size:11px;line-height:1.9;color:#666d60;margin:0 0 13px}.hero-explore{display:inline-flex;align-items:center;gap:23px;font-size:9px;font-weight:500;border-bottom:1px solid #a2aa98;padding-bottom:5px}.hero-explore span{font-size:16px}.hero-explore:hover{color:var(--accent);border-color:var(--accent)}.hero-cta{width:122px;height:122px;border-radius:50%;border:1px solid #a9afa1;display:flex;justify-content:center;align-items:center;position:relative;transition:background .3s,color .3s,border-color .3s}.hero-cta>span:first-child{font-size:10px;line-height:1.5;padding-right:7px}.hero-cta-arrow{position:absolute;right:28px;top:26px;font-size:21px;line-height:1;color:var(--accent)}.hero-cta:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}.hero-cta:hover .hero-cta-arrow{color:var(--paper)}.hero-footnote{border-top:1px solid var(--line);padding:19px 0 23px;display:flex;justify-content:space-between;gap:25px;font-size:7px;letter-spacing:1.2px;color:#737b69}.hero-footnote>span:last-child{display:flex;gap:25px}.hero-footnote>span:last-child>span{font-size:14px;line-height:1}.discipline-strip{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:25px var(--gutter);border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:11px;font-weight:500;letter-spacing:-.2px}.discipline-strip b{font-size:16px;line-height:1;font-weight:400;color:#7e8775}
.services,.system-section,.approach,.faq{padding:115px var(--gutter)}.section-index{display:flex;align-items:center;gap:20px;font-size:8px;letter-spacing:1.1px;font-weight:500;line-height:1.6}.index-line{width:45px;height:1px;display:inline-block;background:#93998a}.section-index>span:last-child:not(:first-child){color:#757d6c}.section-heading{margin-bottom:58px}.heading-row{display:flex;justify-content:space-between;gap:60px;align-items:flex-end;margin-top:42px}h2{font-size:clamp(44px,4.8vw,80px);line-height:1.1;font-weight:400;letter-spacing:-.065em;margin:0}.muted{color:#7d8376}.section-intro{font-size:12px;color:#68715e;line-height:1.9;max-width:320px;margin:0 0 2px}.services .section-intro{display:flex;gap:26px;align-items:center}.section-intro p{margin:0;font-size:11px;line-height:1.9;min-width:190px}.intro-asterisk{color:var(--accent);font-size:63px;line-height:1;display:inline-block}.service-grid{border-top:1px solid var(--line)}.service-card{display:grid;grid-template-columns:50px 1.15fr 1fr 80px;align-items:center;gap:35px;border-bottom:1px solid var(--line);padding:38px 0;position:relative;transition:background .3s}.service-card:before{position:absolute;content:'';inset:0 calc(-1*var(--gutter));background:linear-gradient(90deg,transparent,#e9e2d7,transparent);opacity:0;transition:opacity .3s;pointer-events:none}.service-card>*{position:relative;z-index:1}.service-card:hover:before,.service-card:focus-within:before{opacity:1}.service-number{font-size:11px;color:#787f6f;align-self:flex-start;padding-top:9px}.service-category{display:block;font-family:monospace;font-size:8px;letter-spacing:1.1px;color:#717a65;margin-bottom:14px}.service-title h3{font-size:clamp(34px,3.7vw,61px);line-height:1.03;letter-spacing:-.06em;font-weight:400;margin:0;transition:color .3s,transform .3s}.service-card:hover .service-title h3{color:var(--accent);transform:translateX(4px)}.service-copy{max-width:355px}.service-copy p{font-size:12px;line-height:1.85;color:#69715f;margin:0 0 22px}.service-tags{display:flex;align-items:center;flex-wrap:wrap;gap:7px 16px;font-size:8px;color:#6b745f}.service-tags span+span:before{content:'/';margin-right:16px;color:#a5ad9b}.service-detail{display:flex;flex-direction:column-reverse;gap:16px;background:none;border:0;align-items:center;padding:8px 0;justify-self:end}.detail-label{font-size:8px;color:#69725e}.detail-arrow{display:grid;place-items:center;border:1px solid #aeb7a2;width:58px;height:58px;font-size:27px;border-radius:50%;line-height:1;transition:background .3s,color .3s,transform .3s,border-color .3s}.service-detail:hover .detail-arrow{background:var(--ink);border-color:var(--ink);color:var(--paper);transform:rotate(45deg)}.services-bottom{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;padding-top:29px}.services-bottom p{font-size:10px;line-height:1.8;color:#727c65;margin:0}.services-bottom strong{color:var(--ink);font-weight:500}.text-link{background:none;border:0;padding:8px 0;font-size:11px;display:inline-flex;align-items:center;gap:35px;line-height:1.5}.text-link>span{font-size:23px;line-height:1}.text-link:hover{color:var(--accent)}
.system-section{background:var(--ink);color:var(--paper);position:relative;overflow:hidden}.system-section:before{content:'';position:absolute;right:-200px;bottom:-450px;width:800px;height:800px;background:radial-gradient(ellipse,#c7462530,transparent 65%);pointer-events:none}.system-section .section-index{color:#b4bbaa}.system-section .section-index>span:last-child{color:#a0a895}.system-section .index-line{background:#6c7561}.system-section .heading-row{align-items:flex-end;gap:30px}.system-section h2{font-size:clamp(39px,4.2vw,70px)}.muted-dark{color:#969f8a}.system-section .section-intro{font-size:11px;color:#a4ae96;max-width:290px}.solution-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--dark-line);border-bottom:1px solid var(--dark-line);gap:32px}.solution-tabs button{background:none;border:0;color:#a6af99;display:flex;align-items:center;gap:12px;padding:23px 0;font-size:11px;text-align:left;position:relative}.tab-number{font-size:8px;font-family:monospace;opacity:.7}.solution-tabs button>span:last-child{margin-left:auto;font-size:20px;font-weight:400}.solution-tabs button[aria-selected="true"]{color:#f3f3e8}.solution-tabs button[aria-selected="true"]:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--accent)}.solution-panel{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;padding:50px 0 30px;position:relative;z-index:1}.tiny-label{font-size:7px;letter-spacing:1.3px;color:#a0aa92}.solution-description h3{font-size:36px;font-weight:400;line-height:1.2;letter-spacing:-1.7px;margin:26px 0 22px}.solution-description>p{max-width:360px;font-size:12px;line-height:1.9;color:#a8b299;margin:0 0 25px}.solution-brief{color:#f2f3e8;border-bottom:1px solid #6e7861;padding-bottom:8px}.solution-brief:hover{color:#f57a5e}.solution-journey{display:grid;grid-template-columns:repeat(3,1fr);align-content:center;gap:7px;position:relative}.solution-journey:before{content:'';height:1px;background:#57614a;position:absolute;top:45%;left:5%;right:5%}.journey-step{position:relative;aspect-ratio:1;max-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px solid #5d6850;border-radius:50%;background:#1b1e19;box-shadow:inset 0 0 40px #73805b0a}.journey-step:nth-child(2){transform:translateY(-24px);border-color:#838f71;background:#23291e}.journey-step:nth-child(3){transform:translateY(10px)}.journey-step>span{font-family:monospace;font-size:8px;color:#9cae84;margin-bottom:18px}.journey-step>strong{font-size:17px;font-weight:400;letter-spacing:-.5px}.journey-step>small{font-size:8px;color:#a1b18d;margin-top:8px;line-height:1.5}.journey-result{grid-column:1/-1;display:flex;justify-content:center;align-items:center;gap:10px;color:#b6c7a0;font-size:9px;margin-top:35px}.journey-result .live-dot{width:4px;height:4px}.system-footnote{border-top:1px solid #404739;margin-top:28px;display:flex;align-items:center;gap:20px;padding-top:25px}.system-footnote .small-cross{font-size:37px}.system-footnote p{font-size:10px;line-height:1.8;color:#a7b496;margin:0}.system-signature{margin-left:auto;font-size:8px;font-family:monospace;color:#9ead8c}
.approach{display:grid;grid-template-columns:1fr 1.05fr;gap:90px;padding-top:120px;padding-bottom:95px}.approach h2{margin-top:40px;font-size:clamp(42px,4.8vw,78px)}.approach-intro>p{font-size:12px;line-height:1.9;color:#6d775f;margin:29px 0 0}.approach-note{display:flex;gap:18px;align-items:center;margin-top:34px}.approach-note>span{width:41px;height:41px;display:grid;place-items:center;border:1px solid #b6bfaa;border-radius:50%;font-size:22px;color:var(--accent);flex-shrink:0}.approach-note p{font-size:9px;line-height:1.9;color:#737e65;margin:0}.process{padding-top:0}.process article{display:flex;gap:28px;padding:31px 0;border-top:1px solid var(--line)}.process article:last-child{border-bottom:1px solid var(--line)}.process article>span{font-size:11px;font-family:monospace;color:#7d8a6f;padding-top:6px}.process h3{font-size:23px;font-weight:400;letter-spacing:-1px;margin:0 0 15px;line-height:1.3}.process p{font-size:11px;line-height:1.9;max-width:380px;color:#6e795f;margin:0}.faq{display:grid;grid-template-columns:1fr 1.05fr;gap:90px;padding-top:65px;padding-bottom:120px}.faq h2{font-size:clamp(36px,4vw,66px);margin-top:35px}.faq-intro .text-link{margin-top:30px}.faq-list{padding-top:0}.faq details{border-top:1px solid var(--line)}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:26px 0;font-size:13px;line-height:1.6;letter-spacing:-.4px}.faq summary::-webkit-details-marker{display:none}.faq summary>span{font-size:23px;font-weight:400;color:#72805f;transition:transform .25s}.faq details[open] summary>span{transform:rotate(45deg);color:var(--accent)}.faq details>p{font-size:11px;line-height:1.9;margin:0;padding:0 30px 26px 0;color:#6a775b}
.contact{padding:58px var(--gutter) 45px;background:#d9dcd0;border-top:1px solid #c8cdbf;overflow:hidden}.contact .section-index{font-size:8px}.contact .section-index>span:last-child{color:#5e6a50}.contact .index-line{background:#8a987c}.contact-main{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:50px 0 58px}.contact h2{font-size:clamp(77px,9.8vw,165px);line-height:1;letter-spacing:-.075em;font-weight:400}.contact h2 span{color:#738264}.contact-circle{width:175px;height:175px;border-radius:50%;background:var(--accent);color:var(--paper);display:grid;place-items:center;flex-shrink:0;margin-right:28px;transition:background .3s,transform .3s}.contact-circle>span{font-size:92px;font-weight:400;line-height:1;transform:translateY(-5px)}.contact-circle:hover{background:var(--ink);transform:rotate(45deg)}.contact-bottom{display:grid;grid-template-columns:1.2fr 1fr auto;align-items:flex-end;gap:40px;border-top:1px solid #acb79e;padding-top:28px}.contact-bottom>p{font-size:11px;line-height:1.9;color:#59684b;margin:0}.contact-actions{display:flex;flex-direction:column;gap:9px;align-items:flex-start}.contact-actions a,.contact-actions button{background:none;border:0;padding:0;display:flex;align-items:center;gap:30px;font-size:10px;line-height:1.7}.contact-actions a>span,.contact-actions button>span{font-size:17px;line-height:1}.contact-actions a:hover,.contact-actions button:hover{color:var(--accent)}.contact-actions button{font-size:9px;color:#596a48}.contact-handle{font-size:14px;letter-spacing:-.5px;border-bottom:1px solid #99a68a;padding-bottom:4px}.footer{padding:38px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:35px}.footer-brand{font-size:18px}.footer-brand .brand-symbol{width:30px;height:30px}.footer p{font-size:8px;color:#6b775e;margin:0}.footer-note{font-size:7px;letter-spacing:1px;color:#6a775b}.back-top{font-size:9px;display:flex;align-items:center;gap:25px}.back-top>span{font-size:20px}
.modal{background:var(--paper);color:var(--ink);border:0;padding:45px 50px;border-radius:0;max-width:620px;width:calc(100% - 40px);max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 10px 90px #10170c33}.modal::backdrop{background:#10170c6e;backdrop-filter:blur(9px)}.modal-close{position:absolute;right:20px;top:20px;display:grid;place-items:center;width:36px;height:36px;border:1px solid #aebba0;border-radius:50%;background:transparent;font-size:26px;line-height:1;z-index:3;transition:background .2s,color .2s}.modal-close:hover{background:var(--ink);color:var(--paper)}.modal h2{font-size:42px;margin:30px 0 24px;line-height:1.13}.modal>p{font-size:12px;line-height:1.9;color:#667858}.modal h3{font-size:10px;font-weight:500;letter-spacing:.5px;margin:35px 0 19px}.modal ul{list-style:none;padding:0;margin:0;counter-reset:deliverables}.modal li{position:relative;padding:17px 0 17px 33px;border-top:1px solid var(--line);font-size:12px;line-height:1.85;color:#5e7250;counter-increment:deliverables}.modal li:before{content:counter(deliverables,decimal-leading-zero);font-size:8px;font-family:monospace;color:#778c67;position:absolute;left:0;top:20px}.modal .service-scope{font-size:9px;line-height:1.9;color:#6a7e59;margin:20px 0 0}.modal-outcome{padding:22px;background:#e0e5d7;margin:28px 0}.modal-outcome>span{font-size:8px;letter-spacing:1px}.modal-outcome p{font-size:11px;line-height:1.9;color:#5d734d;margin:10px 0 0}.button{min-height:54px;padding:17px 22px;font-size:11px;display:inline-flex;align-items:center;justify-content:space-between;gap:35px;border:0;transition:background .2s}.button>span{font-size:22px;line-height:1}.button-dark{background:var(--ink);color:var(--paper)}.button-dark:hover{background:var(--accent)}.modal .button{width:100%}.service-modal{width:min(690px,64vw);max-width:none;height:100dvh;max-height:100dvh;margin:0 0 0 auto;padding:30px 55px 45px;animation:drawer-in .4s cubic-bezier(.2,.8,.2,1)}.drawer-top{position:sticky;top:-30px;background:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 0 23px;margin-bottom:40px;border-bottom:1px solid var(--line);z-index:4}.drawer-brand{font-family:monospace;font-size:8px;letter-spacing:1px;color:#6c7a5d}.drawer-top .modal-close{position:relative;right:auto;top:auto;flex-shrink:0}.service-modal h2{font-size:clamp(35px,3.7vw,55px);margin-top:26px}.service-modal>p:not(.service-scope){font-size:13px}.service-modal .eyebrow{font-size:8px;color:#7b8b6a}.brief-modal form{display:flex;flex-direction:column;gap:17px;margin-top:25px}.brief-modal label{font-size:10px;line-height:1.5;color:#586f49;display:flex;flex-direction:column;gap:9px}.brief-modal input,.brief-modal select,.brief-modal textarea{border:1px solid #bdcbb2;background:#f4f5ef;padding:12px;font-size:12px;color:var(--ink);width:100%;border-radius:0}.brief-modal textarea{resize:vertical;line-height:1.7}.brief-modal .button{margin-top:5px}.brief-help{font-size:10px!important;line-height:1.9;color:#667d55}.brief-modal #brief-result>p:first-child{font-size:13px;line-height:1.8;color:#526e3c;margin:25px 0 20px}.brief-modal #brief-output{margin-bottom:15px}@keyframes drawer-in{from{transform:translateX(10%);opacity:0}to{transform:translateX(0);opacity:1}}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.8,.2,1)}.reveal.is-visible{opacity:1;transform:translateY(0)}
@media(min-width:1700px){.hero{padding-top:35px}.hero-stage{margin-top:50px}.hero-lower{margin-top:30px;margin-bottom:58px;grid-template-columns:1.3fr 1fr 165px}.hero-cta{width:160px;height:160px}.hero-cta>span:first-child{font-size:12px}.hero-description p{font-size:13px}.hero-explore{font-size:11px}.hero-footnote{font-size:8px}.discipline-strip{font-size:13px}.service-card{padding:45px 0;gap:45px;grid-template-columns:70px 1.15fr 1fr 90px}.service-copy{max-width:430px}.service-copy p{font-size:14px}.service-tags{font-size:10px}.service-category{font-size:10px}.service-number{font-size:13px}.detail-label{font-size:10px}.section-intro p{font-size:13px}.process p,.faq details>p{font-size:13px}.process h3{font-size:27px}.faq summary{font-size:15px}}
@media(max-width:1100px){.header{height:90px}.desktop-nav{gap:20px}.brand{font-size:20px}.brand-symbol{width:31px;height:31px}.header-contact{font-size:10px;gap:20px;padding:12px 17px}.hero-stage{height:380px;margin-top:35px}.hero h1{font-size:16vw;padding-top:31px}.hero-visual{width:63%;right:-4%;top:-17%;height:132%}.hero-lower{grid-template-columns:1.2fr 1fr 115px;gap:28px;margin-top:30px}.hero-statement{gap:14px}.hero-statement h2{font-size:26px;letter-spacing:-1.2px}.hero-statement .small-cross{font-size:25px}.hero-description p{font-size:10px}.hero-cta{height:112px;width:112px}.hero-cta>span:first-child{font-size:9px}.hero-cta-arrow{top:18px;right:22px;font-size:20px}.hero-explore{font-size:8px;gap:18px}.hero-side-note{font-size:6px}.services,.system-section,.approach,.faq{padding-top:90px;padding-bottom:90px}.heading-row{gap:40px}.section-intro p{font-size:10px}.intro-asterisk{font-size:50px}.services .section-intro{gap:15px}.service-card{grid-template-columns:35px 1.1fr 1fr 65px;gap:25px;padding:33px 0}.service-title h3{font-size:39px}.service-copy p{font-size:11px}.service-category{font-size:7px}.service-tags{font-size:7px;gap:7px 10px}.service-tags span+span:before{margin-right:10px}.detail-arrow{width:51px;height:51px;font-size:24px}.detail-label{font-size:7px}.solution-panel{gap:40px;grid-template-columns:1fr 1.2fr}.solution-description h3{font-size:32px}.journey-step>strong{font-size:15px}.journey-step>small{font-size:7px}.approach,.faq{gap:60px}.process h3{font-size:20px}.process article{gap:22px}.contact-circle{width:145px;height:145px;margin-right:10px}.contact-circle>span{font-size:75px}.contact-bottom{gap:30px}.footer{gap:25px}.footer-note{font-size:6px}}
@media(max-width:800px){.header{height:80px}.desktop-nav{display:none}.header-contact{margin-left:auto}.menu-toggle{display:block}.hero{padding-top:20px}.hero .eyebrow{font-size:7px;letter-spacing:.8px}.hero-meta-right{font-size:6px;letter-spacing:.6px}.hero-stage{height:340px}.hero h1{font-size:16.5vw;padding-top:52px}.hero h1>span+span{padding-left:4vw;margin-top:13px}.hero-visual{width:66%;height:130%;top:-10%;right:-6%;}.art-coordinate{font-size:6px}.art-coordinate-bottom{left:45%}.hero-lower{grid-template-columns:1fr 1fr 100px;gap:24px;margin-top:20px;margin-bottom:35px}.hero-statement{display:block}.hero-statement .small-cross{font-size:25px;margin:0 0 10px;display:block}.hero-statement h2{font-size:23px;line-height:1.3;letter-spacing:-1px}.hero-description p{font-size:9px;line-height:1.85}.hero-explore{font-size:7px;gap:12px}.hero-cta{height:96px;width:96px}.hero-cta>span:first-child{font-size:8px}.hero-cta-arrow{right:18px;top:17px;font-size:16px}.hero-footnote{font-size:6px;letter-spacing:.8px}.discipline-strip{gap:15px;padding:23px var(--gutter);font-size:9px}.services,.system-section,.approach,.faq{padding-top:72px;padding-bottom:72px}.section-index{font-size:7px;gap:17px}.heading-row{display:block;margin-top:32px}.heading-row h2{font-size:51px}.section-intro{margin-top:25px;max-width:100%}.services .section-intro{margin-top:26px;gap:23px}.section-intro p{font-size:11px}.intro-asterisk{font-size:48px}.section-heading{margin-bottom:40px}.service-card{grid-template-columns:25px 1fr 1fr 52px;gap:20px}.service-title h3{font-size:33px}.service-copy p{font-size:10px;line-height:1.9}.service-category{font-size:6px;letter-spacing:.7px}.service-tags{font-size:6px;gap:5px 8px}.service-tags span+span:before{margin-right:8px}.service-number{font-size:9px}.detail-arrow{width:46px;height:46px;font-size:22px}.detail-label{font-size:6px}.services-bottom .text-link{font-size:10px;gap:23px}.services-bottom p{font-size:9px}.system-section .heading-row h2{font-size:45px}.system-section .section-intro{font-size:11px;max-width:100%;margin-top:25px}.system-section .section-intro br{display:none}.solution-tabs{gap:24px}.solution-tabs button{font-size:10px;gap:8px;padding:21px 0}.solution-tabs .tab-number{font-size:7px}.solution-panel{grid-template-columns:1fr;gap:50px;padding-top:35px}.solution-description>p{max-width:450px}.solution-journey{max-width:560px;width:100%;justify-self:center;gap:12px}.journey-step{max-height:none}.journey-step>strong{font-size:20px}.journey-step>small{font-size:10px}.journey-step>span{font-size:9px}.journey-result{font-size:10px;margin-top:30px}.system-footnote{margin-top:20px}.approach,.faq{grid-template-columns:1fr;gap:42px}.approach h2{font-size:55px;margin-top:30px}.approach-intro>p{font-size:12px}.process article{padding:28px 0;gap:28px}.process h3{font-size:24px}.process p{font-size:12px;max-width:100%}.faq{padding-top:15px}.faq h2{font-size:46px;margin-top:30px}.faq-intro .text-link{margin-top:23px}.faq summary{font-size:14px}.faq details>p{font-size:12px}.contact{padding-top:40px;padding-bottom:35px}.contact-main{padding:40px 0 43px}.contact h2{font-size:10.5vw}.contact-circle{width:115px;height:115px;margin-right:0}.contact-circle>span{font-size:62px}.contact-bottom{grid-template-columns:1fr 1fr;gap:25px}.contact-handle{grid-column:2;font-size:12px;justify-self:start}.contact-bottom>p{grid-row:1/3}.footer{flex-wrap:wrap;gap:22px}.footer-brand{font-size:16px}.footer-note{display:none}.footer p{font-size:7px}.service-modal{width:85vw;padding:25px 40px 40px}.drawer-top{top:-25px}.service-modal h2{font-size:43px}}
@media(max-width:700px){:root{--gutter:24px}.header{height:76px;gap:16px}.brand{font-size:18px;gap:6px;letter-spacing:-1px}.brand-symbol{height:30px;width:30px}.brand-dot{font-size:8px}.header-contact{font-size:8px;padding:10px 12px;gap:12px}.header-contact>span{font-size:16px}.menu-toggle{padding-left:1px}.menu-toggle span{width:20px}.mobile-menu{top:76px}.hero{padding-top:24px}.hero-meta{gap:0}.hero .eyebrow{font-size:6px;letter-spacing:.7px}.hero-meta-right{display:none}.hero-stage{height:auto;display:flex;flex-direction:column;margin-top:29px}.hero h1{font-size:clamp(85px,26.5vw,150px);line-height:.83;letter-spacing:-.095em;padding-top:0;margin:0;width:max-content}.hero h1>span+span{padding-left:15%;margin-top:8px}.hero-visual{position:relative;top:auto;right:auto;align-self:center;width:116%;height:310px;margin-top:0}.hero-side-note{display:none}.art-coordinate-top{top:12%;right:12%;font-size:6px}.art-coordinate-bottom{bottom:4%;left:36%;font-size:6px;letter-spacing:.6px}.orbit-line{top:3%;width:73%;left:14%}.sculpture-ground{bottom:9%;opacity:.16;filter:blur(15px)}.hero-lower{grid-template-columns:1fr 100px;gap:25px 25px;margin-top:16px;margin-bottom:29px}.hero-statement{grid-column:1/-1;display:flex;gap:15px}.hero-statement .small-cross{font-size:28px;margin:2px 0 0}.hero-statement h2{font-size:25px;letter-spacing:-1.2px;line-height:1.3}.hero-description p{font-size:10px;line-height:1.9;margin-bottom:13px}.hero-explore{font-size:8px;gap:18px}.hero-cta{height:95px;width:95px;justify-self:end}.hero-cta>span:first-child{font-size:8px}.hero-cta-arrow{font-size:17px}.hero-footnote{padding:17px 0 20px;letter-spacing:.45px;font-size:5px;gap:15px}.hero-footnote>span:last-child{gap:10px}.hero-footnote>span:last-child>span{font-size:11px}.discipline-strip{display:grid;grid-template-columns:1fr 1fr;gap:16px 25px;font-size:8px;padding-top:20px;padding-bottom:20px}.discipline-strip>b{display:none}.discipline-strip>span:before{content:'+';color:var(--accent);font-size:12px;margin-right:10px}.services,.system-section,.approach,.faq{padding-top:58px;padding-bottom:58px}.section-index{font-size:6px;letter-spacing:.7px;gap:14px}.index-line{width:25px}.heading-row{margin-top:26px}.heading-row h2{font-size:clamp(34px,9.3vw,50px);letter-spacing:-.07em;line-height:1.13}.services .section-intro{margin-top:26px;gap:22px}.section-intro p{font-size:10px;line-height:1.9}.intro-asterisk{font-size:44px}.section-heading{margin-bottom:30px}.service-card{grid-template-columns:20px minmax(0,1fr) 44px;gap:0 16px;padding:29px 0 26px;align-items:flex-start}.service-number{font-size:8px;padding-top:3px;grid-row:1/3}.service-title{grid-column:2}.service-category{font-size:6px;letter-spacing:.6px;margin-bottom:12px}.service-title h3{font-size:clamp(28px,8.5vw,36px);line-height:1.05;letter-spacing:-.065em}.service-title h3{max-width:240px}.service-copy{grid-column:2/4;margin-top:20px;max-width:100%}.service-copy p{font-size:11px;line-height:1.85;margin-bottom:17px;max-width:340px}.service-tags{font-size:7px;gap:6px 11px}.service-tags span+span:before{margin-right:11px}.service-detail{grid-column:3;grid-row:1;gap:10px;padding:0;margin-top:16px}.detail-arrow{height:44px;width:44px;font-size:23px}.detail-label{font-size:6px;display:none}.services-bottom{display:block;padding-top:23px}.services-bottom p{font-size:10px;line-height:1.8}.services-bottom .text-link{font-size:10px;margin-top:12px;gap:25px}.system-section .heading-row h2{font-size:clamp(29px,8.6vw,42px);line-height:1.16}.system-section .section-intro{font-size:10px;line-height:1.9;max-width:280px;margin-top:23px}.solution-tabs{gap:14px}.solution-tabs button{font-size:8px;gap:8px;line-height:1.5;padding:17px 0;align-items:flex-start;flex-wrap:wrap}.solution-tabs .tab-number{width:100%;font-size:6px}.solution-tabs button>span:last-child{font-size:15px;margin-left:0}.solution-panel{gap:37px;padding:29px 0 27px}.tiny-label{font-size:6px;letter-spacing:.8px}.solution-description h3{font-size:31px;line-height:1.2;letter-spacing:-1.6px;margin:22px 0 19px}.solution-description>p{font-size:11px;line-height:1.9;max-width:320px;margin-bottom:20px}.solution-brief{font-size:10px;gap:35px}.solution-journey{gap:7px}.journey-step:nth-child(2){transform:translateY(-12px)}.journey-step:nth-child(3){transform:translateY(6px)}.journey-step>span{font-size:6px;margin-bottom:11px}.journey-step>strong{font-size:12px;letter-spacing:-.5px}.journey-step>small{font-size:6px;line-height:1.7;margin-top:6px;max-width:80px}.journey-result{font-size:8px;margin-top:25px}.system-footnote{padding-top:22px;gap:16px}.system-footnote .small-cross{font-size:30px}.system-footnote p{font-size:8px;line-height:1.8}.system-signature{display:none}.approach{gap:33px}.approach h2{font-size:47px;margin-top:28px}.approach-intro>p{font-size:11px;line-height:1.9;margin-top:25px}.approach-note{margin-top:25px;gap:14px}.approach-note p{font-size:8px;line-height:1.8}.approach-note>span{height:35px;width:35px;font-size:20px}.process article{gap:22px;padding:25px 0}.process article>span{font-size:8px;padding-top:6px}.process h3{font-size:20px;letter-spacing:-.8px;margin-bottom:13px}.process p{font-size:11px;line-height:1.9}.faq{gap:29px;padding-top:15px}.faq h2{font-size:39px;margin-top:28px}.faq-intro .text-link{font-size:10px;gap:40px;margin-top:20px}.faq summary{font-size:11px;padding:23px 0;gap:25px}.faq summary>span{font-size:21px}.faq details>p{font-size:10px;line-height:1.9;padding-right:15px;padding-bottom:23px}.contact{padding-top:31px;padding-bottom:31px}.contact .section-index{font-size:5px;letter-spacing:.65px;gap:12px}.contact .index-line{width:24px}.contact-main{gap:14px;padding:36px 0 35px;align-items:flex-end}.contact h2{font-size:clamp(44px,12.7vw,75px);letter-spacing:-.075em;line-height:1.08}.contact-circle{height:72px;width:72px;margin-bottom:2px}.contact-circle>span{font-size:40px;transform:translateY(-2px)}.contact-bottom{grid-template-columns:1fr;gap:22px;padding-top:24px}.contact-bottom>p{grid-row:auto;font-size:10px;line-height:1.9}.contact-actions{gap:10px}.contact-actions a{font-size:10px}.contact-actions button{font-size:9px}.contact-actions a>span,.contact-actions button>span{font-size:17px}.contact-handle{grid-column:1;font-size:12px;justify-self:start}.footer{gap:23px;padding-top:27px;padding-bottom:27px;display:grid;grid-template-columns:1fr auto}.footer-brand{font-size:17px}.footer-brand .brand-symbol{height:28px;width:28px}.footer p{grid-column:1;grid-row:2;font-size:7px}.back-top{grid-column:2;grid-row:1/3;gap:15px;font-size:8px}.back-top>span{font-size:19px}.service-modal{width:100%;padding:22px 26px 30px}.drawer-top{top:-22px;padding-bottom:20px;margin-bottom:28px}.drawer-brand{font-size:7px}.drawer-top .modal-close{height:34px;width:34px}.service-modal h2{font-size:37px;margin-top:23px}.service-modal>p:not(.service-scope){font-size:12px}.modal h3{font-size:9px;margin-top:30px}.modal li{font-size:11px;line-height:1.9;padding:15px 0 15px 30px}.modal li:before{font-size:7px;top:18px}.modal .service-scope{font-size:8px}.modal-outcome p{font-size:10px}.modal-outcome{padding:19px}.modal .button{font-size:10px}.brief-modal{padding:36px 26px 26px;width:calc(100% - 24px);max-height:calc(100dvh - 24px)}.brief-modal h2{font-size:34px;margin-top:29px}.brief-modal>p{font-size:11px}.brief-modal .eyebrow{font-size:7px}.brief-modal input,.brief-modal select,.brief-modal textarea{font-size:12px}.brief-modal label{font-size:9px}}
@media(min-width:701px) and (max-width:900px){.hero h1{font-size:15vw}.hero h1>span+span{padding-left:0}.hero-visual{width:59%;right:-4%;top:-6%;height:120%}}
.service-copy p,.section-intro,.section-intro p,.hero-description p,.approach-intro>p,.process p,.faq details>p{color:#606957}
.service-tags,.service-category,.service-number{color:#606957}
@media(max-width:700px){.brief-modal input,.brief-modal select,.brief-modal textarea{font-size:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* Content and artwork have separate layout cells at every breakpoint. */
.header{height:88px;gap:24px}
.desktop-nav{font-size:13px;gap:24px}.desktop-nav a>span{font-size:9px}
.header-contact{font-size:13px;gap:20px;padding:13px 18px}.header-contact .header-contact-text{font-size:13px;line-height:1.4}
.hero{padding-top:20px}.hero .eyebrow{font-size:10px;letter-spacing:.7px}.hero-meta-right{font-size:10px}
.hero-stage{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);align-items:center;gap:28px;height:auto;min-height:0;margin-top:28px}
.hero h1{width:auto;min-width:0;max-width:100%;padding:0;margin:0;font-size:clamp(72px,10.6vw,170px);line-height:.9;letter-spacing:-.08em;z-index:1}
.hero h1>span+span{padding-left:0;margin-top:12px}
.hero-visual{position:relative;inset:auto;width:100%;max-width:100%;min-width:0;height:clamp(280px,30vw,460px);margin:0;align-self:center;overflow:hidden;z-index:0;isolation:isolate}
.hero-visual canvas{inset:0;max-width:100%;max-height:100%}.hero-side-note,.art-coordinate{display:none}
.hero-lower{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) 120px;align-items:center;gap:28px;margin:20px 0 30px}
.hero-statement{display:flex;align-items:flex-start;gap:14px;min-width:0}.hero-statement .small-cross{display:block;font-size:26px;margin:5px 0 0}
.hero-statement h2{font-size:clamp(24px,2.3vw,35px);letter-spacing:-1px;line-height:1.3}.hero-description{min-width:0}
.hero-description p{font-size:15px;line-height:1.65;margin-bottom:12px}.hero-description p br{display:none}
.hero-explore{font-size:12px;line-height:1.5;gap:18px}.hero-cta{width:120px;height:120px}.hero-cta>span:first-child{font-size:12px;line-height:1.5}.hero-cta-arrow{top:20px;right:23px;font-size:22px}
.hero-footnote{font-size:9px;letter-spacing:.5px}.discipline-strip{font-size:12px;line-height:1.6}
.section-index,.contact .section-index{font-size:10px;letter-spacing:.7px}.section-intro,.section-intro p,.system-section .section-intro{font-size:15px;line-height:1.75}.section-intro p{min-width:0}
.service-copy p{font-size:15px;line-height:1.75}.service-category,.service-tags,.service-number,.detail-label{font-size:10px;line-height:1.6}
.services-bottom p{font-size:13px;line-height:1.7}.text-link,.services-bottom .text-link{font-size:14px}
.solution-tabs button{font-size:14px;line-height:1.5}.solution-tabs .tab-number{font-size:10px}.tiny-label{font-size:10px;line-height:1.5}.solution-description>p{font-size:15px;line-height:1.75}
.journey-step>strong{font-size:17px}.journey-step>small{font-size:11px;line-height:1.5}.journey-step>span{font-size:10px}.journey-result{font-size:12px;line-height:1.6}
.system-footnote p,.system-signature{font-size:12px;line-height:1.6}.approach-intro>p,.process p,.faq details>p{font-size:15px;line-height:1.75}.approach-note p{font-size:12px;line-height:1.7}.faq summary{font-size:15px;line-height:1.6}
.contact-bottom>p,.contact-actions a,.contact-actions button{font-size:14px;line-height:1.7}.footer p,.footer-note,.back-top{font-size:11px;line-height:1.6}
.modal>p,.service-modal>p:not(.service-scope),.modal li,.modal-outcome p{font-size:14px;line-height:1.75}.modal .service-scope,.modal h3,.drawer-brand,.brief-modal label{font-size:12px;line-height:1.7}
.modal .eyebrow{font-size:10px}.modal .button{font-size:14px}.brief-help{font-size:12px!important}
@media(max-width:1000px){
 .header{height:78px;gap:16px}.desktop-nav{display:none}.header-contact{margin-left:auto}.menu-toggle{display:block;min-width:44px;min-height:44px;padding:10px}.mobile-menu{top:78px}
 .hero-meta-right{display:none}.hero-stage{gap:24px;margin-top:24px}.hero-lower{gap:22px}.hero-statement h2{font-size:24px}.hero-description p{font-size:14px}.hero-explore{font-size:11px}
 .service-copy p,.section-intro,.section-intro p,.process p,.faq details>p{font-size:14px}
}
@media(max-width:759px){
 :root{--gutter:24px}.header{gap:12px}.brand{font-size:19px;letter-spacing:-1px}.brand-symbol{width:28px;height:28px}
 .header-contact{width:44px;height:44px;flex-shrink:0;border-radius:50%;display:grid;place-items:center;padding:0}.header-contact .header-contact-text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.header-contact>span:last-child{font-size:22px}
 .hero .eyebrow{font-size:9px;line-height:1.7;letter-spacing:.5px}.hero-stage{grid-template-columns:minmax(0,1fr);gap:18px;margin-top:26px}
 .hero h1{font-size:clamp(70px,22vw,138px);line-height:.9;letter-spacing:-.08em}.hero h1>span+span{padding-left:0;margin-top:10px}
 .hero-visual{width:100%;height:clamp(245px,72vw,350px);max-width:430px;justify-self:center}
 .hero-lower{grid-template-columns:minmax(0,1fr) 110px;gap:22px 20px;margin-top:14px;margin-bottom:28px}.hero-statement{grid-column:1/-1}.hero-statement h2{font-size:27px;line-height:1.3}
 .hero-description p{font-size:14px;line-height:1.65}.hero-explore{font-size:12px;gap:14px}.hero-cta{width:108px;height:108px;align-self:center;justify-self:end}.hero-cta>span:first-child{font-size:11px}.hero-cta-arrow{right:20px;top:16px;font-size:20px}
 .hero-footnote{font-size:8px;line-height:1.6}.hero-footnote>span:last-child{display:none}.discipline-strip{font-size:11px;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
 .section-index,.contact .section-index{font-size:9px;gap:12px}.section-intro,.section-intro p,.system-section .section-intro,.service-copy p,.approach-intro>p,.process p,.faq details>p{font-size:14px;line-height:1.75}
 .service-title h3{font-size:clamp(27px,8vw,36px)}.service-category,.service-tags,.service-number{font-size:10px;line-height:1.6}.service-tags{gap:7px 10px}.service-tags span+span:before{margin-right:10px}
 .solution-tabs{gap:14px}.solution-tabs button{font-size:12px;line-height:1.5;gap:8px}.solution-tabs .tab-number{font-size:9px}.solution-description>p{font-size:14px}
 .journey-step>strong{font-size:13px}.journey-step>small{font-size:10px;line-height:1.4;padding:0 5px;max-width:100%}.journey-step>span{font-size:9px;margin-bottom:9px}.journey-result{font-size:11px}
 .system-footnote p{font-size:12px}.approach-note p{font-size:12px}.faq summary{font-size:14px}.contact-bottom>p,.contact-actions a,.contact-actions button{font-size:14px}.footer p,.back-top{font-size:11px}
 .brief-modal input,.brief-modal textarea,.brief-modal select{font-size:16px}
}
@media(max-width:380px){
 :root{--gutter:20px}.brand{font-size:17px;gap:4px}.header{gap:10px}.hero-statement .small-cross{display:none}.hero-statement h2{font-size:25px}
 .hero-lower{grid-template-columns:minmax(0,1fr);gap:22px}.hero-statement,.hero-description{grid-column:1}
 .hero-cta{justify-self:start;width:auto;min-width:190px;height:56px;border-radius:30px;justify-content:space-between;padding:0 20px}.hero-cta>span:first-child{font-size:13px;padding:0}.hero-cta>span:first-child br{display:none}.hero-cta-arrow{position:static;line-height:1}
 .discipline-strip{grid-template-columns:1fr;font-size:12px}.section-index{flex-wrap:wrap}.journey-step>strong{font-size:12px}.journey-step>small{font-size:9px}
}

.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.motion-stage{background:transparent;position:relative;overflow:hidden}
.motion-stage canvas{filter:none}
.motion-toggle{position:absolute;right:14px;bottom:12px;z-index:5;min-width:76px;min-height:36px;border:1px solid #b5b7ad;border-radius:22px;background:#eeece6e8;color:#40483a;padding:7px 12px;font-size:11px;font-weight:500;line-height:1.5;transition:background .2s,color .2s}
.motion-toggle:hover{background:var(--ink);color:var(--paper)}
.motion-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.motion-fallback{position:absolute;inset:12%;display:flex;flex-direction:column;justify-content:center;gap:4px;font-size:clamp(23px,3.4vw,50px);line-height:1.2;font-weight:500;letter-spacing:-.06em}
.motion-fallback>span:last-child{color:var(--accent)}
.motion-stage:has(canvas[data-ready="true"]) .motion-fallback{display:none}
@media(max-width:759px){.motion-toggle{font-size:11px;min-height:40px;right:8px;bottom:5px}.motion-fallback{font-size:34px}}
