:root{--color-paper:oklch(97.6% .008 165);--color-paper-2:oklch(94.6% .014 165);--color-paper-3:oklch(89.6% .022 165);--color-card:oklch(99.2% .004 165);--color-rule:oklch(85.5% .014 165);--color-rule-2:oklch(90% .012 165);--color-muted:oklch(46% .018 168);--color-ink-2:oklch(34% .022 168);--color-ink:oklch(22% .025 168);--color-accent:oklch(42% .085 168);--color-accent-2:oklch(36% .075 168);--color-deep:oklch(27% .045 168);--color-accent-ink:oklch(97.6% .008 165);--color-on-deep-2:oklch(82% .03 165);--color-focus:oklch(46% .13 168);--color-logo:oklch(94.9% .013 78);--color-shadow:oklch(30% .05 168/.16);--color-mint:oklch(78.4% .087 167.9);--color-whatsapp:oklch(76.1% .201 149.7);--color-scrim:oklch(15% .02 168/.45);--font-display:"Bricolage Grotesque", system-ui, sans-serif;--font-body:"Geist", system-ui, sans-serif;--text-xs:.8125rem;--text-sm:.9375rem;--text-base:1.0625rem;--text-lg:1.25rem;--text-xl:clamp(1.375rem, 1.1rem + .9vw, 1.75rem);--text-2xl:clamp(1.875rem, 1.3rem + 2.4vw, 3.125rem);--text-display:clamp(2.5rem, 1.4rem + 4.6vw, 4.75rem);--space-3xs:.125rem;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--space-3xl:6rem;--space-4xl:8.5rem;--gutter:clamp(1rem, 4vw, 2.5rem);--shell:76rem;--radius-sm:.5rem;--radius-card:.75rem;--radius-pill:999px;--radius-logo:.625rem;--rule-hair:1px;--rule-ink:2px;--shadow-soft:0 10px 28px -14px var(--color-shadow);--shadow-lift:0 18px 36px -16px var(--color-shadow);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-smooth:cubic-bezier(.32, .72, 0, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--z-base:1;--z-sticky:200;--z-dropdown:300;--nav-h:4.5rem}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{overflow-x:clip}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + var(--space-md))}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-base);-webkit-font-smoothing:antialiased;line-height:1.6}img{max-width:100%;height:auto;display:block}a{color:inherit}button,input,select{font:inherit;color:inherit}::selection{background:var(--color-accent);color:var(--color-accent-ink)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.shell{width:100%;max-width:var(--shell);padding-inline:var(--gutter);margin-inline:auto}.h1,.h2,.h3{font-family:var(--font-display);letter-spacing:-.025em;overflow-wrap:anywhere;min-width:0;font-style:normal;font-weight:600}.h1{font-size:var(--text-display);line-height:1.02}.h2{font-size:var(--text-2xl);line-height:1.08}.h3{font-size:var(--text-xl);line-height:1.2}.h1 .mark,.h2 .mark{color:var(--color-accent)}.lede{font-size:var(--text-lg);color:var(--color-ink-2);max-width:46ch}.muted{color:var(--color-muted)}.kicker{font-size:var(--text-sm);color:var(--color-accent);font-weight:600}.btn{justify-content:center;align-items:center;gap:var(--space-xs);min-height:2.75rem;padding:0 var(--space-lg);border-radius:var(--radius-pill);border:var(--rule-hair) solid transparent;font-weight:600;font-size:var(--text-sm);white-space:nowrap;cursor:pointer;transition:background-color var(--dur-micro) var(--ease-out), border-color var(--dur-micro) var(--ease-out), color var(--dur-micro) var(--ease-out), transform var(--dur-micro) var(--ease-out);text-decoration:none;display:inline-flex}.btn .arr{transition:transform var(--dur-short) var(--ease-out)}.btn:hover .arr{transform:translate(3px)}.btn:active{transform:translateY(1px)}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed}.btn.is-loading{opacity:.7;pointer-events:none}.btn-fill{background:var(--btn-bg,var(--color-accent));color:var(--btn-ink,var(--color-accent-ink))}.btn-fill:hover{background:var(--btn-bg-2,var(--color-accent-2))}.btn-chip{border-color:var(--btn-bg,var(--color-ink));color:var(--btn-bg,var(--color-ink));background:0 0}.btn-chip:hover{background:color-mix(in oklch, currentColor 10%, transparent)}.btn-text{padding-inline:var(--space-sm);color:var(--color-ink-2)}.btn-text:hover{color:var(--color-accent)}.btn-light{background:var(--color-logo);color:var(--color-deep)}.btn-light:hover{background:var(--color-card)}.nav{z-index:var(--z-sticky);background:var(--color-paper);border-bottom:var(--rule-hair) solid var(--color-rule);transition:box-shadow var(--dur-short) var(--ease-out), background-color var(--dur-short) var(--ease-out), border-color var(--dur-short) var(--ease-out), color var(--dur-short) var(--ease-out);position:fixed;inset:0 0 auto}.nav.is-scrolled{box-shadow:var(--shadow-soft)}.nav__inner{height:var(--nav-h);justify-content:space-between;align-items:center;gap:var(--space-md);display:flex}.brand{height:2.75rem;padding-inline:var(--space-sm);background:var(--color-accent);color:var(--color-logo);border-radius:var(--radius-logo);flex:none;align-items:center;text-decoration:none;display:inline-flex}.brand-logo{width:auto;height:1.125rem;display:block}.nav__center{display:none}.nav__right{align-items:center;gap:var(--space-2xs);display:flex}.nav__right .btn-text{display:none}.nav__burger{border-radius:var(--radius-pill);border:var(--rule-hair) solid var(--color-rule);background:var(--color-card);cursor:pointer;place-items:center;width:2.75rem;height:2.75rem;display:inline-grid}.nav__burger span,.nav__burger span:before,.nav__burger span:after{background:var(--color-ink);content:"";border-radius:2px;width:1rem;height:2px;display:block;position:relative}.nav__burger span:before{position:absolute;top:-5px}.nav__burger span:after{position:absolute;top:5px}.nav__sheet{border-top:var(--rule-hair) solid var(--color-rule-2);background:var(--color-paper);padding:var(--space-md) var(--gutter) var(--space-lg);display:none}.nav.is-open .nav__sheet{gap:var(--space-2xs);display:grid}.nav__sheet a{padding:var(--space-sm) 0;border-bottom:var(--rule-hair) solid var(--color-rule-2);font-weight:500;text-decoration:none}.nav__sheet .sheet-cta{margin-top:var(--space-sm);padding:0 var(--space-lg);border-bottom:0}.sheet-group__row{border-bottom:var(--rule-hair) solid var(--color-rule-2);align-items:center;display:flex}.sheet-group__row a{border-bottom:0;flex:1}.sheet-group__label{padding:var(--space-sm) 0;flex:1;font-weight:500}.sheet-group__toggle{cursor:pointer;width:2.75rem;height:2.75rem;color:inherit;background:0 0;border:0;place-items:center;display:inline-grid}.sheet-group__toggle[aria-expanded=true] .nav__caret{transform:rotate(225deg)translateY(-2px)}.sheet-group__items:not([hidden]){padding-left:var(--space-md);display:grid}.nav__sheet .sheet-group__items a{font-weight:400}.nav__cta{display:none}@media (width>=22.5rem){.nav__cta{display:inline-flex}}.nav__link{align-items:center;gap:var(--space-2xs);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-pill);font-size:var(--text-sm);white-space:nowrap;cursor:pointer;transition:background-color var(--dur-micro) var(--ease-out);background:0 0;border:0;font-weight:500;text-decoration:none;display:inline-flex}.nav__link:hover,.nav__item--menu:focus-within>.nav__link{background:var(--color-paper-2)}button.nav__link{color:inherit;font-family:inherit}.nav__caret{border-bottom:1.5px solid;border-right:1.5px solid;width:.4rem;height:.4rem;transform:rotate(45deg)translateY(-2px)}.nav__item--menu{position:relative}.nav__dropdown{top:calc(100% + var(--space-xs));z-index:var(--z-dropdown);width:22rem;padding:var(--space-xs);gap:var(--space-3xs);background:var(--color-card);border:var(--rule-hair) solid var(--color-rule-2);border-radius:var(--radius-card);box-shadow:var(--shadow-lift);opacity:0;visibility:hidden;transition:opacity var(--dur-short) var(--ease-out), transform var(--dur-short) var(--ease-out), visibility var(--dur-short);display:grid;position:absolute;left:50%;transform:translateY(-6px)}.nav__item--menu:hover .nav__dropdown,.nav__item--menu:focus-within .nav__dropdown,.nav__item--menu.is-open .nav__dropdown{opacity:1;visibility:visible;transform:none}.nav__dropitem{gap:var(--space-sm);padding:var(--space-xs);border-radius:var(--radius-sm);grid-template-columns:3rem minmax(0,1fr);align-items:center;text-decoration:none;display:grid}.nav__dropitem--plain{grid-template-columns:minmax(0,1fr)}.nav__dropitem:hover{background:var(--color-paper-2)}.nav__dropitem img{object-fit:cover;border-radius:var(--radius-sm);width:3rem;height:3rem}.nav__dropitem b{font-size:var(--text-sm);display:block}.nav__dropitem i{font-style:normal;font-size:var(--text-xs);color:var(--color-muted)}section{padding-block:var(--space-3xl)}.split{gap:var(--space-xl);grid-template-columns:minmax(0,1fr);align-items:center;display:grid}.split__text{gap:var(--space-md);align-content:center;display:grid}.split__text .actions{gap:var(--space-sm);margin-top:var(--space-xs);flex-wrap:wrap;display:flex}.photo{border-radius:var(--radius-card);background:var(--color-paper-3);box-shadow:var(--shadow-soft);position:relative;overflow:hidden}.photo img{object-fit:cover;width:100%;height:100%}.photo figcaption{left:var(--space-md);bottom:var(--space-md);padding:var(--space-2xs) var(--space-sm);border-radius:var(--radius-pill);background:var(--color-card);font-size:var(--text-xs);color:var(--color-ink-2);font-weight:600;position:absolute}.hero{text-align:center;min-height:100svh;padding-block:calc(var(--nav-h) + var(--space-2xl)) var(--space-3xl);background:var(--color-deep);color:var(--color-logo);--color-accent:var(--color-mint);--color-accent-2:color-mix(in oklch, var(--color-mint) 85%, black);--color-accent-ink:var(--color-deep);place-items:center;display:grid;overflow:hidden}.hero:before{content:none}.hero__bg{z-index:-1;position:absolute;inset:0}.hero__bg img{object-fit:cover;object-position:58% center;width:100%;height:100%}.hero__bg:after{content:"";background:linear-gradient(180deg, color-mix(in oklch, var(--color-deep) 55%, transparent) 0%, color-mix(in oklch, var(--color-deep) 45%, transparent) 45%, color-mix(in oklch, var(--color-deep) 85%, transparent) 100%);position:absolute;inset:0}.hero__content{justify-items:center;gap:1.25rem;display:grid}.hero:has(>.hero__bg) .hero__content{color:var(--color-logo)}.hero__title{max-width:16ch;font-family:var(--font-body);letter-spacing:-.015em;text-wrap:balance;font-size:clamp(2.25rem,1.4rem + 3.6vw,4rem);font-weight:600;line-height:1.12}.hero__title .mark{color:var(--color-accent)}.hero__lede{max-width:38rem}.hero .actions{justify-content:center;gap:var(--space-sm);margin-top:var(--space-xs);flex-wrap:wrap;display:flex}.hero .btn{border-radius:var(--radius-sm);min-height:2.875rem;transition:background-color var(--dur-micro) var(--ease-out), transform var(--dur-micro) var(--ease-out), opacity var(--dur-short) var(--ease-out);padding-inline:1.25rem}.hero .btn:hover{opacity:.9}.hero .btn:active{transform:scale(.97)}.hero .btn-glass{background:color-mix(in oklch, currentColor 12%, transparent);color:inherit}.hero__scroll{left:50%;bottom:var(--space-lg);justify-items:center;gap:var(--space-2xs);min-height:2.75rem;font-size:var(--text-xs);color:var(--color-on-deep-2);text-decoration:none;display:grid;position:absolute;translate:-50%}.hero__scroll svg{width:1.125rem;height:1.125rem}@media (height<=40rem){.hero__scroll{display:none}}.hero__end{scroll-margin-top:calc(-1 * var(--space-md));position:absolute;bottom:0}.wa-float{z-index:var(--z-sticky);right:calc(var(--space-md) + env(safe-area-inset-right));bottom:calc(var(--space-md) + env(safe-area-inset-bottom));background:var(--color-whatsapp);width:3.5rem;height:3.5rem;color:var(--color-card);box-shadow:var(--shadow-lift);transition:transform var(--dur-micro) var(--ease-out);border-radius:50%;place-items:center;display:grid;position:fixed}.wa-float:hover{transform:scale(1.06)}.wa-float svg{width:1.75rem;height:1.75rem}body:has(>main>section.hero:first-child) .nav:not(.is-scrolled):not(.is-open){background:var(--color-scrim);color:var(--color-accent-ink);border-bottom-color:#0000}body:has(>main>section.hero:first-child) .nav:not(.is-scrolled):not(.is-open) .nav__dropdown{color:var(--color-ink)}body:has(>main>section.hero:first-child) .nav:not(.is-scrolled):not(.is-open) .brand{color:var(--color-logo)!important}body:has(>main>section.hero:first-child) .nav:not(.is-scrolled):not(.is-open) .btn-text{color:var(--color-accent-ink)}body:has(>main>section.hero:first-child) .nav:not(.is-scrolled):not(.is-open) .nav__link:hover{background:oklch(100% 0 0/.14)}body:has(>main>section.hero:first-child) .nav:not(.is-scrolled):not(.is-open) .nav__item--menu:focus-within>.nav__link{background:oklch(100% 0 0/.14)}body:has(>main>section.hero:first-child) .nav:not(.is-scrolled):not(.is-open) .nav__burger{background:0 0;border-color:oklch(100% 0 0/.4)}body:has(>main>section.hero:first-child) .nav:not(.is-scrolled):not(.is-open) .nav__burger span{background:var(--color-accent-ink)}body:has(>main>section.hero:first-child) .nav:not(.is-scrolled):not(.is-open) .nav__burger span:before{background:var(--color-accent-ink)}body:has(>main>section.hero:first-child) .nav:not(.is-scrolled):not(.is-open) .nav__burger span:after{background:var(--color-accent-ink)}.about{background:var(--color-paper-2)}.about .photo{aspect-ratio:3/2}.mission{gap:var(--space-sm);margin-top:var(--space-xs);list-style:none;display:grid}.mission li{gap:var(--space-xs);color:var(--color-ink-2);font-size:var(--text-sm);grid-template-columns:2rem minmax(0,1fr);display:grid}.mission b{font-family:var(--font-display);color:var(--color-accent);font-weight:600}.team__head{gap:var(--space-sm);max-width:46rem;margin-bottom:var(--space-xl);display:grid}.team__groups{gap:var(--space-xl) var(--space-lg);grid-template-columns:minmax(0,1fr);display:grid}.team__label{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent);font-weight:600;display:flex}.team__label:after{content:"";border-top:var(--rule-hair) solid var(--color-rule);flex:1}.team-grid{gap:var(--space-md);grid-template-columns:minmax(0,1fr);list-style:none;display:grid}.team-card{align-items:center;gap:var(--space-md);background:var(--color-card);border-radius:var(--radius-card);padding:var(--space-sm);box-shadow:var(--shadow-soft);grid-template-columns:5.5rem minmax(0,1fr);display:grid}.team-card__media{aspect-ratio:4/5;border-radius:var(--radius-sm);background:var(--color-paper-3);place-items:center;display:grid;position:relative;overflow:hidden}.team-card__media img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.team-card__initials{font-family:var(--font-display);font-weight:600;font-size:var(--text-lg);letter-spacing:-.02em;color:var(--color-accent)}.team-card__body{gap:var(--space-3xs);display:grid}.team-card__name{color:var(--color-ink);overflow-wrap:anywhere;font-weight:600;line-height:1.3}.team-card__role{font-size:var(--text-sm);color:var(--color-muted)}.team-grid--wide .team-card__name{font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:-.015em}.budget .card-band{gap:var(--space-xl);background:var(--color-paper-3);border-radius:var(--radius-card);padding:var(--space-xl) var(--space-lg);grid-template-columns:minmax(0,1fr);align-items:center;display:grid}.cta-form{gap:var(--space-sm);grid-template-columns:minmax(0,1fr);display:grid}.field{gap:var(--space-2xs);font-size:var(--text-xs);color:var(--color-ink-2);font-weight:600;display:grid}.field input,.field select{min-height:2.75rem;padding:0 var(--space-md);border-radius:var(--radius-sm);border:var(--rule-hair) solid var(--color-rule);background:var(--color-card);font-size:var(--text-base);transition:border-color var(--dur-micro) var(--ease-out)}.field input:hover,.field select:hover{border-color:var(--color-muted)}.field input:focus-visible,.field select:focus-visible{border-color:var(--color-accent);outline-offset:1px}.field input:invalid:not(:placeholder-shown){border-color:var(--color-ink)}.cta-form .btn{align-self:end}.helper{font-size:var(--text-xs);color:var(--color-muted);grid-column:1/-1}.services .split{align-items:start}.services .split__text{position:static}.svc-grid{gap:var(--space-lg);grid-template-columns:minmax(0,1fr);display:grid}.svc{background:var(--color-card);border-radius:var(--radius-card);box-shadow:var(--shadow-soft);transition:transform var(--dur-short) var(--ease-out), box-shadow var(--dur-short) var(--ease-out);grid-template-rows:auto 1fr;text-decoration:none;display:grid;overflow:hidden}.svc:hover{box-shadow:var(--shadow-lift);transform:translateY(-2px)}.svc:active{transform:translateY(0)}.svc__media{aspect-ratio:4/3;background:var(--color-paper-2);overflow:hidden}.svc__media img{object-fit:cover;width:100%;height:100%}.svc__media img.is-art{object-fit:contain}.svc__body{gap:var(--space-xs);padding:var(--space-md) var(--space-md) var(--space-lg);align-content:start;display:grid}.svc__body p{font-size:var(--text-sm);color:var(--color-muted)}.svc__ask{font-size:var(--text-sm);color:var(--color-accent);white-space:nowrap;margin-top:var(--space-2xs);font-weight:600}.process{background:var(--color-paper-2)}.sticky-stack{gap:var(--space-xl);grid-template-columns:minmax(0,1fr);display:grid}.pane-sticky{gap:var(--space-md);align-content:start;display:grid}.steps{gap:var(--space-md);counter-reset:step;list-style:none;display:grid}.step{gap:var(--space-md);background:var(--color-card);border-radius:var(--radius-card);padding:var(--space-lg);box-shadow:var(--shadow-soft);grid-template-columns:2.25rem minmax(0,1fr);align-items:start;display:grid}.step__n{font-family:var(--font-display);font-weight:600;font-size:var(--text-xl);color:var(--color-accent);font-variant-numeric:tabular-nums;line-height:1.2}.step p{font-size:var(--text-sm);color:var(--color-muted);margin-top:var(--space-2xs)}.step--acc{padding:0;display:block}.step--acc.reveal{transition:opacity var(--dur-long) var(--ease-out), transform var(--dur-long) var(--ease-out), box-shadow var(--dur-short) var(--ease-out)}.step__heading{font:inherit;margin:0}.step--acc:has(.step__head[aria-expanded=true]){box-shadow:var(--shadow-lift)}.step__head{gap:var(--space-md);width:100%;padding:var(--space-lg);text-align:left;border-radius:var(--radius-card);cursor:pointer;font:inherit;color:inherit;background:0 0;border:0;grid-template-columns:2.25rem minmax(0,1fr) 2.5rem;align-items:start;display:grid}.step__head:focus-visible{outline:2px solid var(--color-focus);outline-offset:-2px}.step__text{gap:var(--space-2xs);min-width:0;display:grid}.step__title{transition:color var(--dur-short) var(--ease-out);display:block}.step__sub{font-size:var(--text-sm);color:var(--color-muted)}.step__head[aria-expanded=true] .step__title{color:var(--color-accent)}.step__ic{background:var(--color-paper-3);width:2.5rem;height:2.5rem;transition:background-color var(--dur-short) var(--ease-out), transform var(--dur-short) var(--ease-out);border-radius:50%;align-self:center;position:relative}.step__ic:before{content:"";border-right:2px solid var(--color-accent);border-bottom:2px solid var(--color-accent);width:.5rem;height:.5rem;transition:transform .42s var(--ease-smooth), border-color var(--dur-short) var(--ease-out);position:absolute;top:50%;left:50%;transform:translate(-50%,-70%)rotate(45deg)}@media (hover:hover){.step__head:hover .step__title{color:var(--color-accent)}.step__head:hover .step__ic{transform:scale(1.06)}}.step__head[aria-expanded=true] .step__ic{background:var(--color-accent)}.step__head[aria-expanded=true] .step__ic:before{border-color:var(--color-accent-ink);transform:translate(-50%,-30%)rotate(225deg)}.step__panel{grid-template-rows:1fr;display:grid}.step__panel-inner{min-height:0;overflow:hidden}.step__panel-inner p{padding:0 var(--space-lg) var(--space-lg) calc(var(--space-lg) + 2.25rem + var(--space-md));color:var(--color-ink-2);font-size:var(--text-base);max-width:62ch;margin:0}.js .step__panel{transition:grid-template-rows .38s var(--ease-in-out) 80ms;grid-template-rows:0fr}.js .step__panel-inner p{opacity:0;transition:opacity .16s var(--ease-out), transform .2s var(--ease-out);transform:translateY(-8px)}.js .step__heading:has(.step__head[aria-expanded=true])+.step__panel{transition:grid-template-rows .52s var(--ease-smooth);grid-template-rows:1fr}.js .step__heading:has(.step__head[aria-expanded=true])+.step__panel .step__panel-inner p{opacity:1;transition:opacity .32s var(--ease-out) .14s, transform .46s var(--ease-smooth) .14s;transform:none}@media (width<=39.99rem){.step__head{gap:var(--space-sm);padding:var(--space-md);grid-template-columns:2rem minmax(0,1fr) 2.25rem}.step__ic{width:2.25rem;height:2.25rem}.step__panel-inner p{padding:0 var(--space-md) var(--space-md) var(--space-md)}}.photo-stack{gap:var(--space-md);display:grid}.photo-stack .photo{aspect-ratio:16/10}.proj-list{gap:var(--space-sm);list-style:none;display:grid}.proj-row{gap:var(--space-md);padding:var(--space-xs);border-radius:var(--radius-card);background:var(--color-card);box-shadow:var(--shadow-soft);grid-template-columns:6.5rem minmax(0,1fr);align-items:center;display:grid}.proj-row img{aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-sm);width:6.5rem}.proj-row b{font-weight:600;display:block}.proj-row span,.proj-note{font-size:var(--text-xs);color:var(--color-muted)}.proof-room{background:var(--color-deep);color:var(--color-accent-ink);text-align:center}.proof-room blockquote{font-family:var(--font-display);font-style:normal;font-weight:500;font-size:var(--text-2xl);letter-spacing:-.02em;max-width:22ch;margin-inline:auto;line-height:1.15}.proof-room .attribution{margin-top:var(--space-lg);font-size:var(--text-sm);color:var(--color-on-deep-2)}.contact-card{background:var(--color-card);border-radius:var(--radius-card);padding:var(--space-lg);box-shadow:var(--shadow-soft);gap:var(--space-md);display:grid}.contact-card dl{gap:var(--space-md);display:grid}.contact-card dt{font-size:var(--text-xs);color:var(--color-muted);font-weight:600}.contact-card dd{font-weight:500}.contact-card a{-webkit-text-decoration-color:var(--color-rule);text-decoration-color:var(--color-rule);text-underline-offset:.2em}.contact-card a:hover{-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent)}.foot-stmt{background:var(--color-deep);color:var(--color-accent-ink);padding:var(--space-3xl) 0 var(--space-xl)}.foot-stmt__line{font-family:var(--font-display);letter-spacing:-.025em;overflow-wrap:anywhere;max-width:28ch;font-size:clamp(1.75rem,1.2rem + 3vw,3.25rem);font-weight:600;line-height:1.05}.foot-stmt__meta{margin-top:var(--space-2xl);padding-top:var(--space-md);border-top:var(--rule-hair) solid var(--color-accent-2);gap:var(--space-md);font-size:var(--text-xs);color:var(--color-on-deep-2);display:grid}.foot-stmt__links{gap:var(--space-xs) var(--space-lg);flex-wrap:wrap;display:flex}.foot-stmt__links a{white-space:nowrap;text-decoration:none}.foot-stmt__links a:hover{color:var(--color-logo)}.foot-stmt .brand{width:auto;box-shadow:none;background:0 0;justify-self:start;padding-inline:0}.foot-stmt .brand-logo{height:1.5rem}.reveal{opacity:0;transition:opacity var(--dur-long) var(--ease-out), transform var(--dur-long) var(--ease-out);transform:translateY(12px)}.reveal.in{opacity:1;transform:none}.reveal.in+.reveal.in{transition-delay:80ms}@media (width>=40rem){.brand{height:3rem;padding-inline:var(--space-md)}.brand-logo{height:1.25rem}.svc-grid,.team__groups{grid-template-columns:repeat(2,minmax(0,1fr))}.team__group{grid-column:1/-1}.team__group--solo{grid-column:auto}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.team__group--solo .team-grid{grid-template-columns:minmax(0,1fr)}.cta-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end}.budget .card-band{padding:var(--space-2xl)}.proj-row{grid-template-columns:8rem minmax(0,1fr)}.proj-row img{width:8rem}.foot-stmt__meta{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}}@media (width>=60rem){section{padding-block:var(--space-4xl)}.nav__center{gap:var(--space-3xs);display:flex}.nav__right .btn-text{display:inline-flex}.nav__burger,.nav.is-open .nav__sheet{display:none}.split{gap:var(--space-3xl);grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.split--rev{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}.split--rev>:first-child{order:2}.split--even{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.split--fill{align-items:stretch}.split--fill>.photo,.split--fill .photo-stack .photo{aspect-ratio:auto;height:100%;min-height:22rem}.split--fill .photo-stack{grid-template-rows:minmax(0,1fr) minmax(0,1fr);height:100%}.split--fill .photo-stack .photo{min-height:14rem}.split--fill .photo img{position:absolute;inset:0}.services .split{grid-template-columns:minmax(0,4fr) minmax(0,8fr)}.services .split__text{top:calc(var(--nav-h) + var(--space-xl));position:sticky}.sticky-stack{gap:var(--space-3xl);grid-template-columns:minmax(0,5fr) minmax(0,7fr)}.pane-sticky{top:calc(var(--nav-h) + var(--space-xl));align-self:start;position:sticky}.budget .card-band{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}.team-grid{gap:var(--space-lg);grid-template-columns:repeat(3,minmax(0,1fr))}.team-grid--wide{grid-template-columns:repeat(2,minmax(0,1fr))}.team__group--solo .team-grid{grid-template-columns:minmax(0,1fr)}.team-grid--wide .team-card{padding:var(--space-md);grid-template-columns:7rem minmax(0,1fr)}.team-grid--wide .team-card__initials{font-size:var(--text-xl)}}.page-blocks>section:first-child{padding-top:calc(var(--nav-h) + var(--space-2xl))}.page-head{padding-bottom:var(--space-2xl)}@media (width<=59.99rem){.page-head .photo{aspect-ratio:4/3}}.page-head .lede{margin-top:var(--space-2xs)}.text-image .photo{aspect-ratio:3/2}.prose{gap:var(--space-sm);max-width:65ch;color:var(--color-ink-2);display:grid}.block-head{gap:var(--space-sm);max-width:46rem;margin-bottom:var(--space-xl);display:grid}.features{background:var(--color-paper-2)}.features__grid{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));list-style:none;display:grid}.feature{gap:var(--space-xs);padding:var(--space-lg);border-radius:var(--radius-card);background:var(--color-card);box-shadow:var(--shadow-soft);align-content:start;display:grid}.feature b{font-family:var(--font-display);color:var(--color-accent);font-weight:600}.feature p{color:var(--color-ink-2);font-size:var(--text-sm)}.faq__list{border-top:var(--rule-hair) solid var(--color-rule);max-width:52rem}.faq__item{border-bottom:var(--rule-hair) solid var(--color-rule)}.faq__item summary{justify-content:space-between;align-items:center;gap:var(--space-md);padding-block:var(--space-md);cursor:pointer;font-weight:600;list-style:none;display:flex}.faq__item summary::-webkit-details-marker{display:none}.faq__item summary:after{content:"";width:.5rem;height:.5rem;margin-right:var(--space-2xs);border-right:1.5px solid var(--color-accent);border-bottom:1.5px solid var(--color-accent);transition:transform var(--dur-short) var(--ease-out);flex:none;transform:rotate(45deg)translateY(-2px)}.faq__item[open] summary:after{transform:rotate(225deg)translateY(-2px)}.faq__item p{padding-bottom:var(--space-md);color:var(--color-ink-2);max-width:65ch}.cta-band__card{gap:var(--space-lg);padding:var(--space-xl) var(--space-lg);border-radius:var(--radius-card);background:var(--color-paper-3);align-items:center;display:grid}.cta-band__card .actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}@media (width>=40rem){.cta-band__card{padding:var(--space-2xl);grid-template-columns:minmax(0,1fr) auto}}.quotes,.gallery__grid{gap:var(--space-md);grid-template-columns:repeat(auto-fill, minmax(min(100%, max(16rem, (100% - 2 * var(--space-md)) / 3)), 1fr));list-style:none;display:grid}.quotes>li{display:grid}.quote{gap:var(--space-md);padding:var(--space-lg);border-radius:var(--radius-card);background:var(--color-card);box-shadow:var(--shadow-soft);align-content:space-between;display:grid}.quote blockquote p:before{content:"“";font-family:var(--font-display);font-size:var(--text-2xl);color:var(--color-accent);line-height:.6;display:block}.quote blockquote p{color:var(--color-ink-2)}.quote figcaption{font-size:var(--text-sm);gap:2px;display:grid}.quote figcaption span{color:var(--color-muted)}.gallery__grid .photo{aspect-ratio:4/3}.logos{padding-block:var(--space-2xl)}.logos__title{margin-bottom:var(--space-lg);text-align:center}.logos__row{justify-content:center;align-items:center;gap:var(--space-lg) var(--space-2xl);flex-wrap:wrap;list-style:none;display:flex}.logos__row img{object-fit:contain;width:auto;max-width:9rem;height:3rem}.photo-block{padding-block:var(--space-2xl)}.photo-block .photo{aspect-ratio:16/9}.notice{padding-block:var(--space-2xl)}.notice__box{gap:var(--space-sm);max-width:52rem;padding:var(--space-lg);border-left:3px solid var(--color-accent);border-radius:var(--radius-sm);background:var(--color-card);box-shadow:var(--shadow-soft);display:grid}.notice__box p{color:var(--color-ink-2)}.notice__box .actions{margin-top:var(--space-2xs)}.divider{padding-block:var(--space-lg)}.divider hr{border:0}.divider--line hr{border-top:var(--rule-hair) solid var(--color-rule)}.block-empty{padding:var(--space-xl);border:1.5px dashed var(--color-rule);border-radius:var(--radius-card);text-align:center;font-size:var(--text-sm);color:var(--color-muted)}.page-intro{padding-top:calc(var(--nav-h) + var(--space-2xl));padding-bottom:var(--space-2xl)}.page-intro .h1,.project-head .h1{margin-top:var(--space-xs)}.page-intro .lede,.project-head .lede{margin-top:var(--space-md)}.portfolio{background:var(--color-paper-2);color:var(--color-ink);--rail:var(--color-rule)}.portfolio .h2{margin-bottom:var(--space-xl)}.portfolio--list{padding-top:var(--space-2xl)}.team--page{padding-top:var(--space-xl)}.filters{justify-content:center;gap:var(--space-sm);margin-bottom:var(--space-2xl);flex-wrap:wrap;display:flex}.filter{min-height:2.5rem;padding:0 var(--space-md);border:var(--rule-hair) solid var(--color-muted);border-radius:var(--radius-pill);color:var(--color-ink-2);font-size:var(--text-sm);transition:background-color var(--dur-micro) var(--ease-out), border-color var(--dur-micro) var(--ease-out), color var(--dur-micro) var(--ease-out);align-items:center;font-weight:500;text-decoration:none;display:inline-flex}.filter:hover{border-color:var(--color-accent);color:var(--color-accent)}.filter[aria-current=page]{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-ink)}.filters{position:relative}.filters__glider{z-index:0;pointer-events:none;border-radius:var(--radius-pill);background:var(--color-accent);transition:transform var(--dur-long) var(--ease-out), width var(--dur-long) var(--ease-out), height var(--dur-long) var(--ease-out);position:absolute;top:0;left:0}.filters__glider.is-instant{transition:none}.filters--glide .filter{z-index:1;position:relative}.filters--glide .filter[aria-current=page]{background:0 0;border-color:#0000}.portfolio__grid{overflow-clip-margin:1rem;gap:var(--space-2xl) 0;grid-template-columns:minmax(0,1fr);list-style:none;display:grid;overflow:clip}.work{padding-inline:var(--space-sm)}.portfolio__empty{text-align:center;color:var(--color-muted)}.work__link{align-items:center;gap:var(--space-md) var(--space-sm);padding-bottom:var(--space-md);border-bottom:var(--rule-hair) solid var(--color-rule);color:inherit;grid-template-columns:minmax(0,1fr) auto;text-decoration:none;display:grid}.work__media{aspect-ratio:4/3;border-radius:var(--radius-sm);background:var(--color-paper-3);grid-column:1/-1;position:relative;overflow:hidden}.work__media img{object-fit:cover;width:100%;height:100%;transition:transform var(--dur-long) var(--ease-out)}.work__play{left:var(--space-sm);bottom:var(--space-sm);background:var(--color-accent);width:2.5rem;height:2.5rem;color:var(--color-accent-ink);box-shadow:var(--shadow-soft);border-radius:50%;place-items:center;display:grid;position:absolute}.work__play svg{width:1rem;height:1rem;margin-left:2px}.work__title{font-weight:500}.work__arrow{border:1.5px solid var(--color-accent);width:1.75rem;height:1.75rem;color:var(--color-accent);transition:transform var(--dur-short) var(--ease-out), background-color var(--dur-short) var(--ease-out), color var(--dur-short) var(--ease-out);border-radius:50%;place-items:center;display:grid}.work__arrow svg{width:.75rem;height:.75rem}.work__link:hover .work__media img{transform:scale(1.03)}.work__link:hover .work__arrow{background:var(--color-accent);color:var(--color-accent-ink);transform:translate(2px,-2px)}.work__link:focus-visible{outline-color:var(--color-focus);outline-offset:6px;border-radius:var(--radius-sm)}.project-head{padding-top:calc(var(--nav-h) + var(--space-xl));padding-bottom:var(--space-xl)}.back{margin-bottom:var(--space-lg);font-size:var(--text-sm);color:var(--color-ink-2);font-weight:600;text-decoration:none;display:inline-block}.back:hover{color:var(--color-accent)}.project-facts{gap:var(--space-md) var(--space-2xl);margin-top:var(--space-lg);flex-wrap:wrap;display:flex}.project-facts dt{font-size:var(--text-xs);color:var(--color-muted);font-weight:600}.project-facts dd{font-weight:500}.project-head .actions{gap:var(--space-sm);margin-top:var(--space-lg);flex-wrap:wrap;display:flex}.project-media{padding-top:0}.media{gap:var(--space-sm);grid-template-columns:minmax(0,1fr);display:grid}.shell.media{max-width:min(var(--shell), calc(70svh * 16 / 9 + 2 * var(--gutter)))}.media__stage,.media__slide{gap:var(--space-md);display:grid}.media__slide{gap:var(--space-xs)}.media__frame,.video{aspect-ratio:16/9;border-radius:var(--radius-card);background:var(--color-paper-3);box-shadow:var(--shadow-soft);overflow:hidden}.media__frame img{object-fit:contain;width:100%;height:100%}.media__frame{cursor:zoom-in;border:0;width:100%;padding:0;display:block}.media__frame:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.lightbox{background:var(--color-ink);width:100vw;max-width:none;height:100svh;max-height:none;color:var(--color-accent-ink);overscroll-behavior:contain;border:0;margin:0;padding:0}.lightbox::backdrop{background:0 0}.lightbox[open]{grid-template-rows:auto minmax(0,1fr) auto;display:grid}.lightbox__bar{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);display:flex}.lightbox__count{font-size:var(--text-sm);color:var(--color-on-deep-2)}.lightbox__figure{touch-action:none;min-height:0;position:relative;overflow:hidden}.lightbox.is-zoomed .lightbox__figure{touch-action:pan-x pan-y;overflow:auto}.lightbox__img{inset:0 var(--space-md);max-width:calc(100% - 2 * var(--space-md));cursor:zoom-in;-webkit-user-select:none;user-select:none;max-height:100%;margin:auto;position:absolute}.lightbox.is-zoomed .lightbox__img{cursor:zoom-out;max-width:none;height:auto;max-height:none;display:block;position:static}.lightbox__caption{min-height:1lh;padding:var(--space-sm) var(--space-md) var(--space-md);text-align:center;font-size:var(--text-sm);color:var(--color-on-deep-2)}.lightbox__btn{cursor:pointer;background:color-mix(in oklch, var(--color-accent-ink) 14%, transparent);width:2.75rem;height:2.75rem;color:inherit;transition:background-color var(--dur-short) var(--ease-out), opacity var(--dur-short) var(--ease-out);border:0;border-radius:50%;place-items:center;padding:0;display:grid}.lightbox__btn:hover{background:color-mix(in oklch, var(--color-accent-ink) 26%, transparent)}.lightbox__btn:focus-visible{outline-offset:2px;outline:2px solid}.lightbox__btn svg{width:1rem;height:1rem}.lightbox__prev,.lightbox__next{position:absolute;top:50%;translate:0 -50%}.lightbox__prev{left:var(--space-md)}.lightbox__next{right:var(--space-md)}.lightbox__btn[hidden]{display:none}.lightbox.is-zoomed .lightbox__prev,.lightbox.is-zoomed .lightbox__next{opacity:0;pointer-events:none}.video iframe{border:0;width:100%;height:100%;display:block}.media__slide figcaption{font-size:var(--text-sm);color:var(--color-muted)}.js .media__slide:not(.is-active),.media__thumbs{display:none}.js .media__thumbs{gap:var(--space-xs);scroll-snap-type:x proximity;scrollbar-width:none;padding:3px;scroll-padding-inline:3px;list-style:none;display:flex;overflow-x:auto}.js .media__thumbs::-webkit-scrollbar{display:none}.media__thumbs>li{scroll-snap-align:start;flex:none}.media__strip{position:relative}.media__strip-btn{z-index:1;cursor:pointer;background:var(--color-accent);width:2.25rem;height:2.25rem;color:var(--color-accent-ink);box-shadow:var(--shadow-soft);transition:background-color var(--dur-short) var(--ease-out);border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:50%;translate:0 -50%}.media__strip-btn:hover{background:var(--color-accent-2)}.media__strip-btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.media__strip-btn svg{width:1rem;height:1rem}.media__strip-btn--prev{left:var(--space-2xs)}.media__strip-btn--next{right:var(--space-2xs)}.media__strip-btn[hidden]{display:none}@media (hover:none),(pointer:coarse){.media__strip-btn{display:none}}.media__thumb{aspect-ratio:4/3;border-radius:var(--radius-sm);background:var(--color-paper-3);opacity:.65;outline-offset:1px;width:6rem;transition:opacity var(--dur-short) var(--ease-out), outline-color var(--dur-short) var(--ease-out);outline:2px solid #0000;display:block;position:relative;overflow:hidden}.media__thumb img{object-fit:cover;width:100%;height:100%}.media__thumb:hover,.media__thumb[aria-current=true]{opacity:1}.media__thumb[aria-current=true]{outline-color:var(--color-accent)}.media__thumb:focus-visible{outline-color:var(--color-focus)}.media__play{background:var(--color-accent);width:2rem;height:2rem;color:var(--color-accent-ink);box-shadow:var(--shadow-soft);border-radius:50%;place-items:center;margin:auto;display:grid;position:absolute;inset:0}.media__play svg{width:.875rem;height:.875rem;margin-left:2px}@media (width>=40rem){.portfolio__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.media__thumb{width:7.5rem}}@media (width>=60rem){.portfolio__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.15s!important;animation-duration:.15s!important}.reveal,.svc:hover,.work__link:hover .work__media img,.work__link:hover .work__arrow{transform:none}}.nav .brand{color:#0b5c45!important;box-shadow:none!important;background:0 0!important;padding-inline:0!important}.nav .brand svg{height:1.5rem!important}.brand-logo--image{object-fit:contain;width:auto;max-width:12rem}.nav .brand .brand-logo--image{height:2rem}:root{--rail-cols:4;--rail:var(--color-rule-2)}@media (width>=40rem){:root{--rail-cols:8}}@media (width>=60rem){:root{--rail-cols:12}}main>section{isolation:isolate;position:relative}main>section:before{content:"";inset-block:0;inset-inline:calc(max(0px, (100% - var(--shell)) / 2) + var(--gutter));z-index:-1;pointer-events:none;background-image:repeating-linear-gradient(to right, var(--rail-color,var(--rail)) 0, var(--rail-color,var(--rail)) var(--rule-hair), transparent var(--rule-hair), transparent calc(100% / var(--rail-cols)));border-right:var(--rule-hair) solid var(--rail-color,var(--rail));position:absolute}.about,.process{--rail:var(--color-rule)}.proof-room{--rail:oklch(97.6% .008 165/.12)}[data-rails=off] main>section:before{content:none}[data-tone=dark] :is(.photo figcaption,.card-band,.cta-band__card,.feature,.quote,.notice__box,.svc,.step,.proj-row,.contact-card,.team-card){--color-ink:oklch(22% .025 168);--color-ink-2:oklch(34% .022 168);--color-muted:oklch(46% .018 168);--color-paper-2:oklch(94.6% .014 165);color:var(--color-ink)}
