@font-face{font-family:Instrument Sans;src:url(/fonts/instrument-sans.woff2)format("woff2");font-style:normal;font-weight:400 700;font-display:swap}@font-face{font-family:Instrument Sans Fallback;src:local(Helvetica Neue),local(Arial),local(Roboto),local(Segoe UI);font-style:normal;size-adjust:96%;ascent-override:97%;descent-override:25%;line-gap-override:0%}:root{--paper:#f4f0e8;--paper-deep:#e9e2d6;--surface:#fbf9f5;--ink:#202321;--ink-lead:#484e4a;--ink-prose:#505652;--ink-nav:#414743;--muted:#616762;--line:#cdc8bd;--line-warm:#bcb3a5;--field-border:#7f7d72;--petrol:#0a675d;--petrol-dark:#063f3a;--petrol-light:#c7e6de;--warm:#9a4f36;--white:#fff;--band-text:#edf4f1;--band-text-muted:#b9c9c5;--band-text-soft:#9db6b1;--band-accent:#b9d7d1;--band-line:#51706c;--footer-bg:#052f2c;--footer-text:#c8d6d2;--footer-label:#82a8a0;--footer-line:#3e5a57;--tone-brick:#eaded6;--tone-moss:#dce5d7;--tone-sky:#d9e4e7;--tone-sand:#e8e0cf;--tone-teal:#d5e3e0;--tone-ocean:#d7e2ea;--device-bezel:#123c38;--success-ink:#154733;--success-bg:#dcefe5;--fs-display:clamp(2.75rem, 2.1rem + 2.9vw, 5rem);--fs-headline:clamp(2.1rem, 1.75rem + 2vw, 3.75rem);--fs-headline-sm:clamp(1.8rem, 1.5rem + 1.5vw, 2.9rem);--fs-title:clamp(1.45rem, 1.3rem + .8vw, 2.15rem);--fs-title-md:clamp(1.25rem, 1.15rem + .5vw, 1.75rem);--fs-title-sm:1.15rem;--fs-lead:clamp(1.15rem, 1.1rem + .3vw, 1.45rem);--fs-body:clamp(1rem, .96rem + .14vw, 1.1rem);--fs-body-lg:clamp(1.05rem, 1rem + .28vw, 1.3rem);--fs-figure:clamp(1.9rem, 1.75rem + .6vw, 2.55rem);--fs-figure-sm:clamp(1.5rem, 1.4rem + .4vw, 1.95rem);--fs-error-code:clamp(6rem, 2rem + 12.5vw, 14rem);--fs-label-2xs:.52rem;--fs-label-sm:.67rem;--fs-label-lg:.78rem;--fs-text-sm:.85rem;--fs-text-md:.95rem;--fs-text-lg:1.05rem;--fs-glyph-sm:1.3rem;--fs-glyph-lg:1.6rem;--fw-body:400;--fw-band:430;--fw-display:540;--fw-title:590;--fw-action:620;--fw-label:680;--lh-display:1.06;--lh-title:1.15;--lh-compact:1.4;--lh-snug:1.5;--lh-body:1.65;--lh-band:1.72;--ls-display:-.045em;--ls-figure:-.04em;--ls-title:-.025em;--ls-label:.08em;--ls-band:.006em;--measure-prose:38rem;--radius-button:.15rem;--radius-device:clamp(.9rem, 1.6vw, 1.35rem);--radius-device-inner:clamp(.5rem, 1vw, .8rem);--radius-device-compact:.65rem;--radius-device-compact-inner:.35rem;--radius-pill:999px;--shadow:0 1.25rem 4rem #1f2c281f;--container:77rem;--header-height:5.4rem;--section-space:clamp(5rem, 10vw, 9.5rem);--motion-fast:.16s;--motion-ui:.22s;--motion-reveal:.52s;--motion-image:.76s;--motion-accordion:.48s;--ease-out:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:7rem}body{color:var(--ink);background:var(--paper);font-family:Instrument Sans,Instrument Sans Fallback,system-ui,sans-serif;font-size:var(--fs-body);line-height:var(--lh-body);text-rendering:optimizelegibility;margin:0;overflow-x:clip}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,summary{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:var(--lh-display);letter-spacing:var(--ls-display);overflow-wrap:break-word;word-break:normal;hyphens:auto;text-wrap:balance}h1{font-size:var(--fs-display);font-weight:var(--fw-display)}h2{font-size:var(--fs-headline);font-weight:var(--fw-display)}h3{font-size:var(--fs-title);font-weight:var(--fw-title);line-height:var(--lh-title);letter-spacing:var(--ls-title)}p,li,dd,blockquote,figcaption,summary{hyphens:auto}p{text-wrap:pretty}#hero-title,#case-approach-title,.manual-hyphens{hyphens:manual}h1 em,h2 em{color:var(--petrol);font-style:normal}.container{width:min(calc(100% - 3rem), var(--container));margin-inline:auto}.section{padding-block:var(--section-space)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:999;background:var(--white);box-shadow:var(--shadow);padding:.7rem 1rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}:focus-visible{outline:3px solid var(--warm);outline-offset:4px}.site-header{z-index:50;border-bottom:1px solid #0000;transition:background-color .18s,border-color .18s,box-shadow .18s;position:fixed;inset:0 0 auto}.site-header.is-compact{border-color:var(--line);backdrop-filter:blur(12px);background:#f4f0e8f2;box-shadow:0 .5rem 1.75rem #19231f0f}.header-inner{min-height:var(--header-height);align-items:center;gap:2rem;display:flex}.is-compact .header-inner{min-height:4.5rem}.wordmark{line-height:1.05;font-size:var(--fs-text-lg);font-weight:var(--fw-label);letter-spacing:var(--ls-title);align-items:center;gap:.75rem;display:flex}.wordmark-sign{flex:none;width:2.45rem;height:2.45rem;display:block}.wordmark small{color:var(--muted);font-size:var(--fs-label-sm);font-weight:var(--fw-body);margin-top:.25rem;display:block}.desktop-nav{justify-content:center;align-items:center;gap:clamp(1rem,2vw,2rem);margin-left:auto;display:flex}.desktop-nav a{color:var(--ink-nav);font-size:var(--fs-text-sm);font-weight:var(--fw-action);padding-block:.5rem;position:relative}.desktop-nav a:after,.text-link:after{content:"";transform-origin:100%;background:currentColor;height:1px;transition:transform .18s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.desktop-nav a:hover:after,.text-link:hover:after{transform-origin:0;transform:scaleX(1)}.header-phone{min-height:2.85rem;color:var(--petrol-dark);font-size:var(--fs-label-lg);font-weight:var(--fw-label);align-items:center;gap:.5rem;padding-inline:.35rem;display:inline-flex}.header-phone-icon{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:1.15rem;height:1.15rem}.header-phone:hover{color:var(--petrol)}.button{border:1px solid var(--petrol);border-radius:var(--radius-button);min-height:3.25rem;color:var(--white);background:var(--petrol);font-weight:var(--fw-action);line-height:var(--lh-title);box-shadow:.32rem .32rem 0 var(--petrol-light);justify-content:center;align-items:center;gap:.7rem;padding:.8rem 1.3rem;transition:transform .14s,box-shadow .14s,background .14s;display:inline-flex}.button:hover{background:var(--petrol-dark);box-shadow:.14rem .14rem 0 var(--petrol-light);transform:translate(.18rem,.18rem)}.button:active{box-shadow:none;transform:translate(.32rem,.32rem)}.button:disabled{opacity:.65;cursor:wait}.button-small{min-height:2.85rem;font-size:var(--fs-label-lg);box-shadow:none;padding:.7rem 1rem}.button-quiet{color:var(--ink);border-color:var(--line);box-shadow:none;background:0 0}.button-quiet:hover{color:var(--white);border-color:var(--petrol)}.menu-button{background:0 0;border:0;width:2.9rem;height:2.9rem;padding:.65rem;display:none}.menu-button>span:not(.sr-only){background:currentColor;width:100%;height:2px;margin:.36rem 0;transition:transform .16s;display:block}.menu-button[aria-expanded=true]>span:nth-child(2){transform:translateY(.25rem)rotate(45deg)}.menu-button[aria-expanded=true]>span:nth-child(3){transform:translateY(-.25rem)rotate(-45deg)}.mobile-nav{border-top:1px solid var(--line);background:var(--paper)}.mobile-nav .container{padding-block:1rem 1.5rem;display:grid}.mobile-nav a:not(.button){border-bottom:1px solid var(--line);padding-block:.75rem}.mobile-nav .button{margin-top:1rem}.eyebrow,.kicker{color:var(--petrol);font-size:var(--fs-label-lg);font-weight:var(--fw-label);letter-spacing:var(--ls-label);text-transform:uppercase;align-items:center;gap:.65rem;margin-bottom:1.4rem;display:flex}.eyebrow>span{background:currentColor;width:1.8rem;height:1px}.kicker.light{color:var(--band-accent)}.lead{font-size:var(--fs-lead);line-height:var(--lh-snug)}.meta{color:var(--muted);font-size:var(--fs-label-lg);font-weight:var(--fw-label);letter-spacing:var(--ls-label);text-transform:uppercase;margin-bottom:.8rem}.text-link{color:var(--petrol);font-weight:var(--fw-action);gap:.5rem;padding-bottom:.18rem;display:inline-flex;position:relative}.text-link>span[aria-hidden=true]{transition:transform var(--motion-fast) var(--ease-out)}.text-link:hover>span[aria-hidden=true],.text-link:focus-visible>span[aria-hidden=true]{transform:translate(.22rem)}.hero{min-height:min(56rem,100svh);padding:calc(var(--header-height) + 2rem) 0 2.5rem;align-items:center;display:flex;overflow:clip}.hero-grid{grid-template-columns:minmax(0,1.03fr) minmax(28rem,.97fr);align-items:center;gap:clamp(3rem,7vw,7rem);display:grid}.hero-copy h1{max-width:14ch;margin-bottom:1.2rem}.hero-copy .lead{max-width:39rem;color:var(--ink-lead)}.hero-experience{max-width:39rem;color:var(--muted);font-size:var(--fs-text-md);margin-top:1rem}.hero-direct{font-size:var(--fs-text-md);margin:1rem 0 0}.button-row{flex-wrap:wrap;gap:.9rem;margin-top:1.5rem;display:flex}.hero-disciplines{color:var(--muted);font-size:var(--fs-text-sm);margin-top:1.8rem}.hero-disciplines span{color:var(--warm);margin-inline:.35rem}.hero-portrait{min-height:36rem;position:relative}.hero-portrait:before{content:"";background:var(--petrol-light);position:absolute;inset:2.2rem 0 0 4.5rem}.hero-portrait>img{z-index:1;aspect-ratio:4/5;object-fit:cover;object-position:50% 20%;width:min(84%,29rem);height:auto;box-shadow:var(--shadow);position:absolute;top:0;right:1.5rem}.hero-portrait-caption{z-index:2;color:var(--paper);background:var(--petrol-dark);font-size:var(--fs-label-lg);line-height:var(--lh-compact);margin:0;padding:.9rem 1.15rem;position:absolute;bottom:2rem;left:0}.hero-portrait-caption strong,.hero-portrait-caption span{display:block}.hero-portrait-caption strong{color:var(--white);font-size:var(--fs-text-md)}.hero-portrait-caption span{color:var(--band-accent);margin-top:.12rem}.projects-section{background:var(--surface)}.section-heading{max-width:53rem;margin-bottom:clamp(3.5rem,7vw,6.5rem)}.section-heading h2{margin-bottom:1.7rem}.section-heading>p:last-child{max-width:40rem;color:var(--muted)}.project-features{gap:clamp(6rem,11vw,10rem);display:grid}.project-feature{grid-template-columns:minmax(0,1.25fr) minmax(20rem,.75fr);align-items:center;gap:clamp(2.5rem,6vw,6.5rem);display:grid}.project-feature:nth-child(2n) .project-visual{order:2}.project-visual{background:var(--petrol-light);min-height:clamp(19rem,38vw,36rem);padding:clamp(1.1rem,2vw,2rem);position:relative;overflow:hidden}.project-visual:after{content:"";background:var(--petrol);transform-origin:100%;z-index:2;position:absolute;inset:0;transform:scaleX(0)}.js .project-feature:not(.is-visible) [data-project-mask]:after{transform:scaleX(1)}.js .project-feature.is-visible [data-project-mask]:after{animation:.9s cubic-bezier(.77,0,.18,1) both image-mask}.project-desktop-frame{width:calc(100% - clamp(2.5rem,7vw,6.5rem));position:relative}.project-desktop-shot{aspect-ratio:8/5;object-fit:cover;object-position:top;width:100%;height:auto;box-shadow:0 .8rem 2.4rem #1b28242e}.device-label{z-index:1;color:var(--petrol-dark);font-size:var(--fs-label-sm);font-weight:var(--fw-label);letter-spacing:var(--ls-label);text-transform:uppercase;position:absolute;top:-1.15rem;left:0}.project-mobile-frame{z-index:1;border:.25rem solid var(--device-bezel);border-radius:var(--radius-device);background:var(--device-bezel);width:clamp(7.4rem,16vw,11.2rem);transition:transform var(--motion-ui) var(--ease-out), box-shadow var(--motion-ui) ease;padding:.42rem;position:absolute;bottom:clamp(.8rem,2vw,1.8rem);right:clamp(.8rem,2.2vw,2rem);overflow:hidden;box-shadow:0 1.2rem 2.7rem #0e262247}.project-mobile-shot{aspect-ratio:390/844;border-radius:var(--radius-device-inner);object-fit:cover;object-position:top;width:100%;height:auto}.mobile-speaker{z-index:2;border-radius:var(--radius-pill);background:#ffffffc7;width:24%;height:.22rem;position:absolute;top:.72rem;left:50%;transform:translate(-50%)}.mobile-view-label{border-radius:var(--radius-pill);color:var(--white);font-size:var(--fs-label-2xs);font-weight:var(--fw-label);letter-spacing:var(--ls-label);text-align:center;text-transform:uppercase;background:#062320d1;padding:.24rem .35rem;position:absolute;bottom:.65rem;left:.75rem;right:.75rem}.tone-brick .project-visual{background:var(--tone-brick)}.tone-moss .project-visual{background:var(--tone-moss)}.tone-sky .project-visual{background:var(--tone-sky)}.tone-sand .project-visual{background:var(--tone-sand)}.tone-teal .project-visual{background:var(--tone-teal)}.tone-ocean .project-visual{background:var(--tone-ocean)}.project-copy h3{margin-bottom:1.4rem}.project-summary{color:var(--ink-prose);font-size:var(--fs-body-lg)}.project-scope{border-block:1px solid var(--line);margin-block:1.7rem;padding-block:1rem}.project-scope span{color:var(--muted);font-size:var(--fs-label-sm);font-weight:var(--fw-label);letter-spacing:var(--ls-label);text-transform:uppercase;margin-bottom:.2rem;display:block}.tag-list{flex-wrap:wrap;gap:.45rem;margin:0 0 1.8rem;padding:0;list-style:none;display:flex}.tag-list li{border:1px solid var(--line);font-size:var(--fs-label-lg);padding:.35rem .6rem}.project-internal-link{margin-left:1rem}.compact-intro{color:var(--muted);font-size:var(--fs-label-lg);font-weight:var(--fw-label);letter-spacing:var(--ls-label);text-transform:uppercase;align-items:center;gap:1.25rem;margin-block:clamp(6rem,10vw,9rem) 2rem;display:flex}.compact-intro span{background:var(--line);flex:1;height:1px}.compact-projects{grid-template-columns:repeat(3,1fr);gap:1.4rem;display:grid}.project-compact{border-top:1px solid var(--ink);flex-direction:column;min-width:0;display:flex}.project-compact-image{background:var(--paper-deep);margin-top:.8rem;position:relative;overflow:hidden}.project-compact-desktop{aspect-ratio:8/5;object-fit:cover;object-position:top;width:100%;height:auto;transition:transform .35s}.project-compact-image:hover .project-compact-desktop,.project-compact:has(.text-link:focus-visible) .project-compact-desktop{transform:scale(1.025)}.compact-mobile-frame{z-index:2;border:.16rem solid var(--device-bezel);border-radius:var(--radius-device-compact) var(--radius-device-compact) 0 0;background:var(--device-bezel);width:23%;transition:transform var(--motion-ui) var(--ease-out), box-shadow var(--motion-ui) ease;border-bottom:0;padding:.2rem;position:absolute;bottom:-.15rem;right:.65rem;overflow:hidden;box-shadow:0 .6rem 1.4rem #0c242040}.project-compact-image:hover .compact-mobile-frame,.project-compact:has(.text-link:focus-visible) .compact-mobile-frame{transform:translateY(-.25rem);box-shadow:0 .9rem 1.7rem #0c24204d}.project-compact-mobile{aspect-ratio:390/844;border-radius:var(--radius-device-compact-inner) var(--radius-device-compact-inner) 0 0;object-fit:cover;object-position:top;width:100%;height:auto}.project-compact-copy{flex-direction:column;flex:1;padding:1.5rem .4rem .4rem;display:flex}.project-compact-copy h3{margin-bottom:1rem}.project-compact-copy>p:not(.meta){color:var(--muted);font-size:var(--fs-text-md)}.project-compact-copy .compact-scope{border-top:1px solid var(--line);color:var(--ink);font-size:var(--fs-label-lg);margin-top:auto;padding-top:.8rem}.project-results{margin-bottom:1.9rem}.project-results-label{color:var(--muted);font-size:var(--fs-label-sm);font-weight:var(--fw-label);letter-spacing:var(--ls-label);text-transform:uppercase;margin-bottom:1.1rem}.project-results dl{grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));gap:1.5rem 2.4rem;margin:0;display:grid}.project-results dt{color:var(--petrol);font-size:var(--fs-figure);font-weight:var(--fw-display);letter-spacing:var(--ls-figure);font-variant-numeric:tabular-nums;line-height:1}.project-results dd{max-width:20rem;color:var(--muted);font-size:var(--fs-text-sm);line-height:var(--lh-compact);margin:.55rem 0 0}.project-results-note{color:var(--muted);font-size:var(--fs-label-lg);line-height:var(--lh-snug);margin:1.4rem 0 0}.compact-results{margin-top:1.1rem;margin-bottom:1.2rem}.compact-results dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.2rem}.compact-results dt{font-size:var(--fs-figure-sm)}.compact-results dd{font-size:var(--fs-text-sm);margin-top:.35rem}.compact-results .project-results-note{min-height:2.1rem;font-size:var(--fs-label-sm);margin-top:1rem}.compact-links{flex-direction:column;align-items:flex-start;gap:.4rem;min-height:3.6rem;display:flex}.testimonial-section{background:var(--paper-deep)}.testimonial-layout .section-heading{max-width:46rem;margin-bottom:clamp(2.8rem,5vw,4.5rem)}.testimonial-cards{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:clamp(1.4rem,3vw,2.4rem);display:grid}.testimonial-card{background:var(--surface);box-shadow:var(--shadow);flex-direction:column;margin:0;padding:clamp(1.8rem,3.6vw,3rem);display:flex}.testimonial-rating{color:var(--warm);align-items:center;gap:.8rem;margin-bottom:1.8rem;display:flex}.testimonial-rating>span{letter-spacing:.14em}.testimonial-rating strong{color:var(--ink);font-size:var(--fs-text-md);font-weight:var(--fw-label)}.testimonial-card blockquote{color:var(--ink);font-size:var(--fs-title-md);line-height:var(--lh-snug);margin:0}.testimonial-card figcaption{border-top:1px solid var(--line);grid-template-columns:auto 1fr;align-items:baseline;gap:.1rem .8rem;margin-top:auto;padding-top:1.2rem;display:grid}.testimonial-card blockquote{margin-bottom:2rem}.testimonial-card figcaption>span{color:var(--muted);font-size:var(--fs-text-md)}.situations-section{background:var(--paper)}.situations-grid,.faq-grid{grid-template-columns:minmax(20rem,.75fr) minmax(26rem,1.25fr);align-items:start;gap:clamp(4rem,10vw,10rem);display:grid}.situations-grid{grid-template-columns:minmax(21rem,.82fr) minmax(26rem,1.18fr);gap:clamp(7rem,12vw,11rem)}.sticky-heading{margin-bottom:0;position:sticky;top:8rem}.situations-list{border-top:1px solid var(--ink);margin:0;padding:0;list-style:none}.situations-list li{border-bottom:1px solid var(--line);padding-block:1.75rem}.situations-list p{font-size:var(--fs-title);line-height:var(--lh-title);letter-spacing:var(--ls-title);margin:0}.audience-section{background:var(--surface)}.audience-links{border-top:1px solid var(--ink);grid-template-columns:repeat(4,1fr);display:grid}.audience-links a{border-bottom:1px solid var(--line);min-height:15rem;padding:1.6rem 3rem 2rem 0;position:relative}.audience-links a+a{border-left:1px solid var(--line);padding-left:2rem}.audience-links strong{max-width:16ch;font-size:var(--fs-title-md);font-weight:var(--fw-title);line-height:var(--lh-title);letter-spacing:var(--ls-title);display:block}.audience-links p{max-width:28rem;color:var(--muted);font-size:var(--fs-text-md);margin:1rem 0 0}.audience-links i{color:var(--petrol);font-size:var(--fs-glyph-lg);transition:transform var(--motion-ui) var(--ease-out);font-style:normal;position:absolute;bottom:1.8rem;right:1rem}.audience-links a:hover i,.audience-links a:focus-visible i{transform:translate(.35rem)}.offers-section{background:var(--surface)}.split-heading{grid-template-columns:1.25fr .75fr;align-items:end;gap:5rem;max-width:none;display:grid}.split-heading>p{padding-bottom:1.2rem}.offer-list{border-top:1px solid var(--ink)}.offer-row{border-bottom:1px solid var(--line)}.offer-row summary{grid-template-columns:minmax(0, 1fr) minmax(12rem, auto) var(--fs-glyph-lg);transition:color var(--motion-ui) ease;align-items:center;gap:1.5rem;padding-block:1.55rem;list-style:none;display:grid}.offer-row summary::-webkit-details-marker{display:none}.offer-row summary:hover,.offer-row summary:focus-visible,.offer-row[open] summary{color:var(--petrol)}.offer-row summary:focus-visible{outline:3px solid var(--warm);outline-offset:-3px}.offer-row summary:focus-visible .offer-title strong{text-underline-offset:.18em;text-decoration:underline .1em}.offer-title strong{font-size:var(--fs-title-md);font-weight:var(--fw-title);letter-spacing:var(--ls-title);display:block}.offer-title small{color:var(--muted);font-size:var(--fs-text-md);font-weight:var(--fw-body);margin-top:.3rem;display:block}.offer-price{color:var(--petrol);font-size:var(--fs-body-lg);font-weight:var(--fw-label);font-variant-numeric:tabular-nums}.offer-toggle{font-size:var(--fs-glyph-lg);font-weight:var(--fw-body);transition:transform var(--motion-accordion) var(--ease-out)}.offer-row[open] .offer-toggle{transform:rotate(45deg)}.offer-details{grid-template-columns:max-content 1fr auto;gap:1.5rem;padding:0 3rem 1.7rem 0;display:grid}.offer-details>p{color:var(--muted);font-size:var(--fs-label-lg);font-weight:var(--fw-label);letter-spacing:var(--ls-label);text-transform:uppercase;white-space:nowrap}.offer-details>.text-link{align-self:start}.offer-details ul{grid-template-columns:repeat(2,minmax(10rem,1fr));gap:.4rem 2rem;margin:0;padding:0;list-style:none;display:grid}.offer-details li:before{content:"—";color:var(--warm);margin-right:.55rem}.price-note{color:var(--muted);font-size:var(--fs-label-lg);margin-top:1.25rem}.collaboration-section{color:var(--band-text);background:var(--petrol-dark)}.collaboration-grid{grid-template-columns:1.08fr .92fr;gap:clamp(4rem,9vw,9rem);display:grid}.collaboration-lead h2{margin-bottom:1.7rem}.collaboration-lead>p:not(.kicker){max-width:38rem;color:var(--band-text-muted)}.collaboration-lead blockquote{border-top:1px solid var(--band-line);color:var(--white);font-size:var(--fs-lead);line-height:var(--lh-snug);border-left:0;margin:3.5rem 0 0;padding:1.5rem 0 0 2rem}.proof-stats{border-top:1px solid var(--band-line);grid-template-columns:repeat(3,1fr);gap:1rem;margin:3rem 0 0;padding-top:1.5rem;display:grid}.proof-stats div{min-width:0}.proof-stats dt{color:var(--white);font-size:var(--fs-figure);font-weight:var(--fw-title);letter-spacing:var(--ls-figure);font-variant-numeric:tabular-nums;line-height:1}.proof-stats dd{color:var(--band-text-muted);font-size:var(--fs-label-lg);line-height:var(--lh-compact);margin:.55rem 0 0}.collaboration-points{border-top:1px solid var(--band-line);margin:0;padding:0;list-style:none}.collaboration-points li{border-bottom:1px solid var(--band-line);padding:1.4rem 0}.collaboration-points strong{font-size:var(--fs-title-sm)}.collaboration-points p{color:var(--band-text-muted);font-size:var(--fs-text-md);margin:.25rem 0 0}.process-section{overflow:clip}.process-list{--process-count:5;grid-template-columns:repeat(var(--process-count), 1fr);gap:0;margin:0;padding:0;list-style:none;display:grid;position:relative}.process-list:before{content:"";background:var(--line);transform-origin:0;height:1px;position:absolute;top:1.35rem;left:1.4rem;right:10%}.process-list li{padding-right:clamp(1rem,3vw,3rem);position:relative}.process-list>li>span{z-index:2;aspect-ratio:1;width:2.7rem;color:var(--paper);background:var(--petrol);font-size:var(--fs-label-sm);font-weight:var(--fw-label);box-shadow:0 0 0 .65rem var(--paper);border-radius:50%;place-items:center;margin-bottom:2rem;display:grid;position:relative}.process-list h3{font-size:var(--fs-title-sm);letter-spacing:var(--ls-title);line-height:var(--lh-title);margin-bottom:.7rem}.process-list p{color:var(--muted);font-size:var(--fs-text-md)}.about-section{background:var(--paper)}.about-grid{grid-template-columns:minmax(20rem,.78fr) minmax(28rem,1.22fr);align-items:center;gap:clamp(4rem,10vw,10rem);display:grid}.about-portrait{padding-right:clamp(1rem,3vw,3rem);position:relative}.about-portrait:before{content:"";border:1px solid var(--line-warm);position:absolute;inset:-1.5rem 0 4rem 2rem}.about-portrait img{aspect-ratio:4/5;object-fit:cover;object-position:50% 20%;width:100%;position:relative}.about-portrait>p{color:var(--paper);background:var(--petrol);font-size:var(--fs-label-lg);line-height:var(--lh-compact);margin:0;padding:1rem 1.3rem;position:absolute;bottom:-1rem;right:0}.about-portrait>p span{color:var(--band-accent);font-size:var(--fs-label-sm);letter-spacing:var(--ls-label);text-transform:uppercase;display:block}.about-copy h2{max-width:13ch}.about-copy>p:not(.kicker){max-width:var(--measure-prose);color:var(--ink-prose)}.about-facts{border-block:1px solid var(--line-warm);grid-template-columns:repeat(3,1fr);margin-block:2.5rem;display:grid}.about-facts div{padding:1.1rem 1rem 1.1rem 0}.about-facts dt{color:var(--muted);font-size:var(--fs-label-sm);font-weight:var(--fw-label);letter-spacing:var(--ls-label);text-transform:uppercase}.about-facts dd{font-size:var(--fs-text-sm);line-height:var(--lh-compact);margin:.35rem 0 0}.faq-section{background:var(--surface)}.faq-list{border-top:1px solid var(--ink)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{font-size:var(--fs-title-md);font-weight:var(--fw-action);line-height:var(--lh-title);transition:color var(--motion-ui) ease;justify-content:space-between;align-items:center;gap:1.5rem;padding-block:1.5rem;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:hover,.faq-list summary:focus-visible,.faq-list details[open] summary{color:var(--petrol)}.faq-list summary:focus-visible{outline:3px solid var(--warm);outline-offset:-3px;text-underline-offset:.18em;text-decoration:underline .1em}.faq-list summary i{font-style:normal;font-size:var(--fs-glyph-lg);font-weight:var(--fw-body);transition:transform var(--motion-accordion) var(--ease-out);flex:none}.faq-list details[open] summary i{transform:rotate(45deg)}.faq-list details>p{max-width:var(--measure-prose);color:var(--muted);padding:0 3rem 1.5rem 0}.confirmation-section{color:var(--band-text);background:var(--petrol-dark);display:none}.confirmation-section:target{display:block}.confirmation-section:target~.contact-section{display:none}.confirmation-section:focus,.confirmation-section:focus-visible{outline:0}.confirmation-shell{max-width:64rem}.confirmation-shell h2{font-size:var(--fs-headline-sm);margin:0}.confirmation-lead{max-width:38rem;color:var(--band-text-muted);font-size:var(--fs-lead);margin:1.2rem 0 0}.confirmation-steps{grid-template-columns:repeat(3,1fr);gap:0 clamp(1.5rem,3vw,3rem);margin:clamp(3rem,6vw,4.5rem) 0 0;display:grid}.confirmation-steps>div{border-top:1px solid var(--band-line);padding-block:1.1rem}.confirmation-steps dt{color:var(--white);font-size:var(--fs-title-sm);font-weight:var(--fw-title);line-height:var(--lh-title);letter-spacing:var(--ls-title)}.confirmation-steps dd{color:var(--band-text-muted);font-size:var(--fs-text-md);line-height:var(--lh-band);hyphens:manual;margin:.4rem 0 0}.confirmation-direct{color:var(--band-text-muted);font-size:var(--fs-label-lg);margin:clamp(2.5rem,5vw,3.5rem) 0 0}.confirmation-direct a{color:var(--white);text-underline-offset:.2em;text-decoration:underline}.contact-section{color:var(--band-text);background:var(--petrol-dark)}.contact-heading{max-width:64rem;margin-bottom:clamp(3rem,7vw,6rem)}.contact-heading h2 em{color:var(--band-accent)}.contact-grid{grid-template-columns:.75fr 1.25fr;gap:clamp(4rem,9vw,9rem);display:grid}.contact-direct>p:first-child{max-width:32rem;color:var(--band-text-muted);margin-bottom:3rem}.contact-direct>a{border-top:1px solid var(--band-line);color:var(--white);font-size:var(--fs-title-md);padding-block:1.1rem;display:block}.contact-direct>a span{color:var(--band-text-soft);font-size:var(--fs-label-sm);font-weight:var(--fw-label);letter-spacing:var(--ls-label);text-transform:uppercase;display:block}.contact-location{color:var(--band-text-soft);font-size:var(--fs-label-lg);margin-top:3rem}.contact-form{color:var(--ink);background:var(--surface);padding:clamp(1.5rem,4vw,3.5rem)}.form-row{grid-template-columns:repeat(2,1fr);gap:1.2rem;display:grid}.contact-form>label:not(.privacy-check),.form-row label{font-size:var(--fs-label-lg);font-weight:var(--fw-label);margin-bottom:1.2rem;display:block}.contact-form .required{color:var(--warm)}.form-legend{color:var(--muted);font-size:var(--fs-label-lg);margin:0 0 1.4rem}.contact-form label small{color:var(--muted);font-weight:var(--fw-body)}.contact-form input:not([type=checkbox]),.contact-form textarea,.contact-form select{border:1px solid var(--field-border);width:100%;min-height:3.1rem;color:var(--ink);background:var(--white);border-radius:0;margin-top:.4rem;padding:.7rem .8rem;transition:border-color .13s,box-shadow .13s}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{border-color:var(--petrol);outline:0;box-shadow:0 0 0 3px #0a675d29}.privacy-check{font-size:var(--fs-label-lg);font-weight:var(--fw-body);line-height:var(--lh-snug);grid-template-columns:1.3rem 1fr;align-items:start;gap:.75rem;margin-block:1.5rem;display:grid}.privacy-check input{width:1.15rem;height:1.15rem;accent-color:var(--petrol);margin:.2rem 0 0}.privacy-check span{color:var(--muted)}.privacy-check a{color:var(--petrol);text-decoration:underline}.honeypot{display:none}.form-submit{width:100%}.form-status{min-height:1.5rem;font-size:var(--fs-text-sm);hyphens:manual;margin:1rem 0 0}.form-status.success{color:var(--success-ink);background:var(--success-bg);padding:.8rem}.form-status.error{color:var(--ink);background:var(--tone-brick);padding:.8rem}.breadcrumbs{color:var(--muted);font-size:var(--fs-label-lg);margin-bottom:clamp(2.5rem,5vw,4.5rem)}.breadcrumbs ol{flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li{gap:.45rem;display:flex}.breadcrumbs a{text-underline-offset:.2em;transition:color var(--motion-fast) ease, text-decoration-color var(--motion-fast) ease;text-decoration:underline #0000}.breadcrumbs a:hover,.breadcrumbs a:focus-visible{color:var(--petrol);text-decoration-color:currentColor}.page-hero{padding:calc(var(--header-height) + 3rem) 0 clamp(5rem, 9vw, 8rem);background:var(--paper);overflow:clip}.page-hero-grid{grid-template-columns:minmax(0,1.2fr) minmax(20rem,.8fr);align-items:end;gap:clamp(4rem,9vw,9rem);display:grid}.page-hero-copy{max-width:51rem}.page-hero .breadcrumbs{margin-bottom:2rem}.page-hero-copy h1{margin-bottom:1rem}.page-hero-copy .lead{max-width:48rem;color:var(--ink-lead)}.page-hero-copy .button-row{margin-top:1rem}.page-hero-compact .page-hero-copy{max-width:64rem}.page-hero-compact .page-hero-copy h1{max-width:15ch}.page-hero-panel{border:1px solid var(--line);background:var(--surface);box-shadow:1.2rem 1.2rem 0 var(--petrol-light);padding:clamp(1.5rem,3vw,2.5rem);position:relative}.page-hero-panel>p{color:var(--petrol);font-size:var(--fs-label-sm);font-weight:var(--fw-label);letter-spacing:var(--ls-label);text-transform:uppercase}.page-hero-panel ol{border-top:1px solid var(--ink);margin:2rem 0 0;padding:0;list-style:none}.page-hero-panel li{border-bottom:1px solid var(--line);font-size:var(--fs-text-md);line-height:var(--lh-compact);padding-block:1rem}.landing-intro{background:var(--paper-deep)}.landing-copy-grid{grid-template-columns:minmax(20rem,.85fr) minmax(25rem,1.15fr);align-items:start;gap:clamp(4rem,10vw,10rem);display:grid}.landing-copy-grid>*{min-width:0}.landing-copy-grid .section-heading{margin-bottom:0}.landing-prose{border-top:1px solid var(--ink);padding-top:3rem}.landing-prose p{max-width:var(--measure-prose);color:var(--muted)}.landing-prose .lead{color:var(--ink)}.landing-features{color:var(--band-text);background:var(--petrol-dark)}.landing-features .section-heading>p,.landing-features .split-heading>p{color:var(--band-text-muted)}.feature-grid{border-top:1px solid var(--band-line);grid-template-columns:repeat(4,1fr);display:grid}.feature-grid article{border-bottom:1px solid var(--band-line);min-height:15rem;padding:1.6rem 1.8rem 2rem 0}.feature-grid article+article{border-left:1px solid var(--band-line);padding-left:1.8rem}.feature-grid h3{font-size:var(--fs-title-md);letter-spacing:var(--ls-title)}.feature-grid article>p:last-child{color:var(--band-text-muted);font-size:var(--fs-text-md)}.proof-section{background:var(--surface)}.landing-projects{grid-template-columns:repeat(3,1fr)}.related-section{background:var(--paper-deep);padding-block:clamp(4rem,8vw,7rem)}.related-shell{grid-template-columns:.75fr 1.25fr;align-items:start;gap:clamp(3rem,8vw,8rem);display:grid}.related-shell h2{max-width:12ch;font-size:var(--fs-headline-sm);margin:0}.related-links{border-top:1px solid var(--ink)}.related-links a{border-bottom:1px solid var(--line);grid-template-columns:minmax(12rem,.8fr) minmax(12rem,1.2fr) 1.5rem;align-items:center;gap:1.5rem;padding-block:1.4rem;display:grid;position:relative}.related-links strong{font-size:var(--fs-title-sm);font-weight:var(--fw-title)}.related-links span{color:var(--muted);font-size:var(--fs-text-sm)}.related-links i{color:var(--petrol);font-size:var(--fs-glyph-sm);transition:transform var(--motion-ui) var(--ease-out);font-style:normal}.related-links a:hover i,.related-links a:focus-visible i{transform:translate(.3rem)}.article-hero{padding:calc(var(--header-height) + clamp(4rem, 8vw, 7rem)) 0 clamp(4rem, 8vw, 6.5rem);background:var(--paper-deep)}.article-width,.article-content{width:min(100% - 3rem,54rem)}.article-hero .breadcrumbs{margin-bottom:2.5rem}.article-meta{color:var(--muted);font-size:var(--fs-label-lg);font-weight:var(--fw-label);letter-spacing:var(--ls-label);text-transform:uppercase;margin-bottom:1rem}.article-hero h1{margin-bottom:1.5rem}.article-hero .lead{max-width:44rem;color:var(--ink-lead)}.article-content{padding-block:var(--section-space)}.article-content>section{margin-bottom:clamp(4rem,8vw,6.5rem)}.article-content h2{font-size:var(--fs-headline-sm);margin-bottom:1.5rem}.article-content h3{font-size:var(--fs-title-md)}.article-content p,.article-content li{max-width:var(--measure-prose);color:var(--ink-prose)}.article-example{border-left:.35rem solid var(--petrol);background:var(--surface);padding:clamp(1.5rem,4vw,3rem)}.article-example h3:not(:first-child){margin-top:2rem}.article-cards{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.article-cards article{border:1px solid var(--line);background:var(--surface);padding:1.5rem}.article-cards p{font-size:var(--fs-text-md);margin:0}.article-steps{border-top:1px solid var(--ink);counter-reset:article-steps;padding:0;list-style:none}.article-steps li{border-bottom:1px solid var(--line);counter-increment:article-steps;padding:1.25rem 1rem 1.25rem 3.5rem;position:relative}.article-steps li:before{content:"0" counter(article-steps);color:var(--warm);font-size:var(--fs-label-lg);font-weight:var(--fw-label);font-variant-numeric:tabular-nums;position:absolute;left:0}.diagnosis-list{border-top:1px solid var(--ink);margin:0;padding:0;list-style:none}.diagnosis-list li{border-bottom:1px solid var(--line);grid-template-columns:2.5rem 1fr;gap:1.2rem;padding-block:1.5rem;display:grid}.diagnosis-list li>span{width:2.4rem;height:2.4rem;color:var(--paper);background:var(--petrol);font-size:var(--fs-label-sm);font-weight:var(--fw-label);border-radius:50%;place-items:center;display:grid}.diagnosis-list h3{margin-bottom:.5rem}.diagnosis-list p{margin:0}.article-cta{color:var(--band-text);background:var(--petrol-dark);padding:clamp(2rem,5vw,4rem)}.article-cta h2{font-size:var(--fs-headline-sm)}.article-cta p{color:var(--band-text-muted)}.article-author{border-top:1px solid var(--ink);border-bottom:1px solid var(--line);grid-template-columns:auto 1fr;align-items:center;gap:1.2rem;padding:1.5rem;display:grid}.article-author strong{font-size:var(--fs-title-sm);font-weight:var(--fw-title);display:block}.article-author p{font-size:var(--fs-text-md);margin:.25rem 0 0}.article-author-mark{width:3.2rem;height:3.2rem;color:var(--paper);background:var(--petrol);font-weight:var(--fw-label);border-radius:50%;place-items:center;display:grid}.site-footer{color:var(--footer-text);background:var(--footer-bg);padding-block:4rem 2rem}.footer-grid{grid-template-columns:1.25fr .85fr .9fr 1fr .8fr;gap:clamp(1.5rem,3vw,3rem);display:grid}.footer-name{color:var(--white);font-size:var(--fs-glyph-lg);font-weight:var(--fw-label);letter-spacing:var(--ls-figure);margin-bottom:.8rem;display:block}.site-footer p,.site-footer address{font-style:normal;font-size:var(--fs-text-sm);margin:0}.site-footer a:not(.footer-name){width:fit-content;color:var(--band-text);font-size:var(--fs-text-sm);margin-top:.3rem;padding-block:.35rem;display:block}.mobile-sticky-cta,.to-top{z-index:45;transition:opacity var(--motion-ui) ease, transform var(--motion-ui) var(--ease-out), background-color var(--motion-fast) ease;position:fixed}.mobile-sticky-cta[hidden],.to-top[hidden],.mobile-sticky-cta{display:none}.to-top{aspect-ratio:1;width:3.25rem;color:var(--ink);background:var(--surface);font-size:var(--fs-glyph-sm);border:0;border-radius:50%;padding:0;line-height:1;bottom:clamp(1rem,2.5vw,2rem);right:clamp(1rem,2.5vw,2rem);box-shadow:0 .65rem 2rem #1f2c282e}.to-top:hover{color:var(--white);background:var(--petrol-dark);transform:translateY(-.18rem)}.footer-label{color:var(--footer-label);font-size:var(--fs-label-sm);font-weight:var(--fw-label);line-height:var(--lh-compact);letter-spacing:var(--ls-label);text-transform:uppercase;margin-bottom:.8rem}.footer-bottom{border-top:1px solid var(--footer-line);color:var(--footer-label);justify-content:space-between;margin-top:3.5rem;padding-top:1.5rem;display:flex}.legal-page{padding-block:calc(var(--header-height) + 5rem) var(--section-space)}.legal-shell{grid-template-columns:minmax(13rem,.3fr) minmax(0,.7fr);gap:clamp(3rem,8vw,8rem);display:grid}.legal-aside{align-self:start;position:sticky;top:8rem}.legal-aside h1{hyphens:auto}.legal-aside p{color:var(--muted)}.legal-content{padding-top:1rem}.legal-content h2{font-size:var(--fs-title);letter-spacing:var(--ls-title);margin:3rem 0 1rem}.legal-content h2:first-child{margin-top:0}.legal-content h3{font-size:var(--fs-title-sm);letter-spacing:var(--ls-title);margin:2rem 0 .8rem}.legal-content p,.legal-content li{max-width:var(--measure-prose);color:var(--ink-prose)}.legal-content a{color:var(--petrol);text-decoration:underline}.legal-content address{font-style:normal}.error-page{min-height:100svh;padding:calc(var(--header-height) + 3rem) 2rem 4rem;background:var(--paper);place-items:center;display:grid}.error-card{border:1px solid var(--line);background:var(--surface);text-align:center;width:min(100%,55rem);padding:clamp(2rem,7vw,6rem)}.error-code{color:var(--petrol);font-size:var(--fs-error-code);font-weight:var(--fw-label);letter-spacing:var(--ls-display);font-variant-numeric:tabular-nums;margin:0;line-height:.8}.error-card .kicker{justify-content:center}.error-card h1{font-size:var(--fs-headline-sm)}.error-links{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;margin-top:2rem;display:flex}.feature-grid article>p,.article-cards p,.process-list p,.project-results dd,.audience-links p,.collaboration-points p{line-height:var(--lh-snug)}.collaboration-section,.contact-section,.landing-features,.article-cta,.site-footer{font-weight:var(--fw-band);line-height:var(--lh-band);letter-spacing:var(--ls-band)}.contact-form{font-weight:var(--fw-body);line-height:var(--lh-body);letter-spacing:normal}.js [data-reveal]{--reveal-delay:0s;opacity:0;transition:opacity var(--motion-reveal) ease var(--reveal-delay), transform var(--motion-reveal) var(--ease-out) var(--reveal-delay);transform:translateY(.85rem)}.js [data-reveal].is-visible{opacity:1;transform:none}.js [data-reveal][data-stagger]{opacity:1;transition:none;transform:none}.js [data-reveal][data-stagger]>*{--item-delay:0s;opacity:0;transition:opacity var(--motion-reveal) ease calc(var(--reveal-delay) + var(--item-delay)), transform var(--motion-reveal) var(--ease-out) calc(var(--reveal-delay) + var(--item-delay));transform:translateY(.7rem)}.js [data-reveal][data-stagger]>:nth-child(2){--item-delay:60ms}.js [data-reveal][data-stagger]>:nth-child(3){--item-delay:.12s}.js [data-reveal][data-stagger]>:nth-child(4){--item-delay:.18s}.js [data-reveal][data-stagger]>:nth-child(5){--item-delay:.24s}.js [data-reveal][data-stagger]>:nth-child(n+6){--item-delay:.28s}.js [data-reveal][data-stagger].is-visible>*{opacity:1;transform:none}.js [data-hero-sequence]{opacity:1;transition:none;transform:none}.js [data-hero-sequence]>*{opacity:0;transition:opacity .42s ease, transform .48s var(--ease-out);transform:translateY(.7rem)}.js [data-hero-sequence]>:nth-child(2){transition-delay:45ms}.js [data-hero-sequence]>:nth-child(3){transition-delay:90ms}.js [data-hero-sequence]>:nth-child(4){transition-delay:.125s}.js [data-hero-sequence]>:nth-child(5){transition-delay:.17s}.js [data-hero-sequence]>:nth-child(6){transition-delay:.215s}.js [data-hero-sequence].is-visible>*{opacity:1;transform:none}.js [data-portrait-reveal]{opacity:1;transition:none;transform:none}.js [data-portrait-reveal]:before{opacity:0;transition:opacity .42s ease .12s, transform .62s var(--ease-out) .12s;transform:translate(.8rem,.8rem)}.js [data-portrait-reveal]>img{clip-path:inset(0 0 100%);transition:clip-path var(--motion-image) var(--ease-out) 80ms, transform var(--motion-image) var(--ease-out) 80ms;transform:scale(1.02)}.js [data-portrait-reveal] .hero-portrait-caption{opacity:0;transition:opacity .42s ease .42s, transform .52s var(--ease-out) .42s;transform:translateY(.65rem)}.js [data-portrait-reveal].is-visible:before{opacity:1;transform:none}.js [data-portrait-reveal].is-visible>img{clip-path:inset(0);transform:none}.js [data-portrait-reveal].is-visible .hero-portrait-caption{opacity:1;transform:none}.js .project-feature[data-reveal]{opacity:1;transition:none;transform:none}.js .project-feature .project-mobile-frame{opacity:0;transform:translateY(.9rem)scale(.975)}.js .project-feature .project-copy>*{opacity:0;transition:opacity var(--motion-reveal) ease, transform var(--motion-reveal) var(--ease-out);transform:translateY(.7rem)}.js .project-feature .project-copy>:first-child{transition-delay:.12s}.js .project-feature .project-copy>:nth-child(2){transition-delay:.175s}.js .project-feature .project-copy>:nth-child(3){transition-delay:.23s}.js .project-feature .project-copy>:nth-child(4){transition-delay:.285s}.js .project-feature .project-copy>:nth-child(5){transition-delay:.34s}.js .project-feature .project-copy>:nth-child(6){transition-delay:.395s}.js .project-feature .tag-list li{opacity:0;transition:opacity .36s ease, transform .42s var(--ease-out);transform:translateY(.35rem)}.js .project-feature .tag-list li:first-child{transition-delay:.38s}.js .project-feature .tag-list li:nth-child(2){transition-delay:.42s}.js .project-feature .tag-list li:nth-child(3){transition-delay:.46s}.js .project-feature .tag-list li:nth-child(4){transition-delay:.5s}.js .project-feature.is-visible .project-mobile-frame{opacity:1;animation:project-device-in .62s var(--ease-out) .36s backwards;transform:none}.js .project-feature.is-visible .project-copy>*,.js .project-feature.is-visible .tag-list li{opacity:1;transform:none}.js .project-feature.is-visible:has(.text-link:focus-visible) .project-mobile-frame,.js .project-feature.is-visible .project-visual:hover .project-mobile-frame{transform:translateY(-.25rem);box-shadow:0 1.45rem 3rem #0e262252}.js .project-compact:not(.is-visible) .compact-mobile-frame{opacity:0;transform:translateY(.7rem)scale(.97)}.js .project-compact.is-visible .compact-mobile-frame{opacity:1;animation:compact-device-in .48s var(--ease-out) calc(var(--reveal-delay) + .16s) backwards;transform:none}.offer-row[open] .offer-details,.faq-list details[open]>p{animation:accordion-content-in var(--motion-accordion) var(--ease-out) both}.offer-row[open] .offer-details li{animation:accordion-item-in .46s var(--ease-out) both}.offer-row[open] .offer-details li:nth-child(2){animation-delay:70ms}.offer-row[open] .offer-details li:nth-child(3){animation-delay:.14s}.offer-row[open] .offer-details li:nth-child(4){animation-delay:.21s}@keyframes image-mask{0%{transform-origin:100%;transform:scaleX(1)}to{transform-origin:100%;transform:scaleX(0)}}@keyframes line-draw{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes project-device-in{0%{opacity:0;transform:translateY(.9rem)scale(.975)}to{opacity:1;transform:none}}@keyframes compact-device-in{0%{opacity:0;transform:translateY(.7rem)scale(.97)}to{opacity:1;transform:none}}@keyframes accordion-content-in{0%{opacity:0;transform:translateY(-.7rem)}to{opacity:1;transform:none}}@keyframes accordion-item-in{0%{opacity:0;transform:translateY(.45rem)}to{opacity:1;transform:none}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.js .process-list:before{animation:1ms linear both line-draw view();animation-range:entry 20% cover 45%}}}@media (width>=70.01rem) and (height<=60rem){:root{--fs-display:clamp(2.75rem, 1.9rem + 2.4vw, 4.3rem)}.hero{padding-top:calc(var(--header-height) + 1rem);padding-bottom:1.5rem}.hero-copy h1{margin-bottom:1rem}.hero-copy .lead{font-size:var(--fs-text-lg);line-height:var(--lh-compact)}.hero-copy .button-row,.hero-experience,.hero-disciplines{margin-top:1rem}.page-hero{padding-top:calc(var(--header-height) + 2rem);padding-bottom:4rem}.page-hero .breadcrumbs{margin-bottom:2rem}.page-hero-copy h1{margin-bottom:1rem}.page-hero-copy .lead{font-size:var(--fs-text-lg);line-height:var(--lh-compact)}.page-hero-copy .button-row{margin-top:1rem}}@media (width<=70rem){.desktop-nav{display:none}.header-cta{margin-left:auto}.menu-button{display:block}.hero{min-height:auto;padding-top:calc(var(--header-height) + 5rem)}.hero-grid{grid-template-columns:1fr}.hero-copy{max-width:54rem}.hero-portrait{width:min(100%,45rem);min-height:35rem;margin-left:auto}.project-feature{grid-template-columns:1fr;gap:2.5rem}.project-feature:nth-child(2n) .project-visual{order:0}.project-copy{max-width:48rem}.compact-projects,.audience-links{grid-template-columns:repeat(2,1fr)}.audience-links a:nth-child(odd){border-left:0;padding-left:0}.audience-links a:nth-child(2n){border-left:1px solid var(--line);padding-left:2rem}.project-compact:last-child{grid-column:span 2;grid-template-columns:1fr 1fr;gap:2rem;display:grid}.project-compact:last-child .project-compact-image{margin-top:.8rem}.split-heading{grid-template-columns:1fr;gap:1rem}.collaboration-grid,.contact-grid,.confirmation-steps{grid-template-columns:1fr}.contact-direct{grid-template-columns:repeat(2,1fr);gap:0 2rem;display:grid}.contact-direct>p:first-child,.contact-location{grid-column:span 2}.process-list{grid-template-columns:repeat(2,1fr);gap:2.5rem}.process-list:before{display:none}.about-grid{gap:4rem}.page-hero-grid{grid-template-columns:1fr;align-items:start}.page-hero-panel{width:min(100%,44rem)}.feature-grid{grid-template-columns:repeat(2,1fr)}.feature-grid article:nth-child(3){border-left:0;padding-left:0}.footer-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=52rem){:root{--section-space:clamp(4.5rem, 14vw, 7rem)}.container{width:min(calc(100% - 2rem), var(--container))}.mobile-sticky-cta{right:1rem;bottom:max(.75rem, env(safe-area-inset-bottom));min-height:3.5rem;color:var(--white);background:var(--petrol);font-size:var(--fs-text-md);font-weight:var(--fw-label);justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.1rem;display:flex;left:1rem;box-shadow:0 .7rem 2.25rem #0d221f47}.mobile-sticky-cta:hover{background:var(--petrol-dark)}.to-top{right:1rem;bottom:max(1rem, env(safe-area-inset-bottom))}.to-top.with-mobile-cta{bottom:calc(5.2rem + env(safe-area-inset-bottom))}.header-cta{display:none}.menu-button{margin-left:auto}.hero{padding-top:calc(var(--header-height) + 3rem)}.hero-portrait{min-height:32rem}.compact-projects{grid-template-columns:1fr}.project-compact:last-child{grid-column:auto;display:flex}.project-mobile-frame{z-index:0;width:min(52%,24rem);position:relative;bottom:auto;right:auto}.project-desktop-frame{z-index:1;width:min(52%,24rem);position:absolute;bottom:clamp(1.2rem,4vw,2rem);left:calc(min(52%,24rem) - 2.5rem);right:auto}.device-label{border-radius:var(--radius-pill);color:var(--white);font-size:var(--fs-label-2xs);text-align:left;background:#062320d1;padding:.24rem .35rem;inset:auto auto .4rem .4rem}.mobile-view-label{text-align:left;right:auto}html{scroll-padding-bottom:5rem}.situations-grid,.faq-grid{grid-template-columns:1fr;gap:3.5rem}.testimonial-cards{grid-template-columns:1fr}.sticky-heading{position:static}.text-link{padding-block:.5rem .18rem}.breadcrumbs a{padding-block:.35rem}.offer-row summary{grid-template-columns:minmax(0, 1fr) var(--fs-glyph-lg);gap:.75rem}.offer-price{grid-area:2/1}.offer-toggle{grid-area:1/2/span 2}.offer-details{grid-template-columns:1fr;gap:.75rem;padding:0 0 1.7rem}.offer-details ul{grid-template-columns:1fr}.process-list{grid-template-columns:1fr;gap:0}.process-list li{grid-template-columns:3rem 1fr;gap:1.2rem;padding-bottom:2rem;display:grid}.process-list>li>span{grid-row:1;margin-bottom:0}.about-grid{grid-template-columns:1fr}.about-portrait{max-width:30rem;margin-inline:auto}.footer-grid{grid-template-columns:repeat(2,1fr)}.legal-shell{grid-template-columns:1fr;gap:2rem}.legal-aside{position:static}.audience-links{grid-template-columns:1fr}.audience-links a:nth-child(n){min-height:14rem;padding-left:0}.audience-links a+a,.audience-links a:nth-child(2n){border-left:0}.landing-copy-grid,.related-shell{grid-template-columns:1fr;gap:3rem}.landing-prose{padding-top:2rem}.related-shell h2{max-width:18ch}.related-links a{grid-template-columns:1fr 1.2rem}.related-links span{grid-column:1}.related-links i{grid-area:1/2/span 2}.article-cards{grid-template-columns:1fr}.article-width,.article-content{width:min(100% - 2rem,54rem)}}@media (width<=36rem){.header-inner{gap:.75rem}.header-phone{font-size:var(--fs-label-sm);gap:.35rem;padding-inline:0}.header-phone-icon{width:1.05rem;height:1.05rem}.wordmark small{display:none}.hero{padding-top:calc(var(--header-height) + .5rem)}.hero-copy .eyebrow{margin-bottom:.8rem}.hero-copy h1{max-width:none;margin-bottom:.65rem;line-height:1}.hero-copy .lead{font-size:var(--fs-text-lg);line-height:var(--lh-compact)}.button-row{grid-template-columns:1fr;gap:.55rem;margin-top:.75rem;display:grid}.button-row .button{min-height:3rem;font-size:var(--fs-text-sm);padding:.65rem .5rem}.hero-experience{font-size:var(--fs-text-md);line-height:var(--lh-compact);margin-top:.8rem}.hero-disciplines{margin-top:.7rem;line-height:1.8}.hero-portrait{min-height:27rem;margin-top:1rem}.hero-portrait:before{inset:1.4rem 0 0 2rem}.hero-portrait>img{width:88%;right:.5rem}.hero-portrait-caption{bottom:.6rem}.project-visual{margin-inline:-1rem;padding:.7rem}.compact-intro p:last-child{display:none}.collaboration-lead blockquote{padding-left:1rem}.proof-stats{grid-template-columns:1fr;gap:1.2rem}.about-facts{grid-template-columns:1fr}.about-facts div+div{border-top:1px solid var(--line-warm)}.contact-direct{display:block}.form-row{grid-template-columns:1fr;gap:0}.contact-form{margin-inline:-1rem}.page-hero{padding-top:calc(var(--header-height) + .75rem)}.page-hero .breadcrumbs{margin-bottom:1rem}.page-hero-copy h1{margin-bottom:.75rem}.page-hero-copy .lead{font-size:var(--fs-text-lg);line-height:var(--lh-compact)}.page-hero-copy .button-row{margin-top:.75rem}.footer-grid{grid-template-columns:1fr;gap:2rem}.footer-bottom{display:block}.footer-bottom p+p{margin-top:.4rem}.feature-grid{grid-template-columns:1fr}.feature-grid article:nth-child(n){border-left:0;min-height:auto;padding:1.5rem 0}.feature-grid h3{margin-top:2rem}.page-hero-panel{box-shadow:.65rem .65rem 0 var(--petrol-light)}.project-internal-link{width:fit-content;margin:.8rem 0 0;display:flex}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;transition-delay:0s!important;animation:none!important}.js [data-reveal],.js [data-reveal]>*,.js .project-feature .project-mobile-frame,.js .project-feature .project-copy>*,.js .project-feature .tag-list li,.js .project-compact .compact-mobile-frame{opacity:1!important;transform:none!important}.js [data-portrait-reveal]>img{clip-path:none!important;transform:none!important}.js [data-project-mask]:after{display:none}.button:hover,.button:active,.project-visual:hover .project-mobile-frame,.project-compact-image:hover .compact-mobile-frame{transform:none}}
