/* POLYSPAN — a visual system built from spans, rules, and connected planes. */
:root{--bg:#151914;--bg-deep:#11150f;--surface:#1c211a;--surface-2:#252c21;--ink:#eff0e7;--muted:#a2aa9a;--quiet:#73816b;--accent:#e1ee96;--accent-ink:#222a19;--line:#343c2e;--paper:#e9eae2;--paper-ink:#22281e;--paper-muted:#636c5c;--paper-line:#c8cdbf;--font:'DM Sans',Arial,Helvetica,sans-serif;--mono:'IBM Plex Mono','SFMono-Regular',Consolas,monospace;--ease:cubic-bezier(.22,1,.36,1);--gutter:clamp(22px,4.2vw,76px);--max:1600px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}::selection{background:var(--accent);color:var(--bg)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit;cursor:pointer}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{border:0;background:none}button:disabled{cursor:not-allowed;opacity:.5}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:5px}input,select,textarea{border-radius:0}img,svg,canvas{max-width:100%}svg{display:block}p,h1,h2,h3,h4{margin:0}p+p{margin-top:1.25em}h1,h2,h3{font-weight:450;line-height:1.08;letter-spacing:-.055em}h1{font-size:clamp(54px,7.3vw,114px)}h2{font-size:clamp(36px,4.25vw,68px)}h3{font-size:27px;letter-spacing:-.035em;line-height:1.2}em{font-style:normal;color:var(--accent)}p{max-width:65ch}ul,ol{margin:0;padding:0;list-style:none}.container{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}.section{padding-block:clamp(76px,8.5vw,140px)}.mono{font-family:var(--mono);font-size:10px;line-height:1.65;letter-spacing:.055em;text-transform:uppercase;font-weight:400}.small{font-size:13px}.muted,.text-muted{color:var(--muted)}.large-copy{font-size:clamp(22px,2.3vw,32px);letter-spacing:-.025em;line-height:1.45}.icon{width:23px;height:23px;flex-shrink:0;transition:transform .45s var(--ease)}.icon-up{transform:rotate(-45deg)}.text-link{display:inline-flex;align-items:center;gap:18px;font-size:14px;line-height:1.4;padding:12px 0;border-bottom:1px solid var(--line);transition:color .25s}.text-link:hover{color:var(--accent)}.text-link:hover .icon{transform:translate(4px,-4px) rotate(-45deg)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;min-height:54px;padding:15px 21px;font-size:13px;font-weight:500;line-height:1.35;position:relative;isolation:isolate;transition:background .3s,color .3s,box-shadow .3s;overflow:hidden}.button .icon{width:20px;height:20px}.button-solid{background:var(--accent);color:var(--accent-ink)}.button-solid:before{content:'';position:absolute;inset:0;background:#f5ffd0;transform:translateY(102%);transition:transform .45s var(--ease);z-index:-1}.button-solid:hover:before{transform:translateY(0)}.button:hover .icon{transform:translateX(4px)}.button-text{padding-left:0;padding-right:0;border-bottom:1px solid var(--line);background:none;gap:35px}.button-text:hover{color:var(--accent)}.round-arrow{border:1px solid var(--line);width:52px;height:52px;display:grid;place-items:center;border-radius:50%;transition:background .3s,border .3s,transform .4s var(--ease)}.round-arrow .icon{width:22px}.eyebrow{display:flex;gap:16px;align-items:center;font:400 10px/1.5 var(--mono);letter-spacing:.04em;text-transform:uppercase}.index{color:var(--accent);flex-shrink:0}.tiny-cross{font:400 23px/1 var(--mono);color:var(--muted)}.live-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px #e1ee9610;margin-right:8px;vertical-align:middle}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;margin:-1px;padding:0;border:0}.skip-link{position:fixed;top:-80px;left:24px;padding:14px 22px;background:var(--accent);color:var(--bg);z-index:9999}.skip-link:focus{top:15px}.paper-section{background:var(--paper);color:var(--paper-ink);--line:var(--paper-line);--muted:var(--paper-muted);--accent:#586438}.paper-section .index{color:#667044}.paper-section a:focus-visible,.paper-section button:focus-visible,.paper-section summary:focus-visible{outline-color:#34402a}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:11%}.two-column .eyebrow{margin-bottom:30px}.two-column h2{font-size:clamp(35px,3.6vw,56px)}
/* Header */
.site-header{height:92px;position:sticky;top:0;z-index:100;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;background:#151914f5;border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.brand{display:inline-flex;gap:10px;align-items:center}.brand-mark{width:30px;height:30px;color:var(--accent);flex-shrink:0}.wordmark{font-size:25px;font-weight:750;letter-spacing:-1.25px}.desktop-nav{display:flex;gap:30px;margin-left:auto;margin-right:6.5%}.desktop-nav a{font-size:12px;position:relative;line-height:2}.nav-underline{position:absolute;height:1px;left:0;bottom:-2px;background:var(--accent);width:100%;transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}.desktop-nav a:hover .nav-underline,.desktop-nav a[aria-current] .nav-underline{transform:scaleX(1)}.header-actions{display:flex;align-items:center;gap:28px}.header-contact{display:flex;gap:15px;font-size:12px;color:var(--accent);align-items:center}.header-contact .icon{width:18px}.menu-toggle{height:42px;display:flex;gap:16px;align-items:center;font-size:12px;padding:0}.menu-glyph{width:34px;height:34px;display:flex;flex-direction:column;justify-content:center;align-items:center;border:1px solid #49523c;gap:5px;transition:background .3s}.menu-glyph i{height:1px;width:13px;background:var(--ink);transition:scale .3s}.menu-toggle:hover .menu-glyph{background:var(--surface-2)}.menu-toggle:hover i:last-child{scale:.55 1}.reading-progress{position:absolute;left:0;bottom:-1px;height:1px;width:100%;background:var(--accent);transform:scaleX(0);transform-origin:left}.navigation-scene{border:0;color:var(--bg);background:var(--paper);max-width:none;max-height:none;width:100%;height:100dvh;inset:0;padding:0;margin:0;z-index:1000;overflow-y:auto}.navigation-scene::backdrop{background:#111b}.navigation-scene[open]{animation:nav-open .6s var(--ease) both}.navigation-scene.is-closing{animation:nav-close .35s var(--ease) both}@keyframes nav-open{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0)}}@keyframes nav-close{to{clip-path:inset(0 0 100% 0)}}.navigation-scene a:focus-visible,.navigation-scene button:focus-visible{outline-color:#5a6e30}.menu-head{height:92px;margin:0 var(--gutter);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--paper-line)}.menu-head .brand-mark{color:var(--bg)}.menu-close{display:flex;gap:20px;font-size:13px;align-items:center;padding:10px 0 10px 20px}.menu-close>span{font-size:34px;font-weight:300;line-height:1}.menu-body{display:grid;grid-template-columns:62% 38%;min-height:calc(100dvh - 166px);padding-inline:var(--gutter)}.menu-links{padding:35px 55px 35px 0;display:flex;flex-direction:column;justify-content:center}.menu-links>a{display:flex;align-items:center;gap:32px;border-bottom:1px solid var(--paper-line);padding:12px 0;transition:color .3s}.menu-links>a:first-child{border-top:1px solid var(--paper-line)}.menu-index{color:#6a755b;min-width:15px}.menu-name{font-size:clamp(32px,4.7vw,76px);line-height:1.2;font-weight:450;letter-spacing:-.055em}.menu-links .icon{margin-left:auto;width:34px;height:34px;opacity:0;transform:translate(-15px,15px) rotate(-45deg)}.menu-links>a:hover{color:#53622e}.menu-links>a:hover .icon{opacity:1;transform:rotate(-45deg)}.menu-aside{border-left:1px solid var(--paper-line);padding:30px 0 25px 45px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden}.menu-sculpture{height:220px;position:relative;perspective:700px;margin:20px 0 45px}.menu-sculpture>div{position:absolute;width:210px;height:180px;border:12px solid #626e4b;border-radius:40px 40px 0 0;left:50%;top:10px;transform:translateX(-50%) rotateX(40deg) rotateY(-30deg) rotateZ(-25deg) translateZ(calc(var(--i)*19px));box-shadow:4px 6px 0 #d5d7bf,inset 3px 4px 0 #e8e8d9;transition:transform 1s var(--ease);opacity:calc(.55 + var(--i)*.07)}.menu-aside:hover .menu-sculpture>div{transform:translateX(-50%) rotateX(40deg) rotateY(-25deg) rotateZ(-25deg) translateZ(calc(var(--i)*29px))}.menu-caption{font-size:clamp(26px,2.6vw,43px);letter-spacing:-.035em;line-height:1.15;min-height:100px;max-width:360px}.menu-aside-foot{display:flex;justify-content:space-between;align-items:end;margin-top:55px;color:#617052}.menu-bottom{height:74px;margin-inline:var(--gutter);border-top:1px solid var(--paper-line);display:flex;align-items:center;justify-content:space-between;font-size:12px;gap:16px}.menu-bottom>a{display:flex;align-items:center;gap:30px}.menu-bottom .icon{width:17px}
/* Home: the span */
.home-hero{min-height:760px;height:calc(100svh - 92px);max-height:990px;position:relative;display:flex;flex-direction:column;isolation:isolate;overflow:hidden}.hero-topline{display:flex;justify-content:space-between;padding-top:32px;position:relative;z-index:3;color:#c9ccbd}.hero-topline>.mono{font-size:9px}.hero-location{color:var(--muted)}.hero-main{position:relative;z-index:2;margin-top:auto;padding-top:110px;pointer-events:none}.hero-main h1{font-size:clamp(58px,7.55vw,118px);line-height:1.02;letter-spacing:-.066em;font-weight:450}.hero-main h1>span{display:block}.hero-main h1>span:first-child{animation:hero-rise 1.1s .05s var(--ease) both}.hero-main h1>span:last-child{animation:hero-rise 1.1s .16s var(--ease) both}.hero-main h1 em{color:var(--accent)}.hero-copy{margin-top:36px;max-width:480px;pointer-events:auto;animation:hero-rise 1.1s .3s var(--ease) both}.hero-copy>p{font-size:16px;color:#b6bead;line-height:1.75}.hero-actions{margin-top:30px;display:flex;gap:25px;align-items:center}.hero-actions .button-solid{min-width:218px}.hero-actions .button-text{font-size:12px;gap:20px}.hero-bottom{display:flex;justify-content:space-between;align-items:end;padding-top:75px;padding-bottom:32px;position:relative;z-index:3}.scroll-link{display:flex;gap:12px;align-items:center;color:#b8c0af}.scroll-link>.mono{font-size:9px}.scroll-icon{display:grid;place-items:center;width:28px;height:28px;border:1px solid #5c6750;border-radius:50%;font-size:12px}.hero-edition{text-align:right;color:#a1ab95;font-size:8px}.span-scene{position:relative;min-height:350px;overflow:hidden}.hero-scene{position:absolute;inset:32px -7% 90px auto;width:67%;min-height:0;z-index:0}.span-scene canvas{position:absolute;inset:0;width:100%;height:100%;display:block;transition:opacity 1s;opacity:0}.span-scene.has-webgl canvas{opacity:1}.span-scene.has-webgl .scene-fallback{opacity:0}.scene-fallback{position:absolute;inset:0;perspective:1000px;transition:opacity .3s}.scene-fallback i{display:block;position:absolute;width:55%;height:45%;top:28%;left:27%;border:23px solid #9ca86b;border-bottom-width:26px;border-radius:75px 75px 25px 25px;transform:rotateX(32deg) rotateY(-34deg) rotateZ(-25deg) translateZ(calc(var(--i)*31px));box-shadow:5px 10px 0 #4a5535,inset 5px 8px 0 #414c30;opacity:calc(.38 + var(--i)*.12)}.scene-registration{position:absolute;color:#5c6b48;z-index:2}.scene-registration-a{top:23%;left:17%}.scene-registration-b{bottom:11%;right:16%}.scene-caption{position:absolute;bottom:10%;right:16%;display:flex;flex-direction:column;gap:4px;font-size:8px;color:#97a384;z-index:2;text-align:right}.scene-caption span:last-child{font-size:7px;color:#6f7b5e}.motion-toggle{position:fixed;right:20px;bottom:20px;z-index:80;background:var(--bg);border:1px solid #70795b;border-radius:50%;width:34px;height:34px;display:grid;place-items:center;color:var(--accent);font-size:13px}.motion-toggle[hidden]{display:none}.trust-strip{min-height:137px;display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.trust-strip>.mono{color:var(--muted);font-size:8px;max-width:115px}.trust-strip>a{font-size:34px;letter-spacing:-1.5px;font-weight:600;line-height:1;display:flex;flex-direction:column;align-items:center;color:#d0d4c7}.trust-strip>a>span{font:400 7px/1 var(--mono);letter-spacing:.22em;margin-top:6px}.trust-strip .trust-mawzun{font-size:19px;letter-spacing:.12em;font-weight:400}.trust-strip .trust-rivet{font-weight:750;font-size:29px;letter-spacing:-1.5px}.trust-strip .trust-dental{font-weight:450;font-size:24px;letter-spacing:-1.5px;display:block}.trust-strip .trust-dental span{font:inherit;color:var(--muted);letter-spacing:inherit}.trust-divider{height:40px;border-left:1px solid var(--line)}.trust-strip>a:hover{color:var(--accent)}
/* Intro and discipline rows */
.perspective-section{display:grid;grid-template-columns:30% 70%;gap:0}.section-side{display:flex;flex-direction:column;justify-content:space-between}.small-span .brand-mark{width:88px;height:88px;color:#73805b}.perspective-copy h2{font-size:clamp(38px,4.6vw,74px);line-height:1.09;font-weight:450}.perspective-bottom{display:grid;grid-template-columns:1fr 1fr;gap:9%;max-width:800px;margin:45px 0 23px}.perspective-bottom p{font-size:15px;color:#adb7a3;line-height:1.8}.section-heading{display:grid;grid-template-columns:25% 1fr auto;gap:4%;align-items:start;margin-bottom:57px}.section-heading>.eyebrow{padding-top:8px;max-width:240px}.section-heading>p{font-size:13px;color:var(--muted);padding-top:7px;line-height:1.7}.section-heading>.button{align-self:end;white-space:nowrap}.section-heading h2{font-size:clamp(35px,4vw,62px)}.service-row{display:grid;grid-template-columns:9% 1fr 24% 55px;align-items:center;gap:25px;border-top:1px solid var(--line);padding:36px 0 38px;position:relative;transition:background .35s}.service-row:last-child{border-bottom:1px solid var(--line)}.service-row>.mono{align-self:start;margin-top:12px;color:var(--muted)}.service-row h3{font-size:clamp(32px,3.55vw,53px);font-weight:450;line-height:1.15}.service-row p{font-size:13px;line-height:1.65;max-width:370px;margin-top:13px;color:var(--muted)}.service-tags{display:flex;flex-direction:column;gap:6px;font-size:8px;color:var(--muted)}.service-row .round-arrow{border-color:#9da88a}.service-row:hover{padding-left:12px}.service-row:hover .round-arrow{background:var(--bg);color:var(--accent);transform:rotate(45deg);border-color:var(--bg)}.service-row:hover h3{color:#5a693d}.section-foot{display:flex;justify-content:space-between;align-items:center;margin-top:25px;color:var(--muted);font-size:8px}
/* Context */
.context-section{display:grid;grid-template-columns:40% 60%;align-items:center;gap:0}.context-intro{padding-right:60px}.context-intro .eyebrow{margin-bottom:30px}.context-intro>h2{font-size:clamp(35px,3.7vw,59px)}.context-intro>p{color:var(--muted);font-size:14px;line-height:1.8;margin:25px 0;max-width:330px}.context-intro>.button{font-size:12px}.context-map{border:1px solid #3d4832;background:#191f16;position:relative;overflow:hidden}.context-map:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#9da88904 1px,transparent 1px),linear-gradient(90deg,#9da88904 1px,transparent 1px);background-size:24px 24px;pointer-events:none}.map-header,.map-footer{display:flex;align-items:center;justify-content:space-between;position:relative;padding:17px 22px;font-size:8px;color:#9cac89}.map-header{border-bottom:1px solid #34402b}.map-body{display:flex;align-items:center;position:relative;min-height:270px;padding:30px 23px}.map-inputs{width:40%;min-width:150px}.map-inputs>button{padding:13px 10px;border:1px solid #3d4732;background:#1f271b;display:flex;align-items:center;gap:11px;margin:11px 0;font-size:11px}.map-inputs .icon{margin-left:auto;width:13px;height:13px;color:#6d7b5d}.map-small-icon{font:400 11px/1 var(--mono);color:var(--accent);display:grid;place-items:center;width:25px;height:25px;border:1px solid #4b5a3a;flex-shrink:0}.map-inputs small,.map-output small{display:block;font-size:7px;color:#a1b48a;margin-top:3px}.map-path{width:12%;height:190px;flex-shrink:0}.map-path svg{width:100%;height:100%;overflow:visible;fill:none;stroke:#637247;stroke-width:1}.map-path circle{fill:var(--accent);stroke:none;animation:map-pulse 3s infinite}.map-agent{border:1px solid #93a65e;width:24%;min-width:114px;aspect-ratio:1/1.1;background:#27341c;display:flex;align-items:center;justify-content:center;flex-direction:column;position:relative;box-shadow:0 0 40px #bdd98308}.map-agent .brand-mark{width:36px;height:36px;margin-bottom:15px}.map-agent>span{font-size:12px}.map-agent>small{font:400 5px/1.4 var(--mono);margin-top:6px;color:#b2c399;letter-spacing:.03em}.map-output{width:24%;display:flex;align-items:center}.map-output-line{height:1px;background:#71864b;flex:1;min-width:13px}.map-output>div{font-size:10px;text-align:center;flex:2}.map-check{display:grid;place-items:center;width:27px;height:27px;border:1px solid #546641;color:var(--accent);margin:0 auto 10px}.map-check .icon{width:16px;height:16px}.map-footer{border-top:1px solid #34402b;gap:10px;font-size:7px}.context-compact{margin-top:65px}.context-compact .map-body{justify-content:center;gap:0;max-width:1000px;margin:auto}.context-compact .map-inputs{max-width:320px}.context-compact .map-agent{max-width:185px}.context-compact .map-inputs>button{font-size:14px}.context-compact .map-inputs small{font-size:10px}.context-compact .map-agent>span{font-size:18px}.context-compact .map-agent>small{font-size:8px}.context-compact .map-output>div{font-size:16px}
/* Project artwork. Synthetic interfaces are labeled in the work pages. */
.work-section{border-top:1px solid var(--line)}.project-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:30px}.project-card{min-width:0}.project-card>a{display:block}.project-art{height:410px;overflow:hidden;position:relative;isolation:isolate;transition:filter .6s;display:block}.project-card:nth-child(even){padding-top:85px}.art-rivet{background:#593523;color:#f4ecd9}.art-brand{position:absolute;top:24px;left:27px;font-size:38px;font-weight:750;letter-spacing:-2px}.art-brand>span{font-size:13px;letter-spacing:0;vertical-align:top;margin-left:3px}.art-foot{position:absolute;bottom:20px;left:27px;color:#eee1c7;font-size:7px;letter-spacing:.14em}.rivet-ui{position:absolute;width:510px;height:320px;display:grid;grid-template-columns:85px 1fr;background:#f1f0e9;color:#282a24;top:98px;left:80px;transform:perspective(1100px) rotateX(8deg) rotateY(-12deg) rotateZ(-5deg);border:1px solid #1f261580;box-shadow:0 25px 60px #21110780;transition:transform .7s var(--ease);transform-origin:center}.ui-sidebar{background:#191c18;color:#818976;padding:20px 11px;font-size:7px;position:relative;display:flex;flex-direction:column;gap:20px}.ui-sidebar>b{color:#f0f0dc;font-size:19px;font-weight:700;font-style:italic;margin-bottom:6px}.ui-sidebar>span:first-of-type{color:#f9f4df}.ui-bottom{position:absolute;bottom:20px;left:10px;font:400 5px var(--mono)}.ui-main{padding:15px 19px}.ui-topbar{font-size:8px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d7d9cd;padding-bottom:12px}.ui-topbar i,.ui-row i{display:inline-block;width:4px;height:4px;border-radius:50%;background:#587344;margin-left:5px}.ui-greeting{padding:19px 0 16px}.ui-greeting>span{font-size:22px;letter-spacing:-.7px;display:block}.ui-greeting>small{font-size:7px;color:#758069;display:block;margin-top:4px}.ui-metrics{display:flex;justify-content:space-between;margin-bottom:15px;border-bottom:1px solid #d5d7ca;padding-bottom:14px}.ui-metrics>div{width:33%;border-right:1px solid #d5d7ca;padding-left:13px;display:flex;flex-direction:column}.ui-metrics>div:first-child{padding-left:0}.ui-metrics>div:last-child{border:0}.ui-metrics small{font-size:7px;color:#6d7263}.ui-metrics b{font-size:25px;letter-spacing:-1px;font-weight:500;line-height:1.2;margin:5px 0}.ui-metrics span{font-size:5px;color:#8b917e}.ui-chart{height:96px;display:flex;flex-direction:column}.ui-chart>div:first-child{display:flex;justify-content:space-between;font-size:7px;margin-bottom:10px}.ui-chart>div:first-child>span{font-size:6px;color:#879075}.bars{height:65px;display:flex;align-items:flex-end;gap:5px;border-bottom:1px solid #d7d9cc}.bars>i{flex:1;background:#b5bca6;border-radius:1px 1px 0 0;transition:scale .6s var(--ease)}.bars>i:nth-child(3n){background:#899779}.bars>i:nth-child(4n){background:#3d4934}.ui-row{display:flex;justify-content:space-between;font-size:5px;margin-top:12px}.art-dental{background:#afb7b8;color:#1f3436}.dental-word{position:absolute;left:27px;top:24px;font-size:32px;font-weight:550;letter-spacing:-1.5px}.dental-word>span{color:#f0f6ed;font-weight:400}.dental-ui{position:absolute;width:460px;height:300px;background:#eef0ec;top:108px;left:60px;padding:20px 23px;transform:perspective(1100px) rotateX(8deg) rotateY(-10deg) rotateZ(-5deg);box-shadow:0 20px 45px #203b3640;border:1px solid #6e898940;transition:transform .7s var(--ease);color:#324640}.dental-ui .ui-topbar{font-size:11px;color:#324640}.dental-ui .ui-topbar>span{font-size:6px}.dental-calendar{display:grid;grid-template-columns:35px 1fr 1fr;gap:12px;height:221px;padding-top:17px}.time-axis{display:flex;flex-direction:column;justify-content:space-between;font:400 6px var(--mono);padding-top:20px;padding-bottom:15px;color:#72877a}.schedule-col{position:relative;background:repeating-linear-gradient(to bottom,transparent 0,transparent 39px,#dce2d8 39px,#dce2d8 40px)}.schedule-col>small{font:400 5px var(--mono);letter-spacing:.05em;color:#809389}.appointment{position:absolute;left:0;right:0;padding:11px 10px;border-left:2px solid #658c78;display:flex;flex-direction:column;gap:4px;background:#d7e3d8;border-radius:1px}.appointment>b{font-size:7px;font-weight:500}.appointment>span{font-size:5px;color:#607a6c}.ap1{top:32px;height:59px}.ap2{top:118px;height:73px;background:#dee4cf;border-color:#91a070}.ap3{top:68px;height:77px;background:#d4dfe0;border-color:#6b8f94}.ap4{top:154px;height:49px}.art-dental .art-foot{color:#273c38}.art-advisory{background:#e9e5da;color:#2e3539}.advisory-art{position:absolute;inset:0;padding:32px;display:flex;flex-direction:column;align-items:center;justify-content:center}.advisory-art>.mono{position:absolute;left:28px;top:24px;font-size:8px;color:#6c736d}.three-mark{font-size:145px;letter-spacing:-9px;line-height:.9;font-weight:500;position:relative}.three-mark>span:first-child{font-weight:650}.advisory-name{font-size:11px;letter-spacing:.38em;margin-left:10px;margin-top:20px}.advisory-line{position:absolute;bottom:-2px;right:-30px;width:17px;height:125px;background:#647386;transform:skewY(-20deg)}.advisory-art-foot{position:absolute;bottom:27px;left:28px;font-size:9px;color:#737a70;line-height:1.7}.art-mawzun{background:#252d2a}.mawzun-art{position:absolute;inset:0;padding:32px;display:flex;flex-direction:column;align-items:center;justify-content:center}.mawzun-art>.mono:first-child{position:absolute;left:28px;top:24px;font-size:8px;color:#abb5a6}.mawzun-symbol{height:140px;width:140px;position:relative;margin-bottom:20px;transform:rotate(-30deg)}.mawzun-symbol>i{position:absolute;inset:calc(var(--i)*8px);border:1px solid #baa977;transform:translateX(calc(var(--i)*6px))}.mawzun-word{letter-spacing:.28em;font-size:29px;font-weight:400;margin-left:7px}.mawzun-art>.mono:last-of-type{color:#b9a97e;font-size:7px;letter-spacing:.6em;margin-top:7px}.art-mawzun .advisory-art-foot{color:#a1ac9a}.project-card-meta{display:flex;align-items:start;gap:12px;padding:23px 0 0}.project-card-meta h3{font-size:24px;font-weight:500}.project-card-meta p{color:var(--muted);font-size:11px;line-height:1.7;margin-top:5px}.project-status{font-size:7px;color:var(--muted);border:1px solid var(--line);padding:5px 7px;margin-left:auto;margin-top:4px}.project-card-meta>.icon{margin-top:7px;margin-left:8px;width:20px;height:20px}.project-card:hover .project-card-meta>.icon{transform:translate(4px,-4px) rotate(-45deg)}.work-disclosure{display:flex;gap:35px;justify-content:space-between;border-top:1px solid var(--line);padding-top:21px;margin-top:42px;color:var(--muted)}.work-disclosure>.mono{font-size:8px;flex-shrink:0}.work-disclosure>p{font-size:11px;max-width:435px;line-height:1.7}
/* Method teaser and footer */
.method-teaser{display:grid;grid-template-columns:1fr 1fr;gap:13%;border-top:1px solid var(--line)}.method-teaser .eyebrow{margin-bottom:32px}.method-teaser h2{font-size:clamp(37px,4.3vw,66px);line-height:1.1}.method-teaser .button{margin-top:30px}.method-steps>div{border-top:1px solid var(--line);padding:27px 0;display:flex;gap:26px}.method-steps>div:last-child{border-bottom:1px solid var(--line)}.method-steps>div>.mono{color:var(--accent);padding-top:5px}.method-steps h3{font-size:24px;letter-spacing:-.035em}.method-steps p{color:var(--muted);font-size:13px;line-height:1.8;margin-top:12px}.closing{border-top:1px solid var(--line);padding-block:55px 65px}.closing-top{display:flex;justify-content:space-between;gap:40px;align-items:start}.closing-top>p{font-size:12px;color:var(--muted);line-height:1.8}.closing-link{display:flex;align-items:center;justify-content:space-between;margin-top:60px}.closing-link>span:first-child{font-size:clamp(62px,9.8vw,158px);line-height:.99;letter-spacing:-.065em;font-weight:450}.closing-arrow{border:1px solid #6f8054;border-radius:50%;width:clamp(75px,13vw,190px);height:clamp(75px,13vw,190px);display:grid;place-items:center;transition:background .4s,border-color .4s}.closing-arrow>.icon{width:clamp(30px,5.5vw,85px);height:clamp(30px,5.5vw,85px);stroke-width:.8;transition:transform .6s var(--ease)}.closing-link:hover .closing-arrow{background:var(--accent);color:var(--bg);border-color:var(--accent)}.closing-link:hover .closing-arrow>.icon{transform:rotate(0deg)}.site-footer{border-top:1px solid var(--line);padding-top:42px;overflow:hidden}.footer-top{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:40px;align-items:start}.footer-top .brand{gap:12px}.footer-top .brand>.mono{font-size:7px;line-height:1.65;color:#a8b19c}.footer-top .brand-mark{width:36px;height:36px}.footer-top>p{font-size:12px;line-height:1.7;color:var(--muted)}.footer-top nav{display:grid;grid-template-columns:1fr 1fr;gap:7px 20px;font-size:11px}.footer-top nav a:hover{color:var(--accent)}.footer-location{text-align:right;font-size:8px;color:#a6b196}.footer-word{font-size:clamp(72px,18.7vw,304px);font-weight:700;letter-spacing:-.075em;line-height:.98;margin-top:58px;margin-left:-.015em;white-space:nowrap;color:#b7c1a6;position:relative;user-select:none}.footer-word>span{font-size:.16em;vertical-align:top;display:inline-block;margin-top:.7em;margin-left:.4em;font-family:var(--mono);font-weight:300}.footer-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px;padding:23px 0;font:400 8px/1.5 var(--mono);color:#a5ae99;margin-top:30px}.footer-bottom>div{display:flex;align-items:center;gap:24px}.footer-bottom a:hover{color:var(--ink)}.back-top{color:var(--accent);font-size:20px;padding:3px 8px;margin:-5px 0}.footer-note{margin-left:auto;margin-right:25px}
/* Interior pages */
.sub-hero{padding-top:38px;padding-bottom:64px}.sub-hero-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:70px}.sub-coordinate{font-size:8px;color:var(--quiet)}.sub-hero-content{display:grid;grid-template-columns:1.45fr 1fr;gap:10%;align-items:end}.sub-hero h1{font-size:clamp(48px,6.4vw,100px);line-height:1.045;letter-spacing:-.06em;font-weight:450;max-width:1000px}.sub-intro{font-size:16px;line-height:1.8;color:#b3bba8;max-width:420px;margin-bottom:4px}.sub-hero:has(h1 br) .sub-hero-content{grid-template-columns:1.65fr 1fr;gap:7%}.sub-hero:has(h1 br) h1{font-size:clamp(46px,5.6vw,86px)}.capability-band{display:flex;justify-content:space-between;align-items:center;padding-block:38px;margin-top:15px;border-top:1px solid var(--line)}.capability-band .mono{font-size:9px}.band-arrow{color:var(--accent);font-size:27px}.capability-note{display:grid;grid-template-columns:1fr 1fr;gap:15%;margin-top:90px;align-items:start}.capability-note h2{font-size:clamp(33px,3.4vw,52px)}.capability-note p{font-size:17px;color:var(--paper-muted);line-height:1.8}.use-case-list>div{border-top:1px solid var(--line);padding:25px 0}.use-case-list h3{font-size:25px}.use-case-list p{font-size:14px;color:var(--muted);margin-top:10px;line-height:1.8}.use-case-list>.small{font-size:11px;margin-top:20px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:grid;grid-template-columns:55px 1fr 28px;align-items:center;gap:18px;padding:29px 0;cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>.mono{font-size:9px;color:var(--muted)}.faq-list h3{font-size:24px;letter-spacing:-.035em}.faq-list summary>.icon{width:22px;transition:transform .3s}.faq-list details[open] summary>.icon{transform:rotate(45deg)}.faq-answer{padding:0 75px 33px;font-size:16px;color:var(--muted);line-height:1.8;max-width:1000px}.service-subnav{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid var(--line);padding-top:25px;padding-bottom:25px;font-size:12px}.service-subnav>div{display:flex;gap:20px;color:var(--muted)}.service-subnav .mono{font-size:8px}.service-visual{margin-block:25px 85px}.service-visual .map-body{max-width:950px;margin:auto;min-height:340px;padding-block:50px}.service-visual .map-inputs>button{font-size:14px;padding:15px}.service-visual .map-inputs small{font-size:9px}.service-visual .map-agent{max-width:175px}.service-visual .map-agent>span{font-size:17px}.service-visual .map-agent>small{font-size:7px}.systems-visual{display:grid;grid-template-columns:1fr 10% 1fr;gap:0;background:#222b1d;border:1px solid #3e4e32;padding:50px 70px;min-height:380px}.systems-column{position:relative;min-height:280px}.systems-column>.mono{color:#aab99b;font-size:8px}.loose-note{position:absolute;padding:15px 20px;background:#303829;border:1px solid #616d50;width:255px;font-size:18px;color:#dae0ce;box-shadow:0 15px 40px #0c100b40}.loose-note small{display:block;font:400 8px var(--mono);margin-top:9px;color:#abb899}.note-a{top:45px;left:0;transform:rotate(-5deg)}.note-b{top:116px;left:30px;transform:rotate(4deg)}.note-c{top:185px;left:0;transform:rotate(-3deg)}.systems-bridge{display:grid;place-items:center;color:var(--accent)}.systems-bridge>.icon{width:35px;height:35px}.unified{border:1px solid #869b62;background:#303e24;padding:20px 25px;display:flex;flex-direction:column;justify-content:space-between;gap:20px}.unified>.brand-mark{width:38px;height:38px}.unified b{font-size:24px;letter-spacing:-.035em;font-weight:450}.unified p{font-size:13px;line-height:1.7;color:#b5c3a1;margin-top:8px}.state-line{display:flex;justify-content:space-between;gap:12px;font:400 7px var(--mono);padding-top:15px;border-top:1px solid #667454}.design-visual{background:#dfe3d6;color:#27301f;position:relative;min-height:450px;padding:35px 55px;overflow:hidden}.design-visual>.mono{font-size:8px;color:#63734f}.design-type{font-size:clamp(90px,11vw,170px);line-height:.88;letter-spacing:-.065em;margin-top:42px;position:relative;z-index:2}.design-type em{color:#6a7a4f}.design-controls{font:400 8px var(--mono);display:flex;gap:35px;margin-top:28px}.design-visual>.brand-mark{position:absolute;right:55px;top:85px;width:250px;height:250px;color:#b5be9d;transform:rotate(-15deg)}.detail-steps>div{display:flex;gap:24px;padding:27px 0;border-top:1px solid var(--line)}.detail-steps>div:last-child{border-bottom:1px solid var(--line)}.detail-steps>div>.mono{color:var(--muted);font-size:9px;padding-top:5px;flex-shrink:0}.detail-steps h3{font-size:26px}.detail-steps p{font-size:15px;color:var(--muted);line-height:1.8;margin-top:12px}.deliverables>div{display:flex;align-items:center;gap:18px;border-top:1px solid var(--line);padding:20px 0;font-size:18px}.deliverables>div>.icon{width:19px;height:19px;color:var(--accent)}.deliverables>p{margin-top:27px;font-size:14px;line-height:1.9;color:var(--muted)}.deliverables>.button,.deliverables>.text-link{margin-top:20px}.example-callout{margin-bottom:70px;padding-top:42px;padding-bottom:45px;background:#26311e;border-block:1px solid #4a5c33}.example-callout>.mono{color:var(--accent);font-size:9px}.example-callout>p{font-size:clamp(24px,2.6vw,39px);line-height:1.45;letter-spacing:-.025em;max-width:1020px;margin:25px 0}.example-callout>.button{border-color:#6b7a51}.related-services{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:80px}.related-services>.mono{grid-column:1/-1;color:var(--muted)}.related-services>a{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 0}.related-services h3{font-size:30px}.related-services>a:hover{color:var(--accent)}
/* Work index & case study */
.work-index{padding-bottom:75px}.filter-bar{border-block:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:40px}.filter-bar>div{display:flex;gap:32px}.filter-bar button{display:flex;gap:16px;padding:21px 0;font-size:13px;border-bottom:2px solid transparent;position:relative;bottom:-1px}.filter-bar button>span{font:400 8px var(--mono);color:var(--muted)}.filter-bar button[aria-pressed=true]{color:var(--accent);border-bottom-color:var(--accent)}.filter-bar>.mono{font-size:8px;color:var(--muted)}.work-index-grid{row-gap:55px}.work-index-grid .project-card:nth-child(even){padding-top:0}.work-index-grid .project-art{height:425px}.project-card[hidden]{display:none}.case-meta{display:grid;grid-template-columns:1fr 1.4fr 1.3fr auto;gap:30px;border-top:1px solid var(--line);padding-top:22px;padding-bottom:40px}.case-meta>div{display:flex;flex-direction:column;gap:10px}.case-meta .mono{font-size:8px;color:var(--muted)}.case-meta b{font-size:13px;font-weight:450}.case-meta .text-link{font-size:12px;padding:10px 0;gap:22px}.case-hero-visual{margin-bottom:90px}.art-large{height:600px}.art-large .rivet-ui{width:850px;height:515px;top:155px;left:28%;grid-template-columns:140px 1fr;transform:perspective(1300px) rotateX(12deg) rotateY(-12deg) rotateZ(-7deg)}.art-large .art-brand{top:45px;left:50px;font-size:60px}.art-large .art-foot{bottom:35px;left:50px;font-size:10px}.art-large .ui-sidebar{font-size:12px;padding:30px 22px;gap:32px}.art-large .ui-sidebar>b{font-size:36px}.art-large .ui-main{padding:25px 30px}.art-large .ui-topbar{font-size:13px;padding-bottom:17px}.art-large .ui-greeting{padding:25px 0}.art-large .ui-greeting>span{font-size:37px}.art-large .ui-greeting>small{font-size:11px}.art-large .ui-metrics{padding-bottom:22px;margin-bottom:20px}.art-large .ui-metrics small{font-size:11px}.art-large .ui-metrics b{font-size:43px}.art-large .ui-metrics span{font-size:8px}.art-large .ui-chart{height:150px}.art-large .ui-chart>div:first-child{font-size:12px}.art-large .ui-chart>div:first-child>span{font-size:10px}.art-large .bars{height:110px;gap:7px}.art-large .ui-row{font-size:8px;margin-top:20px}.art-large .ui-bottom{font-size:8px;left:22px}.art-large .dental-word{font-size:55px;top:45px;left:50px}.art-large .dental-ui{width:760px;height:460px;left:31%;top:150px;padding:32px 40px}.art-large .dental-calendar{height:355px;grid-template-columns:50px 1fr 1fr;gap:20px;padding-top:28px}.art-large .dental-ui .ui-topbar{font-size:18px}.art-large .dental-ui .ui-topbar>span{font-size:9px}.art-large .time-axis{font-size:10px;padding-top:25px;padding-bottom:25px}.art-large .schedule-col{background-size:100% 60px}.art-large .schedule-col>small{font-size:8px}.art-large .appointment{padding:15px 15px;gap:8px}.art-large .appointment>b{font-size:12px}.art-large .appointment>span{font-size:9px}.art-large .ap1{top:45px;height:83px}.art-large .ap2{top:175px;height:110px}.art-large .ap3{top:103px;height:112px}.art-large .ap4{top:240px;height:72px}.art-large .three-mark{font-size:230px}.art-large .advisory-line{height:210px;width:22px;right:-48px}.art-large .advisory-name{font-size:18px;margin-top:35px}.art-large .advisory-art-foot{font-size:12px;left:40px;bottom:35px}.art-large .advisory-art>.mono,.art-large .mawzun-art>.mono:first-child{top:35px;left:40px;font-size:10px}.art-large .mawzun-symbol{width:200px;height:200px;margin-bottom:40px}.art-large .mawzun-word{font-size:43px}.art-large .mawzun-art>.mono:last-of-type{font-size:10px}.visual-caption{font-size:7px;color:var(--muted);display:flex;justify-content:space-between;gap:30px;padding-top:16px}.case-story{display:grid;grid-template-columns:27% 1fr;gap:17%}.case-story>aside>p{font-size:12px;color:var(--muted);margin-top:30px;line-height:1.9}.case-story>div>section{margin-bottom:65px;position:relative}.case-story>div>section:last-child{margin-bottom:0}.case-story>div>section>.mono{position:absolute;left:-42px;top:11px;color:#849172;font-size:9px}.case-story h2{font-size:42px}.case-story>div>section>p{font-size:18px;line-height:1.8;margin-top:22px;letter-spacing:-.015em;color:var(--muted)}.next-project{padding-block:30px 45px;border-top:1px solid var(--line)}.next-project>.mono{color:var(--muted);font-size:8px}.next-project>a{display:flex;justify-content:space-between;align-items:center;padding:25px 0}.next-project>a>span{font-size:clamp(35px,5.5vw,85px);letter-spacing:-.055em}.next-project>a>.icon{width:45px;height:45px}.next-project>a:hover{color:var(--accent)}
/* Approach */
.approach-intro{display:grid;grid-template-columns:2fr 1fr;align-items:center;gap:11%;padding-top:30px;padding-bottom:75px}.approach-spectrum{display:flex;align-items:center;gap:25px}.approach-spectrum>span{font:400 8px var(--mono);color:var(--muted)}.approach-spectrum>div{display:flex;align-items:center;flex:1;justify-content:space-between}.approach-spectrum i{display:block;width:8px;height:55px;background:#798965;transform:skew(-20deg)}.approach-spectrum i:nth-child(2){height:68px;background:#899767}.approach-spectrum i:nth-child(3){height:81px;background:#a0ad72}.approach-spectrum i:nth-child(4){height:94px;background:#bbc984}.approach-spectrum i:nth-child(5){height:94px;background:#d3e494}.approach-spectrum i:nth-child(6){height:81px;background:#e1ee96}.approach-spectrum i:nth-child(7){height:68px;background:#e1ee96}.approach-spectrum i:nth-child(8){height:55px;background:#e1ee96}.approach-intro>p{font-size:14px;color:var(--muted);line-height:1.9}.approach-chapters{padding-top:30px;padding-bottom:60px}.approach-chapter{padding:65px 0;display:grid;grid-template-columns:14% 1fr 20%;gap:5%;border-bottom:1px solid var(--paper-line);align-items:start}.approach-chapter:last-child{border-bottom:0}.chapter-num{font-size:clamp(50px,5.5vw,87px);line-height:1;color:#929e7e;font-weight:400;letter-spacing:-.055em}.approach-chapter h2{font-size:clamp(42px,4.7vw,73px);margin-bottom:35px}.approach-chapter h3{font-size:25px;margin-bottom:15px}.approach-chapter p{font-size:15px;line-height:1.9;max-width:620px;color:var(--paper-muted)}.chapter-outputs{display:flex;gap:25px;flex-wrap:wrap;margin-top:26px;color:#768364;font-size:8px}.chapter-outputs>span{border-top:1px solid #adb89a;padding-top:8px}.chapter-glyph{height:150px;width:150px;position:relative;margin-top:55px;justify-self:end}.chapter-glyph>i{position:absolute;inset:calc(var(--i)*9px);border:1px solid #86936c;transform:rotate(calc(var(--i)*8deg))}.glyph-02>i{transform:translate(calc(var(--i)*-6px),calc(var(--i)*4px));border-radius:50%;inset:calc(var(--i)*7px)}.glyph-03>i{transform:rotate(-35deg) translate(calc(var(--i)*-8px),calc(var(--i)*-5px));border-width:5px;inset:12px}.glyph-04>i{border-radius:0;transform:rotate(calc(var(--i)*4deg))}.principles-strip{display:flex;justify-content:space-between;gap:35px;border-top:1px solid var(--line);padding-top:30px;padding-bottom:75px}.principles-strip>span{font-size:17px;letter-spacing:-.025em}
/* Company */
.company-feature{display:grid;grid-template-columns:1.2fr 1fr;gap:0;margin-top:20px;margin-bottom:100px}.company-lens{min-height:480px;background:#3a482c;position:relative;overflow:hidden;isolation:isolate}.lens-disc{position:absolute;left:12%;top:12%;height:76%;aspect-ratio:1;border-radius:50%;background:#c8d68f;box-shadow:inset -28px -14px 0 #b1c477,0 0 0 1px #97ac62}.lens-grid{position:absolute;inset:0;background-image:linear-gradient(#baca8535 1px,transparent 1px),linear-gradient(90deg,#baca8535 1px,transparent 1px);background-size:42px 42px;mix-blend-mode:multiply}.lens-ring{position:absolute;top:calc(12% + var(--i)*12px);left:calc(16% + var(--i)*25px);height:76%;aspect-ratio:1;border:1px solid #192b0e;border-radius:50%;transform:rotateX(15deg) rotateY(40deg)}.lens-label{position:absolute;left:26px;bottom:25px;color:#d0dba8;font-size:8px}.lens-cross{position:absolute;right:25px;top:25px;font:300 30px var(--mono);color:#d3dfab}.company-feature-copy{background:#222b1c;padding:58px 45px;display:flex;flex-direction:column;justify-content:center}.company-feature-copy>.mono{color:var(--accent);font-size:9px;margin-bottom:35px}.company-feature-copy h2{font-size:clamp(35px,3.4vw,52px);line-height:1.13;margin-bottom:27px}.company-feature-copy p{font-size:14px;line-height:1.9;color:#b2bfa2}.company-body>.large-copy{font-size:26px;line-height:1.5;margin-bottom:24px;color:var(--paper-ink)}.company-body>p{font-size:15px;color:var(--muted);line-height:1.8}.founder-signature{margin-top:40px;padding-top:25px;border-top:1px solid var(--line);display:flex;gap:18px;align-items:center}.founder-monogram{width:53px;height:53px;border:1px solid #909d7b;background:#dbe0cf;display:grid;place-items:center;font:400 18px var(--mono);color:#606f48}.founder-signature>div{display:flex;flex-direction:column;gap:5px}.founder-signature strong{font-weight:500;font-size:16px}.founder-signature>div>span{font-size:11px;color:var(--muted)}.beliefs>div{display:grid;grid-template-columns:8% 1fr 1fr;gap:35px;padding:30px 0;border-top:1px solid var(--line);align-items:start}.beliefs>div:last-child{border-bottom:1px solid var(--line)}.beliefs .mono{font-size:9px;color:var(--accent);margin-top:4px}.beliefs h3{font-size:28px}.beliefs p{font-size:14px;color:var(--muted);line-height:1.8}.company-location{border-top:1px solid var(--line);padding-top:35px;padding-bottom:80px;display:flex;flex-direction:column}.company-location>.mono{font-size:8px;color:var(--muted)}.company-location>div{display:flex;justify-content:space-between;align-items:center;margin:25px 0}.company-location h2{font-size:clamp(85px,15vw,230px);font-weight:450;color:#b7c1a0;letter-spacing:-.065em}.company-location p{font-size:22px;line-height:1.5;letter-spacing:-.03em;padding-right:40px}.company-location>.mono:last-child{text-align:right;color:#869671}
/* Perspectives */
.essay-index{padding-bottom:95px}.essay-index article{border-top:1px solid var(--line)}.essay-index article:last-child{border-bottom:1px solid var(--line)}.essay-index article>a{display:grid;grid-template-columns:16% 1fr 165px 30px;gap:35px;align-items:center;padding:40px 0}.essay-index-no{align-self:start;display:flex;flex-direction:column;gap:50px;color:var(--accent);font-size:9px}.essay-index-no>span{color:var(--muted);font-size:8px}.essay-index h2{font-size:clamp(30px,3vw,46px);max-width:650px;transition:color .3s}.essay-index article>a:hover h2{color:var(--accent)}.essay-index p{font-size:14px;line-height:1.8;color:var(--muted);margin-top:15px;max-width:500px}.essay-index article>a>div:nth-child(2)>.mono{display:block;color:var(--quiet);font-size:8px;margin-top:24px}.essay-thumbnail{height:150px;background:#38452a;display:grid;place-items:center;overflow:hidden;position:relative}.essay-thumbnail>.brand-mark{width:90px;height:90px;color:#bacd81;transform:rotate(-20deg);transition:transform .8s var(--ease)}.essay-index article:hover .essay-thumbnail>.brand-mark{transform:rotate(0)}.thumb-1{background:#363e36}.thumb-1>span{font-size:160px;line-height:1;font-weight:300;transform:rotate(-30deg);color:#aec2a1}.thumb-2{background:#524a35}.thumb-2>span{font-size:70px;letter-spacing:-20px;transform:rotate(-15deg);color:#d6c38e;font-family:var(--mono)}.essay-breadcrumb{padding-top:35px;display:flex;justify-content:space-between;align-items:center;font-size:12px}.essay-breadcrumb>.mono{font-size:8px;color:var(--muted)}.essay-page>.sub-hero{padding-top:30px}.essay-page .sub-hero-meta{display:none}.essay-page .sub-hero-content{display:block!important;padding-top:50px}.essay-page .sub-hero h1{font-size:clamp(47px,6.5vw,100px)}.essay-page .sub-intro{margin-top:30px;max-width:660px;font-size:20px;line-height:1.6}.essay-layout{display:grid;grid-template-columns:25% 1fr;gap:10%;padding-top:35px;padding-bottom:60px;border-top:1px solid var(--line)}.essay-layout>aside{position:sticky;top:130px;align-self:start}.essay-layout>aside>.mono{color:var(--muted);font-size:9px}.essay-toc{display:flex;flex-direction:column;gap:14px;margin-top:45px;padding-right:20px}.essay-toc>.mono{font-size:8px;color:var(--quiet);margin-bottom:7px}.essay-toc a{font-size:12px;color:var(--muted);line-height:1.5}.essay-toc a:hover{color:var(--accent)}.essay-body{max-width:740px}.essay-body>section{margin-bottom:45px;scroll-margin-top:120px}.essay-body h2{font-size:33px;letter-spacing:-.035em;line-height:1.2}.essay-body p{font-size:18px;line-height:1.9;color:#b6c0ab;margin-top:19px;letter-spacing:-.008em}.essay-end{display:flex;gap:15px;align-items:center;padding-top:30px;border-top:1px solid var(--line)}.essay-end p{font-size:11px;color:var(--muted);line-height:1.7;margin:0}.more-notes{margin-bottom:70px}.more-notes>.mono{color:var(--muted);font-size:9px;display:block;margin-bottom:20px}.more-notes>a{display:flex;justify-content:space-between;gap:35px;padding:26px 0;border-top:1px solid var(--line)}.more-notes h3{font-size:28px}.more-notes>a:hover{color:var(--accent)}
/* Contact */
.contact-layout{display:grid;grid-template-columns:31% 1fr;gap:14%;padding-top:30px;padding-bottom:110px}.contact-aside{padding-top:15px}.contact-aside>.mono{font-size:8px;color:var(--accent)}.contact-aside h2{font-size:38px;margin:28px 0 24px}.contact-aside>p{font-size:14px;line-height:1.9;color:var(--muted)}.contact-points{margin-top:38px}.contact-points>div{display:flex;gap:20px;padding:17px 0;border-top:1px solid var(--line)}.contact-points>div>span{font:400 8px var(--mono);color:var(--accent);padding-top:5px}.contact-points p{font-size:12px;line-height:1.7;color:var(--muted)}.contact-location{margin-top:40px;font-size:8px;color:var(--quiet)}.contact-form{border:1px solid #47553a;background:#1c2418;padding:35px;--line:#415134}.form-progress{display:flex;justify-content:space-between;gap:20px;padding-bottom:30px;border-bottom:1px solid var(--line);margin-bottom:30px}.form-progress>.mono{font-size:8px;color:#b4c59e}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.field{margin-bottom:28px;display:flex;flex-direction:column;gap:10px}.field>label{font-size:12px;color:#d2dcc6}.field>label>span{color:var(--accent);margin-left:3px}.field input,.field textarea{width:100%;border:0;border-bottom:1px solid #5e6c4e;color:var(--ink);background:#151d10;padding:14px 12px;line-height:1.5;font-size:14px;transition:border-color .25s}.field input::placeholder,.field textarea::placeholder{color:#87967a;font-size:12px}.field textarea{resize:vertical;min-height:140px;max-height:400px}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:#eab591}.field-error{font-size:11px;line-height:1.6;color:#ffd1ae;min-height:0}.field-error:empty{display:none}.field-bottom{display:flex;justify-content:space-between;gap:20px}.field-bottom>.mono{font-size:8px;color:#9eaf8d;white-space:nowrap;margin-left:auto}.interest-field{border:0;margin:0 0 27px;padding:0}.interest-field>legend{font-size:12px;margin-bottom:15px;color:#d2dcc6}.interest-options{display:flex;flex-wrap:wrap;gap:9px}.interest-options>label{position:relative;cursor:pointer}.interest-options input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}.interest-options>label>span{display:flex;align-items:center;gap:13px;border:1px solid #546543;padding:11px 13px;font-size:11px;color:#becbae;transition:background .25s,color .25s}.interest-options .icon{width:13px;height:13px}.interest-options input:checked+span{background:var(--accent);color:var(--bg);border-color:var(--accent)}.interest-options input:checked+span>.icon{transform:rotate(45deg)}.interest-options input:focus-visible+span{outline:2px solid var(--accent);outline-offset:3px}.consent-label{display:flex;gap:10px;align-items:start;cursor:pointer;font-size:11px;line-height:1.7;color:#b0bf9e}.consent-label input{margin-top:4px;accent-color:var(--accent);flex-shrink:0;width:15px;height:15px}.consent-label a{text-decoration:underline;text-underline-offset:3px;color:var(--ink)}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-bottom{display:flex;flex-direction:column;gap:23px;margin-top:30px;padding-top:25px;border-top:1px solid var(--line)}.form-bottom>p{font-size:11px;line-height:1.8;color:#a7b897;max-width:420px}.form-bottom>.button{align-self:flex-start;min-width:220px}.form-result{margin-top:30px;border:1px solid #839c5b;background:#2a3a1d;padding:25px;scroll-margin-top:120px}.form-result h3{font-size:27px;color:#e5efc9}.form-result p{font-size:13px;color:#c0cea9;line-height:1.8;margin-top:13px}.form-result>div{display:flex;gap:24px;margin-top:18px;flex-wrap:wrap}.form-result .text-link{font-size:12px}.form-result.error{border-color:#c48a63;background:#3b2c1d}.form-result.error p{color:#e7c2a2}
/* Application */
.demo-section{padding-top:15px;padding-bottom:85px}.demo-disclaimer{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-bottom:20px}.demo-disclaimer>.mono{font-size:8px;color:var(--accent);flex-shrink:0}.demo-disclaimer>p{font-size:10px;color:var(--muted);max-width:475px;line-height:1.7}.demo-shell{display:grid;grid-template-columns:32% 68%;border:1px solid #617245;min-height:640px}.demo-sidebar{background:#212b19;border-right:1px solid #4b6032;padding:34px 28px;display:flex;flex-direction:column}.demo-sidebar>.mono{font-size:7px;color:#aec593}.demo-sidebar h2{font-size:34px;letter-spacing:-.04em;line-height:1.12;margin-top:28px;margin-bottom:35px}.demo-sidebar>label{font-size:11px;color:#bdcba9;margin-bottom:10px}.demo-sidebar select{width:100%;background:#151d0f;color:#e2eacc;border:1px solid #6e8550;padding:13px 10px;font-size:12px;line-height:1.4}.demo-stage-list{margin-top:38px}.demo-stage-list li{display:flex;align-items:center;gap:12px;padding:17px 0;border-bottom:1px solid #40512e;font-size:11px;color:#a2b28c;transition:color .3s}.demo-stage-list li>span{font:400 8px var(--mono);color:#738b5a}.demo-stage-list li>.icon{width:14px;height:14px;margin-left:auto;opacity:0;color:var(--accent)}.demo-stage-list li[aria-current]{color:var(--accent)}.demo-stage-list li.is-complete>.icon{opacity:1}.demo-reset{font-size:10px;align-self:start;color:#a9bd8e;margin-top:20px;border:0}.demo-build-label{margin-top:auto!important;padding-top:30px;color:#a1b28b!important;font-size:6px!important}.demo-main{display:flex;flex-direction:column;background:#192114;min-width:0}.demo-top{padding:20px 27px;border-bottom:1px solid #384a27;display:flex;justify-content:space-between;align-items:center;gap:20px}.demo-top>span:first-child{font:400 7px var(--mono);color:#c0d79b}.demo-top>.mono{font-size:7px;color:#a9bd8f}.demo-content{padding:34px;flex:1}.demo-content>.mono{font-size:8px;color:#abc28d}.demo-content h3{font-size:31px;letter-spacing:-.04em;margin-top:16px}.demo-content blockquote{margin:20px 0 27px;border-left:2px solid #9eb966;padding:5px 0 5px 18px;font-size:17px;line-height:1.65;color:#d2ddbd;max-width:550px}.demo-source-card{border:1px solid #415830;padding:16px 19px;background:#1d2b15}.demo-source-card>.mono{display:block;font-size:7px;color:#c4d5a8;margin-bottom:13px}.demo-source-card>div{display:flex;justify-content:space-between;gap:15px;padding:10px 0;border-top:1px solid #354927;font-size:10px}.demo-source-card b{font-weight:450;color:#d7e2c5}.demo-source-card>div>span{color:#a6bb8a;font-size:9px;text-align:right}.demo-actions{display:flex;justify-content:space-between;align-items:center;gap:25px;border-top:1px solid #3b5029;padding:22px 27px}.demo-actions>p{font-size:10px;max-width:245px;color:#a6bb8b;line-height:1.7}.demo-actions>.button{font-size:11px;min-height:47px;gap:24px;flex-shrink:0}.demo-line-items{margin-top:28px}.demo-line-item{display:grid;grid-template-columns:1fr 90px 90px;padding:13px 0;border-bottom:1px solid #465c31;font-size:12px;gap:14px}.demo-line-item.header{font:400 7px var(--mono);color:#a5ba86}.demo-line-item>span:not(:first-child){text-align:right}.demo-total{display:flex;justify-content:space-between;margin-top:22px;font-size:21px;letter-spacing:-.025em}.demo-total>strong{font-weight:500;color:var(--accent)}.demo-note{padding:14px 16px;background:#3f3920;border:1px solid #8d8050;margin-top:22px;font-size:12px;line-height:1.8;color:#e8ddb5}.demo-note.success{background:#2d4020;border-color:#6b8c4d;color:#dbe8bf}.demo-note .icon{width:18px;display:inline-block;vertical-align:middle;margin-right:5px}.demo-choice{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.demo-choice button{border:1px solid #6e8651;padding:11px 15px;font-size:12px;color:#d4e3b8}.demo-choice button[aria-pressed=true]{background:var(--accent);color:var(--bg)}.demo-explanation{font-size:13px;line-height:1.8;color:#b4c699;margin-top:20px}.approve-label{display:flex;align-items:start;gap:12px;font-size:12px;line-height:1.7;margin-top:22px;color:#d3dfbd}.approve-label input{margin-top:4px;accent-color:var(--accent);width:16px;height:16px}.demo-download{margin-top:25px}
/* Legal / errors */
.legal-layout{display:grid;grid-template-columns:24% 1fr;gap:13%;padding-top:20px;padding-bottom:100px;border-top:1px solid var(--line)}.legal-layout>aside{padding-top:10px}.legal-layout>aside>.mono{color:var(--muted);font-size:8px}.legal-layout>aside>nav{display:flex;flex-direction:column;gap:15px;margin-top:35px;font-size:13px;color:var(--muted)}.legal-layout>aside a[aria-current]{color:var(--accent)}.legal-body{max-width:800px}.legal-body>section{padding:28px 0;border-bottom:1px solid var(--line)}.legal-body h2{font-size:28px;letter-spacing:-.03em}.legal-body p{font-size:15px;line-height:1.9;color:var(--muted);margin-top:17px}.error-page{min-height:calc(100vh - 92px);padding-top:60px;padding-bottom:80px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.error-page>.mono{color:var(--muted);font-size:8px}.error-number{display:flex;align-items:center;gap:12px;font-size:clamp(130px,23vw,340px);line-height:1;letter-spacing:-.07em;color:#7c8f60;margin:25px 0}.error-number .brand-mark{width:clamp(100px,15vw,220px);height:clamp(100px,15vw,220px);color:var(--accent)}.error-page>h1{font-size:clamp(30px,3vw,50px);letter-spacing:-.035em}.error-page>p{font-size:14px;color:var(--muted);margin-top:18px}.error-page>.button{margin-top:32px}
/* Motion: progressive enhancement; content remains visible without JavaScript. */
@keyframes hero-rise{from{opacity:0;transform:translateY(27px)}to{opacity:1;transform:translateY(0)}}@keyframes map-pulse{0%,100%{opacity:.35}50%{opacity:1}}html.enhanced [data-reveal]{opacity:0;transform:translateY(25px);transition:opacity .85s var(--ease),transform .85s var(--ease)}html.enhanced [data-reveal].is-visible{opacity:1;transform:translateY(0)}.motion-paused .map-path circle{animation-play-state:paused}.motion-paused *{scroll-behavior:auto}@view-transition{navigation:auto}::view-transition-old(root){animation:page-out .15s ease both}::view-transition-new(root){animation:page-in .4s var(--ease) both}@keyframes page-out{to{opacity:0;transform:translateY(-6px)}}@keyframes page-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
/* Responsive composition, not a miniature desktop. */
@media(min-width:1700px){.hero-scene{right:-2%}.site-header{padding-inline:max(var(--gutter),calc((100vw - 1450px)/2))}.project-art{height:475px}.rivet-ui{left:110px;top:130px}.dental-ui{left:90px;top:125px}.home-hero{max-height:1000px}}
@media(max-width:1200px){.desktop-nav{gap:24px;margin-right:4%}.header-actions{gap:22px}.sub-hero-content,.sub-hero:has(h1 br) .sub-hero-content{grid-template-columns:1.5fr 1fr;gap:5%}.home-hero{min-height:700px}.hero-main h1{font-size:7.7vw}.hero-copy{max-width:460px}.hero-scene{width:68%;right:-13%;inset-block:50px 100px}.hero-edition{max-width:220px}.context-intro{padding-right:35px}.context-section{grid-template-columns:39% 61%}.map-body{padding:24px 15px}.map-inputs>button{padding:11px 7px;gap:7px}.map-inputs{min-width:130px}.map-inputs small{font-size:6px}.map-agent{min-width:90px}.map-agent>span{font-size:10px}.map-agent>small{font-size:4px}.map-output>div{font-size:9px}.project-art{height:350px}.rivet-ui{left:50px;top:90px}.dental-ui{left:40px;top:95px}.section-heading{grid-template-columns:23% 1fr auto}.section-heading>p{max-width:190px}.service-row{grid-template-columns:8% 1fr 24% 50px}.trust-strip{gap:20px}.trust-strip>.mono{max-width:100px;font-size:7px}.trust-strip>a{font-size:30px}.trust-strip .trust-rivet{font-size:25px}.trust-strip .trust-dental{font-size:22px}.art-large{height:520px}.art-large .rivet-ui{left:23%;top:145px}.art-large .dental-ui{left:25%;top:145px}.art-large .art-brand,.art-large .dental-word{font-size:45px;left:35px;top:30px}.contact-layout{grid-template-columns:31% 1fr;gap:9%}.demo-shell{grid-template-columns:33% 67%}.demo-sidebar{padding:30px 23px}.demo-main .demo-content{padding:28px}.demo-actions{padding:20px}.demo-actions>p{max-width:180px}.systems-visual{padding:40px}.footer-note{display:none}.company-feature-copy{padding:40px 35px}.essay-index article>a{grid-template-columns:13% 1fr 140px 22px;gap:25px}.essay-thumbnail{height:130px}}
@media(max-width:980px){.desktop-nav{display:none}.header-actions{margin-left:auto}.site-header{height:80px}.wordmark{font-size:24px}.home-hero{height:calc(100svh - 80px);min-height:740px}.hero-topline>.mono{font-size:8px}.hero-main{padding-top:300px}.hero-main h1{font-size:8.7vw}.hero-scene{width:75%;top:-30px;bottom:210px;right:-8%}.hero-copy{margin-top:25px}.hero-copy>p{font-size:14px}.hero-bottom{padding-top:50px}.hero-location{display:none}.hero-edition{font-size:7px}.scene-caption{right:15%;bottom:17%;font-size:7px}.hero-main h1>span:first-child{color:#f0f1e8}.trust-strip{display:grid;grid-template-columns:1.2fr 1fr 1fr;row-gap:28px;padding-block:30px;justify-items:start;min-height:0}.trust-strip>.mono{max-width:none;font-size:7px}.trust-strip>a{justify-self:center}.trust-divider{display:none}.perspective-section{grid-template-columns:26% 74%}.perspective-copy h2{font-size:5.8vw}.section-side>.eyebrow{font-size:8px;gap:8px;max-width:140px;align-items:start}.small-span>.brand-mark{width:60px;height:60px}.perspective-bottom{gap:30px;margin-top:30px}.perspective-bottom p{font-size:13px}.section-heading{grid-template-columns:1fr 1fr;gap:30px}.section-heading>.eyebrow{grid-column:1/-1}.section-heading h2{font-size:44px}.section-heading>.button,.section-heading>p{justify-self:end;align-self:end}.service-row{grid-template-columns:40px 1fr 50px;gap:16px}.service-tags{display:none}.service-row h3{font-size:39px}.service-row>p{max-width:none}.service-row>.round-arrow{width:45px;height:45px}.context-section{grid-template-columns:1fr;gap:40px}.context-intro{padding-right:0;display:grid;grid-template-columns:1fr 1fr;gap:25px}.context-intro>.eyebrow{grid-column:1/-1;margin:0}.context-intro>h2{font-size:48px}.context-intro>p{margin:0;align-self:end;font-size:14px;max-width:none}.context-intro>.button{justify-self:start}.map-body{min-height:300px;padding:30px}.map-inputs{width:35%}.map-inputs>button{font-size:14px;padding:16px}.map-inputs small{font-size:8px}.map-path{width:15%}.map-agent{min-width:140px;width:24%}.map-agent>span{font-size:16px}.map-agent>small{font-size:7px}.map-agent>.brand-mark{width:42px;height:42px}.map-output>div{font-size:12px}.map-output small{font-size:8px}.map-header,.map-footer{font-size:9px}.project-grid{gap:23px}.project-art{height:320px}.project-card:nth-child(even){padding-top:70px}.rivet-ui{width:440px;height:300px;left:38px;top:95px;grid-template-columns:70px 1fr}.ui-sidebar{font-size:6px;padding:15px 8px;gap:16px}.ui-main{padding:15px}.ui-greeting{padding:15px 0}.ui-greeting>span{font-size:20px}.ui-metrics{margin-bottom:14px}.ui-chart{height:85px}.bars{height:52px}.ui-chart>div:first-child{font-size:6px}.dental-ui{width:400px;height:280px;left:35px;top:95px;padding:15px}.art-brand{font-size:31px}.dental-word{font-size:27px}.project-card-meta{flex-wrap:wrap;gap:8px}.project-card-meta>div{flex:1}.project-card-meta>.project-status{order:3;margin:0;flex-basis:auto;font-size:6px}.project-card-meta>.icon{margin-left:0;margin-top:4px}.project-card-meta h3{font-size:21px}.project-card-meta p{font-size:10px}.work-disclosure>p{max-width:400px}.method-teaser{gap:9%}.method-teaser h2{font-size:42px}.method-steps h3{font-size:22px}.method-steps p{font-size:12px}.method-teaser .eyebrow{font-size:8px}.closing-link>span:first-child{font-size:11vw}.closing{padding-block:40px 55px}.footer-top{gap:25px;grid-template-columns:1.1fr 1fr 1fr}.footer-location{display:none}.footer-word{font-size:18.8vw}.footer-bottom>div{gap:18px}.sub-hero-content,.sub-hero:has(h1 br) .sub-hero-content{grid-template-columns:1fr;gap:30px}.sub-hero:has(h1 br) h1,.sub-hero h1{font-size:clamp(54px,7.6vw,80px)}.sub-intro{font-size:16px;max-width:650px}.sub-hero-meta{margin-bottom:50px}.sub-hero{padding-bottom:45px}.capability-band{padding-block:27px}.capability-band>.mono{font-size:7px;max-width:130px}.band-arrow{font-size:22px}.two-column{gap:7%}.two-column h2{font-size:38px}.capability-note{gap:9%;margin-top:65px}.capability-note h2{font-size:35px}.capability-note p{font-size:15px}.service-subnav>div{gap:12px}.service-subnav .mono{font-size:6px}.service-visual{margin-bottom:65px}.systems-visual{padding:25px;grid-template-columns:1fr 9% 1fr}.loose-note{width:200px;font-size:16px;padding:15px}.note-b{left:10px}.unified{padding:20px}.unified b{font-size:21px}.state-line{font-size:6px;flex-wrap:wrap}.design-visual{min-height:400px;padding:30px 40px}.design-type{font-size:110px}.design-visual>.brand-mark{width:170px;height:170px;right:35px;top:115px}.design-controls{font-size:7px;gap:23px}.work-index-grid .project-art{height:355px}.case-meta{gap:20px;grid-template-columns:1fr 1fr 1.2fr}.case-meta>div:last-child{grid-column:1/-1}.case-meta .text-link{align-self:start}.art-large{height:470px}.art-large .rivet-ui{left:19%;width:740px;height:460px;top:130px;grid-template-columns:110px 1fr}.art-large .ui-sidebar{font-size:10px;gap:24px;padding:23px 15px}.art-large .ui-main{padding:20px 25px}.art-large .ui-topbar{font-size:11px}.art-large .ui-greeting{padding:20px 0}.art-large .ui-greeting>span{font-size:31px}.art-large .ui-metrics b{font-size:36px}.art-large .ui-metrics small{font-size:9px}.art-large .ui-chart{height:120px}.art-large .bars{height:95px}.art-large .dental-ui{left:22%;width:690px;height:440px;top:130px}.case-story{grid-template-columns:25% 1fr;gap:12%}.case-story h2{font-size:36px}.case-story>div>section>p{font-size:16px}.case-story>aside .eyebrow{flex-direction:column;align-items:start;gap:10px}.approach-intro{gap:6%;grid-template-columns:2fr 1fr}.approach-spectrum{gap:15px}.approach-spectrum>span{font-size:6px}.approach-spectrum i{width:6px}.approach-intro>p{font-size:12px}.approach-chapter{grid-template-columns:11% 1fr 100px;gap:5%}.chapter-glyph{width:95px;height:95px}.approach-chapter h2{font-size:52px}.approach-chapter h3{font-size:23px}.approach-chapter p{font-size:14px}.company-feature{grid-template-columns:1fr 1fr}.company-lens{min-height:420px}.lens-disc{height:65%;top:18%;left:0}.lens-ring{height:65%;top:calc(18% + var(--i)*10px);left:calc(3% + var(--i)*15px)}.company-feature-copy{padding:32px 27px}.company-feature-copy h2{font-size:33px}.company-feature-copy p{font-size:12px}.company-body>.large-copy{font-size:22px}.beliefs h3{font-size:24px}.beliefs p{font-size:13px}.beliefs>div{gap:22px;grid-template-columns:6% 1fr 1fr}.company-location p{font-size:19px}.essay-index article>a{grid-template-columns:12% 1fr 100px 20px;gap:20px}.essay-thumbnail{height:100px}.essay-thumbnail>.brand-mark{width:60px;height:60px}.thumb-1>span{font-size:110px}.thumb-2>span{font-size:55px;letter-spacing:-13px}.essay-index h2{font-size:32px}.essay-index p{font-size:12px}.essay-index-no>span{font-size:6px}.essay-index-no{font-size:8px;gap:40px}.essay-layout{grid-template-columns:22% 1fr;gap:8%}.essay-body p{font-size:17px}.essay-toc a{font-size:11px}.essay-page .sub-hero h1{font-size:8vw}.contact-layout{grid-template-columns:27% 1fr;gap:7%}.contact-aside h2{font-size:30px}.contact-aside>p{font-size:12px}.contact-points>div{gap:13px}.contact-points p{font-size:10px}.contact-form{padding:26px}.form-grid{gap:18px}.field input{font-size:13px}.field input::placeholder{font-size:10px}.interest-options>label>span{font-size:10px;padding:10px;gap:8px}.demo-shell{grid-template-columns:32% 68%}.demo-sidebar{padding:25px 18px}.demo-sidebar h2{font-size:29px}.demo-sidebar>.mono{font-size:6px}.demo-stage-list li{font-size:9px;gap:8px}.demo-sidebar select{font-size:10px;padding:12px 7px}.demo-main .demo-content{padding:25px}.demo-top{padding:20px}.demo-top>.mono{font-size:6px}.demo-actions{flex-direction:column;align-items:start;gap:17px}.demo-actions>p{max-width:none}.demo-actions>.button{align-self:flex-end}.demo-content h3{font-size:27px}.demo-content blockquote{font-size:15px}.demo-source-card{padding:14px}.demo-source-card b{font-size:9px}.demo-source-card>div>span{font-size:8px}.legal-layout{grid-template-columns:22% 1fr;gap:8%}.menu-head{height:80px}.menu-body{min-height:calc(100dvh - 154px);grid-template-columns:65% 35%}.menu-links{padding:35px 35px 35px 0}.menu-name{font-size:6vw}.menu-links>a{padding:15px 0;gap:20px}.menu-aside{padding-left:30px}.menu-sculpture{height:160px}.menu-sculpture>div{width:140px;height:130px;border-width:8px;border-radius:25px 25px 0 0}.menu-caption{font-size:28px}.menu-aside-foot{margin-top:35px}.menu-aside-foot>.mono{font-size:7px}}
@media(max-width:640px){:root{--gutter:22px}.site-header{height:72px}.wordmark{font-size:23px}.brand-mark{width:28px;height:28px}.brand{gap:8px}.header-contact{display:none}.menu-toggle>span:first-child{font-size:10px}.menu-toggle{gap:12px}.menu-glyph{width:33px;height:33px}.home-hero{min-height:760px;height:calc(100svh - 72px);max-height:880px}.hero-topline{padding-top:21px}.hero-topline>.mono{font-size:6.5px;letter-spacing:.05em}.hero-main{padding-top:290px;margin-top:auto}.hero-main h1{font-size:clamp(41px,10.6vw,67px);line-height:1.05;letter-spacing:-.061em}.hero-main h1>span{white-space:nowrap}.hero-copy{margin-top:23px;max-width:none}.hero-copy>p{font-size:13px;line-height:1.8;max-width:300px}.hero-actions{gap:20px;margin-top:22px}.hero-actions .button-solid{min-width:0;font-size:11px;gap:20px;padding:14px 16px;min-height:49px}.hero-actions .button-solid>.icon{width:16px;height:16px}.hero-actions .button-text{font-size:10px;gap:10px}.hero-actions .button-text>.icon{width:15px;height:15px}.hero-bottom{padding-top:40px;padding-bottom:22px;align-items:center}.hero-edition{display:none}.scroll-link>.mono{font-size:7px}.scroll-icon{width:24px;height:24px;font-size:10px}.hero-scene{inset:38px -10% auto auto;width:105%;height:385px;min-height:0}.scene-caption{right:12%;bottom:10%;font-size:6px}.scene-caption span:last-child{font-size:5px}.scene-registration-a{top:20%;left:17%}.scene-registration-b{bottom:12%;right:10%}.scene-registration>.tiny-cross{font-size:15px}.scene-fallback i{width:48%;height:45%;border-width:14px;border-radius:40px 40px 15px 15px;top:25%;left:28%;transform:rotateX(32deg) rotateY(-34deg) rotateZ(-25deg) translateZ(calc(var(--i)*21px))}.trust-strip{padding-block:25px;gap:28px 20px;grid-template-columns:1.1fr 1fr 1fr}.trust-strip>.mono{font-size:6px;max-width:95px}.trust-strip>a{font-size:28px}.trust-strip>a>span{font-size:5px}.trust-strip .trust-mawzun{font-size:12px}.trust-strip .trust-mawzun>span{font-size:5px}.trust-strip .trust-rivet{font-size:23px}.trust-strip .trust-dental{font-size:19px}.section{padding-block:66px}.perspective-section{grid-template-columns:1fr;gap:28px}.section-side>.eyebrow{font-size:8px;max-width:none;gap:15px;align-items:center}.small-span{display:none}.perspective-copy h2{font-size:clamp(32px,8.5vw,51px);line-height:1.12}.perspective-bottom{grid-template-columns:1fr;gap:17px;margin-top:25px;margin-bottom:16px}.perspective-bottom p{font-size:13px;max-width:100%;line-height:1.85}.perspective-copy>.button{font-size:12px;min-height:48px;gap:30px}.eyebrow{font-size:8px;gap:12px}.section-heading{grid-template-columns:1fr;gap:24px;margin-bottom:33px}.section-heading h2{font-size:37px;line-height:1.1}.section-heading>p,.section-heading>.button{justify-self:start;align-self:start}.section-heading>p{font-size:12px;max-width:100%;margin-top:-6px}.section-heading>p br{display:none}.section-heading>.button{font-size:12px;padding-block:10px;min-height:0}.service-row{grid-template-columns:24px 1fr 35px;gap:13px;padding:25px 0}.service-row h3{font-size:30px;letter-spacing:-.045em}.service-row p{font-size:11px;margin-top:11px;line-height:1.75;max-width:270px}.service-row>.mono{font-size:8px;margin-top:6px}.service-row>.round-arrow{width:33px;height:33px;align-self:start;margin-top:0}.round-arrow>.icon{width:16px;height:16px}.service-row:hover{padding-left:0}.section-foot{margin-top:20px;font-size:6px;gap:25px;max-width:100%}.section-foot>.tiny-cross{font-size:18px}.context-intro{grid-template-columns:1fr;gap:23px}.context-intro>h2{font-size:41px}.context-intro>p{font-size:13px;max-width:410px;line-height:1.85}.context-intro>.button{font-size:11px;gap:25px;margin-top:-5px}.context-section{gap:27px}.map-header,.map-footer{padding:13px;font-size:6px}.map-body{padding:12px;min-height:217px}.map-inputs{min-width:0;width:39%}.map-inputs>button{padding:10px 6px;font-size:8px;gap:6px;margin:10px 0}.map-small-icon{width:20px;height:20px;font-size:8px}.map-inputs small{font-size:5px;margin-top:3px;line-height:1.4}.map-inputs .icon{display:none}.map-path{width:9%;height:165px}.map-agent{width:27%;min-width:0;aspect-ratio:1/1.35}.map-agent>.brand-mark{width:27px;height:27px;margin-bottom:8px}.map-agent>span{font-size:8px}.map-agent>small{font-size:3.8px;margin-top:4px;letter-spacing:0}.map-output{width:25%}.map-output>div{font-size:8px}.map-output small{font-size:5px;line-height:1.5;padding-inline:2px}.map-output-line{min-width:8px}.map-check{width:23px;height:23px;margin-bottom:8px}.map-check>.icon{width:14px}.map-footer{font-size:5.5px;gap:10px}.project-grid{grid-template-columns:1fr;gap:35px}.project-card:nth-child(even){padding-top:0}.project-art{height:340px}.art-brand{font-size:35px;left:23px;top:21px}.art-foot{left:23px;bottom:20px;font-size:6px}.rivet-ui{width:455px;height:294px;left:55px;top:100px;grid-template-columns:73px 1fr}.dental-ui{width:430px;left:50px;top:100px}.dental-word{font-size:29px;left:23px;top:24px}.project-card-meta{flex-wrap:nowrap;align-items:start;padding-top:18px}.project-card-meta>.project-status{order:initial;font-size:5px;margin-top:4px;padding:5px 6px;max-width:115px;line-height:1.5;text-align:right}.project-card-meta h3{font-size:23px}.project-card-meta p{font-size:10px}.project-card-meta>.icon{width:18px;height:18px;margin-top:3px}.work-disclosure{flex-direction:column;gap:12px;margin-top:27px;padding-top:18px}.work-disclosure>.mono{font-size:7px}.work-disclosure>p{font-size:10px;line-height:1.8;max-width:none}.method-teaser{grid-template-columns:1fr;gap:35px}.method-teaser h2{font-size:41px}.method-teaser .eyebrow{font-size:7px;gap:10px;margin-bottom:26px}.method-teaser .button{margin-top:23px;font-size:12px;gap:35px;min-height:45px}.method-steps>div{padding:22px 0;gap:21px}.method-steps h3{font-size:24px}.method-steps p{font-size:12px;max-width:370px;line-height:1.85}.method-steps>div>.mono{font-size:8px}.closing{padding-top:30px;padding-bottom:40px}.closing-top{flex-direction:column;gap:23px}.closing-top>.eyebrow{font-size:7px}.closing-top>p{font-size:11px}.closing-link{margin-top:37px;align-items:end}.closing-link>span:first-child{font-size:15vw;line-height:1.02}.closing-arrow{width:63px;height:63px;margin-bottom:4px;flex-shrink:0}.closing-arrow>.icon{width:28px;height:28px;stroke-width:1}.footer-top{grid-template-columns:1fr 1fr;gap:27px 20px}.footer-top>p{font-size:10px;line-height:1.8}.footer-top .brand-mark{width:30px;height:30px}.footer-top .brand>.mono{font-size:6px}.footer-top nav{grid-column:1/-1;display:flex;justify-content:space-between;font-size:10px;margin-top:8px;gap:12px}.site-footer{padding-top:28px}.footer-word{font-size:18.35vw;margin-top:36px}.footer-word>span{margin-left:.2em}.footer-bottom{margin-top:22px;padding-block:18px;font-size:6px;gap:10px}.footer-bottom>div{gap:12px}.back-top{font-size:16px;padding:2px 4px}.motion-toggle{right:12px;bottom:12px;width:29px;height:29px;font-size:11px}.sub-hero{padding-top:27px;padding-bottom:35px}.sub-hero-meta{margin-bottom:45px;align-items:start;gap:20px}.sub-hero-meta>.eyebrow{font-size:7px;max-width:75%;gap:10px}.sub-coordinate{font-size:6px;padding-top:1px;white-space:nowrap}.sub-hero h1,.sub-hero:has(h1 br) h1{font-size:clamp(38px,10.15vw,61px);line-height:1.08;letter-spacing:-.054em}.sub-hero-content,.sub-hero:has(h1 br) .sub-hero-content{gap:25px}.sub-intro{font-size:14px;line-height:1.8;max-width:440px}.capability-band{padding-block:23px;gap:13px}.capability-band>.mono{font-size:5.5px;max-width:93px}.band-arrow{font-size:16px}.capability-note{grid-template-columns:1fr;gap:22px;margin-top:45px}.capability-note h2{font-size:34px}.capability-note p{font-size:14px;line-height:1.85}.two-column{grid-template-columns:1fr;gap:35px}.two-column h2{font-size:37px}.two-column .eyebrow{margin-bottom:24px}.use-case-list>div{padding:22px 0}.use-case-list h3{font-size:24px}.use-case-list p{font-size:13px}.faq-list summary{grid-template-columns:20px 1fr 20px;gap:12px;padding:23px 0}.faq-list h3{font-size:20px;letter-spacing:-.03em;line-height:1.35}.faq-list summary>.mono{font-size:7px}.faq-list summary>.icon{width:19px;height:19px}.faq-answer{padding:0 0 25px 32px;font-size:13px;line-height:1.85}.service-subnav{font-size:11px;flex-direction:column;align-items:start;gap:17px;padding-block:21px}.service-subnav>div{gap:14px;flex-wrap:wrap}.service-subnav .mono{font-size:6px}.service-visual{margin-block:10px 55px}.service-visual .map-body{padding:15px 10px;min-height:235px}.service-visual .map-inputs>button{font-size:8px;padding:10px 6px}.service-visual .map-inputs small{font-size:5px}.service-visual .map-agent>span{font-size:8px}.service-visual .map-agent>small{font-size:4px}.systems-visual{grid-template-columns:1fr;padding:23px;gap:22px}.systems-column{min-height:270px}.systems-column>.mono{font-size:7px}.loose-note{width:75%;font-size:18px;left:10px}.note-b{left:35px}.systems-bridge{transform:rotate(90deg);height:30px}.unified{min-height:260px}.design-visual{min-height:350px;padding:25px 23px}.design-visual>.mono{font-size:6px;max-width:230px;display:block}.design-type{font-size:clamp(70px,15vw,95px);line-height:.98;margin-top:70px}.design-controls{font-size:5px;gap:15px;margin-top:24px}.design-visual>.brand-mark{width:85px;height:85px;right:25px;top:75px}.detail-steps>div{gap:18px;padding:23px 0}.detail-steps h3{font-size:23px}.detail-steps p{font-size:13px;line-height:1.9}.detail-steps>div>.mono{font-size:8px}.deliverables>div{font-size:16px;padding:18px 0;gap:14px}.deliverables>div>.icon{width:17px;height:17px}.deliverables>p{font-size:13px;line-height:1.9;margin-top:22px}.example-callout{padding-block:30px;margin-bottom:50px}.example-callout>.mono{font-size:7px}.example-callout>p{font-size:25px;line-height:1.45;margin:22px 0}.example-callout>.button{font-size:12px;gap:25px}.related-services{grid-template-columns:1fr;gap:0;margin-bottom:55px}.related-services>.mono{font-size:7px;padding-bottom:15px}.related-services>a{padding:23px 0}.related-services>a:nth-of-type(2){border-top:0}.related-services h3{font-size:26px}.filter-bar{margin-bottom:28px}.filter-bar>div{gap:21px}.filter-bar button{font-size:10px;padding:17px 0;gap:6px}.filter-bar button>span{font-size:6px}.filter-bar>.mono{font-size:6px}.work-index-grid{gap:32px}.work-index-grid .project-art{height:330px}.work-index{padding-bottom:55px}.case-meta{grid-template-columns:1fr 1fr;gap:23px;border-top:1px solid var(--line);padding-top:20px;padding-bottom:25px}.case-meta .mono{font-size:7px}.case-meta b{font-size:11px}.case-meta>div{gap:7px}.case-meta>div:last-child{grid-column:auto;align-self:end}.case-meta .text-link{font-size:10px;gap:10px;padding-block:6px;align-self:start}.case-meta .text-link>.icon{width:14px}.case-hero-visual{margin-bottom:55px}.art-large{height:380px}.art-large .art-brand{font-size:36px;top:23px;left:23px}.art-large .art-foot{font-size:6px;bottom:22px;left:23px}.art-large .rivet-ui{left:13%;width:530px;height:325px;top:115px;grid-template-columns:85px 1fr}.art-large .ui-sidebar{padding:17px 11px;font-size:7px;gap:20px}.art-large .ui-sidebar>b{font-size:21px;margin-bottom:0}.art-large .ui-main{padding:17px}.art-large .ui-topbar{font-size:8px;padding-bottom:12px}.art-large .ui-greeting{padding:17px 0}.art-large .ui-greeting>span{font-size:23px}.art-large .ui-greeting>small{font-size:7px}.art-large .ui-metrics{padding-bottom:15px;margin-bottom:15px}.art-large .ui-metrics small{font-size:7px}.art-large .ui-metrics b{font-size:27px}.art-large .ui-metrics span{font-size:5px}.art-large .ui-chart{height:88px}.art-large .ui-chart>div:first-child{font-size:7px}.art-large .ui-chart>div:first-child>span{font-size:6px}.art-large .bars{height:62px;gap:5px}.art-large .ui-row{font-size:5px;margin-top:12px}.art-large .ui-bottom{font-size:5px;left:11px}.art-large .dental-word{font-size:33px;top:25px;left:23px}.art-large .dental-ui{width:465px;height:310px;top:115px;left:15%;padding:22px}.art-large .dental-ui .ui-topbar{font-size:12px;padding-bottom:11px}.art-large .dental-ui .ui-topbar>span{font-size:6px}.art-large .dental-calendar{height:235px;grid-template-columns:35px 1fr 1fr;gap:12px;padding-top:17px}.art-large .time-axis{font-size:7px;padding-block:17px}.art-large .schedule-col>small{font-size:5px}.art-large .appointment{padding:11px;gap:4px}.art-large .appointment>b{font-size:8px}.art-large .appointment>span{font-size:6px}.art-large .ap1{top:35px;height:59px}.art-large .ap2{top:128px;height:73px}.art-large .ap3{top:75px;height:80px}.art-large .ap4{top:165px;height:50px}.art-large .three-mark{font-size:155px}.art-large .advisory-line{height:135px;width:15px;right:-28px}.art-large .advisory-name{font-size:12px;letter-spacing:.35em;margin-top:27px}.art-large .advisory-art>.mono,.art-large .mawzun-art>.mono:first-child{font-size:7px;top:22px;left:22px}.art-large .advisory-art-foot{font-size:9px;left:22px;bottom:25px}.art-large .mawzun-symbol{width:140px;height:140px;margin-bottom:28px}.art-large .mawzun-word{font-size:28px}.art-large .mawzun-art>.mono:last-of-type{font-size:7px}.visual-caption{font-size:5px;gap:20px;line-height:1.7}.visual-caption>span{max-width:54%}.visual-caption>span:last-child{text-align:right}.case-story{grid-template-columns:1fr;gap:40px}.case-story>aside .eyebrow{flex-direction:row;font-size:8px;gap:15px}.case-story>aside>p{font-size:12px;line-height:1.85;margin-top:20px;max-width:460px}.case-story>div{padding-left:32px}.case-story>div>section>.mono{left:-31px;top:8px;font-size:8px}.case-story h2{font-size:32px}.case-story>div>section>p{font-size:15px;line-height:1.9;margin-top:17px}.case-story>div>section{margin-bottom:37px}.next-project{padding-block:22px 30px}.next-project>a>span{font-size:40px}.next-project>a>.icon{width:30px;height:30px}.approach-intro{grid-template-columns:1fr;gap:27px;padding-top:15px;padding-bottom:45px}.approach-spectrum{gap:16px}.approach-spectrum>span{font-size:6px}.approach-spectrum i{width:7px}.approach-intro>p{font-size:12px}.approach-chapters{padding-top:15px;padding-bottom:30px}.approach-chapter{grid-template-columns:40px 1fr;gap:20px;padding-block:40px}.chapter-num{font-size:33px;margin-top:5px}.chapter-glyph{display:none}.approach-chapter h2{font-size:44px;margin-bottom:25px}.approach-chapter h3{font-size:22px}.approach-chapter p{font-size:13px;line-height:1.9}.chapter-outputs{font-size:7px;gap:15px;margin-top:25px}.context-compact{margin-top:35px}.context-compact .map-agent{max-width:none;min-width:0}.context-compact .map-inputs>button{font-size:8px}.context-compact .map-inputs small{font-size:5px}.context-compact .map-agent>span{font-size:8px}.context-compact .map-agent>small{font-size:4px}.context-compact .map-output>div{font-size:8px}.principles-strip{flex-direction:column;gap:18px;padding-block:25px 50px}.principles-strip>span{font-size:17px}.company-feature{grid-template-columns:1fr;margin-top:0;margin-bottom:65px}.company-lens{min-height:345px}.lens-disc{height:80%;top:10%;left:10%}.lens-ring{height:80%;top:calc(10% + var(--i)*9px);left:calc(11% + var(--i)*19px)}.lens-label{font-size:6px;left:23px;bottom:21px}.company-feature-copy{padding:32px 25px}.company-feature-copy>.mono{font-size:7px;margin-bottom:25px}.company-feature-copy h2{font-size:35px;margin-bottom:22px}.company-feature-copy p{font-size:13px}.company-body>.large-copy{font-size:23px;line-height:1.5}.company-body>p{font-size:14px;line-height:1.9}.founder-signature{margin-top:30px;padding-top:23px;gap:15px}.founder-signature strong{font-size:15px}.founder-signature>div>span{font-size:9px}.founder-monogram{width:45px;height:45px;font-size:16px}.beliefs>div{grid-template-columns:25px 1fr;gap:12px 16px;padding:25px 0}.beliefs>div>p{grid-column:2;font-size:13px;margin:0;line-height:1.85}.beliefs h3{font-size:25px}.beliefs .mono{font-size:8px}.company-location{padding-top:25px;padding-bottom:50px}.company-location>div{flex-direction:column;align-items:start;gap:20px}.company-location h2{font-size:23vw}.company-location p{font-size:20px}.company-location>.mono{font-size:7px}.company-location>.mono:last-child{margin-top:10px}.essay-index{padding-bottom:55px}.essay-index article>a{grid-template-columns:1fr 20px;gap:20px;padding:28px 0}.essay-index-no{flex-direction:row;justify-content:space-between;gap:20px;grid-column:1/-1;font-size:8px}.essay-index-no>span{font-size:7px}.essay-thumbnail{display:none}.essay-index h2{font-size:30px;line-height:1.15}.essay-index p{font-size:13px;line-height:1.85;margin-top:13px}.essay-index article>a>div:nth-child(2)>.mono{font-size:7px;margin-top:18px}.essay-index article>a>.icon{width:20px;height:20px;align-self:start;margin-top:6px}.essay-breadcrumb{padding-top:25px;font-size:11px}.essay-breadcrumb>.mono{font-size:6px}.essay-page>.sub-hero{padding-top:10px}.essay-page .sub-hero-content{padding-top:35px}.essay-page .sub-hero h1{font-size:10.2vw}.essay-page .sub-intro{font-size:17px;line-height:1.6;margin-top:25px}.essay-layout{grid-template-columns:1fr;gap:35px;padding-top:22px;padding-bottom:40px}.essay-layout>aside{position:static}.essay-layout>aside>.mono{font-size:7px;line-height:1.7}.essay-layout>aside>.mono br{display:none}.essay-layout>aside>.mono{word-spacing:3px}.essay-toc{display:none}.essay-body h2{font-size:28px}.essay-body p{font-size:16px;line-height:1.85;margin-top:17px}.essay-body>section{margin-bottom:35px}.essay-end{padding-top:25px}.essay-end>p{font-size:10px;margin:0}.more-notes{margin-bottom:45px}.more-notes>.mono{font-size:7px}.more-notes>a{padding:23px 0;gap:25px}.more-notes h3{font-size:24px}.more-notes .icon{width:20px;height:20px}.contact-layout{grid-template-columns:1fr;gap:35px;padding-top:0;padding-bottom:65px}.contact-aside{padding-top:5px}.contact-aside h2{font-size:35px;margin:20px 0}.contact-aside>p{font-size:13px;max-width:440px}.contact-points{margin-top:25px}.contact-points>div{padding:14px 0;gap:15px}.contact-points p{font-size:11px}.contact-location{display:none}.contact-form{padding:24px 20px}.form-progress{padding-bottom:22px;margin-bottom:23px;gap:10px}.form-progress>.mono{font-size:6px}.form-grid{grid-template-columns:1fr;gap:0}.field{margin-bottom:23px;gap:9px}.field input,.field textarea{font-size:16px;padding:13px 11px}.field input::placeholder,.field textarea::placeholder{font-size:11px}.field>label{font-size:11px}.interest-field>legend{font-size:11px}.interest-options{gap:7px}.interest-options>label>span{font-size:9px;padding:10px;gap:9px}.interest-options .icon{width:11px;height:11px}.consent-label{font-size:10px;line-height:1.8}.field-bottom>.mono{font-size:6px}.form-bottom{margin-top:24px;padding-top:23px;gap:20px}.form-bottom>p{font-size:10px}.form-bottom>.button{font-size:12px;min-height:50px;width:100%}.form-result{padding:20px}.form-result h3{font-size:26px}.form-result p{font-size:12px}.demo-section{padding-top:0;padding-bottom:60px}.demo-disclaimer{flex-direction:column;align-items:start;gap:11px;padding-bottom:20px}.demo-disclaimer>.mono{font-size:7px}.demo-disclaimer>p{font-size:10px}.demo-shell{grid-template-columns:1fr;min-height:0}.demo-sidebar{border-right:0;border-bottom:1px solid #4b6032;padding:23px 20px}.demo-sidebar>.mono{font-size:6px}.demo-sidebar h2{font-size:29px;margin:18px 0 23px}.demo-sidebar h2 br{display:none}.demo-sidebar>label{font-size:10px;margin-bottom:7px}.demo-sidebar select{font-size:14px;padding:12px}.demo-stage-list{display:grid;grid-template-columns:1fr 1fr;margin-top:23px;gap:0 18px}.demo-stage-list li{padding:12px 0;font-size:9px;gap:9px}.demo-stage-list li>span{font-size:6px}.demo-stage-list li>.icon{width:12px}.demo-reset{font-size:9px;margin-top:10px;padding:8px 0}.demo-build-label{display:none}.demo-top{padding:17px;gap:10px}.demo-top>span:first-child{font-size:5px}.demo-top>.mono{font-size:5px}.demo-top .live-dot{width:4px;height:4px;margin-right:5px}.demo-main .demo-content{padding:23px 19px;min-height:365px}.demo-content>.mono{font-size:7px}.demo-content h3{font-size:28px;margin-top:13px}.demo-content blockquote{font-size:15px;margin:20px 0;padding-left:13px}.demo-source-card{padding:14px 12px}.demo-source-card>.mono{font-size:6px}.demo-source-card>div{gap:12px;padding:10px 0;font-size:9px}.demo-source-card>div>span{font-size:7px}.demo-source-card b{font-size:9px}.demo-actions{padding:20px;gap:15px}.demo-actions>p{font-size:10px;max-width:none}.demo-actions>.button{width:100%;font-size:11px;min-height:47px}.demo-line-item{grid-template-columns:1fr 40px 68px;gap:10px;font-size:11px}.demo-line-item.header{font-size:6px}.demo-total{font-size:18px}.demo-note{font-size:11px;padding:12px;margin-top:18px}.demo-explanation{font-size:12px}.demo-choice button{font-size:11px;padding:10px 12px}.approve-label{font-size:11px;gap:10px}.demo-download{font-size:11px}.legal-layout{grid-template-columns:1fr;gap:22px;padding-bottom:55px;padding-top:22px}.legal-layout>aside>.mono{font-size:6px}.legal-layout>aside>nav{flex-direction:row;gap:25px;font-size:11px;margin-top:20px}.legal-body>section{padding:23px 0}.legal-body h2{font-size:25px}.legal-body p{font-size:13px;line-height:1.9;margin-top:15px}.error-page{min-height:calc(100svh - 72px);padding-block:45px 65px}.error-number{font-size:34vw;gap:5px}.error-number .brand-mark{width:22vw;height:22vw}.error-page>h1{font-size:29px;line-height:1.2}.error-page>p{font-size:13px;line-height:1.8}.error-page>.button{font-size:12px;gap:20px}.menu-head{height:72px}.menu-close{font-size:11px;gap:15px}.menu-close>span{font-size:29px}.menu-body{min-height:calc(100dvh - 152px);grid-template-columns:1fr;padding-inline:22px}.menu-links{padding:26px 0;justify-content:center}.menu-links>a{gap:20px;padding:18px 0}.menu-name{font-size:clamp(32px,9.8vw,52px);line-height:1.12;letter-spacing:-.055em}.menu-index{font-size:8px;min-width:18px}.menu-links .icon{width:25px;height:25px;opacity:1;transform:rotate(-45deg);color:#7c8d64}.menu-aside{display:none}.menu-bottom{height:80px;flex-wrap:wrap;gap:8px 25px;padding-block:15px;font-size:9px}.menu-bottom>.mono{font-size:7px}.menu-bottom>a{display:none}.navigation-scene{height:100dvh}}
@media(max-width:370px){.wordmark{font-size:20px}.brand-mark{width:25px}.menu-toggle>span:first-child{display:none}.hero-main h1{font-size:10.2vw}.hero-actions{gap:16px}.hero-actions .button-solid{font-size:10px;padding-inline:12px;gap:13px}.hero-actions .button-text{font-size:9px}.home-hero{min-height:750px}.project-status{max-width:95px!important}.service-row h3{font-size:26px}.section-heading h2{font-size:33px}.map-agent>span{font-size:7px}.map-inputs>button{font-size:7px}.sub-hero h1,.sub-hero:has(h1 br) h1{font-size:10vw}.filter-bar>div{gap:16px}.filter-bar button{font-size:9px}.filter-bar>.mono{display:none}.footer-bottom>div{gap:9px}.form-progress>.mono{font-size:5.5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}html.enhanced [data-reveal]{opacity:1;transform:none}.scene-fallback i{transition:none}::view-transition-old(root),::view-transition-new(root){animation:none!important}.motion-toggle{display:none!important}}
@media print{.site-header,.navigation-scene,.motion-toggle,.closing,.footer-word,.menu-toggle,.hero-scene,.contact-form .form-bottom{display:none!important}body{background:#fff;color:#151914}.container{padding:20px;max-width:100%}.section{padding-block:25px}.sub-hero{padding-block:25px}html.enhanced [data-reveal]{opacity:1;transform:none}.project-art{break-inside:avoid}.mono,.muted,.text-muted,.sub-intro{color:#444}.site-footer{border-top:1px solid #aaa}.footer-bottom{color:#444}.home-hero{height:auto;min-height:0}.hero-main{padding-top:20px}.hero-main h1{font-size:55px}.hero-main em{color:#333}.hero-bottom{display:none}a[href^='http']::after{content:' (' attr(href) ')';font-size:10px}.demo-shell{break-inside:avoid}.paper-section{background:#eee}}

/* Opaque layered fallback when GPU rendering is unavailable. */
.scene-fallback i{border-color:hsl(74 24% calc(36% + var(--i) * 4%));opacity:1}
/* The fallback remains a composed, gently moving scene without GPU access. */
.scene-fallback{animation:span-drift 18s ease-in-out infinite;transform-origin:55% 50%}
@keyframes span-drift{0%,100%{transform:translateY(-5px) rotate(-.7deg)}50%{transform:translateY(7px) rotate(.7deg)}}
.motion-paused .scene-fallback{animation-play-state:paused}
@media(max-width:640px){
  /* Re-compose the diagram rather than reducing important text to miniature labels. */
  .context-map .map-body{flex-direction:column;padding:24px 14px;gap:13px;min-height:0}
  .context-map .map-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:none;gap:7px}
  .context-map .map-inputs>button{display:flex;flex-direction:column;justify-content:flex-start;text-align:center;gap:7px;margin:0;padding:12px 5px;min-height:112px;font-size:11px}
  .context-map .map-inputs small{font-size:9px;line-height:1.4;margin-top:6px}
  .context-map .map-small-icon{width:24px;height:24px;font-size:10px}
  .context-map .map-path{height:20px;width:1px;background:#637247}
  .context-map .map-path svg{display:none}
  .context-map .map-agent{width:150px;min-width:0;max-width:none;aspect-ratio:auto;padding:20px 8px}
  .context-map .map-agent>span{font-size:14px}.context-map .map-agent>small{font-size:8px}
  .context-map .map-agent>.brand-mark{width:30px;height:30px;margin-bottom:12px}
  .context-map .map-output{width:auto;display:block;position:relative;padding-top:25px}
  .context-map .map-output-line{position:absolute;top:0;left:50%;height:15px;width:1px;min-width:0}
  .context-map .map-output>div{font-size:13px}.context-map .map-output small{font-size:10px;margin-top:5px}
  .context-map .map-footer{font-size:7px}
}

/* No-JavaScript navigation and a fail-closed form enhancement. */
.no-script-nav{display:flex;gap:24px;flex-wrap:wrap;padding-block:22px;border-bottom:1px solid var(--line);font-size:14px}
.form-enable{border:0;margin:0;padding:0;min-width:0}
.scene-fallback,.map-path circle{animation:none}
.enhanced .scene-fallback{animation:span-drift 18s ease-in-out infinite}
.enhanced .map-path circle{animation:map-pulse 3s infinite}
html.motion-paused .scene-fallback,html.motion-paused .map-path circle{animation-play-state:paused}

/* Refinement: readable captions, and movement drawn from the span geometry. */
.mono{font-family:var(--font);font-size:12px;letter-spacing:0;text-transform:none;line-height:1.55}
.eyebrow{font-family:var(--font);font-size:13px;letter-spacing:0;text-transform:none;gap:13px;color:var(--muted)}
.eyebrow .index{font:11px var(--mono);opacity:.7}
.hero-topline>.mono,.hero-location{font-size:12px}
.scroll-link>.mono{font-size:12px}
.service-tags.mono{font-size:12px;line-height:1.8}
.project-status.mono{font-size:11px;letter-spacing:0;border:0;padding:0;max-width:150px}
.section-heading .eyebrow{align-self:start}
.sub-hero-meta .eyebrow{font-size:14px}
.trust-strip>.mono{font-size:11px;max-width:125px}
.footer-top .brand>.mono{font-size:11px}.footer-location{font-size:11px}
.footer-bottom{font:11px/1.5 var(--font)}
.work-disclosure>.mono,.next-project>.mono,.more-notes>.mono,.contact-aside>.mono,.company-feature-copy>.mono,.essay-layout aside>.mono,.essay-toc>.mono{font-size:12px}
.form-progress>.mono,.demo-top .mono,.demo-disclaimer>.mono,.demo-source-card>.mono,.demo-content>.mono,.demo-sidebar>.mono{font-size:12px}
.map-header,.map-footer{font-size:11px}.map-agent>small{font:10px/1.5 var(--font)}
.art-foot.mono,.advisory-art>.mono,.mawzun-art>.mono{font-size:10px;letter-spacing:0}
.chapter-outputs.mono{font-size:12px}.contact-location.mono{font-size:12px}
.hero-main h1>span:first-child,.hero-main h1>span:last-child{animation-duration:.8s}
.hero-copy{animation-duration:.8s}
.home-hero,.project-art,.company-lens,.chapter-glyph{--pointer-x:0;--pointer-y:0}
.hero-main h1 em{display:inline-block;transition:color .4s,text-shadow .4s; text-shadow:calc(var(--pointer-x)*-6px) calc(var(--pointer-y)*-3px) 28px #e1ee9612}
.scene-registration{translate:calc(var(--pointer-x)*-12px) calc(var(--pointer-y)*-9px);transition:translate .6s var(--ease)}
.scene-fallback i{rotate:calc(var(--pointer-x)*7deg);translate:calc(var(--pointer-x)*var(--i)*2px) calc(var(--pointer-y)*-5px);transition:rotate .7s var(--ease),translate .7s var(--ease)}
/* Keep existing perspective transforms; individual transforms add a shallow second plane. */
.project-art :is(.rivet-ui,.dental-ui){translate:calc(var(--pointer-x)*-12px) calc(var(--pointer-y)*-9px);rotate:calc(var(--pointer-x)*1.5deg);transition:transform .65s var(--ease),translate .65s var(--ease),rotate .65s var(--ease)}
.project-art :is(.three-mark,.mawzun-symbol){translate:calc(var(--pointer-x)*12px) calc(var(--pointer-y)*9px);transition:translate .65s var(--ease)}
.company-lens .lens-disc{translate:calc(var(--pointer-x)*14px) calc(var(--pointer-y)*10px);transition:translate .8s var(--ease)}
.company-lens .lens-ring{translate:calc(var(--pointer-x)*var(--i)*-5px) calc(var(--pointer-y)*var(--i)*3px);transition:translate .8s var(--ease)}
.chapter-glyph>i{translate:calc(var(--pointer-x)*var(--i)*3px) calc(var(--pointer-y)*var(--i)*3px);transition:translate .6s var(--ease)}
.menu-sculpture>div{transform:translateX(-50%) rotateX(40deg) rotateY(calc(-30deg + var(--chapter,0)*5deg)) rotateZ(calc(-25deg + var(--chapter,0)*3deg)) translateZ(calc(var(--i)*(19px + var(--chapter,0)*2px)))}
/* A finite assembly on entry; text remains readable throughout. */
@keyframes plane-assemble{from{opacity:.25;translate:0 25px;scale:.96}to{opacity:1;translate:0 0;scale:1}}
@keyframes bar-assemble{from{scale:1 .18}to{scale:1 1}}
@keyframes frame-align{0%{rotate:-7deg;scale:.88}45%,65%{rotate:4deg;scale:1.025}100%{rotate:-7deg;scale:.88}}
@keyframes spectrum-wave{0%,100%{scale:1 .82}50%{scale:1 1.09}}
@keyframes signal-travel{from{stroke-dashoffset:80}to{stroke-dashoffset:0}}
@keyframes context-breathe{0%,100%{border-color:#657645;background-color:#27341c}50%{border-color:#b7cb80;background-color:#304020}}
@keyframes span-turn{0%,100%{rotate:-5deg}50%{rotate:9deg}}
@keyframes ring-breathe{0%,100%{scale:1}50%{scale:.94}}
.enhanced .motion-entered :is(.appointment,.loose-note){animation:plane-assemble .7s var(--ease) both}
.enhanced .motion-entered .appointment:nth-child(3){animation-delay:.1s}
.enhanced .motion-entered .note-b{animation-delay:.12s}.enhanced .motion-entered .note-c{animation-delay:.24s}
.enhanced .motion-entered .bars>i{transform-origin:bottom;animation:bar-assemble .8s var(--ease) both;animation-delay:calc(var(--bar)*15ms)}
.enhanced .chapter-glyph.motion-entered>i{animation:frame-align 9s ease-in-out infinite;animation-delay:calc(var(--i)*-.35s)}
.enhanced .approach-spectrum.motion-entered i{animation:spectrum-wave 4.8s ease-in-out infinite}
.approach-spectrum i:nth-child(2n){animation-delay:-.6s}.approach-spectrum i:nth-child(3n){animation-delay:-1.2s}
.enhanced .small-span.motion-entered .brand-mark{animation:span-turn 10s ease-in-out infinite}
.enhanced .company-lens.motion-entered .lens-ring{animation:ring-breathe 8s ease-in-out infinite;animation-delay:calc(var(--i)*-.6s)}
.enhanced .mawzun-symbol i{transition:rotate .7s var(--ease);rotate:calc(var(--pointer-x)*var(--i)*1.5deg)}
.enhanced .context-map.motion-entered .map-path path{stroke-dasharray:7 13;animation:signal-travel 3.5s linear infinite}
.enhanced .context-map.motion-entered .map-agent{animation:context-breathe 5s ease-in-out infinite}
.map-inputs>button{transition:border-color .3s,background .3s,translate .4s var(--ease)}
.map-inputs>button:hover{border-color:#a0b572;background:#2b3821;translate:3px 0}
.map-inputs>button:hover .icon{transform:rotate(90deg)}
.enhanced .footer-word.motion-entered{animation:plane-assemble .8s var(--ease) both}
/* Quiet, directional feedback for the rest of the site. */
.service-row{transition:background .35s}
.service-row:hover{padding-left:0;background:#22281e04}
.service-row h3{transition:translate .4s var(--ease),color .3s}
.service-row:is(:hover,:focus-visible) h3{translate:8px 0}
.service-row:is(:hover,:focus-visible) .round-arrow{background:var(--bg);color:var(--paper);transform:rotate(45deg)}
.project-card:focus-within .project-card-meta>.icon{transform:translate(4px,-4px) rotate(-45deg)}
.button:focus-visible:before{transform:translateY(0)}
.button:active{scale:.98}.button{transition:background .3s,color .3s,scale .18s}
.closing-link>span:first-child{transition:translate .6s var(--ease)}
.closing-link:is(:hover,:focus-visible)>span:first-child{translate:10px 0}
.essay-thumbnail{transition:rotate .55s var(--ease),scale .55s var(--ease)}
.essay-index a:is(:hover,:focus-visible) .essay-thumbnail{rotate:-5deg;scale:1.04}
.demo-stage-list li{transition:color .25s,background .25s}.demo-stage-list li>span{transition:background .25s,color .25s}
.interest-options label>span{transition:border-color .25s,background .25s}
.interest-options input:checked+span .icon{transform:rotate(45deg)}
.field input,.field textarea{transition:border-color .2s,background .2s}
.field input:focus,.field textarea:focus{background:#e1ee9605}
.menu-toggle,.back-top{min-width:44px;min-height:44px}
html.enhanced [data-reveal]{transition-duration:.65s;transform:translateY(16px)}
html.enhanced [data-reveal].is-visible{transform:none}
/* Loops only run in the viewport; hidden tabs and the pause control stop them. */
.enhanced .motion-object:not(.motion-in-view),.enhanced .motion-object:not(.motion-in-view) *{animation-play-state:paused!important}
.span-scene.has-webgl .scene-fallback{animation:none}
html.motion-paused *,html.motion-paused *::before,html.motion-paused *::after{animation-play-state:paused!important;transition:none!important}
html.motion-paused [data-reveal]{opacity:1;transform:none}
@media(hover:hover) and (pointer:fine){
 .home-hero:hover h1 em{color:#edf7b5}
 .project-card:hover .bars>i{scale:1 .94}.project-card .bars>i{transition:scale .5s var(--ease)}
}
@media(max-width:650px){
 .hero-topline>.mono,.hero-location{font-size:10px}.hero-topline{gap:16px}.hero-location{white-space:nowrap}
 .scroll-link>.mono{font-size:11px}.eyebrow{font-size:12px}
 .project-status.mono{font-size:10px;max-width:112px}.project-card-meta{flex-wrap:wrap}.project-card-meta>.project-status{order:3;margin:0;text-align:left}
 .trust-strip>.mono{font-size:10px;max-width:100px}
 .footer-top .brand>.mono{font-size:10px}.footer-bottom{font-size:10px;flex-wrap:wrap}
 .footer-bottom>div{gap:15px}.footer-top nav{font-size:12px}
 .context-map .map-header,.context-map .map-footer{font-size:10px}.context-map .map-agent>small{font:10px var(--font)}
 .chapter-glyph{display:block;width:65px;height:65px;margin-top:18px;grid-column:2;justify-self:start}
 .chapter-glyph>i{inset:calc(var(--i)*4px)}.glyph-03>i{inset:8px;border-width:3px}
 .form-progress>.mono,.demo-top .mono,.demo-disclaimer>.mono,.demo-source-card>.mono,.demo-content>.mono,.demo-sidebar>.mono{font-size:11px}
 .demo-top{gap:10px;flex-wrap:wrap}.form-progress{gap:12px}
 .lens-label{font-size:10px}.art-foot.mono{font-size:9px}
 .closing-link:is(:hover,:focus-visible)>span:first-child{translate:0}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 html.enhanced *,html.enhanced *::before,html.enhanced *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 html.enhanced [data-reveal]{opacity:1;transform:none}
 .scene-registration,.scene-fallback i,.project-art :is(.rivet-ui,.dental-ui,.three-mark,.mawzun-symbol),.company-lens :is(.lens-disc,.lens-ring),.chapter-glyph>i{translate:none;rotate:none}
}

.menu-name{transition:translate .4s var(--ease)}
.menu-links>a:is(:hover,:focus-visible) .menu-name{translate:10px 0}
.enhanced .design-visual.motion-entered>.brand-mark{animation:span-turn 10s ease-in-out infinite}
.enhanced .systems-visual.motion-entered .unified>.brand-mark{animation:plane-assemble .8s .25s var(--ease) both}
.enhanced .design-visual.motion-entered .design-controls>span{animation:plane-assemble .6s var(--ease) both}
.design-controls>span:nth-child(2){animation-delay:.1s}.design-controls>span:nth-child(3){animation-delay:.2s}
@media(prefers-reduced-motion:reduce){.menu-name{translate:none!important}}

/* Operational text remains readable at phone sizes. */
.demo-source-card>div,.demo-source-card b,.demo-source-card>div>span{font-size:12px;line-height:1.6}
.demo-source-card>div>b{flex:1}.demo-source-card>div>span{flex:1}
.demo-line-item.header{font:11px var(--font)}
.state-line,.approach-spectrum>span{font-family:var(--font);font-size:11px}
@media(max-width:650px){
 .demo-source-card>div{flex-direction:column;gap:4px}
 .demo-source-card>div>span{text-align:left}
 .demo-stage-list li{font-size:11px}.demo-stage-list li>span{font-size:10px}
 .approach-spectrum{flex-wrap:wrap}.approach-spectrum>div{min-width:110px}.approach-spectrum>span{font-size:10px}
}

/* Mobile containment and stable modal lifecycle. Clip artwork locally; allow text to wrap. */
html{overflow-x:clip;scrollbar-gutter:stable}
body{overflow-x:clip;min-width:0}
main{overflow-x:clip}
:where(.container,.two-column,.sub-hero-content,.project-grid,.context-section,.method-teaser,.company-feature,.contact-layout,.essay-layout,.legal-layout,.form-grid,.menu-body)>*{min-width:0}
:where(h1,h2,h3,p,a,button,small){overflow-wrap:break-word}
:where(input,textarea,select,fieldset){min-width:0;max-width:100%}
.project-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
.two-column{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.project-art,.company-lens,.design-visual,.systems-visual{overflow:clip}
.navigation-scene[open],.navigation-scene.is-closing{animation:none;clip-path:none}
.navigation-scene{overflow-x:clip;overscroll-behavior:contain}
.navigation-scene::backdrop{background:transparent}
html.menu-open{scroll-behavior:auto}
html.menu-open body{position:fixed;top:var(--menu-scroll,0);left:0;width:100%;overflow:hidden}
.menu-links>a{min-width:0}.menu-name{min-width:0}.menu-links .icon{flex-shrink:0}
@media(max-width:640px){
 .project-grid,.two-column{grid-template-columns:minmax(0,1fr)}
 .hero-actions,.service-subnav,.service-subnav>div,.work-filters,.capability-band,.principles-strip{flex-wrap:wrap}
 .hero-actions .button-solid{min-width:0}.hero-actions{gap:18px}
 .section-heading,.context-intro,.perspective-copy,.method-teaser>div,.company-body,.contact-form{min-width:0}
 .service-row{grid-template-columns:24px minmax(0,1fr) 35px}
 .site-footer nav{flex-wrap:wrap;justify-content:flex-start;gap:12px 22px}
 .map-footer{flex-wrap:wrap}.map-footer>span{white-space:normal}
 .footer-word{font-size:17.7vw}
 .menu-name{font-size:clamp(28px,9vw,44px)}
 .menu-body{min-height:calc(100svh - 152px)}
 .closing-top>.eyebrow,.sub-hero-meta>.eyebrow{font-size:12px}
 .sub-hero-meta>.eyebrow{max-width:100%}
}
/* Different motion for different jobs. No shared pointer tilt on every object. */

.project-art :is(.rivet-ui,.dental-ui,.three-mark,.mawzun-symbol),.company-lens :is(.lens-disc,.lens-ring),.chapter-glyph>i{translate:none;rotate:none}
.project-card:hover .bars>i{scale:1}
.menu-aside:hover .menu-sculpture>div{transform:translateX(-50%) rotateX(40deg) rotateY(-30deg) rotateZ(-25deg) translateZ(calc(var(--i)*19px))}
@keyframes fan-discover{from{rotate:calc(var(--i)*-13deg);opacity:.2}to{rotate:0deg;opacity:1}}
@keyframes focus-find{from{scale:1.5;opacity:.1}to{scale:1;opacity:1}}
@keyframes structure-build{from{translate:0 calc(var(--i)*-14px);opacity:0}to{translate:0 0;opacity:1}}
@keyframes frame-resolve{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}
.enhanced .chapter-glyph.motion-entered>i{animation:fan-discover 1s var(--ease) both;animation-delay:calc(var(--i)*70ms)}
.enhanced .glyph-02.motion-entered>i{animation-name:focus-find}
.enhanced .glyph-03.motion-entered>i{animation-name:structure-build}
.enhanced .glyph-04.motion-entered>i{animation-name:frame-resolve}
.enhanced .company-lens.motion-entered .lens-ring{animation:focus-find 1.3s var(--ease) both;animation-delay:calc(var(--i)*90ms)}
.enhanced .small-span.motion-entered .brand-mark,.enhanced .design-visual.motion-entered>.brand-mark{animation:frame-resolve 1s var(--ease) both}
.enhanced .context-map.motion-entered .map-agent{animation:none}
.enhanced .footer-word.motion-entered{animation:frame-resolve 1.1s var(--ease) both}
.enhanced .approach-spectrum.motion-entered i{animation:bar-assemble .7s var(--ease) both;transform-origin:bottom}

.map-inputs>button{width:100%;text-align:left;color:inherit;font-family:var(--font);cursor:pointer}
.map-inputs>button[aria-pressed="true"]{border-color:#bacd88;background:#303e24}
.map-inputs>button:hover{translate:none}
.map-explanation{font-size:12px;line-height:1.65;color:#b5c6a0;max-width:none;padding:0 22px 22px;min-height:62px}
@media(max-width:640px){.context-map .map-inputs>button{min-height:58px}.map-explanation{padding:0 20px 20px;font-size:12px;min-height:80px}}

@media(max-width:640px){.service-subnav>div>.mono{font-size:11px}.service-subnav>div{gap:9px 15px}}

/* Keep the real header stationary in the modal; only the panel below it moves. */
.site-header{color:var(--ink)}
.navigation-scene{overflow:hidden;background:transparent}
.navigation-scene>.site-header{position:relative;top:0;margin-bottom:0!important;flex-shrink:0}

.menu-panel{height:calc(100dvh - 92px);overflow-y:auto;overscroll-behavior:contain;background:var(--paper)}
.navigation-scene .menu-body{min-height:calc(100dvh - 166px)}
@media(max-width:980px){.menu-panel{height:calc(100dvh - 80px)}.navigation-scene .menu-body{min-height:calc(100dvh - 154px)}}
@media(max-width:640px){.menu-panel{height:calc(100dvh - 72px)}.navigation-scene .menu-body{min-height:calc(100dvh - 152px)}}

.navigation-scene .site-header :focus-visible{outline-color:var(--accent)}

/* In-place text arrivals replace the old whole-section slide/fade. */
html.enhanced [data-reveal]{opacity:1;transform:none;transition:none}
text-run,text-fragment{display:inline}
text-run.text-arrival{opacity:0}
@media(prefers-reduced-motion:reduce){text-run.text-arrival,text-fragment{opacity:1!important}}
html.motion-paused text-run.text-arrival,html.motion-paused text-fragment{opacity:1!important}
@media print{text-run.text-arrival,text-fragment{opacity:1!important}}

/* The menu mark fills with citrine as its two strokes resolve into a cross. */
.menu-glyph{position:relative;isolation:isolate;overflow:hidden;gap:0;--toggle-duration:180ms;transition:border-color var(--toggle-duration) ease,background var(--toggle-duration) ease}
.menu-glyph::before{content:"";position:absolute;inset:-1px;background:var(--accent);transform:translateY(103%);transition:transform var(--toggle-duration) cubic-bezier(.22,1,.36,1);z-index:-1}
.menu-glyph i{position:absolute;left:50%;top:50%;margin-left:-7px;margin-top:-.75px;width:14px;height:1.5px;scale:1!important;transform-origin:center;transition:transform var(--toggle-duration) cubic-bezier(.22,1,.36,1),background var(--toggle-duration) ease}
.menu-glyph i:first-child{transform:translateY(-3px) rotate(0deg)}
.menu-glyph i:last-child{transform:translateY(3px) rotate(0deg)}
.menu-toggle[data-menu-open="true"] .menu-glyph{--toggle-duration:380ms;border-color:var(--accent);background:transparent}
.menu-toggle[data-menu-open="true"] .menu-glyph::before{transform:translateY(0)}
.menu-toggle[data-menu-open="true"] .menu-glyph i{background:var(--bg)}
.menu-toggle[data-menu-open="true"] .menu-glyph i:first-child{transform:translateY(0) rotate(45deg)}
.menu-toggle[data-menu-open="true"] .menu-glyph i:last-child{transform:translateY(0) rotate(-45deg)}
@media(hover:hover){.menu-toggle:not([data-menu-open="true"]):hover .menu-glyph{border-color:var(--accent)}.menu-toggle[data-menu-open="true"]:hover .menu-glyph{background:transparent}}

/* A steady header frame lets the navigation settle into a smaller glass surface. */
html body .site-header,html body[data-page="/"] .site-header{padding:0;background:transparent;border:0;backdrop-filter:none;justify-content:center}
.header-shell{position:relative;display:flex;align-items:center;justify-content:space-between;width:100%;max-width:100%;height:100%;padding:0 var(--gutter);background:#151914f5;border:1px solid transparent;transition:width .5s var(--ease),max-width .5s var(--ease),height .5s var(--ease),padding .5s var(--ease),transform .5s var(--ease),background .4s,border-color .4s,border-radius .5s,box-shadow .5s}
body[data-page="/"] .header-shell{background:transparent}
.header-condensed .header-shell{width:calc(100% - 2 * clamp(14px,4.2vw,72px));max-width:1180px;height:62px;padding-inline:22px;transform:translateY(10px);border-radius:9px;border-color:#d1dfb21c;background:#111b16d9;backdrop-filter:blur(20px) saturate(120%);box-shadow:0 8px 30px #0002}
.header-shell .brand{transform-origin:left center;transition:transform .5s var(--ease)}
.header-condensed .header-shell .brand{transform:scale(.93)}
.header-shell .reading-progress{display:none}
@media(max-width:640px){
 .header-shell{padding-inline:22px}
 .header-shell .header-actions{gap:14px}
 .site-header .header-contact{display:flex;font-size:11px;gap:8px;white-space:nowrap}
 .site-header .header-contact .icon{width:16px;height:16px}
 .header-condensed .header-shell{width:calc(100% - 20px);height:56px;padding-inline:12px;transform:translateY(8px);border-radius:8px}
 .header-condensed .header-shell .brand{transform:scale(.92)}
}
@media(max-width:520px){.header-shell .menu-toggle>span:first-child{display:none}.header-shell .header-actions{gap:10px}.header-shell .wordmark{font-size:20px}.header-shell .brand-mark{width:25px}.header-shell .brand{gap:8px}}

/* Shared coordinates keep the stationary track and its traveling highlight together. */
.map-connections{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke-width:1;pointer-events:none;overflow:visible}
.connection-tracks{stroke:#62734c;opacity:.65}
.connection-flow{stroke:#dbeaa3;stroke-width:1.3;stroke-linecap:round}
.connection-flow path{stroke-dasharray:9 91;stroke-dashoffset:100;opacity:0}
.context-map.motion-in-view .connection-flow path{opacity:.9;animation:context-signal 3.2s linear infinite}
.context-map.motion-in-view .connection-flow path:nth-child(4){animation-delay:.75s}
.context-map.motion-in-view .connection-flow path:nth-child(5){animation-delay:1.2s}
@keyframes context-signal{from{stroke-dashoffset:100}to{stroke-dashoffset:-100}}
.map-inputs,.map-agent,.map-output{position:relative;z-index:1}
.map-output{padding-left:18px}
.map-small-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}
.context-icon{width:21px;height:21px;display:block;flex-shrink:0;color:var(--accent)}
.map-inputs>button:hover .context-icon{transform:none}
.context-beyond{grid-column:1/-1;border-top:1px solid var(--line);margin-top:58px;padding-top:42px;display:grid;grid-template-columns:1fr 1.2fr;gap:70px}
.context-beyond h3{font-size:clamp(27px,3vw,44px);line-height:1.12;letter-spacing:-.04em;font-weight:450}
.context-beyond p{font-size:14px;line-height:1.8;color:var(--muted);margin-top:22px;max-width:500px}
.example-label{font-size:12px;color:#bdc9b0}
.vision-sequence{display:grid;grid-template-columns:1fr 18px 1fr 18px 1fr;align-items:center;gap:12px;margin-top:25px}
.vision-sequence>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0}
.vision-sequence .context-icon{width:27px;height:27px;margin-bottom:6px}
.vision-sequence>div>span{font-size:13px}.vision-sequence small{font-size:10px;color:var(--muted)}
.vision-sequence>.icon{width:16px;height:16px;color:#84956b}
@media(max-width:980px){.context-beyond{gap:35px}.context-beyond p{font-size:13px}.vision-sequence{gap:8px}}
@media(max-width:640px){
 .context-map .map-path{width:100%;height:22px;background:none}
 .context-map .map-output{padding-left:0;padding-top:25px}
 .context-map .map-small-icon{width:28px;height:28px}.context-map .context-icon{width:18px;height:18px}
 .context-beyond{grid-template-columns:1fr;gap:30px;margin-top:35px;padding-top:30px}
 .context-beyond p{margin-top:16px}.vision-sequence{gap:6px;grid-template-columns:1fr 12px 1fr 12px 1fr}
 .vision-sequence>div>span{font-size:11px}.vision-sequence small{font-size:9px}.vision-sequence>.icon{width:12px}
}
@media(prefers-reduced-motion:reduce){.connection-flow{display:none}.header-shell,.header-shell .brand{transition:none!important}}
html.header-condensed .header-shell{background:#111b16d9}
.header-shell .header-contact{min-height:44px}
.vision-sequence{align-items:start}
.vision-sequence>div>span{min-height:2.6em;line-height:1.3}
.vision-sequence>.icon{align-self:center;margin-bottom:20px}

/* The floating header stays above a continuous light menu canvas. */
.menu-backdrop{position:fixed;inset:0;z-index:0;background:var(--paper);opacity:0;pointer-events:none}
.menu-panel{position:relative;z-index:1}
.navigation-scene>.site-header{z-index:2}
.menu-sculpture{height:240px;margin:20px 0 26px;perspective:none;overflow:visible}
.menu-sculpture>div,.menu-aside:hover .menu-sculpture>div{left:50%;top:50%;width:var(--piece-w,150px);height:var(--piece-h,105px);border:1px solid #788766;border-radius:var(--piece-radius,5px);background:#c4ccb31c;box-shadow:none;opacity:var(--piece-opacity,1);transform:translate(-50%,-50%) translate(var(--piece-x,0px),var(--piece-y,0px)) rotate(var(--piece-angle,-24deg));transition:transform .65s var(--ease),width .65s var(--ease),height .65s var(--ease),border-radius .65s var(--ease),opacity .35s}
.menu-sculpture>div:last-child{background:#77895733;border-color:#536b37;box-shadow:0 14px 35px #485c2110}
.menu-caption{min-height:165px;line-height:1.2;font-size:clamp(24px,2.4vw,38px);max-width:340px}
@media(min-width:641px) and (max-width:980px){.menu-aside{padding-left:25px}.menu-sculpture{transform:scale(.74);height:220px}.menu-caption{font-size:24px;min-height:190px}}

/* Group the two kinds of work instead of placing labels in an extra column. */
.trust-strip{display:grid;grid-template-columns:1fr 1fr;gap:0;min-height:160px;padding-block:28px}
.trust-group{min-width:0;padding-inline:32px;display:flex;flex-direction:column;gap:24px}
.trust-group:first-child{padding-left:0;border-right:1px solid var(--line)}
.trust-group:last-child{padding-right:0}
.trust-label{font-size:11px;color:var(--muted)}
.trust-logos{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:25px;min-height:46px}
.trust-logos>a{justify-self:center;color:#d0d4c7;text-align:center;line-height:1;transition:opacity .2s}
.trust-logos>a:hover{opacity:.75}
.trust-logos .trust-3ts{font-family:'Cormorant Garamond',Georgia,serif;font-size:38px;font-weight:600;letter-spacing:-.04em}
.trust-3ts>span{display:block;font:400 9px var(--font);letter-spacing:.07em;margin-top:5px}
.trust-logos .trust-mawzun{font-size:19px;letter-spacing:.1em;font-weight:400}
.trust-mawzun>span{display:block;font:400 6px var(--font);letter-spacing:.3em;margin-top:9px}
.trust-logos .trust-rivet{display:block;width:120px;max-width:100%;font-size:0}
.trust-rivet img{display:block;width:100%;height:auto;opacity:.85}
.trust-logos .trust-dental{font-size:26px;letter-spacing:-1.5px;white-space:nowrap}
.trust-dental>span{color:var(--muted)}
@media(max-width:980px){.trust-group{padding-inline:22px}.trust-logos{gap:16px}.trust-logos .trust-mawzun{font-size:16px}.trust-logos .trust-rivet{width:100px}.trust-logos .trust-dental{font-size:23px}}
@media(max-width:520px){.trust-strip{grid-template-columns:1fr;padding-block:24px;gap:24px}.trust-group,.trust-group:first-child,.trust-group:last-child{padding:0;border:0;gap:17px}.trust-group:last-child{padding-top:22px;border-top:1px solid var(--line)}.trust-label{font-size:11px}.trust-logos{gap:26px}.trust-logos .trust-3ts{font-size:35px}.trust-logos .trust-mawzun{font-size:17px}.trust-logos .trust-rivet{width:116px}.trust-logos .trust-dental{font-size:25px}}

/* Keep the perspective label with its text instead of reserving an empty side rail. */
.perspective-section{grid-template-columns:1fr;gap:32px}
.perspective-section .section-side{display:block}
.perspective-section .section-side>.eyebrow{max-width:none;align-items:center}
.perspective-section .small-span{display:none}
.perspective-copy{max-width:1080px;margin-left:auto;width:100%}
.perspective-copy h2{max-width:950px}
@media(min-width:981px){.perspective-copy h2{font-size:clamp(48px,5vw,76px)}.perspective-bottom{max-width:860px}}
@media(max-width:980px){.perspective-copy h2{font-size:clamp(38px,6.2vw,62px)}}

/* The spectrum owns its spacing; labels never share a row with tilted edges. */
.approach-spectrum{display:grid;grid-template-columns:1fr 1fr;gap:20px;min-width:0}
.approach-spectrum>div{grid-column:1/-1;grid-row:1;display:flex;justify-content:space-between;align-items:center;gap:clamp(10px,2vw,25px);min-width:0!important;padding-inline:16px;height:105px}
.approach-spectrum>span{font:400 12px var(--font);white-space:nowrap}
.approach-spectrum>span:last-child{justify-self:end}
.approach-spectrum i{width:7px;flex:0 0 7px}
.approach-intro{gap:60px}
.chapter-diagram{width:160px;max-width:100%;justify-self:end;margin-top:40px;color:#879577}
.chapter-diagram svg{display:block;width:100%;height:auto}
.diagram-accent{stroke:#556d36;stroke-width:2}
.diagram-point{fill:#556d36;stroke:none}
.diagram-bar{stroke:#a4b68b;stroke-width:15;stroke-linecap:butt}
.chapter-diagram.motion-entered .diagram-accent{stroke-dasharray:300;animation:chapter-diagram-draw 1.3s var(--ease) both}
@keyframes chapter-diagram-draw{from{stroke-dashoffset:300;opacity:.2}to{stroke-dashoffset:0;opacity:1}}
.approach-chapter h2{font-size:clamp(34px,3.8vw,60px);line-height:1.08;letter-spacing:-.045em;margin-bottom:25px}
.approach-chapter h3{font-size:23px;line-height:1.3;letter-spacing:-.025em}
.chapter-outputs{font-family:var(--font);font-size:11px;line-height:1.5;gap:22px}
.context-foundation{margin-bottom:42px}
.context-foundation .muted{margin-top:22px;line-height:1.8}
@media(max-width:980px){.approach-intro{gap:35px}.chapter-diagram{width:110px}.approach-chapter{grid-template-columns:8% minmax(0,1fr) 110px;gap:4%}.approach-chapter h2{font-size:39px}.approach-chapter h3{font-size:21px}.capability-note h2{font-size:clamp(35px,5vw,56px)}}
@media(max-width:640px){.approach-spectrum>div{gap:12px;padding-inline:14px;height:88px}.approach-spectrum i{width:5px;flex-basis:5px;max-height:78px}.approach-spectrum>span{font-size:11px}.approach-chapter{grid-template-columns:28px minmax(0,1fr);gap:16px}.approach-chapter h2{font-size:32px}.approach-chapter h3{font-size:20px}.chapter-diagram{grid-column:2;width:115px;justify-self:start;margin-top:5px}.chapter-outputs{flex-wrap:wrap;font-size:10px;gap:12px}.context-foundation{margin-bottom:28px}}
@media(prefers-reduced-motion:reduce){.chapter-diagram .diagram-accent{stroke-dashoffset:0!important;animation:none!important}.menu-sculpture>div{transition:none!important}}

/* Balanced groups share the full strip width at every breakpoint. */
.trust-strip{justify-items:stretch;align-items:stretch}
.trust-group{width:100%;justify-content:flex-start}
.trust-logos{width:100%;min-width:0;min-height:56px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.trust-logos .trust-mawzun,.mawzun-word{font-family:'Outfit',var(--font);font-weight:400}
.mawzun-art>.mono:last-of-type{font-family:'Outfit',var(--font)}
.three-mark,.three-mark>span:first-child{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;letter-spacing:-.06em}
.advisory-line{display:none}
.art-brand.rivet-brand-image{width:150px;height:auto;object-fit:contain}
.art-large .art-brand.rivet-brand-image{width:220px}
.rivet-sidebar-logo{width:72px;height:auto;margin-bottom:22px}
.rivet-ui{font-family:'Manrope',var(--font)}
@media(max-width:640px){.art-brand.rivet-brand-image,.art-large .art-brand.rivet-brand-image{width:132px}.rivet-sidebar-logo{width:58px;margin-bottom:12px}}

/* Keep a shared left edge and align the supporting paragraphs at their tops. */
.perspective-copy{margin-left:0;max-width:1200px}
.perspective-copy h2{max-width:1120px;font-size:clamp(38px,4.7vw,74px);line-height:1.12;text-wrap:balance}
.perspective-bottom{max-width:960px;gap:clamp(28px,5vw,80px);margin-top:38px;align-items:start}
.perspective-bottom p+p{margin-top:0}
@media(min-width:1200px){.perspective-section{padding-block:104px;gap:32px}.perspective-bottom p{font-size:16px}}
@media(max-width:640px){.perspective-copy h2{font-size:clamp(36px,8vw,49px);text-wrap:initial}.perspective-bottom{margin-top:28px;gap:18px}}

/* Native sticky positioning keeps the page's own scroll rhythm. */
@media(min-width:741px){
 .two-column.sticky-story{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,7vw,110px);align-items:start}
 .sticky-heading{position:sticky;top:124px;align-self:start}
 .sticky-story .sticky-heading h2{font-size:clamp(45px,4.7vw,72px);line-height:1.09;max-width:9.5em;text-wrap:balance}
 .sticky-story .use-case-list>div{padding-block:36px}
 .sticky-story .detail-steps>div{padding-block:38px}
 .sticky-story .use-case-list>div:first-child,.sticky-story .detail-steps>div:first-child{padding-top:12px}
}
@media(min-width:1100px){
 .header-shell{transition:width .9s cubic-bezier(.33,0,.16,1),max-width .9s cubic-bezier(.33,0,.16,1),height .8s cubic-bezier(.33,0,.16,1),padding .9s cubic-bezier(.33,0,.16,1),transform .8s cubic-bezier(.33,0,.16,1),background .65s,border-color .65s,border-radius .85s,box-shadow .85s}
 .header-shell .brand{transition:transform .85s cubic-bezier(.33,0,.16,1)}
}

/* One set of strokes reshapes into a chip, folder, route, people, book, or chat. */
.menu-aside{justify-content:center;gap:clamp(16px,4vh,40px)}
.menu-sculpture{width:100%;height:auto;aspect-ratio:1;max-height:380px;margin:0;transform:none;display:grid;place-items:center}
.menu-symbol{width:min(100%,350px);height:auto;max-height:100%;color:#788967;overflow:visible}
.menu-symbol path{transition:d .85s cubic-bezier(.22,1,.36,1);vector-effect:non-scaling-stroke}
.menu-symbol path:nth-child(1),.menu-symbol path:nth-child(2){stroke:#4c653a;stroke-width:1.6}
.menu-symbol path:nth-child(1){fill:#8fa67509}
.menu-caption{min-height:150px;max-width:350px;margin:0}
@media(min-width:641px) and (max-width:980px){.menu-aside{padding-left:24px}.menu-sculpture{height:auto;transform:none;max-height:320px}.menu-caption{font-size:24px;min-height:160px}}

/* Slow, legible process loops. Paused whenever the illustration leaves view. */
.chapter-diagram{width:224px;margin-top:28px;color:#849578;align-self:center}
.chapter-diagram .diagram-surface{fill:#e9eae2;stroke:#97a38c}
.chapter-diagram .diagram-grid{opacity:.22;stroke-width:1}
.chapter-diagram .diagram-strong{stroke:#4f6939;stroke-width:1.8}
.chapter-diagram .loop{animation-play-state:paused!important}
.chapter-diagram.motion-in-view .loop{animation-play-state:running!important}
html.menu-open .chapter-diagram .loop{animation-play-state:paused!important}
.diagram-scan{stroke:#8a9d69;stroke-width:2;opacity:.45;animation:diagram-scan 7s ease-in-out infinite}
.diagram-lens{animation:diagram-search 7s cubic-bezier(.45,0,.3,1) infinite}
.diagram-lens-glass{fill:#e0e6d5f2;stroke:#61794a}
.diagram-discovery{stroke:#4f6939;stroke-width:2;stroke-dasharray:50;animation:diagram-discovery 7s ease-in-out infinite}
.compare-bar{stroke:#9eaf89;stroke-width:20;transform-origin:0 167px;animation:diagram-compare 7s ease-in-out infinite;animation-delay:var(--delay)}
.diagram-trend{stroke:#5b7441;stroke-width:1.7;stroke-dasharray:100;animation:diagram-trend 7s ease-in-out infinite}
.diagram-choice{fill:#dbe5c5;stroke:#6a824d;animation:diagram-choice 7s ease-in-out infinite}
.diagram-wiring{stroke:#9aa88b}
.diagram-packet{stroke:#56713b;stroke-width:2.2;stroke-dasharray:7 93;animation:diagram-packet 4.5s linear infinite}
.diagram-core{fill:#d7e0c7;stroke:#657f46;animation:diagram-core 4.5s ease-in-out infinite}
.test-row{animation:diagram-test 7.5s ease-in-out infinite;animation-delay:var(--delay)}
.diagram-complete{fill:#d9e5bd;stroke:#6b824c;animation:diagram-complete 7.5s ease-in-out infinite}
.diagram-complete-check{stroke:#4f6939;stroke-width:2;animation:diagram-complete 7.5s ease-in-out infinite}
@keyframes diagram-scan{0%,100%{transform:translateY(-28px);opacity:.1}35%,60%{opacity:.65}75%{transform:translateY(46px);opacity:0}85%{transform:translateY(-28px);opacity:0}}
@keyframes diagram-search{0%,100%{transform:translate(-20px,-30px)}35%,58%{transform:translate(0,0)}78%{transform:translate(-32px,14px)}}
@keyframes diagram-discovery{0%,26%,76%,100%{stroke-dashoffset:50;opacity:0}43%,62%{stroke-dashoffset:0;opacity:1}}
@keyframes diagram-compare{0%,100%{transform:scaleY(.76)}35%,65%{transform:scaleY(1)}}
@keyframes diagram-trend{0%,12%,100%{stroke-dashoffset:100;opacity:0}45%,72%{stroke-dashoffset:0;opacity:1}89%{stroke-dashoffset:0;opacity:0}}
@keyframes diagram-choice{0%,36%,100%{opacity:.25}55%,80%{opacity:1}}
@keyframes diagram-packet{from{stroke-dashoffset:100}to{stroke-dashoffset:0}}
@keyframes diagram-core{0%,100%{fill:#e0e5d6}45%,65%{fill:#c6d89f}}
@keyframes diagram-test{0%,10%,100%{opacity:.3;transform:translateX(-3px)}28%,73%{opacity:1;transform:translateX(0)}}
@keyframes diagram-complete{0%,45%,100%{opacity:0;transform:translateY(5px)}60%,85%{opacity:1;transform:translateY(0)}}
@media(min-width:981px){.approach-chapter{grid-template-columns:9% minmax(0,1fr) 224px;gap:4%}}
@media(min-width:641px) and (max-width:980px){.approach-chapter{grid-template-columns:7% minmax(0,1fr) 160px;gap:3%}.chapter-diagram{width:160px}.approach-chapter h2{font-size:36px}}
@media(max-width:640px){.chapter-diagram{width:180px;justify-self:start;grid-column:2;margin-top:8px}}
@media(prefers-reduced-motion:reduce){.menu-symbol path{transition:none!important}.chapter-diagram .loop{animation:none!important}.diagram-scan,.diagram-packet{display:none}.diagram-discovery,.diagram-trend{stroke-dashoffset:0}.header-shell,.header-shell .brand{transition:none!important}}
