.pa-site{--rule-dash:repeating-linear-gradient(to right,var(--line) 0 9px,transparent 9px 14px);background:var(--canvas);color:var(--ink);font-family:var(--font-home-sans),ui-sans-serif,system-ui,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}.pa-site img{display:block;max-width:100%;height:auto}.pa-site dd,.pa-site dl,.pa-site h1,.pa-site h2,.pa-site h3,.pa-site p,.pa-site ul{margin:0}.pa-site ul{padding:0;list-style:none}.pa-site a{color:inherit}.pa-site :focus-visible{outline:2px solid var(--home-accent);outline-offset:3px;border-radius:4px}.pa-site .skip-link{position:absolute;left:16px;top:-48px;padding:10px 14px;background:var(--ink);color:var(--canvas);border-radius:var(--radius-sm);text-decoration:none;z-index:10}.pa-site .skip-link:focus{top:12px}.pa-site .container{max-width:var(--container);margin:0 auto;padding:0}.pa-site .site-footer .container,.pa-site .site-header .container,.pa-site main>.container{border-left:1px solid var(--line);border-right:1px solid var(--line)}.pa-site main>.container{display:flow-root}.pa-site .label{letter-spacing:.04em;color:var(--home-muted)}.pa-site .label,.pa-site .num{font-family:var(--font-home-mono),ui-monospace,monospace;font-size:12px}.pa-site .num{color:var(--home-accent)}.pa-site .h1{font-size:clamp(48px,7vw,92px);line-height:1.05;letter-spacing:-.02em;max-width:1000px}.pa-site .h1,.pa-site .h2{font-family:var(--font-home-display),Georgia,serif;font-weight:500;text-wrap:balance}.pa-site .h2{font-size:clamp(34px,4.2vw,56px);line-height:1.15;letter-spacing:-.015em}.pa-site .lede{font-size:clamp(17px,1.5vw,19px);color:var(--soft);text-wrap:pretty}.pa-site .muted{color:var(--home-muted)}.pa-site .soft{color:var(--soft)}.pa-site .btn{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 22px;border-radius:var(--radius-btn);font-size:15px;font-weight:500;text-decoration:none;border:none;cursor:pointer;font-family:inherit;transition:background-color .2s var(--ease),border-color .2s var(--ease),color .2s var(--ease),transform .2s var(--ease)}.pa-site .btn svg{transition:transform .2s var(--ease)}.pa-site .btn:hover svg{transform:translateX(3px)}.pa-site .btn:active{transform:translateY(1px)}.pa-site .btn--primary{background:var(--ink);color:var(--canvas)}.pa-site .btn--primary:hover{background:#333935}.pa-site .btn--secondary{border:1px solid var(--line-strong);color:var(--ink);background:transparent}.pa-site .btn--secondary:hover{border-color:var(--ink)}.pa-site .btn--sm{min-height:44px;padding:0 20px}.pa-site .btn--lg{min-height:52px;padding:0 26px;font-size:16px}.pa-site .text-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:15px;font-weight:500;color:var(--home-accent);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--home-accent) 45%,transparent);text-underline-offset:5px;transition:text-decoration-color .2s var(--ease)}.pa-site .text-link:hover{text-decoration-color:var(--home-accent)}.pa-site .site-header{background-image:var(--rule-dash);background-size:100% 1px;background-repeat:repeat-x;background-position:bottom}.pa-site .site-header .container{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;padding:22px var(--gutter)}.pa-site .brand{display:flex;align-items:baseline;gap:10px;text-decoration:none}.pa-site .brand strong{font-family:var(--font-home-display),Georgia,serif;font-size:18px;font-weight:500;letter-spacing:-.01em}.pa-site .nav{display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px;font-size:14px}.pa-site .nav a:not(.nav-cta){color:var(--home-muted);text-decoration:none;transition:color .2s var(--ease);background:none;border:none;cursor:pointer;font:inherit;padding:0}.pa-site .nav a:not(.nav-cta):hover{color:var(--ink)}.pa-site .nav-cta{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;background:var(--ink);color:var(--canvas);border-radius:var(--radius-sm);font-weight:500;text-decoration:none;border:none;cursor:pointer;font:inherit;transition:background-color .2s var(--ease)}.pa-site .nav-cta:hover{background:#333935}@media (max-width:560px){.pa-site .brand .label{display:none}.pa-site .nav{gap:4px 18px}.pa-site .nav a:not(.nav-cta){display:none}}.pa-site .section{position:relative;padding:var(--section-y) var(--gutter)}.pa-site .section:before{content:"";position:absolute;top:0;left:50%;width:100vw;height:1px;background-image:var(--rule-dash);background-size:100% 1px;background-repeat:repeat-x;transform:translateX(-50%);pointer-events:none}.pa-site .section-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 48px}.pa-site .section-head>:first-child{flex:1 1 420px;min-width:0}.pa-site .section-head>p{flex:1 1 360px;max-width:460px;font-size:16px;color:var(--home-muted)}.pa-site .section .label+.h2,.pa-site .section-head .label{margin-bottom:14px;display:block}.pa-site .hero{padding:clamp(56px,9vw,120px) var(--gutter) clamp(64px,8vw,104px)}.pa-site .eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:24px}.pa-site .eyebrow:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--home-accent)}.pa-site .hero-row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:32px 64px;margin-top:40px}.pa-site .hero-copy{flex:1 1 420px;max-width:600px;min-width:0}.pa-site .hero-who{display:flex;align-items:center;gap:14px;margin-top:24px;font-size:15px;font-weight:500}.pa-site .avatar-sm{flex:none;width:44px;height:44px;border-radius:50%;object-fit:cover;background:var(--placeholder);border:1px solid var(--line)}.pa-site .hero-recent{margin-top:20px;font-size:14px;line-height:1.5;color:var(--home-muted)}.pa-site .hero-recent .num{margin-right:8px}.pa-site .hero-recent a{color:var(--soft);text-decoration:underline;text-decoration-color:var(--home-accent);text-underline-offset:4px}.pa-site .hero-recent a:hover{color:var(--ink)}.pa-site .cta-row{display:flex;flex-wrap:wrap;gap:12px}.pa-site .problem-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(400px,100%),1fr));gap:1px;margin-top:48px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-card);overflow:hidden}.pa-site .problem{padding:clamp(24px,3vw,36px);background:var(--surface)}.pa-site .problem h3{margin-top:16px;font-family:var(--font-home-display),Georgia,serif;font-size:24px;line-height:1.3;font-weight:500;letter-spacing:-.01em}.pa-site .problem p{margin-top:8px;font-size:16px;color:var(--home-muted)}.pa-site .kicker{margin-top:28px;font-family:var(--font-home-display),Georgia,serif;font-size:26px;font-weight:500;letter-spacing:-.01em}.pa-site .shot{display:block;overflow:hidden;border-radius:var(--radius-media);background:var(--placeholder);border:1px solid var(--line)}.pa-site .shot img{width:100%;height:100%;object-fit:cover;object-position:top left;transition:transform .5s var(--ease)}.pa-site .shot:hover img{transform:scale(1.015)}.pa-site .shot--wide{aspect-ratio:16/10}.pa-site .shot--card{aspect-ratio:4/3}.pa-site .feature{margin-top:56px}.pa-site .feature-meta{display:flex;flex-wrap:wrap;gap:24px 48px;margin-top:28px}.pa-site .feature-title{flex:1 1 180px;max-width:220px}.pa-site .feature-title h3{margin-top:8px;font-family:var(--font-home-display),Georgia,serif;font-size:28px;line-height:1.2;letter-spacing:-.015em;font-weight:500}.pa-site .feature-title p{margin-top:6px;font-size:14px;color:var(--home-muted)}.pa-site .facts{flex:999 1 600px;min-width:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:24px 32px}.pa-site .facts>div{padding-top:14px;border-top:1px solid var(--line)}.pa-site .facts>div.is-outcome{border-top-color:var(--home-accent)}.pa-site .facts dt{margin-bottom:6px}.pa-site .facts dd{font-size:15px;color:var(--soft)}.pa-site .facts .is-outcome dd{color:var(--ink)}.pa-site .work-pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));gap:56px 32px;margin-top:72px}.pa-site .card-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 16px;margin-top:24px}.pa-site .card-head h3{display:flex;align-items:baseline;gap:12px;font-family:var(--font-home-display),Georgia,serif;font-size:26px;letter-spacing:-.015em;font-weight:500}.pa-site .card-head p{font-size:14px;color:var(--home-muted)}.pa-site .work-card>p{margin-top:12px;font-size:15px}.pa-site .work-more{margin-top:56px}.pa-site .split{display:flex;flex-wrap:wrap;gap:40px 64px}.pa-site .split>:first-child{flex:1 1 440px;min-width:0}.pa-site .stack{display:flex;flex-direction:column;gap:16px;margin-top:24px;color:var(--soft)}.pa-site .focus-card{flex:1 1 380px;min-width:0;align-self:flex-start;padding:8px clamp(20px,2.5vw,32px);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card)}.pa-site .focus-card .label{display:block;margin:20px 0 4px}.pa-site .focus-card li{display:flex;gap:16px;padding:20px 0;border-bottom:1px solid var(--line)}.pa-site .focus-card li:last-child{border-bottom:0;padding-bottom:24px}.pa-site .focus-card .num{line-height:1.9}.pa-site .focus-card strong{display:block;font-size:17px;font-weight:600}.pa-site .focus-card span.desc{display:block;margin-top:4px;font-size:15px;color:var(--home-muted)}.pa-site .offers{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(400px,100%),1fr));gap:20px;margin-top:48px}.pa-site .offer{display:flex;flex-direction:column;gap:20px;padding:clamp(24px,3vw,36px);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card)}.pa-site .offer--monthly{border-color:var(--home-accent)}.pa-site .offer-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 16px}.pa-site .offer-head h3{font-family:var(--font-home-display),Georgia,serif;font-size:34px;line-height:1.15;letter-spacing:-.015em;font-weight:500}.pa-site .offer--monthly .offer-head .label{color:var(--home-accent)}.pa-site .offer-sub{font-size:17px;font-weight:500}.pa-site .offer-body{display:flex;flex-direction:column;gap:12px;font-size:15px;color:var(--home-muted)}.pa-site .offer-foot{margin-top:auto;padding-top:24px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.pa-site .price{font-family:var(--font-home-display),Georgia,serif;font-size:34px;font-weight:500;letter-spacing:-.015em;display:block;line-height:1.2}.pa-site .price-note{display:block;font-size:14px;color:var(--home-muted)}.pa-site .fine{margin-top:24px;max-width:640px;font-size:15px;color:var(--home-muted)}.pa-site .about{display:flex;flex-wrap:wrap;gap:24px 48px}.pa-site .about-side{flex:1 1 180px;max-width:220px;display:flex;flex-direction:column;gap:20px}.pa-site .about-side .label{margin-top:6px}.pa-site .portrait{width:160px;height:192px;border-radius:12px;object-fit:cover;background:var(--placeholder);border:1px solid var(--line)}.pa-site .about-main{flex:999 1 600px;min-width:0}.pa-site .about-main .stack{max-width:640px}.pa-site .about-main .stack p:first-child{color:var(--ink)}.pa-site .tech{margin-top:28px;font-size:14px;color:var(--home-muted)}.pa-site .tech span{font-family:var(--font-home-mono),ui-monospace,monospace;font-size:13px;color:var(--ink)}.pa-site .studio{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 32px;margin-top:56px;padding:24px 28px;background:var(--surface);border:1px solid var(--line);border-radius:14px}.pa-site .studio>div{flex:1 1 360px;min-width:0}.pa-site .studio h3{margin-top:8px;font-family:var(--font-home-display),Georgia,serif;font-size:24px;letter-spacing:-.01em;font-weight:500}.pa-site .studio p:not(.label){margin-top:6px;font-size:15px;line-height:1.55;color:var(--home-muted)}.pa-site .faq{display:flex;flex-wrap:wrap;gap:32px 64px}.pa-site .faq>:first-child{flex:1 1 280px;min-width:0}.pa-site .faq-list{flex:2 1 520px;min-width:0;border-top:1px solid var(--line)}.pa-site .faq-list details{border-bottom:1px solid var(--line)}.pa-site .faq-list summary{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:44px;padding:18px 0;cursor:pointer;list-style:none;font-size:17px;font-weight:500}.pa-site .faq-list summary::-webkit-details-marker{display:none}.pa-site .faq-list summary:after{content:"+";font-family:var(--font-home-mono),ui-monospace,monospace;color:var(--home-muted);transition:transform .2s var(--ease),color .2s var(--ease)}.pa-site .faq-list details[open] summary:after{content:"\2212";color:var(--home-accent)}.pa-site .faq-list summary:hover:after{color:var(--home-accent)}.pa-site .faq-list details p{padding-bottom:22px;font-size:15px;color:var(--home-muted)}.pa-site .cta{margin:clamp(24px,4vw,48px) var(--gutter) clamp(56px,7vw,96px);padding:clamp(32px,6vw,72px);background:var(--surface);border:1px solid var(--line);border-radius:20px}.pa-site .cta .h2{font-size:clamp(38px,5.4vw,72px);line-height:1.08;letter-spacing:-.02em;max-width:760px}.pa-site .cta .stack{max-width:580px;gap:12px}.pa-site .cta-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;margin-top:36px}.pa-site .cta-actions p{font-size:14px;color:var(--home-muted)}.pa-site .site-footer{background-image:var(--rule-dash);background-size:100% 1px;background-repeat:repeat-x;background-position:top}.pa-site .site-footer .container{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 32px;padding:24px var(--gutter) 40px;font-size:14px;color:var(--home-muted)}.pa-site .site-footer nav{display:flex;flex-wrap:wrap;gap:4px 24px}.pa-site .site-footer nav a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);text-decoration:none}.pa-site .site-footer nav a:hover{color:var(--home-accent)}.pa-site .project-link{text-decoration:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pa-site *,.pa-site :after,.pa-site :before{transition-duration:.01ms!important;animation-duration:.01ms!important}.pa-site .btn:hover svg,.pa-site .shot:hover img{transform:none}}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.pa-site .page-intro{padding:clamp(48px,8vw,96px) var(--gutter) clamp(40px,6vw,72px)}.pa-site .page-intro .h1{margin-top:14px}.pa-site .page-intro .lede{margin-top:24px;max-width:640px}.pa-site .project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));gap:56px 32px;margin-top:48px}.pa-site .breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;color:var(--home-muted);margin-bottom:28px}.pa-site .breadcrumb a{color:var(--home-muted);text-decoration:none;transition:color .2s var(--ease)}.pa-site .breadcrumb a:hover{color:var(--ink)}.pa-site .breadcrumb-sep{color:var(--line-strong)}.pa-site .case-hero{padding:clamp(40px,7vw,80px) var(--gutter) clamp(32px,5vw,56px)}.pa-site .case-hero .h1{font-size:clamp(36px,5vw,64px);margin-top:14px}.pa-site .case-hero .lede{margin-top:18px;max-width:720px}.pa-site .snapshot{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));gap:20px 28px;margin-top:40px}.pa-site .snapshot>div{padding-top:12px;border-top:1px solid var(--line)}.pa-site .snapshot dt{margin-bottom:6px}.pa-site .snapshot dd{font-size:15px;color:var(--soft)}.pa-site .case-media{padding:0 var(--gutter) clamp(24px,4vw,40px)}.pa-site .case-section{position:relative;padding:var(--section-y) var(--gutter)}.pa-site .case-section:before{content:"";position:absolute;top:0;left:50%;width:100vw;height:1px;background-image:var(--rule-dash);background-size:100% 1px;background-repeat:repeat-x;transform:translateX(-50%);pointer-events:none}.pa-site .case-section .section-head{margin-bottom:28px}.pa-site .prose{display:flex;flex-direction:column;gap:16px;max-width:640px;color:var(--soft);font-size:17px}.pa-site .prose h3{font-family:var(--font-home-display),Georgia,serif;font-size:22px;font-weight:500;letter-spacing:-.01em;color:var(--ink);margin-top:12px}.pa-site .prose ul{display:flex;flex-direction:column;gap:8px;padding-left:1.2em;list-style:disc}.pa-site .prose li{padding-left:4px}.pa-site .media-block{margin-top:36px}.pa-site .media-caption{margin-top:12px;font-size:14px;color:var(--home-muted)}.pa-site .media-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.pa-site .media-grid .shot--span-2{grid-column:span 2}@media (max-width:640px){.pa-site .media-grid{grid-template-columns:1fr}.pa-site .media-grid .shot--span-2{grid-column:span 1}}.pa-site .media-carousel{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px;-webkit-overflow-scrolling:touch}.pa-site .media-carousel .shot{flex:0 0 min(85%,720px);scroll-snap-align:start;aspect-ratio:16/10}.pa-site .next-work{margin-top:48px}.pa-site .next-work .work-pair{margin-top:32px}