@keyframes jd-marquee{to{transform:translateX(-50%)}}html{scroll-padding-top:env(safe-area-inset-top,0);box-sizing:border-box;height:100%;-webkit-text-size-adjust:100%}body{padding:0;font:14px -apple-system,BlinkMacSystemFont,sans-serif;background:#e8e6e1;color:#111;position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:auto;margin:0;display:flex;flex-direction:column;overflow:hidden;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:17px;line-height:27px;-webkit-font-smoothing:antialiased}img,svg{max-width:100%}[hidden]:not([hidden=until-found i]){display:none!important}:root{--paper:#e8e6e1;--paper-raised:#f4f2ee;--paper-deep:#d8d5ce;--ink:#111111;--ink-muted:#5a5853;--on-ink:#e8e6e1;--on-ink-muted:#a8a59e;--line:#c5c2ba;--line-strong:#74716a;--signal:#e8401c;--signal-text:#b32d0e;--on-signal:#111111;--focus-ring:var(--signal);--scrim:#111111cc;--shadow-none:none;--shadow-lift:0 24px 48px -16px #11111152;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--space-24:96px;--space-32:128px;--radius-0:0px;--radius-xs:2px;--radius-pill:999px;--stroke-hair:1px;--stroke-rule:4px;--stroke-bar:12px;--duration-fast:160ms;--duration-base:320ms;--duration-slow:640ms;--ease-out:cubic-bezier(0.2, 0.7, 0.2, 1);--ease-in-out:cubic-bezier(0.65, 0, 0.35, 1);--font-display:"Archivo", "Helvetica Neue", Arial, sans-serif;--font-body:"Hanken Grotesk", "Helvetica Neue", Arial, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#121212;--paper-raised:#1c1c1b;--paper-deep:#262624;--ink:#eceae5;--ink-muted:#a8a59e;--on-ink:#121212;--on-ink-muted:#5a5853;--line:#35332f;--line-strong:#75736c;--signal:#f2512b;--signal-text:#ff8661;--on-signal:#111111;--focus-ring:var(--signal);--scrim:#000000d9;--shadow-none:none;--shadow-lift:0 24px 48px -16px #000000a6;color-scheme:dark}}:root[data-theme=dark]{--paper:#121212;--paper-raised:#1c1c1b;--paper-deep:#262624;--ink:#eceae5;--ink-muted:#a8a59e;--on-ink:#121212;--on-ink-muted:#5a5853;--line:#35332f;--line-strong:#75736c;--signal:#f2512b;--signal-text:#ff8661;--on-signal:#111111;--focus-ring:var(--signal);--scrim:#000000d9;--shadow-none:none;--shadow-lift:0 24px 48px -16px #000000a6;color-scheme:dark}@font-face{font-family:"Archivo";src:url(../fonts/archivo-100-900.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:"Hanken Grotesk";src:url(../fonts/hanken-grotesk-100-900.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:"IBM Plex Mono";src:url(../fonts/ibm-plex-mono-400.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"IBM Plex Mono";src:url(../fonts/ibm-plex-mono-500.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}*,::after,::before{box-sizing:border-box}.jd-row,.jd-stack{gap:var(--space-4);padding:var(--space-6)}.jd-row{display:flex;flex-wrap:wrap;align-items:center}.jd-stack{display:grid}.jd-on-ink{background:var(--ink);color:var(--on-ink)}.jd-on-ink .jd-label{color:var(--on-ink-muted)}:where(.jd-btn,.jd-chip,.jd-acc__head,.jd-nav__link,.jd-nav__burger,.jd-theme,.jd-step__dot,.jd-member,.jd-project,.jd-field__input,.jd-range,.jd-compare__range,.jd-top):focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.jd-label{display:inline-flex;align-items:center;gap:var(--space-2);margin:0;font-family:var(--font-mono);font-size:12px;line-height:16px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.jd-label__idx{color:var(--ink)}.jd-label__idx::after{content:"—";margin-left:var(--space-2);color:var(--ink-muted)}.jd-label--signal{color:var(--signal-text)}.jd-label--vertical{writing-mode:vertical-rl;transform:rotate(180deg)}.jd-num{font-family:var(--font-mono);font-size:14px;line-height:20px;font-weight:400;letter-spacing:0;font-variant-numeric:tabular-nums;color:var(--ink-muted)}.jd-rule{display:block;width:100%;height:var(--stroke-rule);background:var(--ink);border:0;margin:0}.jd-rule--hair{height:var(--stroke-hair);background:var(--line)}.jd-rule--bar{height:var(--stroke-bar)}.jd-rule--signal{background:var(--signal)}.jd-rule--short{width:var(--space-16)}.jd-btn{-webkit-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);min-height:var(--space-12);padding:0 var(--space-6);border:var(--stroke-hair) solid var(--ink);border-radius:var(--radius-0);background:var(--ink);color:var(--on-ink);font-family:var(--font-mono);font-size:13px;line-height:18px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.jd-btn svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:square;transition:transform var(--duration-fast) var(--ease-out)}.jd-btn:focus-visible,.jd-btn:hover{background:var(--signal);border-color:var(--signal);color:var(--on-signal)}.jd-btn:hover svg{transform:translateX(4px)}.jd-btn:active{transform:translateY(1px)}.jd-btn--ghost{background:0 0;color:var(--ink);border-color:var(--line-strong)}.jd-btn--ghost:focus-visible,.jd-btn--ghost:hover,.jd-btn--signal:focus-visible,.jd-btn--signal:hover{background:var(--ink);border-color:var(--ink);color:var(--on-ink)}.jd-btn--signal,.jd-on-ink .jd-btn:hover{background:var(--signal);border-color:var(--signal);color:var(--on-signal)}.jd-btn--sm{min-height:40px;padding:0 var(--space-4);font-size:12px}.jd-btn--block{width:100%}.jd-btn[aria-disabled=true],.jd-btn[disabled]{opacity:.4;cursor:not-allowed;pointer-events:none}.jd-on-ink .jd-btn{background:var(--on-ink);border-color:var(--on-ink);color:var(--ink)}.jd-on-ink .jd-btn--ghost{background:0 0;color:var(--on-ink);border-color:var(--on-ink-muted)}.jd-on-ink .jd-btn--ghost:hover{background:var(--on-ink);color:var(--ink);border-color:var(--on-ink)}.jd-link{color:inherit;text-decoration:none;background-image:linear-gradient(var(--signal),var(--signal));background-size:100% 2px;background-position:0 100%;background-repeat:no-repeat;transition:background-size var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.jd-link:hover{background-size:100% 100%;color:var(--on-signal)}.jd-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0;padding:0;list-style:none}.jd-chip{-webkit-appearance:none;appearance:none;min-height:40px;padding:0 var(--space-4);border:var(--stroke-hair) solid var(--line-strong);border-radius:var(--radius-xs);background:0 0;color:var(--ink);font-family:var(--font-mono);font-size:12px;line-height:16px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.jd-chip:hover{border-color:var(--ink)}.jd-chip.is-active,.jd-chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--on-ink)}.jd-chip__count{margin-left:var(--space-2);color:var(--ink-muted)}.jd-chip[aria-pressed=true] .jd-chip__count{color:var(--on-ink-muted)}.jd-nav{position:sticky;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);height:72px;padding:0 var(--space-4);background:var(--paper);border-bottom:var(--stroke-hair) solid transparent;transition:height var(--duration-base) var(--ease-out),background var(--duration-base) var(--ease-out),border-color var(--duration-base) var(--ease-out)}.jd-nav.is-compact{height:56px;background:var(--paper-raised);border-bottom-color:var(--line)}.jd-nav__logo{display:inline-flex;align-items:center;color:var(--ink)}.jd-nav__logo svg{height:18px;width:auto;display:block;fill:currentColor}.jd-nav__logo .slash{fill:var(--signal)}.jd-nav.is-compact .jd-nav__logo svg{height:16px}.jd-nav__links{display:none;gap:var(--space-6);margin:0;padding:0;list-style:none}.jd-nav__link{display:inline-flex;align-items:center;min-height:40px;color:var(--ink);font-family:var(--font-mono);font-size:12px;line-height:16px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;text-decoration:none}.jd-nav__link::before{content:attr(data-idx);margin-right:var(--space-2);color:var(--ink-muted)}.jd-nav__link:hover{color:var(--signal-text)}.jd-nav__link[aria-current=true]{box-shadow:inset 0-2px 0 var(--signal)}.jd-nav__right{display:flex;align-items:center;gap:var(--space-3)}.jd-nav__burger{-webkit-appearance:none;appearance:none;display:inline-grid;place-items:center;width:48px;height:48px;margin-right:calc(var(--space-2)*-1);padding:0;border:0;background:0 0;color:var(--ink);cursor:pointer}.jd-nav__burger span{display:block;width:22px;height:2px;background:currentColor;box-shadow:0-7px 0 currentColor,0 7px 0 currentColor}@media (min-width:900px){.jd-nav{padding:0 var(--space-12)}.jd-nav__links{display:flex}.jd-nav__burger{display:none}}@media (min-width:1200px){.jd-nav{padding:0 var(--space-16)}}.jd-project{position:relative;display:grid;gap:var(--space-4);min-width:0;color:inherit;text-decoration:none;cursor:pointer}.jd-project__cover{position:relative;aspect-ratio:4/3;max-width:100%;overflow:hidden;background:var(--paper-raised);border:var(--stroke-hair) solid var(--line)}.jd-project--wide .jd-project__cover{aspect-ratio:16/9}.jd-project__art{position:absolute;top:0;right:0;bottom:0;left:0;transition:transform var(--duration-slow) var(--ease-out)}.jd-project__art,.jd-project__art svg{display:block;width:100%;height:100%}.jd-project:focus-visible .jd-project__art,.jd-project:hover .jd-project__art{transform:scale(1.04)}.jd-project__sector{position:absolute;top:var(--space-4);left:var(--space-4);padding:var(--space-1) var(--space-2);background:var(--paper)}.jd-project__cta{position:absolute;right:var(--space-4);bottom:var(--space-4);display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--ink);color:var(--on-ink);font-family:var(--font-mono);font-size:12px;line-height:16px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;transform:translateY(8px);opacity:0;transition:transform var(--duration-fast) var(--ease-out),opacity var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.jd-project__cta svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:square}.jd-project:focus-visible .jd-project__cta,.jd-project:hover .jd-project__cta{transform:none;opacity:1}.jd-project:hover .jd-project__cta{background:var(--signal);color:var(--on-signal)}@media (hover:none){.jd-project__cta{transform:none;opacity:1}}.jd-project__meta{display:grid;gap:var(--space-1)}.jd-project__name{margin:0;font-family:var(--font-display);font-size:32px;line-height:1.05;font-weight:700;letter-spacing:-.02em}.jd-project__result{margin:0;font-size:17px;line-height:27px;font-weight:500;color:var(--ink-muted)}.jd-project__result strong{color:var(--ink);font-weight:500}.jd-project__idx{position:absolute;right:var(--space-4);top:var(--space-4);padding:var(--space-1) var(--space-2);background:var(--paper)}.jd-project.is-hidden{display:none}.jd-art{--a:var(--ink);--b:var(--signal);--c:var(--paper-deep)}.jd-art .a{fill:var(--a)}.jd-art .b{fill:var(--b)}.jd-art .c{fill:var(--c)}.jd-art .p{fill:var(--paper)}.jd-art .l{stroke:var(--line);stroke-width:1}.jd-art .dots{fill:var(--line)}.jd-compare{position:relative;aspect-ratio:16/9;max-width:100%;overflow:hidden;background:var(--paper-raised);border:var(--stroke-hair) solid var(--line);touch-action:none;--pos:50%}.jd-compare__pane{position:absolute;top:0;right:0;bottom:0;left:0}.jd-compare__pane svg{display:block;width:100%;height:100%}.jd-compare__pane--after{clip-path:inset(0 0 0 var(--pos))}.jd-compare__tag{position:absolute;top:var(--space-4);padding:var(--space-1) var(--space-2);background:var(--paper);z-index:2;pointer-events:none}.jd-compare__tag--before{left:var(--space-4)}.jd-compare__tag--after{right:var(--space-4);background:var(--ink);color:var(--on-ink)}.jd-compare__handle,.jd-compare__knob{position:absolute;background:var(--signal)}.jd-compare__handle{top:0;bottom:0;left:var(--pos);width:2px;margin-left:-1px;pointer-events:none;z-index:2}.jd-compare__knob{top:50%;left:50%;width:48px;height:48px;transform:translate(-50%,-50%);display:grid;place-items:center;color:var(--on-signal);border-radius:var(--radius-xs)}.jd-compare__knob svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:square}.jd-compare__range{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;z-index:3;-webkit-appearance:none;appearance:none}.jd-compare__range::-webkit-slider-thumb{-webkit-appearance:none;width:48px;height:48px}.jd-compare__range::-moz-range-thumb{width:48px;height:48px}.jd-acc{margin:0;padding:0;list-style:none;border-top:var(--stroke-hair) solid var(--ink)}.jd-acc__item{border-bottom:var(--stroke-hair) solid var(--line);transition:background var(--duration-base) var(--ease-out)}.jd-acc__item.is-open{background:var(--paper-deep)}.jd-acc__head{-webkit-appearance:none;appearance:none;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--space-4);width:100%;min-height:72px;padding:var(--space-4) var(--space-4);border:0;background:0 0;color:var(--ink);text-align:left;cursor:pointer;font:inherit}.jd-acc__idx{font-family:var(--font-mono);font-size:12px;line-height:16px;font-weight:500;letter-spacing:.08em;color:var(--ink-muted);min-width:2.5ch}.jd-acc__title{display:flex;align-items:center;gap:var(--space-3);margin:0;font-family:var(--font-display);font-size:24px;line-height:1.1;font-weight:700;letter-spacing:-.02em}.jd-acc__icon{width:24px;height:24px;flex:none}.jd-acc__plus{width:24px;height:24px;stroke:var(--signal);fill:none;stroke-width:1.75;stroke-linecap:square;transition:transform var(--duration-base) var(--ease-out)}.jd-acc__item.is-open .jd-acc__plus{transform:rotate(45deg)}.jd-acc__panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--duration-base) var(--ease-out)}.jd-acc__item.is-open .jd-acc__panel{grid-template-rows:1fr}.jd-acc__panel>div{overflow:hidden}.jd-acc__body{display:grid;gap:var(--space-4);padding:0 var(--space-4) var(--space-6);max-width:60ch}.jd-acc__body p{margin:0}.jd-acc__example{display:inline-flex;flex-wrap:wrap;gap:var(--space-2) var(--space-3);align-items:baseline;padding-top:var(--space-2);border-top:var(--stroke-hair) solid var(--line-strong)}.jd-acc__example .jd-link{font-weight:500}@media (min-width:900px){.jd-acc__head{grid-template-columns:6ch 1fr auto;padding:var(--space-6) var(--space-6);min-height:96px}.jd-acc__title{font-size:32px}.jd-acc__body{padding:0 var(--space-6) var(--space-8) calc(6ch + var(--space-6) + var(--space-4))}}.jd-steps{position:relative;display:grid;gap:var(--space-8);margin:0;padding:0 0 0 var(--space-8);list-style:none;--progress:0}.jd-steps__track{position:absolute;top:0;bottom:0;left:10px;width:var(--stroke-rule);background:var(--line)}.jd-steps__bar{position:absolute;top:0;left:0;width:100%;height:calc(var(--progress)*100%);background:var(--signal);transition:height var(--duration-fast) linear}.jd-step{position:relative;display:grid;align-content:start;gap:var(--space-2);min-width:0}.jd-step__dot{position:absolute;left:calc(var(--space-8)*-1);top:2px;width:24px;height:24px;display:grid;place-items:center;border:0;padding:0;background:var(--paper);cursor:help}.jd-step__dot::before{content:"";width:12px;height:12px;background:var(--ink);transition:background var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.jd-step.is-done .jd-step__dot::before{background:var(--signal);transform:scale(1.25)}.jd-step__name{margin:0;font-family:var(--font-display);font-size:22px;line-height:1.15;font-weight:700;letter-spacing:-.01em}.jd-step__text{margin:0;color:var(--ink-muted);max-width:32ch}.jd-step__dur,.jd-tip{font-family:var(--font-mono);line-height:20px}.jd-step__dur{position:relative;display:inline-flex;align-items:center;gap:var(--space-2);font-size:14px;font-variant-numeric:tabular-nums;color:var(--ink-muted)}.jd-tip{position:absolute;left:calc(var(--space-8)*-1 + 36px);top:-4px;z-index:5;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--ink);color:var(--on-ink);font-size:12px;letter-spacing:.04em;white-space:nowrap;opacity:0;transform:translateY(4px);pointer-events:none;transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.jd-step.is-tip .jd-tip,.jd-step:hover .jd-tip,.jd-step__dot:focus-visible+.jd-tip{opacity:1;transform:none}@media (min-width:900px){.jd-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-8);padding:var(--space-8)0 0}.jd-steps__track{top:10px;left:0;right:0;bottom:auto;width:auto;height:var(--stroke-rule)}.jd-steps__bar{width:calc(var(--progress)*100%);height:100%;transition:width var(--duration-fast) linear}.jd-step__dot{left:0;top:calc(var(--space-8)*-1 - 2px)}.jd-tip{left:36px;top:calc(var(--space-8)*-1 - 4px)}}.jd-stats{display:grid;gap:var(--space-8);margin:0;padding:0;list-style:none}.jd-stat{display:grid;gap:var(--space-2);min-width:0;padding-top:var(--space-4);border-top:var(--stroke-rule) solid var(--ink)}.jd-stat__num{margin:0;font-family:var(--font-display);font-size:72px;line-height:.9;font-weight:800;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.jd-stat__num sup{font-size:.4em;vertical-align:top;color:var(--signal);font-weight:700}.jd-stat__label{margin:0;color:var(--ink-muted)}@media (min-width:700px){.jd-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.jd-stat__num{font-size:96px}}.jd-marquee{position:relative;overflow:hidden;padding:var(--space-6)0;border-top:var(--stroke-hair) solid var(--line);border-bottom:var(--stroke-hair) solid var(--line);-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}.jd-marquee__track{display:flex;width:max-content;gap:var(--space-16);padding-right:var(--space-16);animation:jd-marquee 32s linear infinite}.jd-marquee.is-paused .jd-marquee__track,.jd-marquee:hover .jd-marquee__track{animation-play-state:paused}.jd-marquee__item{display:inline-flex;align-items:center;gap:var(--space-3);white-space:nowrap;font-family:var(--font-display);font-size:22px;line-height:1;font-weight:700;letter-spacing:-.02em;color:var(--ink-muted)}.jd-marquee__item::before{content:"";width:8px;height:8px;background:var(--signal)}@media (prefers-reduced-motion:reduce){.jd-marquee__track{animation:none;flex-wrap:wrap;width:auto}}.jd-quotes{display:flex;gap:var(--space-4);margin:0;padding:0 0 var(--space-4);list-style:none;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.jd-quotes::-webkit-scrollbar{display:none}.jd-quote{flex:0 0 min(85vw,420px);scroll-snap-align:start;display:grid;grid-template-rows:auto 1fr auto;gap:var(--space-6);min-width:0;padding:var(--space-6);background:var(--paper-raised);border:var(--stroke-hair) solid var(--line)}.jd-quote__mark{width:24px;height:var(--stroke-rule);background:var(--signal)}.jd-quote__text{margin:0;font-family:var(--font-display);font-size:22px;line-height:1.25;font-weight:500;letter-spacing:-.01em;text-wrap:pretty}.jd-quote__who{display:grid;gap:2px}.jd-quote__name,.proj__facts dd{margin:0;font-weight:500}.jd-quote__role{margin:0}@media (min-width:900px){.jd-quotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}.jd-quote{flex:none}}.jd-member,.jd-team{display:grid;padding:0}.jd-team{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);margin:0;list-style:none}.jd-member{position:relative;align-content:start;gap:var(--space-3);width:100%;min-width:0;cursor:pointer;border:0;background:0 0;text-align:left;font:inherit;color:inherit}.jd-member__photo{position:relative;aspect-ratio:3/4;max-width:100%;overflow:hidden;background:var(--paper-deep)}.jd-member__face,.jd-member__face img{position:absolute;top:0;right:0;bottom:0;left:0}.jd-member__face{display:grid;place-items:center;font-family:var(--font-display);font-size:56px;line-height:1;font-weight:800;letter-spacing:-.04em;color:var(--ink);transition:opacity var(--duration-slow) var(--ease-in-out),transform var(--duration-slow) var(--ease-in-out)}.jd-member__face img{width:100%;height:100%;object-fit:cover}.jd-member__face--casual{background:var(--signal);color:var(--on-signal);opacity:0;transform:translateY(100%)}.jd-member.is-casual .jd-member__face--casual,.jd-member:focus-visible .jd-member__face--casual,.jd-member:hover .jd-member__face--casual{opacity:1;transform:none}.jd-member__name{margin:0;font-family:var(--font-display);font-size:22px;line-height:1.15;font-weight:700;letter-spacing:-.01em}.jd-member__role{margin:0}@media (min-width:900px){.jd-team{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-6)}}.jd-field{display:grid;gap:var(--space-2);min-width:0}.jd-field__label{display:flex;justify-content:space-between;gap:var(--space-4);font-weight:500}.jd-field__label .jd-num{color:var(--ink-muted)}.jd-field__input{-webkit-appearance:none;appearance:none;width:100%;min-height:var(--space-12);padding:var(--space-3) var(--space-4);border:var(--stroke-hair) solid var(--line-strong);border-radius:var(--radius-0);background:var(--paper-raised);color:var(--ink);font:inherit;transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.jd-field__input::placeholder{color:var(--ink-muted);opacity:1}.jd-field__input:hover,.jd-opt input:hover+span{border-color:var(--ink)}.jd-field__input:focus{outline:0;border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.jd-field__input:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}textarea.jd-field__input{min-height:120px;resize:vertical}select.jd-field__input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e8401c' stroke-width='1.75' stroke-linecap='square'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-4) center;background-size:16px;padding-right:var(--space-12)}.jd-field.is-error .jd-field__input{border-color:var(--signal);box-shadow:inset 0 0 0 1px var(--signal)}.jd-field__help{margin:0;font-size:15px;line-height:22px;color:var(--ink-muted)}.jd-field.is-error .jd-field__help{color:var(--signal-text)}.jd-range{-webkit-appearance:none;appearance:none;width:100%;height:48px;margin:0;background:0 0;cursor:pointer}.jd-range::-webkit-slider-runnable-track{height:var(--stroke-rule);background:linear-gradient(90deg,var(--signal) var(--fill, 0%),var(--line) var(--fill, 0%))}.jd-range::-moz-range-track{height:var(--stroke-rule);background:var(--line)}.jd-range::-moz-range-progress{height:var(--stroke-rule);background:var(--signal)}.jd-range::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;margin-top:-10px;background:var(--ink);border:0;border-radius:var(--radius-0);transition:background var(--duration-fast) var(--ease-out)}.jd-range::-moz-range-thumb{width:24px;height:24px;background:var(--ink);border:0;border-radius:var(--radius-0)}.jd-range:active::-webkit-slider-thumb,.jd-range:hover::-webkit-slider-thumb{background:var(--signal)}.jd-opts{display:flex;flex-wrap:wrap;gap:var(--space-2)}.jd-opt{position:relative;display:inline-flex}.jd-opt input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;margin:0;cursor:pointer}.jd-opt span{display:inline-flex;align-items:center;min-height:var(--space-12);padding:0 var(--space-4);border:var(--stroke-hair) solid var(--line-strong);border-radius:var(--radius-xs);color:var(--ink);font-family:var(--font-mono);font-size:12px;line-height:16px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.jd-opt input:checked+span{background:var(--ink);border-color:var(--ink);color:var(--on-ink)}.jd-opt input:focus-visible+span{outline:2px solid var(--focus-ring);outline-offset:3px}.jd-theme{-webkit-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:var(--space-3);min-height:48px;padding:0;border:0;background:0 0;color:inherit;cursor:pointer;font-family:var(--font-mono);font-size:12px;line-height:16px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.jd-theme__track{position:relative;width:44px;height:24px;border-radius:var(--radius-pill);background:var(--line-strong);transition:background var(--duration-base) var(--ease-out)}.jd-theme__knob{position:absolute;top:4px;left:4px;width:16px;height:16px;border-radius:var(--radius-pill);background:var(--paper);transition:transform var(--duration-base) var(--ease-out),background var(--duration-base) var(--ease-out)}.jd-theme[aria-checked=true] .jd-theme__track{background:var(--signal)}.jd-theme[aria-checked=true] .jd-theme__knob{transform:translateX(20px);background:var(--on-signal)}.card--footer~.rail-nav .rail-nav__dot::before,.jd-on-ink .jd-theme__track,body.on-dark .rail-nav__dot::before{background:var(--on-ink-muted)}.jd-on-ink .jd-theme__knob,.rail-nav__dot:hover::before{background:var(--ink)}.jd-top{display:inline-flex;align-items:center;gap:var(--space-3);min-height:48px;color:inherit;text-decoration:none;font-family:var(--font-mono);font-size:12px;line-height:16px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.jd-top svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:square;transition:transform var(--duration-fast) var(--ease-out)}.jd-top:hover svg{transform:translateY(-4px)}@media (prefers-reduced-motion:reduce){.jd-acc__item,.jd-acc__panel,.jd-acc__plus,.jd-btn,.jd-btn svg,.jd-chip,.jd-link,.jd-member__face,.jd-nav,.jd-project__art,.jd-project__cta,.jd-steps__bar,.jd-theme__knob,.jd-theme__track,.jd-tip,.jd-top svg{transition:none}}.jd-rot{display:inline-block;overflow:hidden;vertical-align:bottom;white-space:nowrap}.jd-rot__word{display:inline-block;transition:transform 320ms var(--ease-in-out),opacity 320ms var(--ease-in-out)}.jd-rot__word.is-leaving{transform:translateY(-100%);opacity:0}.jd-rot__word.is-entering{transform:translateY(100%);opacity:0;transition:none}.jd-hero,.jd-hero__copy{position:relative;display:grid}.jd-hero{gap:var(--space-8);padding:var(--space-12) var(--space-4) var(--space-16);overflow:hidden}.jd-hero__copy{z-index:1}.jd-hero__title{margin:0;font-family:var(--font-display);font-size:clamp(56px,15vw,176px);line-height:.88;font-weight:800;letter-spacing:-.05em;text-wrap:balance}.jd-hero__title em{font-style:normal;color:var(--signal)}.jd-hero__lead{margin:0}.jd-hero__actions{display:flex;flex-wrap:wrap;gap:var(--space-4)}.jd-hero__block{position:relative;max-width:100%;background:var(--signal);overflow:hidden}.jd-code,.jd-hero__dots{position:absolute;top:0;right:0;bottom:0;left:0}.jd-code{width:100%;height:100%;display:block}.jd-hero__block.has-code .jd-hero__dots{display:none}.jd-hero__dots{background-image:radial-gradient(var(--on-signal) 1px,transparent 1.2px);background-size:var(--space-6) var(--space-6);background-position:var(--dx, 0) var(--dy, 0);opacity:.5}.jd-hero__tag{justify-self:end;text-align:right;white-space:nowrap}@media (min-width:900px){.jd-hero{grid-template-columns:minmax(0,1fr) minmax(0,36%);align-items:end;padding:var(--space-16) var(--space-12) var(--space-24)}.jd-hero__title{font-size:clamp(56px,9.5vw,150px)}.jd-hero__block{aspect-ratio:4/5}}@media (min-width:1200px){.jd-hero{padding-left:var(--space-16);padding-right:var(--space-16)}}:root{--gutter:16px;--maxw:1440px;--navh:56px;--railw:0px;--barh:56px;--safeb:env(safe-area-inset-bottom, 0px)}@media (min-width:700px){:root{--gutter:48px}}@media (min-width:900px){:root{--railw:56px;--barh:0px}}@media (min-width:1200px){:root{--gutter:64px}}.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}h1,h2,h3,p{overflow-wrap:anywhere}.skip{position:absolute;left:var(--space-4);top:-100px;z-index:100;padding:var(--space-2) var(--space-4);background:var(--ink);color:var(--on-ink);font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.skip:focus{top:var(--space-4)}.jd-nav{flex:none;position:relative;top:auto;height:var(--navh);padding-inline:var(--gutter);z-index:50}.jd-nav__links{padding-right:var(--railw)}@media (min-width:900px) and (max-width:1099px){.jd-nav__links{gap:var(--space-4)}}.jd-nav__logo{position:relative}.nav-tip,.nav-tip::before{position:absolute;background:var(--ink)}.nav-tip{top:calc(100% + 10px);left:0;z-index:5;padding:var(--space-1) var(--space-3);color:var(--on-ink);font-family:var(--font-mono);font-size:11px;line-height:18px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;opacity:0;transform:translateY(-4px);pointer-events:none;transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.nav-tip::before{content:"";left:12px;top:-4px;width:8px;height:8px;transform:rotate(45deg)}.jd-nav__logo.is-tip .nav-tip,.jd-nav__logo:focus-visible .nav-tip,.jd-nav__logo:hover .nav-tip{opacity:1;transform:none}.menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;grid-template-rows:auto 1fr auto;gap:var(--space-8);padding:var(--space-4) var(--gutter) calc(var(--space-6) + env(safe-area-inset-bottom,0));background:var(--ink);color:var(--on-ink);box-shadow:var(--shadow-lift);transform:translateY(-100%);visibility:hidden;transition:transform var(--duration-base) var(--ease-out),visibility 0s linear var(--duration-base)}.menu.is-open{transform:none;visibility:visible;transition:transform var(--duration-base) var(--ease-out)}.menu__top{display:flex;align-items:center;justify-content:space-between;min-height:40px}.menu__logo svg{height:18px;width:auto;display:block;fill:var(--on-ink)}.menu__logo .slash{fill:var(--signal)}.menu__close{-webkit-appearance:none;appearance:none;width:48px;height:48px;border:0;background:0 0;color:var(--on-ink);display:grid;place-items:center;cursor:pointer}.menu__close svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:square}.menu__links{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none;align-content:center}.menu__foot,.menu__link{display:flex;gap:var(--space-4)}.menu__link{align-items:baseline;padding:var(--space-2)0;color:var(--on-ink);text-decoration:none;font-family:var(--font-display);font-size:clamp(36px,10vw,64px);line-height:1;font-weight:800;letter-spacing:-.04em}.menu__link small{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;color:var(--on-ink-muted)}.footer__col a:hover,.menu__link:hover{color:var(--signal)}.menu__foot{flex-wrap:wrap;align-items:center;justify-content:space-between;color:var(--on-ink-muted)}.deck{position:relative;flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;scroll-snap-type:y mandatory;scroll-behavior:auto;overscroll-behavior-y:contain;scrollbar-width:none;outline:0}.card__body::-webkit-scrollbar,.deck::-webkit-scrollbar{display:none}.card{position:relative;height:100%;scroll-snap-align:start;scroll-snap-stop:always;display:flex;flex-direction:column;min-height:0;overflow:hidden;border-top:var(--stroke-hair) solid var(--line)}.card--hero{border-top:0}.card__in{flex:1 1 auto;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:var(--space-4);padding-top:var(--space-4);padding-bottom:calc(var(--space-4) + var(--barh) + var(--safeb));padding-right:calc(var(--gutter) + var(--railw))}@media (min-width:900px){.card__in{gap:var(--space-6);padding-top:var(--space-8);padding-bottom:var(--space-6)}}.card__head{display:grid;gap:var(--space-2)}.card__title{margin:0;font-family:var(--font-display);font-size:clamp(30px,4.6vw,64px);line-height:.95;font-weight:800;letter-spacing:-.04em;text-wrap:balance}.card__lead{margin:0;max-width:56ch;font-size:15px;line-height:22px;color:var(--ink-muted)}.card__idx{display:none}.card__head .jd-rule{margin-top:var(--space-1)}@media (min-width:900px){.card__head{grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-areas:"label label""title lead""rule rule";align-items:end;column-gap:var(--space-8)}.card__head .jd-label{grid-area:label}.card__title{grid-area:title}.card__lead{grid-area:lead;font-size:17px;line-height:26px;max-width:48ch}.card__head .jd-rule{grid-area:rule;margin-top:var(--space-2)}.card__idx{display:block;grid-area:label;justify-self:end;align-self:end;margin:0;font-family:var(--font-display);font-size:72px;line-height:.8;font-weight:800;letter-spacing:-.04em;font-stretch:125%;color:var(--paper-deep)}}.card__body{position:relative;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch}.card__scroll{display:grid;gap:var(--space-6);align-content:start}.card__foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:0}.card__ctl{display:none;gap:2px}.next-card{-webkit-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:var(--space-3);min-height:44px;margin-right:auto;padding:0 var(--space-4)0 var(--space-3);border:var(--stroke-hair) solid var(--ink);background:var(--ink);color:var(--on-ink);font-family:var(--font-mono);font-size:12px;line-height:16px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.next-card svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:square;transition:transform var(--duration-fast) var(--ease-out)}.next-card__to{color:var(--on-ink-muted)}.next-card:focus-visible,.next-card:hover{background:var(--signal);border-color:var(--signal);color:var(--on-signal)}.next-card:hover .next-card__to{color:var(--on-signal)}.next-card:hover svg{transform:translateY(3px)}.next-card--up:hover svg{transform:translateY(-3px)}.next-card:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.jd-on-ink .next-card{background:var(--on-ink);border-color:var(--on-ink);color:var(--ink)}.jd-on-ink .next-card .next-card__to{color:var(--ink-muted)}.jd-on-ink .next-card:hover{background:var(--signal);border-color:var(--signal);color:var(--on-signal)}@media (max-width:480px){.next-card__to{display:none}}.card.has-scroll .card__ctl,.ctls{display:flex}.ctls{gap:2px}.ctl{-webkit-appearance:none;appearance:none;width:44px;height:44px;padding:0;border:var(--stroke-hair) solid var(--line-strong);background:var(--paper-raised);color:var(--ink);display:grid;place-items:center;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.ctl svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:square}.ctl:hover{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}.ctl:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.ctl[disabled]{opacity:.35;cursor:default;pointer-events:none}.jd-on-ink .ctl{background:0 0;color:var(--on-ink);border-color:var(--on-ink-muted)}.jd-on-ink .ctl:hover{background:var(--on-ink);color:var(--ink);border-color:var(--on-ink)}.rail-nav{position:fixed;left:0;right:0;bottom:0;z-index:40;box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:var(--space-4);height:calc(var(--barh) + var(--safeb));padding:0 var(--gutter) var(--safeb);background:var(--paper-raised);border-top:var(--stroke-hair) solid var(--line)}.rail-nav .ctl{width:40px;height:40px}.rail-nav__dots{display:flex;gap:var(--space-2);margin:0;padding:0;list-style:none}.rail-nav__dot{-webkit-appearance:none;appearance:none;position:relative;width:28px;height:28px;padding:0;border:0;background:0 0;cursor:pointer;display:grid;place-items:center}.rail-nav__dot::before{content:"";width:8px;height:8px;background:var(--line-strong);transition:background var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.rail-nav__dot[aria-current=true]::before{background:var(--signal);transform:scale(1.5)}.rail-nav__dot span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.rail-nav__dot:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}@media (min-width:900px){.rail-nav,.rail-nav__dot span{height:auto;transform:translateY(-50%)}.rail-nav{left:auto;right:var(--space-3);top:calc(var(--navh) + 50%);bottom:auto;width:40px;flex-direction:column;gap:var(--space-3);padding:0;background:0 0;border:0}.rail-nav__dots{flex-direction:column;gap:0}.rail-nav__dot{width:40px;height:32px}.rail-nav__dot span{position:absolute;right:100%;top:50%;width:auto;clip:auto;overflow:visible;margin-right:var(--space-2);padding:2px var(--space-2);background:var(--ink);color:var(--on-ink);font-family:var(--font-mono);font-size:11px;line-height:16px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--duration-fast) var(--ease-out)}.rail-nav__dot:focus-visible span,.rail-nav__dot:hover span{opacity:1}.rail-nav .ctl{width:40px;height:40px;background:var(--ink);color:var(--on-ink);border-color:var(--ink)}.rail-nav .ctl:hover{background:var(--signal);color:var(--on-signal);border-color:var(--signal)}}body.on-dark .rail-nav__dot:hover::before{background:var(--on-ink)}@media (min-width:900px){body.on-dark .rail-nav .ctl{background:var(--on-ink);color:var(--ink);border-color:var(--on-ink)}body.on-dark .rail-nav .ctl:hover{background:var(--signal);color:var(--on-signal);border-color:var(--signal)}}.hero.card__in{grid-template-rows:minmax(0,1fr) auto auto}.hero__grid{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:var(--space-4);min-height:0}.jd-hero__copy{gap:var(--space-4);align-content:center}.jd-hero__title{font-size:clamp(34px,min(11.5vw,11vh),150px)}.jd-hero__lead{font-size:17px;line-height:26px;max-width:40ch}.hero__aside{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:var(--space-3);min-height:0}.jd-hero__block{aspect-ratio:auto;height:clamp(72px,calc(20vh - 28px),192px)}.hero__meta{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-6);padding-top:var(--space-3);border-top:var(--stroke-rule) solid var(--ink)}.hero__meta .jd-label{color:var(--ink-muted)}@media (min-width:900px){.hero__grid{grid-template-columns:minmax(0,1fr) minmax(0,34%);grid-template-rows:minmax(0,1fr);align-items:stretch;gap:var(--space-8)}.jd-hero__copy{gap:var(--space-6);align-content:end}.jd-hero__title{font-size:clamp(44px,min(7vw,12vh),108px)}.jd-hero__lead{font-size:20px;line-height:30px}.jd-hero__block{height:auto;min-height:0}.hero__meta{justify-content:space-between;padding-top:var(--space-4);border-top-width:var(--stroke-bar)}}@media (max-width:899px){.hero__grid{grid-template-rows:auto auto;align-content:start;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none}.hero__grid::-webkit-scrollbar{display:none}.jd-hero__copy{align-content:start}}@media (max-width:899px) and (max-height:760px){.jd-hero__copy{gap:var(--space-3)}.jd-hero__title{font-size:clamp(30px,min(11.5vw,6.8vh),150px)}.jd-hero__lead{font-size:15px;line-height:22px}.hero__aside{gap:var(--space-2)}.hero__aside .jd-hero__tag{display:none}.jd-hero__block{height:clamp(48px,10vh,120px)}.hero__meta{gap:var(--space-1) var(--space-6);padding-top:var(--space-2)}.hero__meta .jd-label{font-size:11px;line-height:15px}}@media (min-width:375px) and (max-width:899px) and (max-height:760px){.hero__meta .jd-label{white-space:nowrap;font-size:10px;letter-spacing:.06em}}@media (max-width:899px) and (max-height:620px){.hero__meta,.jd-hero__lead{display:none}.jd-hero__actions{gap:var(--space-2)}.jd-hero__actions .jd-btn{min-height:40px;padding-inline:var(--space-3);font-size:11px}.jd-hero__block{height:clamp(40px,8vh,120px)}}@media (max-width:360px){.rail-nav{gap:var(--space-2)}.rail-nav__dot{width:22px}}@media (max-height:540px){.hero__aside{display:none}}.filters{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3)}.rail{display:flex;gap:var(--space-4);overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-behavior:auto;scrollbar-width:none;padding:2px 0;outline:0}.rail::-webkit-scrollbar{display:none}.rail:focus-visible{outline:2px solid var(--focus-ring);outline-offset:4px}.rail>*{flex:0 0 min(100%,380px);min-width:0;scroll-snap-align:start}.rail .is-hidden{display:none}.rail .jd-compare,.rail .jd-project__cover{aspect-ratio:16/10}.rail .jd-project{gap:var(--space-3)}.rail .jd-project__name{font-size:24px}.rail .jd-project__result{font-size:15px;line-height:22px}.rail__count{white-space:nowrap}.compare-tile,.compare-tile__meta{display:grid;gap:var(--space-3)}.compare-tile__meta{align-items:start}.compare-tile__meta .jd-project__meta,.proj__facts div{display:grid;gap:var(--space-1)}@media (min-width:700px){.rail{gap:var(--space-6)}.rail>*{flex-basis:min(100%,400px)}}@media (min-width:900px){.rail .jd-compare,.rail .jd-project__cover{aspect-ratio:3/2}}@media (min-width:1200px){.rail>*{flex-basis:calc((100% - 2*var(--space-6))/3)}}.services .jd-acc__head{min-height:56px;padding-block:var(--space-3)}.services .jd-acc__title{font-size:clamp(20px,2.6vw,30px)}@media (min-width:900px){.services .jd-acc__head{min-height:72px;padding-block:var(--space-4)}.services .jd-acc__body{padding-bottom:var(--space-4)}}.process .jd-steps{padding-top:0}.faq .jd-acc__body p,.process .jd-step__text{font-size:15px;line-height:22px}.process span.jd-step__dot{cursor:default}@media (min-width:900px){.process .jd-steps{padding-top:var(--space-8)}.process .jd-step__name{font-size:26px}}.process__note{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-8);padding-top:var(--space-4);border-top:var(--stroke-hair) solid var(--line);color:var(--ink-muted);font-size:14px;line-height:20px}.social{gap:var(--space-4)}.social .jd-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.social .jd-stat{padding-top:0;gap:0;border-top:0}.social .jd-stat__num{font-size:clamp(36px,7vw,80px)}.social .jd-stat__label{font-size:14px;line-height:20px}.social .jd-marquee{margin-inline:calc(var(--gutter)*-1);padding:var(--space-4) var(--gutter)}.social .jd-marquee__item{font-size:18px}.social .jd-quote{padding:var(--space-4);gap:var(--space-4)}.social .jd-quote__text{font-size:18px;line-height:1.3}@media (min-width:900px){.social{gap:var(--space-6)}.social .jd-stat__label{font-size:15px}.social .jd-quote{padding:var(--space-4)}.social .jd-quote__text{font-size:20px}}.faq .jd-acc__head{min-height:56px;padding-block:var(--space-3)}.faq .jd-acc__title{font-size:clamp(17px,2vw,22px);line-height:1.2;letter-spacing:-.01em}.faq .jd-acc__body{padding-bottom:var(--space-4);max-width:68ch}.faq__note{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2) var(--space-4);padding-top:var(--space-4);border-top:var(--stroke-hair) solid var(--line);color:var(--ink-muted);font-size:14px;line-height:20px}.faq__note .jd-link{font-weight:500}@media (min-width:900px){.faq .jd-acc__head{min-height:64px;padding-block:var(--space-3)}.faq .jd-acc__body{padding-bottom:var(--space-4)}}.card--contact{background:var(--paper-raised)}.card--contact .jd-chip,.card--contact .jd-opt span{background:var(--paper)}.card--contact .jd-opt input:checked+span{background:var(--ink)}.contact__grid{display:grid;gap:var(--space-6)}.contact__aside{display:grid;gap:var(--space-4);align-content:start}.contact__line{display:grid;gap:var(--space-2);padding-top:var(--space-3);border-top:var(--stroke-rule) solid var(--ink)}.contact__aside .contact__line:first-child{padding-top:0;border-top:0}.contact__value{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);font-family:var(--font-display);font-size:20px;line-height:1.2;font-weight:700;letter-spacing:-.01em}.copy{-webkit-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:var(--space-2);min-height:36px;padding:0 var(--space-3);border:var(--stroke-hair) solid var(--line-strong);background:0 0;color:var(--ink);font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.copy.is-done,.copy:hover{border-color:var(--ink)}.copy.is-done{background:var(--ink);color:var(--on-ink)}.form{display:grid;gap:var(--space-4);padding:var(--space-4);background:var(--paper);border:var(--stroke-hair) solid var(--line)}.form .jd-field__input{background:var(--paper-raised)}.form__steps{display:flex;gap:var(--space-4);margin:0;padding:0;list-style:none}.form__step{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:12px;line-height:16px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.form__step::before{content:"";width:24px;height:var(--stroke-rule);background:var(--line)}.form__step.is-active{color:var(--ink)}.form__step.is-active::before{background:var(--signal)}.form__step.is-done::before{background:var(--ink)}.form__panel[hidden]{display:none}.form__panel,.form__row{display:grid;gap:var(--space-4)}@media (min-width:560px){.form__row{grid-template-columns:1fr 1fr}}.footer__col ul,.form .jd-field{gap:var(--space-1)}.form .jd-field__help{font-size:13px;line-height:18px}.form .jd-opt span{min-height:40px}.form .jd-range{height:40px}.estimate{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-2) var(--space-6);padding:var(--space-4) var(--space-4);background:var(--ink);color:var(--on-ink)}.estimate .jd-label{color:var(--on-ink-muted)}.estimate__price,.form__ok h3{font-family:var(--font-display)}.estimate__price{margin:var(--space-1)0 0;font-size:clamp(26px,4vw,36px);line-height:1;font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.estimate__price small{font-size:.45em;font-weight:700;letter-spacing:0;color:var(--signal);vertical-align:top}.estimate__meta{margin:0;color:var(--on-ink-muted);font-family:var(--font-mono);font-size:12px;line-height:18px;font-variant-numeric:tabular-nums}.form__actions{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.form__ok{display:grid;gap:var(--space-3);padding:var(--space-4);background:var(--paper-deep)}.form__ok h3{margin:0;font-size:24px;line-height:1.05;font-weight:700;letter-spacing:-.02em}.form__ok p{margin:0;font-size:15px;line-height:22px}.form__summary{margin:0;padding:var(--space-3);background:var(--paper);border:var(--stroke-hair) solid var(--line);font-family:var(--font-mono);font-size:12px;line-height:18px;white-space:pre-wrap;color:var(--ink-muted)}@media (min-width:1000px){.contact__grid{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:var(--space-12);align-items:start}.form{padding:var(--space-6)}}@media (min-width:900px) and (max-height:820px){.card__in{padding-top:var(--space-4);padding-bottom:var(--space-4);gap:var(--space-4)}.card__title{font-size:clamp(28px,3.6vw,48px)}.card__lead{font-size:15px;line-height:22px}.card__idx{font-size:56px}.card__scroll{gap:var(--space-4)}.rail .jd-compare,.rail .jd-project__cover{aspect-ratio:16/9}.rail .jd-project__name{font-size:22px}.services .jd-acc__head{min-height:56px;padding-block:var(--space-2)}.services .jd-acc__title{font-size:24px}.services .jd-acc__body{padding-bottom:var(--space-4);gap:var(--space-2)}.faq .jd-acc__head{min-height:52px;padding-block:var(--space-2)}.faq .jd-acc__title{font-size:19px}.process .jd-steps{padding-top:var(--space-6)}.social .jd-stat__num{font-size:56px}.social .jd-marquee{padding-block:var(--space-3)}.social .jd-quote{padding:var(--space-4);gap:var(--space-3)}.social .jd-quote__text{font-size:17px}.contact__grid{gap:var(--space-8)}.contact__aside,.form{gap:var(--space-3)}.form{padding:var(--space-4)}.form .jd-opt span{min-height:36px}.form .jd-range{height:32px}.estimate{padding:var(--space-3) var(--space-4)}.footer__logo svg{width:min(100%,360px)}}.card--footer{background:var(--ink);color:var(--on-ink);border-top:0}.card--footer a{color:inherit}.footer.card__in{grid-template-rows:minmax(0,1fr) auto auto}.card--footer .card__body{display:flex;flex-direction:column}.footer__top{display:grid;gap:var(--space-8);align-content:start;flex:none;margin:auto 0}.footer__brand{display:grid;gap:var(--space-4);justify-items:start;align-content:center}.footer__logo svg{width:min(100%,480px);height:auto;display:block;fill:var(--on-ink)}.footer__logo .slash{fill:var(--signal)}.footer__claim{margin:0;max-width:36ch;color:var(--on-ink-muted)}.footer__cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6) var(--space-4);align-content:center}.footer__col{display:grid;gap:var(--space-2);align-content:start}.footer__col .jd-label{color:var(--on-ink-muted)}.footer__col ul{margin:0;padding:0;list-style:none;display:grid}.footer__col a{display:inline-flex;align-items:center;min-height:28px;text-decoration:none;font-size:15px;line-height:22px}.footer__bottom,.footer__tools{display:flex;flex-wrap:wrap;align-items:center}.footer__bottom{gap:var(--space-3) var(--space-8);justify-content:space-between;padding-top:var(--space-4);border-top:var(--stroke-hair) solid var(--on-ink-muted);color:var(--on-ink-muted);font-size:14px;line-height:20px}.footer__bottom p,.proj__text p{margin:0}.footer__tools{gap:var(--space-6)}@media (min-width:900px){.footer__top{grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:var(--space-16);align-items:center}.footer__col a{font-size:17px;line-height:27px;min-height:32px}}.proj{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:none;background:var(--scrim)}.proj.is-open{display:block}.proj__bar,.proj__panel{top:0;background:var(--paper)}.proj__panel{position:absolute;right:0;bottom:0;width:min(100%,960px);overflow-y:auto;overscroll-behavior:contain;color:var(--ink);box-shadow:var(--shadow-lift);transform:translateX(24px);opacity:0;transition:transform var(--duration-slow) var(--ease-out),opacity var(--duration-slow) var(--ease-out)}.proj.is-open .proj__panel{transform:none;opacity:1}.proj__bar{position:sticky;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-bottom:var(--stroke-hair) solid var(--line)}.proj__close,.proj__facts dt{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase}.proj__close{-webkit-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:var(--space-2);min-height:40px;padding:0 var(--space-3);border:var(--stroke-hair) solid var(--line-strong);background:0 0;color:var(--ink);cursor:pointer}.proj__close:hover{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}.proj__close svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:square}.proj__body{display:grid;gap:var(--space-8);padding:var(--space-8) var(--space-4)0}.proj__text h3,.proj__title{margin:0;font-family:var(--font-display)}.proj__title{font-size:clamp(40px,8vw,72px);line-height:.95;font-weight:800;letter-spacing:-.03em;text-wrap:balance}.proj__result{margin:0;font-size:20px;line-height:30px;font-weight:500}.proj__result strong{color:var(--signal-text);font-weight:500}.proj__facts{grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:var(--space-4)0 0;border-top:var(--stroke-rule) solid var(--ink)}.proj__facts dt{line-height:16px;color:var(--ink-muted)}.proj__facts,.proj__gallery{display:grid;gap:var(--space-4)}.proj__shot{position:relative;aspect-ratio:16/9;max-width:100%;overflow:hidden;background:var(--paper-raised);border:var(--stroke-hair) solid var(--line)}.proj__shot svg{display:block;width:100%;height:100%}.proj__shot--half{aspect-ratio:4/3}.proj__shots2,.proj__text{display:grid;gap:var(--space-4)}.proj__shots2{grid-template-columns:1fr 1fr}.proj__text{max-width:62ch}.proj__text h3{font-size:22px;line-height:1.15;font-weight:700;letter-spacing:-.01em}.proj__next{display:grid;gap:var(--space-2);margin-top:var(--space-8);padding:var(--space-8) var(--space-4) calc(var(--space-8) + env(safe-area-inset-bottom,0));background:var(--ink);color:var(--on-ink);text-decoration:none}.proj__next .jd-label{color:var(--on-ink-muted)}.proj__next strong{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);font-family:var(--font-display);font-size:clamp(28px,5vw,40px);line-height:1.05;font-weight:800;letter-spacing:-.02em}.proj__next svg{width:32px;height:32px;flex:none;stroke:var(--signal);fill:none;stroke-width:1.75;stroke-linecap:square;transition:transform var(--duration-fast) var(--ease-out)}.proj__next:hover svg{transform:translate(4px,-4px)}@media (min-width:700px){.proj__body{padding:var(--space-12) var(--space-12)0}.proj__facts{grid-template-columns:repeat(4,minmax(0,1fr))}.proj__next{padding:var(--space-12)}.proj__bar{padding-inline:var(--space-12)}}.rv{opacity:0;transform:translateY(16px)}.rv.in{opacity:1;transform:none;transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}@media (prefers-reduced-motion:reduce){.deck,.rail{scroll-behavior:auto}.rv{opacity:1;transform:none}.menu,.proj__panel{transition:none;animation:none}}