@font-face{font-family:Outfit;src:url("assets/fonts/outfit-400.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Outfit;src:url("assets/fonts/outfit-500.ttf") format("truetype");font-style:normal;font-weight:500;font-display:swap}:root{color-scheme:light;--blue:#003669;--paper:#e9ece8;--white:#f4f6f1;--ink:#003669;--muted:#435d6e;--rule:rgba(0,54,105,.18);--gutter:clamp(24px,5.5vw,100px);--ease:cubic-bezier(.22,1,.36,1)}*,*::after,*::before{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--blue);color:var(--white);font-family:Outfit,system-ui,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent}a{touch-action:manipulation}a:focus-visible{outline:2px solid currentColor;outline-offset:7px}::selection{background:#adcfe4;color:#003669}svg{max-width:100%;display:block}.brand-mark,.hero-monogram{user-select:none;-webkit-user-drag:none;pointer-events:none;flex-shrink:0}main:focus,section:focus{outline:none}.page-width{width:100%;max-width:1600px;margin-inline:auto;padding-inline:var(--gutter)}.skip-link{position:fixed;top:12px;left:16px;z-index:20;background:var(--paper);color:var(--blue);padding:14px 22px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{position:absolute;inset:30px var(--gutter) auto;z-index:10;display:flex;justify-content:space-between;align-items:center;height:48px;max-width:1400px;margin-inline:auto}.brand{display:flex;align-items:center;gap:15px;font-size:15px;letter-spacing:.055em;font-weight:500;min-height:44px}.brand svg{width:42px;height:auto}.navigation{position:fixed;top:30px;right:var(--gutter);display:flex;padding:5px;border-radius:100px;background:rgba(244,246,241,.95);color:var(--blue);box-shadow:0 5px 24px rgba(0,28,55,.08);backdrop-filter:blur(12px)}.navigation a{font-size:13px;line-height:20px;padding:11px 23px;border-radius:100px;transition:background .4s var(--ease),color .4s var(--ease)}.navigation a[aria-current]{background:var(--blue);color:var(--white)}.hero{min-height:100svh;display:flex;flex-direction:column;position:relative;padding-top:125px;padding-bottom:46px;overflow:clip}.hero-main{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:8%;flex:1;padding-top:45px;padding-bottom:85px}.hero-copy h1{font-size:clamp(76px,8.7vw,138px);font-weight:500;line-height:.95;letter-spacing:-.065em;margin:0 0 32px}.hero-copy h1>span{display:block;white-space:nowrap}.period{color:#94b9d0}.hero-copy p{font-size:clamp(17px,1.5vw,22px);line-height:1.55;letter-spacing:-.01em;margin:0 0 30px;color:#cad9e1}.contact-button{display:inline-flex;align-items:center;gap:27px;font-size:14px;padding:7px 7px 7px 22px;border-radius:100px;background:var(--white);color:var(--blue);transition:transform .5s var(--ease)}.button-icon{display:grid;place-items:center;border-radius:50%;width:36px;height:36px;background:#e1e7e6;font-size:23px;transition:transform .5s var(--ease)}.hero-art{display:flex;justify-content:center;align-items:center;position:relative;padding-top:24px}.hero-monogram{width:100%;height:auto;transform-origin:center}.services{margin-top:28px}.services ul{list-style:none;padding:26px 0 0;margin:0;border-top:1px solid rgba(244,246,241,.23);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 28px}.services li{font-size:15px;font-weight:400;color:#d1dee5;line-height:1.5}.contact{position:relative;background:var(--paper);color:var(--ink);min-height:100svh;scroll-margin-top:0}.contact-inner{padding-top:130px;padding-bottom:46px}.statement{padding-bottom:110px;position:relative}.statement h2{font-size:clamp(82px,10.7vw,168px);line-height:.99;font-weight:500;letter-spacing:-.064em;margin:0;max-width:1200px}.statement-line{display:block;width:fit-content}.statement-middle{color:var(--muted);font-weight:400;margin-left:14%}.statement-line:last-child{margin-left:28%}.contact .period{color:var(--muted)}.call-link{display:flex;align-items:center;justify-content:space-between;gap:24px;width:fit-content;margin:68px 0 0 28%;font-size:clamp(24px,2.7vw,40px);letter-spacing:-.035em;min-height:60px}.call-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:50%;color:var(--paper);background:var(--ink);font-size:30px;transition:transform .5s var(--ease)}.footer{border-top:1px solid var(--rule);padding-top:40px;display:grid;grid-template-columns:1fr 1.4fr .65fr;gap:36px;align-items:start}.footer-brand{display:flex;align-items:center;gap:18px;min-height:48px;font-size:15px;letter-spacing:.04em;font-weight:500;width:fit-content}.footer-brand svg{width:64px;height:auto}.contact-details .email{font-size:clamp(20px,2vw,26px);letter-spacing:-.025em;display:inline-block;padding:5px 0}address{font-style:normal;font-size:15px;line-height:1.6;color:var(--muted);margin-top:18px}.text-link{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:14px;width:fit-content}.text-link .link-arrow{transition:transform .5s var(--ease);display:inline-block}.social-links{display:grid;justify-content:end}.social-links a{width:100%;min-width:125px}.directions{margin-top:8px}@media(hover:hover){.contact-button:hover::before{opacity:1}.contact-button:hover .button-sheen::after{animation:button-sheen 1.1s var(--ease)}.contact-button:hover .button-icon{transform:rotate(45deg)}.text-link:hover .link-arrow{transform:translate(3px,-3px)}.email:hover,.text-link:hover .link-label{text-decoration:underline;text-underline-offset:5px}.call-link:hover .call-icon{transform:rotate(45deg)}.navigation a:not([aria-current]):hover{background:rgba(0,54,105,.08)}}.call-link:active,.contact-button:active{transform:scale(.98)}@media(min-width:1600px){.navigation{right:max(var(--gutter),calc((100vw - 1400px)/2))}}@media(max-width:1023px){.hero-main{gap:6%;grid-template-columns:1.3fr 1fr}.hero-copy h1{font-size:clamp(64px,9vw,95px)}.hero-main{padding-top:65px;padding-bottom:65px}.hero{padding-bottom:36px}.footer{grid-template-columns:1fr 1.2fr}.footer-brand{grid-column:1/-1}.social-links{justify-content:end}.statement-line:last-child{margin-left:16%}.call-link{margin-left:16%}.statement-middle{margin-left:8%}}@media(max-width:767px){.site-header{top:22px;height:44px}.brand{font-size:11px;letter-spacing:.035em;gap:8px}.brand svg{width:32px}.navigation{top:22px;right:20px;padding:4px}.navigation a{padding:9px 15px;font-size:12px;line-height:20px}.hero{padding-top:115px}.hero-main{grid-template-columns:1fr;gap:48px}.hero-copy h1{line-height:.97;letter-spacing:-.06em;margin-bottom:26px}.hero-copy p{font-size:17px;line-height:1.6;max-width:290px;margin-bottom:26px}.hero-art{padding:0;justify-content:flex-end}.hero-monogram{width:54%;max-width:290px}.services ul{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-inner{padding-top:100px;padding-bottom:28px}.statement{padding-bottom:80px}.statement h2{font-size:clamp(52px,11.8vw,89px);line-height:1.12;letter-spacing:-.055em}.statement-middle{margin-left:4%}.statement-line:last-child{margin-left:8%}.call-link{margin:42px 0 0 8%;font-size:26px;gap:20px}.call-icon{width:48px;height:48px;font-size:26px}.footer{grid-template-columns:1fr;gap:32px;padding-top:30px}.footer-brand{gap:14px;font-size:14px}.footer-brand svg{width:48px}.contact-details .email{font-size:24px}.social-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;justify-content:stretch;border-top:1px solid var(--rule);padding-top:20px}.social-links a{min-width:0;font-size:14px}.desktop-break{display:none}}@media(max-width:359px){.brand span{display:none}.navigation{right:16px}.call-link{font-size:23px;gap:16px}.statement h2{font-size:50px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::after,*::before{animation:none!important;transition:none!important}}@media(prefers-reduced-transparency:reduce){.navigation{background:#f4f6f1;backdrop-filter:none}}.contact-button{position:relative;isolation:isolate}.button-icon,.button-label{position:relative;z-index:1}.button-glow,.contact-button::before{content:"";position:absolute;inset:-2px;border-radius:inherit;pointer-events:none;opacity:0;box-shadow:0 0 18px 3px rgba(188,221,244,.3),0 0 44px 6px rgba(188,221,244,.12)}.contact-button::before{transition:opacity .65s var(--ease)}.button-glow{inset:-3px}.button-sheen{position:absolute;inset:0;overflow:hidden;border-radius:inherit;pointer-events:none}.button-sheen::after{content:"";position:absolute;inset:-20% auto -20% 0;width:48%;background:linear-gradient(105deg,transparent,rgba(167,203,225,.45),hsla(0,0%,100%,.85),transparent);transform:translateX(-160%) skewX(-18deg)}.contact-button:focus-visible::before{opacity:1}@keyframes button-sheen{from{transform:translateX(-160%) skewX(-18deg)}to{transform:translateX(340%) skewX(-18deg)}}@media(prefers-reduced-motion:reduce){.button-glow{display:none}}.studio-intro{display:flex;flex-direction:column;min-height:calc(100svh - 171px)}.local-work{background:#cddfe7;color:var(--blue);padding-block:120px 140px}.local-work-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr);gap:11%;align-items:start}.local-work-heading{position:sticky;top:130px}.local-work-heading h2{font-size:clamp(40px,4.6vw,68px);font-weight:500;line-height:1.06;letter-spacing:-.055em;margin:0 0 30px;max-width:10ch}.local-work-heading h2 span{display:block;color:#416981}.local-work-heading>p{font-size:18px;line-height:1.65;color:#35556a;margin:0;max-width:27ch}.local-work-grid{min-width:0}.local-work-item{border-bottom:1px solid rgba(0,54,105,.2)}.local-work-item:first-child{border-top:1px solid rgba(0,54,105,.2)}.local-work-item summary{display:flex;align-items:center;justify-content:space-between;gap:25px;cursor:pointer;list-style:none;padding:30px 0;min-height:94px}.local-work-item summary::-webkit-details-marker{display:none}.local-work-item summary:focus-visible{outline:2px solid var(--blue);outline-offset:6px}.local-work-item h3{font-size:clamp(24px,2.6vw,36px);font-weight:400;letter-spacing:-.035em;line-height:1.2;margin:0;max-width:19ch}.service-toggle{position:relative;flex:0 0 36px;height:36px;border-radius:50%;background:rgba(0,54,105,.07);transition:transform .5s var(--ease),background .5s var(--ease)}.service-toggle::after,.service-toggle::before{content:"";position:absolute;width:12px;height:1px;left:12px;top:17px;background:currentColor}.service-toggle::after{transform:rotate(90deg)}.local-work-item[open] .service-toggle{transform:rotate(45deg);background:rgba(0,54,105,.13)}.service-description{padding:0 48px 34px 0}.service-description p{font-size:17px;line-height:1.65;color:#35556a;margin:0 0 22px;max-width:37ch}.service-description .text-link{gap:24px;font-size:15px}@media(hover:hover){.local-work-item summary:hover .service-toggle{background:rgba(0,54,105,.16)}}@supports (interpolate-size:allow-keywords){.local-work-item{interpolate-size:allow-keywords}.local-work-item::details-content{block-size:0;overflow:clip;opacity:0;transition:block-size .5s var(--ease),opacity .3s var(--ease),content-visibility .5s allow-discrete}.local-work-item[open]::details-content{block-size:auto;opacity:1}}.phone-number{position:relative;isolation:isolate}.phone-number::before{content:"";position:absolute;inset:-.12em -.2em -.08em;background:#b9d3df;border-bottom:2px solid var(--blue);border-radius:3px;z-index:-1;opacity:0;transform:scaleX(0) skewX(-6deg);transform-origin:left center;pointer-events:none}.call-link.is-highlighted .phone-number::before{animation:phone-mark 2.4s var(--ease) both}@keyframes phone-mark{0%{opacity:0;transform:scaleX(0) skewX(-6deg)}18%,72%{opacity:1;transform:scaleX(1) skewX(-6deg);transform-origin:left center}73%{transform-origin:right center}100%{opacity:0;transform:scaleX(0) skewX(-6deg);transform-origin:right center}}@media(max-width:767px){.studio-intro{min-height:0}.local-work{padding-block:76px 84px}.local-work-layout{grid-template-columns:1fr;gap:46px}.local-work-heading{position:static}.local-work-heading h2{font-size:clamp(42px,10vw,62px);max-width:12ch;margin-bottom:24px}.local-work-heading>p{font-size:17px;max-width:30ch}.local-work-item summary{padding-block:25px;gap:18px;min-height:86px}.local-work-item h3{font-size:26px}.service-description{padding:0 16px 28px 0}.service-description p{font-size:16px}}@media(prefers-reduced-motion:reduce){.call-link.is-highlighted .phone-number::before{opacity:1;transform:none}}.pointer-halo{position:fixed;top:0;left:0;width:300px;height:300px;border-radius:50%;pointer-events:none;z-index:1;opacity:0;background:radial-gradient(circle,rgba(168,207,233,.15) 0%,rgba(168,207,233,.055) 36%,rgba(168,207,233,0) 70%);transition:opacity .6s var(--ease);will-change:transform}.pointer-halo.is-visible{opacity:1}@media(hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.pointer-halo{display:none}}@media(max-width:767px){:root{--gutter:20px}.hero-art{display:none}.hero-main{display:block;padding-top:24px;padding-bottom:36px}.hero-copy h1{font-size:clamp(60px,13vw,96px)}.services{margin-top:10px}.services ul{display:flex;flex-wrap:wrap;gap:8px;padding-top:26px}.services li{padding:7px 11px;border-radius:100px;background:rgba(244,246,241,.065);color:#d9e5ec;font-size:13px;line-height:1.45;white-space:nowrap}.hero{min-height:auto;padding-bottom:64px}}@media(max-width:359px){:root{--gutter:18px}.hero-copy h1{font-size:60px}.services ul{gap:7px}.services li{padding:7px 10px}}
