@layer components{.c-hero{padding-top:clamp(28px,3vw,44px);padding-bottom:clamp(56px,7vw,104px)}.c-hero-text{flex-direction:column;align-items:flex-start;gap:26px;display:flex}.c-hero h1,.proj-hero-text h1{overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;max-width:100%;font-size:clamp(44px,6.4vw,108px);line-height:.9}.c-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px 48px;margin-bottom:clamp(32px,4vw,56px);display:flex}.c-head-text{flex-direction:column;gap:14px;max-width:760px;display:flex}.c-head h2,.c-cta h2{overflow-wrap:anywhere;font-size:clamp(34px,4.6vw,72px);line-height:1}.c-head-link{text-decoration:none}.c-cta{border-top:1px solid var(--rule);padding-block:clamp(64px,8vw,112px)}.c-cta .cta-box{border:1px solid var(--rule);background:color-mix(in srgb, var(--color-paper) 80%, transparent);align-items:start;gap:28px 48px;padding:clamp(28px,4vw,56px);display:grid;position:relative}.c-cta-text{flex-direction:column;gap:16px;max-width:720px;display:flex}.proj-list,.team-list{padding-bottom:clamp(64px,8vw,112px)}.proj-sec,.team-sec{border-top:1px solid var(--rule);padding-block:clamp(64px,8vw,112px)}.proj-flush{border-top:0;padding-top:0}.fchips{flex-wrap:wrap;gap:8px;margin-bottom:clamp(24px,3vw,40px);display:flex}.fchips a{border:1px solid var(--rule);min-height:44px;color:var(--color-navy);font:500 12.5px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;background:#ffffff73;align-items:center;gap:8px;padding:0 14px;text-decoration:none;transition:border-color .2s,background-color .2s,color .2s;display:inline-flex}.fchips a:hover{border-color:var(--color-accent-700)}.fchips sup{color:var(--color-accent-700);font-size:10px;top:0}.fchips a[aria-current=page] sup{color:var(--color-accent-300)}.proj-list .rgrid{margin-bottom:8px}.pager{flex-wrap:wrap;gap:8px;margin-top:clamp(32px,4vw,56px);display:flex}.pager a{border:1px solid var(--rule);min-width:44px;min-height:44px;font:500 13px/1 var(--font-mono);letter-spacing:.08em;color:var(--color-navy);place-items:center;padding:0 10px;text-decoration:none;display:inline-grid}.pager a:hover{border-color:var(--color-accent-700)}.fchips a[aria-current=page],.pager a[aria-current=page]{border-color:var(--color-navy);background:var(--color-navy);color:#fff}.r-empty{border:1px dashed var(--rule);background:#ffffff59;flex-direction:column;align-items:flex-start;gap:16px;padding:clamp(28px,4vw,56px);display:flex;position:relative}.r-empty h2{overflow-wrap:anywhere;font-size:clamp(28px,3vw,40px);line-height:1}.r-empty p{max-width:560px;color:var(--ink-soft)}.r-acts{flex-wrap:wrap;gap:12px;display:flex}.r-dr{fill:none;width:120px;height:auto;stroke:var(--color-accent);stroke-width:1.2px}.proj-hero{padding-top:clamp(28px,3vw,44px);padding-bottom:clamp(56px,7vw,104px)}.proj-hero-grid{grid-template-columns:minmax(0,1fr);align-items:center;gap:40px clamp(32px,5vw,96px);display:grid}.proj-hero-text{flex-direction:column;align-items:flex-start;gap:26px;min-width:0;display:flex}.hmeta{font:500 12.5px/1.4 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent-800);flex-wrap:wrap;gap:6px 20px;display:flex}.hmeta li{align-items:center;gap:8px;display:inline-flex}.hmeta li:before{content:"";background:var(--color-accent);width:6px;height:6px}.c-cta-acts,.proj-acts{flex-wrap:wrap;gap:14px;display:flex}.cover-f{min-width:0;margin:0;position:relative}.cover-f .im{aspect-ratio:4/3;border:1px solid var(--rule);background:color-mix(in srgb, var(--color-accent) 8%, transparent);cursor:zoom-in;display:block;overflow:hidden}.cover-f img,.gstk img{object-fit:cover;width:100%;height:100%}.cover-f .cap{font:400 11.5px/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);justify-content:space-between;gap:12px;margin-top:10px;display:flex}.cover-f .cap span:last-child{flex:none}.tblk{--line:color-mix(in srgb, var(--ink) 30%, transparent);border:1.5px solid color-mix(in srgb, var(--ink) 70%, transparent);background:#fff6}.tblk-h{display:var(--tblk-head,grid);grid-template-columns:var(--tblk-cols);border-bottom:1px solid var(--line);font:500 10px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:color-mix(in srgb, var(--ink) 70%, transparent);flex-wrap:wrap;grid-template-rows:auto;grid-auto-rows:0;justify-content:space-between}.tblk-id{flex-wrap:wrap;grid-area:1/1;min-width:0;display:flex}.tblk-id>span,.tblk-r{min-width:0;padding:9px var(--tblk-px);overflow-wrap:break-word;text-wrap:balance;align-items:center;display:flex}.tblk-a{background:var(--color-accent-700);color:#fff}.tblk-x{flex-basis:100%;order:1}.tblk-x,.tblk-r{border-left:1px var(--tblk-head-rule,solid) var(--line)}.tblk-r{grid-area:1/-2/auto/-1}.stamp{--tblk-px:12px;--tblk-cols:repeat(2, minmax(0, 1fr))}.stamp-cells{grid-template-columns:var(--tblk-cols);display:grid}.stamp .c{min-width:0;padding:10px var(--tblk-px) 12px;border-top:1px solid var(--line);border-left:1px solid var(--line)}.stamp .c:nth-child(odd){border-left:0}.stamp .c:nth-child(-n+2){border-top:0}.stamp .c em{font:500 9.5px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent-700);font-style:normal;display:block}.stamp .c b{font:600 clamp(19px, 1.7vw, 24px) / 1.05 var(--font-heading);color:var(--ink);overflow-wrap:anywhere;margin-top:8px;display:block}.rep{grid-template-columns:minmax(0,1fr);gap:0 clamp(32px,5vw,96px);display:grid}.rep-tx{gap:18px;max-width:68ch;font-size:17.5px;line-height:1.65;display:grid}.rep-tx p:first-child:first-letter{float:left;font:600 64px/.8 var(--font-heading);color:var(--color-accent-700);margin:6px 10px 0 0}.gstk{width:min(100%,920px);color:inherit;cursor:zoom-in;padding:calc(2% + 12px) calc(3% + 10px) 0;text-decoration:none;display:block;position:relative}.gstk-pile{display:grid}.gstk .pr{aspect-ratio:4/3;transition:transform .45s var(--ease-draw);background:#fff;grid-area:1/1;padding:clamp(5px,.6vw,9px);display:block;box-shadow:0 1px 2px #1d2d3d29,0 18px 34px -18px #1d2d3d73}.gstk picture{background:color-mix(in srgb, var(--color-accent) 8%, transparent);height:100%;display:block}.gstk .p1{transform:rotate(-.7deg)}.gstk .p2{transform:translate(2.5%,1.5%)rotate(3deg)}.gstk .p3{transform:translate(-2%,2.5%)rotate(-3.2deg)}.gstk:hover .p1,.gstk:focus-visible .p1{transform:translateY(-4px)rotate(-.4deg)}.gstk:hover .p2,.gstk:focus-visible .p2{transform:translate(4%,1%)rotate(4.5deg)}.gstk:hover .p3,.gstk:focus-visible .p3{transform:translate(-3.5%,3%)rotate(-4.5deg)}.gstk[data-count="1"] .p1{transform:none}.gstk-bar{font:400 11.5px/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);justify-content:space-between;align-items:center;gap:12px;margin-top:calc(4.5% + 12px);padding-bottom:14px;display:flex}.gstk[data-count="1"] .gstk-bar{margin-top:14px}.gstk-alt{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;flex:1 1 0;min-width:0;display:-webkit-box;overflow:hidden}.gstk-alt b{color:var(--color-accent-800);font-weight:500}.gstk-go{text-align:center;border:1px solid var(--rule);background:color-mix(in srgb, var(--color-paper) 85%, transparent);min-width:44px;max-width:100%;min-height:44px;color:var(--color-accent-800);font:500 12px/1.2 var(--font-mono);letter-spacing:.08em;flex:none;justify-content:center;align-items:center;gap:8px;padding:0 14px;display:inline-flex}.gstk[data-count="1"] .gstk-go{padding:0}.gstk:hover .gstk-go,.gstk:focus-visible .gstk-go{border-color:var(--color-accent-700)}.gstk svg,.lb svg{fill:none;stroke:currentColor;stroke-width:1.8px}html:has(.lb[open]){overflow:hidden}.lb{width:100%;max-width:none;height:100%;max-height:none;color:var(--color-paper);animation:lb-in .25s var(--ease-draw) both;background:#0f1924;border:0;margin:0;padding:0;position:fixed;inset:0}.lb[open]{grid-template-rows:auto minmax(0,1fr) auto;display:grid}.lb::backdrop{background:0 0}.lb-top{padding:max(12px, env(safe-area-inset-top)) 16px 12px;font:500 12px/1.3 var(--font-mono);letter-spacing:.1em;color:var(--color-kicker-dark);justify-content:space-between;align-items:center;gap:12px;display:flex}.lb-top b{color:#fff;font-weight:500}.lb-x,.lb-a{color:#fff;cursor:pointer;background:#0f192480;border:1px solid #ffffff47;flex:none;place-items:center;width:48px;height:48px;padding:0;display:inline-grid}.lb-x:hover,.lb-a:hover{border-color:#fff}.lb-a .flip{transform:rotate(180deg)}.lb-mid{touch-action:pan-y;-webkit-user-select:none;user-select:none;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);place-items:center;min-height:0;padding-bottom:72px;display:grid;position:relative}.lb-img{display:contents}.lb-img source{display:none}.lb-img img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%;box-shadow:0 30px 80px #00000073}.lb-a{z-index:2;position:absolute;bottom:12px}.lb-a.p{left:16px}.lb-a.n{right:16px}.lb-cap{padding:14px 16px max(18px, env(safe-area-inset-bottom));text-align:center;color:#d7dfe8;font-size:15px}.lb-pre{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}@keyframes lb-in{0%{opacity:0}}@media (width>640px){.lb-mid{grid-template-columns:64px minmax(0,1fr) 64px;padding:0 8px}.lb-a{position:static}.lb-a.p{grid-area:1/1}.lb-img img{grid-area:1/2}.lb-a.n{grid-area:1/3}}@media (width>900px){.c-cta .cta-box{grid-template-columns:minmax(0,1fr) auto;align-items:end}.proj-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,.95fr)}.rep{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);align-items:start}}@media (width>900px) and (height>=600px){.rep>.c-head{top:calc(var(--header-h-scrolled) + 24px);position:sticky}}@media (width>1100px){.stamp{--tblk-cols:repeat(4, minmax(0, 1fr))}.stamp .c:nth-child(odd){border-left:1px solid var(--line)}.stamp .c:nth-child(4n+1){border-left:0}.stamp .c:nth-child(-n+4){border-top:0}}@media (width>=1900px){.proj-list .rgrid{grid-template-columns:repeat(4,minmax(0,1fr))}.gstk{width:min(100%,1080px)}}@media (width<=640px){.tblk{--tblk-head:flex;--tblk-head-rule:none}.gstk-bar{flex-wrap:wrap}.gstk-alt{flex-basis:100%}.gstk[data-count="1"] .gstk-bar{flex-wrap:nowrap}.gstk[data-count="1"] .gstk-alt{flex-basis:0}.fchips{margin-inline:calc(var(--edge) * -1);padding-inline:var(--edge);scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.fchips a{flex:none}.proj-acts>a,.c-cta-acts>a{flex:auto;padding-inline:22px}}.tgrid{--cols:4;grid-template-columns:repeat(var(--cols), minmax(0, 1fr));gap:clamp(28px,3vw,44px) clamp(18px,2vw,28px);display:grid}.tgrid[data-cols="1"]{--cols:1;max-width:360px}.tgrid[data-cols="2"]{--cols:2}.tgrid[data-cols="3"]{--cols:3}.tm{flex-direction:column;min-width:0;display:flex}.tm .ph5{aspect-ratio:1;border:1px solid color-mix(in srgb, var(--color-accent) 22%, transparent);display:block;position:relative;overflow:hidden}.tm .ph5 img{object-fit:cover;width:100%;height:100%}.tm .ph5.none{background:#fff6;place-items:center;display:grid}.tm .ph5.none:before{content:"";background-image:linear-gradient(var(--grid-major) 1px, transparent 1px), linear-gradient(90deg, var(--grid-major) 1px, transparent 1px), linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-size:60px 60px,60px 60px,12px 12px,12px 12px;position:absolute;inset:0}.tm .ph5.none span{font:600 clamp(48px, 5vw, 72px) / 1 var(--font-heading);color:#0000;-webkit-text-stroke:1.25px var(--color-accent-400);position:relative}.tm .tb{border-top:1px solid var(--rule);flex-direction:column;gap:6px;margin-top:14px;padding-top:14px;display:flex}.tm .no{font:500 11px/1 var(--font-mono);letter-spacing:.1em;color:var(--color-accent-500)}.tm h3{overflow-wrap:anywhere;font-size:clamp(24px,2vw,30px);line-height:1}.tm p{color:var(--ink-soft);overflow-wrap:anywhere;margin-top:4px;font-size:15px}.vgrid{grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:clamp(16px,2vw,28px);display:grid}.vcard{border:1px solid var(--rule);background:#ffffff73;flex-direction:column;align-items:flex-start;gap:14px;padding:clamp(22px,2.4vw,32px);display:flex;position:relative}.vcard .vno{font-size:56px;position:absolute;top:clamp(18px,2vw,28px);right:clamp(22px,2.4vw,32px)}.vmeta{flex-wrap:wrap;gap:6px;padding-right:72px;display:flex}.vmeta span{border:1px solid var(--rule);color:var(--color-accent-800);font:500 11.5px/1.2 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;background:#fff;padding:4px 9px}.vcard h3{overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;max-width:calc(100% - 64px);font-size:clamp(26px,2.3vw,34px);line-height:1}.vcard p{color:var(--ink-soft);overflow-wrap:anywhere}.vcard .bp{margin-top:auto}@media (width<=1100px){.tgrid[data-cols="4"]{--cols:3}}@media (width<=900px){.tgrid:not([data-cols="1"]){--cols:2}.tgrid.odd>.tm:last-child:nth-child(odd){grid-column:1/-1;justify-self:center;width:calc(50% - clamp(18px,2vw,28px)/2)}}@media (width<=480px){.tgrid:not(.two-on-phone){--cols:1}.tgrid.two-on-phone{gap:24px 12px}.tgrid.two-on-phone h3{font-size:20px}.tgrid.two-on-phone p{display:none}.tgrid.odd:not(.two-on-phone)>.tm:last-child:nth-child(odd){width:100%}.tgrid.two-on-phone.odd>.tm:last-child:nth-child(odd){width:calc(50% - 6px)}}}
