@font-face{font-family:body;src:url(../media/bricolage_body-s.p.3_nzv9ets319j.woff2)format("woff2");font-display:swap;font-weight:400 600}@font-face{font-family:body Fallback;src:local(Arial);ascent-override:84.71%;descent-override:24.59%;line-gap-override:0.0%;size-adjust:109.79%}.body_f0b8b313-module__zCx9GG__className{font-family:body,body Fallback}.body_f0b8b313-module__zCx9GG__variable{--font-body:"body", "body Fallback"}
@font-face{font-family:display;src:url(../media/bricolage_display-s.p.39_2j1ta0ty4v.woff2)format("woff2");font-display:block;font-weight:800}@font-face{font-family:display Fallback;src:local(Arial);ascent-override:122.71%;descent-override:35.63%;line-gap-override:0.0%;size-adjust:75.79%}.display_bcf293c9-module__z2lgCG__className{font-family:display,display Fallback;font-weight:800}.display_bcf293c9-module__z2lgCG__variable{--font-display:"display", "display Fallback"}
:root{--ground:#13191f;--carbon:#2b2f2e;--tea:#594c3d;--wood:#906d4b;--amber:#ca9c68;--amber-hi:#dbb488;--cream:#efe4d6;--cream-dim:#b5a898;--font-stack:var(--font-body), system-ui, sans-serif;--display-stack:var(--font-display), system-ui, sans-serif;--gutter:clamp(16px, 5vw, 112px);--max:1920px;--edge:max(var(--gutter), calc((100% - var(--max)) / 2 + var(--gutter)));--ease:cubic-bezier(.2, .7, .1, 1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--ground);color:var(--cream);font:400 17px/1.6 var(--font-stack);-webkit-font-smoothing:antialiased;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit}ol,ul{list-style:none}p{text-wrap:pretty}:focus-visible{outline:2px solid var(--amber);outline-offset:3px;border-radius:3px}.wrap{max-width:var(--max);padding-left:var(--gutter);padding-right:var(--gutter);width:100%;margin:0 auto}h1,h2,h3,.mark{font-family:var(--display-stack);color:var(--amber);font-weight:800}h1,h2{text-transform:uppercase;letter-spacing:-.005em}h3{letter-spacing:-.01em;line-height:1.05}h2{text-wrap:balance;font-size:clamp(48px,7.4vw,104px);line-height:.88}.cta{background:var(--amber);min-height:52px;color:var(--ground);font:600 17px var(--font-stack);cursor:pointer;transition:background .2s, transform .2s var(--ease);border:0;border-radius:999px;justify-content:center;align-items:center;padding:0 28px;text-decoration:none;display:inline-flex}@media (hover:hover){.cta:hover{background:var(--amber-hi);transform:translateY(-2px)}}.cta:disabled,.cta[aria-disabled=true]{background:var(--tea);color:var(--cream);cursor:progress;transform:none}.hero{isolation:isolate;grid-template-rows:auto 1fr;min-height:100svh;display:grid;position:relative;overflow:hidden}.hero picture{z-index:-2;position:absolute;inset:0}.hero-bg{object-fit:cover;object-position:34% 50%;z-index:-2;animation:settle 1.8s var(--ease) both}.hero:after{content:"";z-index:-1;background: linear-gradient(180deg, #13191feb 0, #13191f00 140px), linear-gradient(90deg, #13191fe6 0%, #13191f80 32%, #13191f00 60%), linear-gradient(0deg, var(--ground) 0%, #13191f00 24%);position:absolute;inset:0}.nav{padding:22px var(--edge);justify-content:space-between;align-items:center;font-size:15px;display:flex}.nav a{text-decoration:none}.nav span{color:var(--cream);gap:28px;display:flex}.nav span a{text-underline-offset:6px;padding:10px 0}@media (hover:hover){.nav span a:hover{text-decoration:underline}}.mark{color:var(--cream);letter-spacing:-.01em;padding-block:9px;font-size:26px;line-height:1}.mark i{color:var(--amber);font-style:normal}.hero-copy{padding:0 var(--gutter) 12vh var(--edge);max-width:calc(560px + var(--edge) + var(--gutter));animation:rise .9s .15s var(--ease) both;align-self:center}.hi{font-size:clamp(22px,2vw,28px);font-weight:500}h1{margin:4px 0 0 -.03em;font-size:clamp(120px,17vw,248px);line-height:.8}.lede{max-width:30ch;margin-top:clamp(20px,2.4vw,30px);font-size:clamp(18px,1.55vw,22px);line-height:1.45}.hero-copy .cta{margin-top:30px}.socials{right:var(--edge);animation:fade 1s .9s var(--ease) both;gap:10px;display:grid;position:absolute;bottom:clamp(24px,5vh,48px)}.socials a{width:46px;height:46px;color:var(--cream);transition:color .25s, border-color .25s, transform .3s var(--ease), background .25s;background:#13191f8c;border:1px solid #efe4d647;border-radius:50%;place-items:center;text-decoration:none;display:grid;position:relative}.socials svg{transition:transform .3s var(--ease)}.social-name{white-space:nowrap;color:var(--cream);text-shadow:0 1px 8px #13191fe6;opacity:0;pointer-events:none;transition:opacity .25s, transform .3s var(--ease);font-size:14px;font-weight:500;position:absolute;right:calc(100% + 12px);transform:translate(8px)}@media (hover:hover){.socials a[href]:hover{color:var(--ground);background:var(--cream);border-color:var(--cream);transform:translate(-4px)}.socials a[href]:hover svg{transform:rotate(-8deg)scale(1.08)}.socials a[href]:hover .social-name{opacity:1;transform:none}}.socials a:focus-visible .social-name{opacity:1;transform:none}.socials a[aria-disabled]{opacity:.4;cursor:not-allowed}.about,.work,.services{padding-top:clamp(88px,14vh,160px)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.work{padding-top:clamp(56px,8vh,96px)}.about-copy{container-type:inline-size}.about-lead{white-space:nowrap;letter-spacing:-.02em;font-size:min(9cqi,76px);font-weight:500;line-height:1.05}.about-copy p+p{max-width:46ch;color:var(--cream-dim);margin-top:24px;font-size:19px}@media (min-width:901px){.about{grid-template-columns:7fr 5fr;align-items:center;gap:56px;display:grid}}.autos{min-width:0}.autos-track{scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;gap:16px;display:flex;position:relative;overflow-x:auto}.autos-track::-webkit-scrollbar{display:none}.auto{scroll-snap-align:start;background:var(--ground);border:1px solid var(--tea);border-radius:8px;flex:0 0 calc(100% - 56px);padding:clamp(24px,2.4vw,36px)}.auto h3{font-size:clamp(26px,2.2vw,34px)}.auto-value{margin-top:12px;font-size:19px;line-height:1.45}.auto .steps,.auto .meta{margin-top:22px}.autos-nav{align-items:center;gap:16px;margin-top:16px;display:flex}.autos-nav button{width:44px;height:44px;color:var(--cream);cursor:pointer;background:0 0;border:1px solid #efe4d647;border-radius:50%;place-items:center;transition:color .25s,border-color .25s,background .25s;display:grid}@media (hover:hover){.autos-nav button:not([aria-disabled=true]):hover{color:var(--ground);background:var(--cream);border-color:var(--cream)}}.autos-nav button[aria-disabled=true]{opacity:.4;cursor:default}.autos-count{color:var(--cream-dim);font-variant-numeric:tabular-nums;font-size:15px}.projects{margin-top:clamp(40px,6vh,64px)}.project{border-top:1px solid var(--tea);grid-template-columns:7fr 5fr;align-items:center;gap:24px 56px;padding:40px 0;display:grid}.project:last-child{border-bottom:1px solid var(--tea)}.project-shot{border:1px solid var(--tea);background:var(--carbon);border-radius:8px;overflow:hidden}.project-shot img{width:100%}.project h3{font-size:clamp(30px,3.2vw,46px)}.outcome{max-width:52ch;margin-top:14px;font-size:19px;line-height:1.5}.meta{color:var(--cream-dim);margin-top:14px;font-size:15px}.meta a{color:var(--cream);text-underline-offset:3px;padding-block:13px}@media (min-width:901px){.projects{grid-template-columns:1fr 1fr;column-gap:56px;display:grid}.project{grid-template-columns:1fr;align-content:start;align-items:start}.project:not(:first-child){border-bottom:1px solid var(--tea)}.project:first-child{grid-column:1/-1}.project:first-child .project-text{grid-template-columns:7fr 5fr;align-items:start;column-gap:56px;display:grid}.project:first-child .meta{grid-area:1/2/span 2;margin-top:0;padding-top:8px}}.steps{color:var(--cream-dim);gap:10px;font-size:16px;line-height:1.45;display:grid}.steps li{text-wrap:pretty;padding-left:22px;position:relative}.steps li:before{content:"";background:var(--wood);outline:1px solid var(--wood);outline-offset:-1px;width:7px;height:7px;position:absolute;top:.62em;left:2px;transform:rotate(45deg)}.steps li:not(:last-child):after{content:"";background:var(--wood);transform-origin:top;width:1px;position:absolute;top:calc(.62em + 3.5px);bottom:calc(-13.5px - .62em);left:5px}.offers{margin-top:clamp(40px,6vh,64px)}.offer{border-top:1px solid var(--tea);padding:32px 0}.offer h3{font-size:clamp(30px,2.8vw,40px)}.offer-tag{color:var(--cream-dim);letter-spacing:.04em;margin-top:10px;font-size:14px;display:block}.offer-outcome{max-width:52ch;margin-top:14px;font-size:19px;line-height:1.45}.offer .steps{margin-top:22px}@media (min-width:901px){.offer{grid-template-columns:7fr 5fr;column-gap:56px;padding:40px 0;display:grid}.offer:last-child{border-bottom:1px solid var(--tea)}.offer-body .steps{margin-top:6px}}@supports (animation-timeline:view()){.offer ul{view-timeline:--pipe block}.offer li:before,.offer li:after{animation-timing-function:linear;animation-fill-mode:both;animation-timeline:--pipe}.offer li:before{animation-name:node}.offer li:after{animation-name:draw}.offer li:first-child:before{animation-range:cover 15% cover 19%}.offer li:first-child:after{animation-range:cover 19% cover 29%}.offer li:nth-child(2):before{animation-range:cover 27% cover 31%}.offer li:nth-child(2):after{animation-range:cover 31% cover 41%}.offer li:nth-child(3):before{animation-range:cover 39% cover 43%}}.offer-proof{color:var(--cream-dim);margin-top:18px;font-size:15px}.offer-proof a{text-underline-offset:3px;text-wrap:balance;width:min-content;padding-block:10px;display:inline-block}.nowrap{white-space:nowrap}@media (hover:hover){.offer-proof a:hover,.meta a:hover{color:var(--cream);text-decoration-thickness:2px}}.contact{background:var(--carbon);margin-top:clamp(88px,14vh,160px);padding-block:clamp(72px,10vh,120px)}.contact .wrap{text-align:center}.contact-lede{max-width:46ch;margin:24px auto 0;font-size:clamp(19px,1.6vw,22px);line-height:1.45}.form{text-align:left;grid-template-columns:1fr 1fr;gap:20px 24px;max-width:820px;margin:36px auto 0;display:grid}.form label{color:var(--cream-dim);gap:8px;font-size:15px;display:grid}.form .wide{grid-column:1/-1}.form input,.form textarea{border:1px solid color-mix(in srgb, var(--wood) 85%, var(--cream-dim));background:var(--ground);width:100%;color:var(--cream);font:400 17px/1.5 var(--font-stack);border-radius:8px;padding:14px 16px;transition:border-color .2s}.form textarea{resize:vertical;min-height:140px}.form input:focus-visible,.form textarea:focus-visible{border-color:var(--amber);box-shadow:0 0 0 1px var(--amber);outline:none}.form .trap{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.form-foot{text-align:center;justify-items:center;gap:16px;display:grid}.form-note{color:var(--cream-dim);max-width:52ch;font-size:16px}.form-note:empty{display:none}.form-note:focus{outline:none}.form[data-state=sent] .form-note{color:var(--cream);font-size:19px}.contact+.foot{border-top:0;margin-top:0}.foot{width:min(var(--max) - 2 * var(--gutter), 100% - 2 * var(--gutter));border-top:1px solid var(--tea);color:var(--cream-dim);justify-content:space-between;margin:clamp(88px,14vh,160px) auto 0;padding:28px 0 40px;font-size:14px;display:flex}@media (max-width:900px){.project{grid-template-columns:1fr}.about .autos{margin-top:48px}.autos-track{margin-inline:calc(-1 * var(--gutter));padding-inline:var(--gutter);scroll-padding-inline:var(--gutter);align-items:flex-start}.auto{flex-basis:88%}}@media (max-width:1023px) and (orientation:portrait){.hero:after{background:linear-gradient(180deg, #13191fe0 0%, #13191f99 42%, #13191f00 62%), linear-gradient(0deg, var(--ground) 0%, #13191f00 20%)}}@media (max-width:640px){.nav span{gap:18px}.hero-bg{object-position:38% 50%}.hero:after{background:linear-gradient(180deg, #13191fe0 0%, #13191f99 42%, #13191f00 62%), linear-gradient(0deg, var(--ground) 0%, #13191f00 20%)}.hero-copy{align-self:start;padding-top:8vh}h1{font-size:clamp(112px,36vw,150px)}.socials{gap:8px}.socials a{width:44px;height:44px}.project{padding:32px 0}.project-shot img{aspect-ratio:8/7;object-fit:cover;object-position:top}.form{grid-template-columns:1fr}.form .cta{width:100%}}@keyframes rise{0%{opacity:0;transform:translateY(18px)}}@keyframes fade{0%{opacity:0}}@keyframes draw{0%{transform:scaleY(0)}}@keyframes node{0%{background:0 0}}@keyframes settle{0%{opacity:0;transform:scale(1.06)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
