/* Brothers Digital — spatial edition. */
:root{--detail-line:color-mix(in srgb,var(--ink) 15%,transparent)}
::view-transition-old(root){animation:editionOut .32s ease both}::view-transition-new(root){animation:editionIn .58s cubic-bezier(.2,.7,.1,1) both}@keyframes editionOut{to{opacity:0;transform:translateY(-12px) scale(.99)}}@keyframes editionIn{from{clip-path:inset(0 0 100% 0);transform:translateY(12px)}to{clip-path:inset(0);transform:none}}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid currentColor;outline-offset:5px}button:disabled{cursor:default}.site-header{background:color-mix(in srgb,var(--ivory) 93%,transparent);backdrop-filter:blur(18px)}.brand .brand-icon{transition:transform .45s var(--ease)}.brand:hover .brand-icon{transform:rotate(-7deg)}.header-cta{transition:background .3s,color .3s,translate .3s}.header-cta:hover{translate:0 -2px}.section-label{letter-spacing:.13em}

/* One opening scene, one sculptural installation. */
.page-home .hero{background:radial-gradient(ellipse at 83% 48%,#a3aa9119,transparent 47%)}.page-home .hero-line.hero-last{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400;letter-spacing:-.075em;font-size:1.04em;line-height:1.08;padding-bottom:.04em}.page-home .hero-line.hero-last b{font-family:Studio,Arial,sans-serif;font-size:.75em;font-style:normal}.page-home .hero-project-link{position:relative;overflow:hidden;min-width:230px;padding:18px 23px;box-shadow:0 10px 25px #2025220c}.hero-project-link>span:first-child{display:flex;align-items:center;gap:18px}.hero-project-link small{font:10px monospace;color:var(--olive)}.page-home .hero-project-link>span:last-child{transition:translate .35s,rotate .35s}.page-home .hero-project-link:hover>span:last-child{translate:3px -3px;rotate:0deg}.page-home .hero-project-link:hover{background:#364130}
.sculpture-stage{touch-action:pan-y;cursor:grab}.sculpture-stage.is-dragging,.sculpture-stage.is-dragging canvas{cursor:grabbing!important}.scene-atmosphere{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:visible}.scene-halo{position:absolute;width:72%;aspect-ratio:1;top:9%;left:10%;border-radius:50%;background:radial-gradient(circle at 40% 40%,#fcfbf5b3,#a3aa9118 61%,transparent 72%);filter:blur(2px)}.scene-orbit{position:absolute;left:6%;top:7%;width:76%;height:76%;border:1px solid #20252215;border-radius:50%;transform:rotate(-24deg) scaleX(.82);animation:orbitBreathe 13s ease-in-out infinite}.scene-orbit::after{content:'';position:absolute;width:5px;height:5px;left:17%;top:10%;background:var(--olive);border-radius:50%;box-shadow:0 0 0 5px #a3aa9114}.orbit-two{left:3%;top:3%;width:83%;height:83%;border-style:dashed;border-color:#2025220d;transform:rotate(22deg) scaleX(.74);animation-direction:reverse;animation-duration:17s}.orbit-two::after{left:auto;right:15%;top:auto;bottom:10%;width:3px;height:3px;background:var(--ink);box-shadow:none}.scene-coordinate{position:absolute;font:8px monospace;letter-spacing:.16em;color:#797e70}.coordinate-a{left:22%;top:8%}.coordinate-b{right:25%;bottom:19%;writing-mode:vertical-rl}.sculpture-stage .sculpture-fallback{transform:rotateX(calc(var(--tilt-y,0deg) + var(--manual-x,0deg))) rotateY(calc(var(--tilt-x,0deg) + var(--manual-y,0deg)))}.sculpture-stage .sculpture-caption{left:10%;right:24%;max-width:none;bottom:1%;display:flex;flex-wrap:nowrap;justify-content:space-between;gap:12px;color:#636b5c}.scene-index{font:8px monospace;letter-spacing:.13em;white-space:nowrap}.scene-instruction{font-size:10px;letter-spacing:0}.scene-controls{display:flex;gap:5px;align-items:center;flex-shrink:0}.sculpture-caption .scene-controls button{width:33px;height:33px;min-height:33px;padding:0;justify-content:center;font:19px Studio,Arial;border-color:#20252222;border-radius:50%;background:#f2efe7aa;backdrop-filter:blur(8px)}.sculpture-caption .scene-controls #hero-pause{width:auto;min-width:66px;padding:0 10px;border-radius:30px;font-size:10px;gap:8px}.scene-controls button:disabled{opacity:.3}.sculpture-caption .scene-controls button:hover{background:var(--olive)}.scene-controls button:focus-visible{outline-offset:3px}@keyframes orbitBreathe{50%{rotate:8deg;scale:1.015}}.sculpture-stage:is(.is-paused,.scene-offscreen,.scene-hidden) .scene-orbit{animation-play-state:paused}

/* Portfolio as a gallery or an editorial index. */
.work-toolbar{flex-wrap:wrap;align-items:center;gap:22px}.work-views{display:flex;padding:3px;border:1px solid var(--line);margin-left:auto;gap:2px}.work-views button{display:flex;align-items:center;gap:8px;padding:9px 13px;font-size:11px;background:transparent;color:#687060;min-height:36px;transition:background .25s,color .25s}.work-views button>span{font-size:18px;line-height:1}.work-views button[aria-pressed=true]{background:var(--ink);color:var(--ivory)}.work-count{margin-left:0}.project-card{position:relative}.project-card[hidden]{display:none!important}.project-art{border:1px solid #2025220a;transform:perspective(1200px) rotateX(var(--card-x,0deg)) rotateY(var(--card-y,0deg));transition:transform .6s var(--ease);will-change:auto}.project-art::after{content:'';position:absolute;inset:0;pointer-events:none;z-index:4;box-shadow:inset 0 0 55px #20252209}.project-card .browser-window{border:1px solid #ffffff2b;box-shadow:0 32px 70px #0005}.project-caption{gap:22px}.project-caption h3{letter-spacing:-.045em}.project-preview{position:absolute;right:20px;top:20px;z-index:5;display:flex;gap:7px;align-items:center;padding:8px 11px;min-height:38px;background:#f2efe7e6;color:var(--ink);font-size:10px;border:1px solid #20252215;backdrop-filter:blur(12px);transition:background .3s,translate .3s}.project-preview>span:first-child{font-size:20px;line-height:1}.project-preview:hover{background:var(--ivory);translate:0 -2px}.project-badge{max-width:60%}.project-grid[data-layout=list]{display:block}.project-grid[data-layout=list] .project-card{margin-top:0;padding:32px 0 32px 42px;border-bottom:1px solid var(--line)}.project-grid[data-layout=list] .project-card::before{content:attr(data-index);position:absolute;left:0;top:50%;font:10px monospace;color:#858b7c}.project-grid[data-layout=list] .project-open{display:grid;grid-template-columns:220px minmax(0,1fr);gap:40px;align-items:center}.project-grid[data-layout=list] .project-art{aspect-ratio:1.6;transform:none;min-height:0}.project-grid[data-layout=list] .project-caption{display:flex;flex-direction:column;align-items:flex-start;padding:0 120px 0 0;gap:16px}.project-grid[data-layout=list] .project-caption h3{font-size:34px;line-height:1.1}.project-grid[data-layout=list] .project-caption p{max-width:100%;font-size:14px}.project-grid[data-layout=list] .project-type{max-width:none;font-size:10px}.project-grid[data-layout=list] :is(.project-badge,.project-arrow,.project-hover-label,.project-watermark,.project-art-title,.archive-word,.identity-label,.identity-disc){display:none}.project-grid[data-layout=list] .browser-window{left:0;top:0;width:100%;height:100%;transform:none!important;box-shadow:none;border:0;border-radius:0}.project-grid[data-layout=list] .browser-bar{display:none}.project-grid[data-layout=list] .browser-window img{height:100%}.project-grid[data-layout=list] .identity-sheet{left:0;top:0;width:100%;height:100%;transform:none!important;box-shadow:none}.project-grid[data-layout=list] .identity-sheet img{height:100%;object-fit:cover}.project-grid[data-layout=list] .project-preview{top:50%;right:0;translate:0 -50%;background:transparent}.project-grid[data-layout=list] .project-preview:hover{background:#e7e7dd}

/* Project presentation and accessible full-screen image inspection. */
.case-page-cover,.case-explorer{position:relative}.image-open{position:absolute;bottom:22px;right:22px;z-index:3;display:flex;align-items:center;gap:9px;min-height:42px;padding:9px 15px;background:#f2efe7e8;color:var(--ink);border:1px solid #20252220;backdrop-filter:blur(12px);font-size:12px}.image-open>span:first-child{font-size:23px;line-height:1}.image-open:hover{background:var(--ivory)}.case-project-step{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0 2px;border-top:1px solid currentColor;margin-top:28px;font-size:12px}.case-project-step>a{display:flex;align-items:center;gap:18px;opacity:.8}.case-project-step>a:hover{opacity:1}.case-project-step>span{font:10px monospace;letter-spacing:.14em;opacity:.65}.case-page-hero .case-provenance{font-size:12px}.viewer-open{overflow:hidden}.image-viewer{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;border:0;padding:28px 38px;background:#171f1a;color:var(--ivory);overflow:hidden}.image-viewer[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:24px}.image-viewer::backdrop{background:#171f1af0;backdrop-filter:blur(14px)}.viewer-top{display:flex;align-items:center;justify-content:space-between;gap:25px}.viewer-top .eyebrow{font-size:9px;color:var(--olive)}.viewer-top h2{font:italic 34px Georgia,serif;line-height:1.2;letter-spacing:-.035em;margin-top:8px}.viewer-top button{display:flex;align-items:center;gap:12px;background:none;color:var(--ivory);font-size:12px;padding:9px 0}.viewer-top button>span:first-child{font-size:28px}.viewer-top kbd{font:9px monospace;padding:5px 7px;border:1px solid #f2efe72b;color:var(--olive)}.viewer-stage{position:relative;min-height:0;overflow:hidden;display:flex;align-items:center;justify-content:center;touch-action:none;background:linear-gradient(#f2efe704 1px,transparent 1px),linear-gradient(90deg,#f2efe704 1px,transparent 1px);background-size:40px 40px}.viewer-stage>img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;user-select:none;transform-origin:center;box-shadow:0 25px 90px #0006}.viewer-stage.is-zoomed{cursor:grab}.viewer-stage.is-zoomed:active{cursor:grabbing}.image-viewer[data-loading=true] .viewer-stage::after{content:'…';position:absolute;font:50px Georgia,serif;color:var(--olive)}.viewer-bottom{display:flex;justify-content:space-between;align-items:center;gap:25px}.viewer-bottom>p{font-size:12px;color:#bec4b5}.viewer-controls{display:flex;gap:7px;align-items:center}.viewer-controls button{min-width:42px;height:42px;background:#f2efe70c;border:1px solid #f2efe726;color:var(--ivory);font-size:21px}.viewer-controls button:hover{background:#f2efe724}.viewer-controls button:disabled{opacity:.3}.viewer-controls #viewer-reset{font-size:11px;padding:0 17px;margin-left:10px}.viewer-controls output{min-width:52px;text-align:center;font:11px monospace}.viewer-error{position:absolute;bottom:100px;left:10%;right:10%;text-align:center;padding:20px;background:var(--ivory);color:var(--ink);font-size:14px}

/* Demonstrate the disciplines, then show their work. */
.studio-demo{box-shadow:0 20px 55px #20252208;background:#f5f3ec}.demo-top{background:#f2efe7;border-bottom-color:#2025221c}.demo-browser{box-shadow:0 18px 35px #2025220c}.service-proof{display:flex;align-items:center;justify-content:space-between;gap:30px;width:fit-content;font-size:12px;line-height:1.5;margin:17px 0 4px 34px;color:#606b55;border-bottom:1px solid #20252224;padding-bottom:7px}.service-proof:hover{color:var(--ink);border-bottom-color:currentColor}.service-toggle[aria-expanded=true]{color:#4d5e3e}.studio-art{transition:background .6s,color .6s;border:1px solid #f2efe71c}.studio-art .studio-big-mark{top:21%;height:44%;width:64%;left:18%;transition:transform .8s var(--ease),color .6s}.studio-lens{position:absolute;bottom:28px;left:25px;right:25px;z-index:3;border-top:1px solid #20252233;padding-top:18px}.studio-lens-tabs{display:flex;gap:7px}.studio-lens-tabs button{display:flex;align-items:center;gap:9px;background:#f2efe742;border:1px solid #2025221a;padding:9px 11px;min-height:39px;font-size:11px;color:inherit}.studio-lens-tabs button>span{font:8px monospace;opacity:.5}.studio-lens-tabs button[aria-pressed=true]{background:var(--ink);color:var(--ivory);border-color:var(--ink)}.studio-lens>p{font-size:13px;line-height:1.6;max-width:350px;margin-top:14px;min-height:42px}.studio-art[data-lens=code]{background:var(--ink);color:var(--ivory)}.studio-art[data-lens=code] .studio-big-mark{color:var(--ivory);transform:rotate(8deg) scale(.9)}.studio-art[data-lens=code] .studio-art-note{color:var(--olive)}.studio-art[data-lens=code] .studio-lens{border-color:#f2efe72b}.studio-art[data-lens=code] .studio-lens-tabs button{background:#f2efe70d;border-color:#f2efe724}.studio-art[data-lens=code] .studio-lens-tabs button[aria-pressed=true]{background:var(--ivory);color:var(--ink)}.studio-art[data-lens=strategy]{background:var(--stone);color:var(--ink)}.studio-art[data-lens=strategy] .studio-big-mark{transform:rotate(-18deg) scale(1.05)}

/* Enquiries that survive a language change or a wrong turn. */
.enquiry-card{box-shadow:0 24px 60px #2025220a;border:1px solid #f2efe747}.enquiry-card .brief-top{font-size:10px;letter-spacing:.12em}.enquiry-fields input,.enquiry-message textarea{transition:border-color .25s,background .25s}.enquiry-fields input:focus,.enquiry-message textarea:focus{background:#a3aa9109;border-bottom-color:var(--ink)}.message-meta{display:flex;gap:14px;align-items:center;justify-content:space-between;font-size:10px;line-height:1.5;color:#737b6b;min-height:23px;margin:11px 0 21px}.message-meta>#message-count{margin-left:auto;white-space:nowrap;font-family:monospace}.message-meta button{padding:4px 0;background:none;color:var(--ink);font-size:10px;border-bottom:1px solid var(--line);white-space:nowrap}.submit-shortcut{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px;color:#737b6b;margin:14px 0 16px}.submit-shortcut>span{font:9px monospace;white-space:nowrap}.submit-shortcut kbd{font:inherit;border:1px solid var(--line);padding:2px 4px}.enquiry-reference-row{display:flex;align-items:center;gap:20px;margin:22px 0}.enquiry-reference-row button{font-size:10px;min-height:32px;background:transparent;border-bottom:1px solid var(--line);padding:5px 0}.enquiry-reference-row #enquiry-reference{margin:0}.enquiry-form[aria-busy=true],#enquiry-form[aria-busy=true]{cursor:progress}#enquiry-form input:disabled,#enquiry-form textarea:disabled,#enquiry-form select:disabled{opacity:.6}.form-status.is-error{border-left:2px solid #875044;padding-left:12px}.enquiry-note{font-size:11px!important}

@media(min-width:1200px){.page-work .page-heading{font-size:7.8vw}.page-work .section-heading-row{gap:6vw}.page-work .section-intro{max-width:285px}.page-services .expertise-intro>p{max-width:355px}.project-grid{gap:7vw 3vw}}
@media(max-width:1100px){.scene-instruction{display:none}.work-toolbar{gap:14px}.work-views{margin-left:0}.work-count{margin-left:auto}.project-grid[data-layout=list] .project-open{grid-template-columns:170px minmax(0,1fr);gap:28px}.project-grid[data-layout=list] .project-caption h3{font-size:29px}.studio-lens{left:20px;right:20px;bottom:20px}.studio-lens-tabs button{padding:9px;font-size:10px;gap:5px}.studio-lens>p{font-size:12px}}
@media(max-width:760px){.page-home .hero-line.hero-last{font-size:1.025em;line-height:1.08}.page-home .hero-project-link{min-width:0;padding:12px 13px}.hero-project-link>span:first-child{gap:9px}.hero-project-link small{font-size:8px}.scene-atmosphere{inset:0 3%}.scene-halo{left:13%;top:5%;width:73%}.scene-orbit{left:12%;top:2%;width:73%;height:86%;border-color:#20252211}.orbit-two{left:8%;top:0;width:80%;height:91%}.scene-coordinate{font-size:6px}.coordinate-a{left:9%;top:15%}.coordinate-b{right:9%;bottom:23%}.page-home .sculpture-stage .sculpture-caption{left:10%;right:10%;bottom:1%;gap:8px}.scene-index{font-size:7px;letter-spacing:.06em}.sculpture-caption .scene-controls button{width:30px;height:30px;min-height:30px;font-size:17px}.sculpture-caption .scene-controls #hero-pause{min-width:59px;font-size:9px;padding:0 9px;gap:6px}.scene-controls{gap:3px}.work-toolbar{gap:16px;margin-bottom:25px}.filters{flex-wrap:wrap;gap:4px}.work-views{order:3;padding:2px}.work-views button{font-size:10px;min-height:34px;padding:7px 12px}.work-count{display:inline;font-size:9px;margin-left:auto}.project-preview{right:14px;top:14px;padding:6px 9px;min-height:34px;font-size:9px}.project-preview>span:first-child{font-size:18px}.project-badge{max-width:58%;font-size:7px}.project-grid[data-layout=list] .project-card{padding:22px 42px 22px 22px}.project-grid[data-layout=list] .project-card::before{font-size:8px}.project-grid[data-layout=list] .project-open{grid-template-columns:85px minmax(0,1fr);gap:16px}.project-grid[data-layout=list] .project-caption{padding:0;gap:9px}.project-grid[data-layout=list] .project-caption h3{font-size:20px;letter-spacing:-.04em}.project-grid[data-layout=list] .project-caption p{display:none}.project-grid[data-layout=list] .project-type{font-size:7px;line-height:1.5;letter-spacing:.04em}.project-grid[data-layout=list] .project-preview{right:0;width:33px;height:35px;padding:0;justify-content:center;border:0}.project-grid[data-layout=list] .project-preview>span:last-child{display:none}.image-open{bottom:12px;right:12px;min-height:36px;padding:7px 11px;font-size:10px;gap:7px}.image-open>span:first-child{font-size:20px}.case-project-step{gap:15px;font-size:10px;padding-top:20px}.case-project-step>a{gap:8px}.case-project-step>span{font-size:8px;white-space:nowrap}.image-viewer{padding:20px 18px}.image-viewer[open]{gap:18px}.viewer-top{align-items:flex-start;gap:15px}.viewer-top .eyebrow{font-size:7px;letter-spacing:.08em}.viewer-top h2{font-size:26px;max-width:230px}.viewer-top button{font-size:0;padding:3px 0}.viewer-top button>span:first-child{font-size:28px}.viewer-top kbd{display:none}.viewer-bottom{flex-direction:column;align-items:center;gap:14px}.viewer-bottom>p{font-size:10px;text-align:center}.viewer-controls button{width:40px;min-width:40px;height:40px}.viewer-controls #viewer-reset{width:auto}.viewer-error{font-size:12px;bottom:145px;left:8%;right:8%}.service-proof{margin-left:26px;font-size:11px}.studio-art .studio-big-mark{height:42%;top:17%}.studio-lens{left:20px;right:20px;bottom:20px}.studio-lens-tabs{gap:5px}.studio-lens-tabs button{font-size:11px;min-height:38px;padding:8px 10px;gap:7px}.studio-lens>p{font-size:12px;max-width:290px;min-height:40px;margin-top:12px}.message-meta{font-size:9px;gap:10px;flex-wrap:wrap;margin-bottom:17px}.message-meta>#draft-state{max-width:170px}.message-meta button{font-size:9px}.submit-shortcut{font-size:9px;gap:10px}.submit-shortcut>span{font-size:8px}.enquiry-reference-row{gap:13px;flex-wrap:wrap}.enquiry-reference-row button{font-size:9px}.enquiry-note{font-size:10px!important}}
@media(max-width:380px){.scene-index{font-size:6px}.sculpture-caption .scene-controls button{width:27px;height:29px;min-height:29px}.sculpture-caption .scene-controls #hero-pause{min-width:53px;font-size:8px;padding:0 7px}.scene-controls{gap:2px}.project-grid[data-layout=list] .project-open{grid-template-columns:70px minmax(0,1fr);gap:13px}.project-grid[data-layout=list] .project-caption h3{font-size:18px}.studio-lens-tabs button{font-size:10px;padding:8px}.submit-shortcut>span{display:none}}
@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none!important}.scene-orbit{animation:none!important}.sculpture-stage .sculpture-fallback{transform:rotateX(var(--manual-x,0deg)) rotateY(var(--manual-y,0deg))!important}.project-art,.studio-art,.studio-art .studio-big-mark{transition:none!important}}
[data-motion=off] .scene-orbit{animation:none!important}[data-motion=off] .sculpture-stage .sculpture-fallback{transform:rotateX(var(--manual-x,0deg)) rotateY(var(--manual-y,0deg))!important}

.studio-art{display:grid;grid-template-rows:minmax(0,1fr) auto;align-items:center;padding:75px 25px 28px}.studio-art .studio-big-mark{position:relative;top:auto;left:auto;width:70%;height:clamp(170px,17vw,260px);max-width:330px;aspect-ratio:auto;margin:0 auto;align-self:center}.studio-lens{position:relative;left:auto;right:auto;bottom:auto;width:100%}
@media(max-width:760px){.studio-art{aspect-ratio:auto;min-height:400px;padding:65px 20px 20px;grid-template-rows:minmax(170px,1fr) auto}.studio-art .studio-big-mark{top:auto;left:auto;height:170px;width:65%}.studio-lens{left:auto;right:auto;bottom:auto}}

/* Selected GitHub builds: the work, with a direct path to its source. */
.project-github .project-art{aspect-ratio:4/3;background:#171714;isolation:isolate}
.project-autopro .project-art{background:#d7d8d3;color:#263a2d}
.project-github .repo-cover{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.project-github .project-open:hover .repo-cover{transform:scale(1.025)}
.project-github .project-badge{top:18px;left:18px;padding:6px 8px;font-size:8px;line-height:1;color:#e6dfc9;border-color:#e6dfc94d;background:#17171485;backdrop-filter:blur(8px)}
.project-autopro .project-badge{color:#263a2d;border-color:#263a2d40;background:#e6e6dfb8}
.project-github .project-arrow{background:#f2efe7d9;color:var(--ink)}
.project-source{display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid var(--line);padding-top:15px;margin-top:19px}
.project-source>span{font:9px monospace;letter-spacing:.1em;color:#727b69}
.project-source>a{display:flex;align-items:center;gap:20px;font-size:12px;min-height:32px;border-bottom:1px solid transparent}
.project-source>a:hover{border-color:currentColor}
.project-grid[data-layout=list] .project-github .project-art{aspect-ratio:1.6}
.project-grid[data-layout=list] .project-source{margin-left:260px;max-width:500px}
.project-grid[data-layout=list] .project-github .repo-cover{object-fit:cover}
.case-theme-aura .case-page-cover,.case-theme-autopro .case-page-cover{padding:0}
.case-theme-aura{--case-bg:#171714;--case-fg:#e6dfc9;--case-accent:#d6c99f}
.case-theme-autopro{--case-bg:#d7d8d3;--case-fg:#263a2d;--case-accent:#ac5234}
.case-theme-aura .case-page-cover>img,.case-theme-autopro .case-page-cover>img{display:block;width:100%;height:auto}
.case-repository-bar{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:20px 0 5px;font-size:12px}
.case-repository-bar>span{font:11px monospace;color:var(--case-fg);opacity:.7;overflow-wrap:anywhere}
.case-repository-bar>a{display:flex;gap:30px;align-items:center;min-height:40px;border-bottom:1px solid currentColor}
.case-code{margin-top:55px;border:1px solid #f2efe730;background:#18221c;color:var(--ivory);padding:45px}
.case-code-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px}
.case-code-heading .eyebrow{color:#aeb9a3;font-size:10px}
.case-code-heading h3{font-size:clamp(28px,3.3vw,46px);line-height:1.15;letter-spacing:-.045em;margin:22px 0 0;font-weight:400}
.case-repository-link{display:flex;align-items:center;gap:30px;min-height:44px;border-bottom:1px solid #e8e9dd70;font-size:12px;line-height:1.5;flex-shrink:0}
.case-repository-link:hover{border-color:var(--ivory)}
.case-stack{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:30px 0 35px;padding:0}
.case-stack li{border:1px solid #d0d7c436;color:#c5cfb8;padding:9px 14px;font:11px monospace}
.case-source-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#a3aa9140;border:1px solid #a3aa9140}
.case-source-grid>a{display:flex;flex-direction:column;min-width:0;padding:27px 24px;background:#1c281f;transition:background .25s}
.case-source-grid>a:hover{background:#27362a}
.source-file-index{display:flex;justify-content:space-between;color:#a6b197;font:11px monospace}
.source-file-index>span{font-size:22px;line-height:1}
.case-source-grid h4{font-size:23px;font-weight:400;line-height:1.25;letter-spacing:-.035em;margin:30px 0 15px}
.case-source-grid p{font-size:13px;line-height:1.7;color:#bec7b5;margin:0 0 25px}
.case-source-grid code{font:10px/1.7 monospace;overflow-wrap:anywhere;color:#8e9d83;margin-top:auto}
.source-file-link{font-size:11px;display:flex;justify-content:space-between;gap:15px;padding-top:20px;margin-top:18px;border-top:1px solid #a3aa9130}
.case-code-credit{font:10px/1.8 monospace;color:#a6b197;margin-top:25px;overflow-wrap:anywhere}
@media(max-width:1100px){.work-toolbar{flex-wrap:wrap}.project-grid[data-layout=list] .project-source{margin-left:198px}.case-code{padding:30px}.case-code-heading{align-items:flex-start;flex-direction:column;gap:22px}.case-source-grid>a{padding:25px 18px}.case-source-grid h4{font-size:21px}}
@media(max-width:760px){.project-source{gap:12px;padding-top:10px;margin-top:12px}.project-source>span{font-size:8px;letter-spacing:.06em}.project-source>a{font-size:11px;gap:14px;min-height:36px}.project-grid[data-layout=list] .project-source{margin-left:101px;gap:10px;flex-wrap:wrap}.project-grid[data-layout=list] .project-source>span{display:none}.project-grid[data-layout=list] .project-source>a{font-size:10px;min-height:29px}.case-repository-bar{align-items:flex-start;flex-direction:column;gap:12px;font-size:11px;padding-top:16px}.case-repository-bar>span{font-size:9px}.case-repository-bar>a{gap:25px;min-height:35px}.case-code{margin-top:30px;padding:24px 20px}.case-code-heading h3{font-size:29px;margin-top:18px}.case-code-heading .eyebrow{font-size:8px;letter-spacing:.1em}.case-repository-link{font-size:11px;gap:20px;flex-shrink:1}.case-stack{gap:6px;margin:25px 0}.case-stack li{font-size:9px;padding:8px 10px}.case-source-grid{grid-template-columns:1fr}.case-source-grid>a{padding:23px}.case-source-grid h4{font-size:25px;margin-top:20px}.case-source-grid p{font-size:12px;margin-bottom:23px}.case-source-grid code{font-size:10px}.case-code-credit{font-size:9px}.case-code-credit>span{display:block}.source-file-link{font-size:11px}}
@media(max-width:380px){.project-grid[data-layout=list] .project-source{margin-left:83px}}
@media(prefers-reduced-motion:reduce){.project-github .repo-cover{transition:none}}
[data-motion=off] .project-github .repo-cover{transition:none}
@media(max-width:760px){.project-github .project-badge{top:14px;left:14px;font-size:7px}}

/* Release polish: comfortable footer targets without changing the visual hierarchy. */
.footer-instagram,.footer-bottom>a,.hook-footer a{display:inline-flex;align-items:center;min-height:44px}
.footer-pages a{min-height:44px;align-items:center}
.footer-bottom button,.hook-footer button{min-height:44px}
.hook-footer .hook-replay{width:44px;min-width:44px;min-height:44px}
#enquiry-form [aria-invalid=true]{outline:2px solid #963f34;outline-offset:3px}
.footer-bottom,.footer-bottom button{font-size:11px}
@media(max-width:480px){
  .hook-footer{flex-wrap:wrap;gap:0;font-size:10px;padding:8px var(--gutter)}
  .hook-footer>span{flex:1 1 100%;padding:4px 0}
  .hook-footer>div{width:100%;justify-content:space-between;gap:14px}
  .hook-footer a,.hook-footer button{font-size:11px;white-space:nowrap}
}
