:root{--bg:#f6efe4;--surface:#fffbf4;--surface-muted:#ece2d1;--text:#2c2622;--muted:#6f655c;--line:#e3d6c3;--clay:#dc775d;--accent:#b65a42;--accent-strong:#2c2622;--accent-soft:#f3ddd3;--sage:#7f9380;--rose:#b65a42;--shadow:0 24px 70px #30271d1a;--hand:"LXGW WenKai TC", "Kaiti TC", "PingFang TC", serif;--sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;color:var(--text);background:var(--bg);font-family:var(--sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}body{min-width:320px;margin:0}button,a{font:inherit}a{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.16}h1{max-width:820px;font-size:clamp(2.5rem,7vw,5.8rem);font-weight:760}h2{font-size:clamp(1.7rem,3vw,3rem);font-weight:720}h3{font-size:1.22rem;font-weight:700}.site-shell{width:min(1180px,100% - 32px);margin:0 auto}.site-header-bar{z-index:5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f6efe4e0;border-bottom:1px solid #e3d6c3cc;position:sticky;top:0}.site-header{justify-content:space-between;align-items:center;gap:24px;width:min(1180px,100% - 32px);min-height:72px;margin:0 auto;padding:16px 0;display:flex}.brand{color:var(--accent-strong);font-weight:800;text-decoration:none}.brand img{width:auto;height:34px;display:block}.site-header nav{align-items:center;gap:6px;display:flex}.site-header nav a{min-height:38px;color:var(--muted);border-radius:6px;padding:8px 12px;font-size:.95rem;text-decoration:none}.site-header nav a:hover{background:var(--surface-muted);color:var(--text)}.eyebrow,.section-label,.project-type{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:800}.primary-action,.secondary-action{border-radius:6px;justify-content:center;align-items:center;min-height:46px;padding:10px 18px;font-weight:700;text-decoration:none;display:inline-flex}.primary-action{background:var(--text);color:var(--bg)}.secondary-action{border:2px solid var(--text);color:var(--text);background:#fffbf4b3}.section{border-bottom:1px solid var(--line);padding:86px 0}.two-column{grid-template-columns:minmax(220px,.74fr) minmax(0,1.26fr);gap:56px;display:grid}.content-stack{color:var(--muted);gap:20px;font-size:1.05rem;display:grid}.section-heading{gap:10px;max-width:700px;margin-bottom:32px;display:grid}.board-section{border-bottom:none;position:relative}.works-tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:center;gap:4px 12px;margin-bottom:36px;display:flex}.works-tabs a{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:none;padding:12px 18px;scroll-margin-top:90px;font-size:1.05rem;font-weight:700;position:relative}.works-tabs a:hover,.works-tabs a.is-active{color:var(--text)}.works-tabs a.is-active:after{content:"";background:var(--clay);border-radius:2px;height:3px;position:absolute;bottom:-1px;left:12px;right:12px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;display:grid}.work-card{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:22px;flex-direction:column;gap:14px;padding:12px 12px 26px;transition:transform .2s,box-shadow .2s;display:flex}.work-card-open{width:100%;color:inherit;font:inherit;text-align:center;cursor:pointer;background:0 0;border:0;flex:1;align-content:start;justify-items:center;gap:10px;padding:0;display:grid}.work-card-downloads{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.notice-backdrop{z-index:95;background:#2c262299;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.notice-dialog{background:var(--surface);text-align:center;border-radius:22px;justify-items:center;gap:14px;width:min(420px,100%);padding:34px 28px 26px;display:grid;position:relative;box-shadow:0 24px 60px #1e140a59}.notice-title{color:var(--muted);margin:0;font-size:.9rem;font-weight:700}.notice-message{text-wrap:balance;margin:0;font-size:1.15rem;font-weight:760;line-height:1.5}.notice-email{color:var(--muted);margin:0;font-size:.9rem}button.store-btn,button.project-cta{font:inherit;cursor:pointer;border:0}button.project-cta{border:1px solid var(--accent)}.store-btn{background:var(--text);color:#fff;border-radius:999px;align-items:center;gap:7px;padding:8px 16px;font-size:.88rem;font-weight:700;text-decoration:none;display:inline-flex}.store-btn:hover{background:var(--accent)}.work-card:hover,.work-card:focus-within{transform:translateY(-4px);box-shadow:0 16px 30px #3c230a24}.work-card-open:focus-visible,.store-btn:focus-visible{outline:3px solid var(--clay);outline-offset:3px}.work-thumb{aspect-ratio:16/10;background:#efe5d3;border-radius:14px;place-items:center;width:100%;display:grid;position:relative;overflow:hidden}.work-thumb img{object-fit:cover;width:100%;height:100%;display:block}.work-thumb-empty,.work-dialog-empty{color:#b65a4259;font-size:4.5rem;font-weight:800;line-height:1}.work-pill{max-width:100%;color:var(--muted);background:#f3ebdd;border-radius:999px;margin-top:8px;padding:4px 14px;font-size:.82rem;font-weight:600;display:inline-block}.work-title{padding:0 8px;font-size:1.3rem;font-weight:760;line-height:1.25}.work-short{color:var(--muted);padding:0 14px;font-size:.95rem;line-height:1.5}.work-dialog-backdrop{z-index:90;background:#2c262299;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.work-dialog{background:var(--surface);border-radius:24px;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:28px;width:min(1000px,100%);max-height:calc(100vh - 48px);padding:28px;display:grid;position:relative;overflow:auto;box-shadow:0 30px 70px #1e140a66}.work-dialog-close{z-index:2;width:38px;height:38px;color:var(--text);cursor:pointer;background:#f3ebdd;border:none;border-radius:999px;font-size:1rem;position:absolute;top:14px;right:14px}.work-dialog-gallery{align-content:start;gap:12px;display:grid}.work-dialog-shot{cursor:zoom-in;background:#efe5d3;border:none;border-radius:16px;width:100%;padding:0;display:block;overflow:hidden}.work-dialog-shot img{object-fit:contain;width:100%;max-height:62vh;display:block}.work-dialog-video{cursor:pointer;position:relative}.work-dialog-play{aspect-ratio:1;color:#fff;background:#2c2622c7;border-radius:50%;place-items:center;width:clamp(64px,14%,96px);transition:transform .2s,background .2s;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 6px 22px #00000059}.work-dialog-play svg{width:46%;margin-left:6%}.work-dialog-video:hover .work-dialog-play,.work-dialog-video:focus-visible .work-dialog-play{background:var(--accent);transform:translate(-50%,-50%)scale(1.08)}.work-dialog-play-label{color:#fff;background:#2c2622c7;border-radius:999px;padding:5px 14px;font-size:.85rem;font-weight:700;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.work-dialog-thumbs button{position:relative}.work-thumb-play{color:#fff;background:#2c2622cc;border-radius:50%;place-items:center;width:20px;height:20px;padding-left:1px;font-size:.55rem;display:grid;position:absolute;bottom:4px;right:4px}.work-dialog-empty{background:#efe5d3;border-radius:16px;place-items:center;min-height:260px;font-size:7rem;display:grid}.work-dialog-thumbs{flex-wrap:wrap;gap:8px;display:flex}.work-dialog-thumbs button{cursor:pointer;opacity:.65;background:#efe5d3;border:2px solid #0000;border-radius:10px;width:64px;height:64px;padding:0;overflow:hidden}.work-dialog-thumbs button.is-active{border-color:var(--clay);opacity:1}.work-dialog-thumbs img{object-fit:cover;width:100%;height:100%;display:block}.work-dialog-info{align-content:start;gap:14px;padding-top:8px;display:grid}.work-dialog-info .work-pill{justify-self:start;margin-top:0}.work-dialog-info h3{padding-right:40px;font-size:1.6rem}.work-dialog-desc{color:var(--text);line-height:1.75}.work-dialog-stack{color:var(--rose);font-size:.95rem;font-weight:760}.work-dialog-actions{flex-wrap:wrap;align-items:center;gap:14px;margin-top:6px;display:flex}@media (width<=760px){.work-dialog{grid-template-columns:1fr;padding:22px 18px}.work-dialog-backdrop{padding:12px}}.platform-chip{color:var(--text);background:#ffffffeb;border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:.78rem;font-weight:700;line-height:1.4;display:inline-flex;box-shadow:0 1px 4px #3c230a2e}.platform-icon{width:.95em;height:.95em}.work-thumb-badges{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex;position:absolute;top:10px;right:10px}.project-cta{border:1px solid var(--accent);color:var(--accent);border-radius:999px;align-items:center;gap:7px;padding:9px 18px;font-size:.95rem;font-weight:760;text-decoration:none;display:inline-flex}.project-cta:hover{background:var(--accent-soft)}.project-cta-primary{background:var(--accent);color:#fff}.project-cta-primary:hover{background:var(--accent);filter:brightness(1.08)}.project-link{color:var(--accent);font-size:.95rem;font-weight:760;text-decoration:none}.project-link:hover{text-decoration:underline}.icon{flex:none;width:1.25em;height:1.25em}.services-section{gap:28px;padding:96px 0 40px;display:grid}.section-head{text-align:center;justify-items:center;gap:10px;display:grid}.services-section h2 em,.contact-section h2 em,.works-head h2 em{--hl:#efbdac;--hl-h:.36em;background:radial-gradient(circle closest-side, var(--hl) 98%, transparent 100%) left bottom .1em / var(--hl-h) var(--hl-h) no-repeat, radial-gradient(circle closest-side, var(--hl) 98%, transparent 100%) right bottom .1em / var(--hl-h) var(--hl-h) no-repeat, linear-gradient(var(--hl), var(--hl)) center bottom .1em / calc(100% - var(--hl-h)) var(--hl-h) no-repeat;-webkit-box-decoration-break:clone;box-decoration-break:clone;margin:0 -.1em;padding:0 .1em;font-style:normal}.services-section h2{font-size:clamp(1.7rem,3vw,2.4rem)}.services-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;display:grid}.service-card{border:1px solid var(--line);background:var(--surface);border-radius:22px;flex-direction:column;gap:12px;padding:26px 24px 24px;transition:transform .2s,box-shadow .2s;display:flex}.service-card:hover{transform:translateY(-4px);box-shadow:0 16px 30px #3c230a24}.service-icon,.tool-group-icon,.contact-icon{background:var(--accent-soft);color:var(--accent);border-radius:14px;place-items:center;display:grid}.service-icon{width:48px;height:48px;margin-bottom:2px;font-size:1.4rem}.service-card h3{margin:0;font-size:1.25rem;line-height:1.35}.service-card p{color:var(--muted);margin:0;line-height:1.65}.service-works{flex-wrap:wrap;gap:8px;margin:4px 0 0;padding:0;list-style:none;display:flex}.service-works button{color:var(--text);font:inherit;cursor:pointer;background:#f3ebdd;border:none;border-radius:999px;padding:4px 14px;font-size:.85rem;font-weight:600}.service-works button:hover,.service-works button:focus-visible{background:var(--accent-soft);color:var(--accent)}.service-card .service-tech{border-top:1px solid var(--line);color:var(--muted);margin-top:auto;padding-top:10px;font-size:.82rem}.toolbox{border:1px solid var(--line);background:var(--surface);border-radius:22px;gap:20px;padding:26px 26px 28px;display:grid}.toolbox-title{text-align:center;margin:0;font-size:1.1rem}.toolbox-groups{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.tool-group{align-content:start;gap:12px;display:grid}.tool-group-title{align-items:center;gap:10px;margin:0;font-size:.95rem;font-weight:760;display:flex}.tool-group-icon{border-radius:10px;width:32px;height:32px;font-size:1.05rem}.tool-group ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.tool-group li{color:var(--text);background:#f3ebdd;border-radius:999px;align-items:center;gap:7px;padding:4px 14px 4px 10px;font-size:.85rem;font-weight:600;display:inline-flex}.tool-group li img{width:18px;height:18px;display:block}.contact-section{padding:40px 0 100px}.contact-card{border:1px solid var(--line);background:var(--surface);text-align:center;border-radius:22px;justify-items:center;gap:16px;padding:44px 24px 40px;display:grid}.contact-icon{width:52px;height:52px;font-size:1.5rem}.contact-section h2{max-width:760px;font-size:clamp(1.6rem,3vw,2.2rem)}.contact-mail .icon{margin-right:8px}@media (width<=920px){.two-column{grid-template-columns:1fr}}@media (width<=640px){.project-grid,.services-grid,.toolbox-groups{grid-template-columns:1fr}.site-shell{width:min(100% - 24px,1180px)}.site-header-bar{position:static}.site-header{gap:10px;width:min(100% - 24px,1180px);display:grid}.site-header nav{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;display:grid}.site-header nav a{text-align:center;padding:8px 6px}.section,.contact-section{padding-block:54px}.content-stack{font-size:1rem}}.lightbox-backdrop{z-index:100;background:#08060dd9;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.lightbox-content{max-width:min(90vw,720px);max-height:90vh;display:flex;position:relative}.lightbox-image{object-fit:contain;max-width:100%;max-height:90vh;box-shadow:var(--shadow);border-radius:8px;display:block}.lightbox-close,.lightbox-nav{color:var(--text-h,#08060d);cursor:pointer;background:#ffffffeb;border:none;border-radius:999px;justify-content:center;align-items:center;display:flex;position:absolute}.lightbox-close{width:36px;height:36px;font-size:1rem;top:-16px;right:-16px}.lightbox-nav{width:44px;height:44px;font-size:1.6rem;top:50%;transform:translateY(-50%)}.lightbox-prev{left:-20px}.lightbox-next{right:-20px}.lightbox-counter{color:#fff;font-size:.85rem;font-weight:700;position:absolute;bottom:-32px;left:50%;transform:translate(-50%)}.project-video-button{border:1px solid var(--accent);background:var(--accent-soft);color:var(--accent);font:inherit;cursor:pointer;border-radius:999px;justify-self:start;padding:8px 16px;font-size:.92rem;font-weight:760}.project-video-button:hover{background:var(--accent);color:#fff}.lightbox-video-content{flex-direction:column;align-items:center;gap:14px;max-width:min(92vw,1000px)}.video-tabs{gap:8px;display:flex}.video-tab{color:#fff;font:inherit;cursor:pointer;background:0 0;border:1px solid #ffffff80;border-radius:999px;padding:6px 18px;font-size:.9rem;font-weight:700}.video-tab.is-active{color:var(--text);background:#fff;border-color:#fff}.lightbox-video{max-width:100%;max-height:calc(90vh - 64px);box-shadow:var(--shadow);background:#000;border-radius:8px;display:block}@media (width<=640px){.lightbox-content{max-width:100%}.lightbox-prev{left:4px}.lightbox-next{right:4px}}html{overflow-x:clip}:root{--sage-soft:#dfe7d8;--arch:url(/office/brand/arch.svg);--tri:url(/office/brand/triangle.svg)}.board-section,.services-section,.contact-section{isolation:isolate;position:relative}.board-section:before{content:"";z-index:-1;aspect-ratio:388.94/271.06;background:var(--sage-soft);width:min(62vw,780px);-webkit-mask:var(--arch) center / contain no-repeat;-webkit-mask:var(--arch) center / contain no-repeat;mask:var(--arch) center / contain no-repeat;pointer-events:none;background:#efe3cf;position:absolute;top:30px;right:calc(50% - 50vw - 180px);transform:rotate(-9deg)}.section-head{text-align:left;justify-items:start;gap:8px}.section-label{align-items:center;gap:9px;display:inline-flex}.section-label:before{content:"";background:var(--clay);width:12px;height:10px;-webkit-mask:var(--tri) center / contain no-repeat;-webkit-mask:var(--tri) center / contain no-repeat;mask:var(--tri) center / contain no-repeat}.works-head{margin-bottom:26px}.works-head h2 em,.services-section h2 em{font-style:normal}.work-pill{align-items:center;gap:7px;display:inline-flex}.work-pill:before{content:"";background:var(--clay);width:9px;height:8px;-webkit-mask:var(--tri) center / contain no-repeat;-webkit-mask:var(--tri) center / contain no-repeat;mask:var(--tri) center / contain no-repeat;flex:none}.project-grid{align-items:flex-start;gap:28px;display:flex}.project-col{flex-direction:column;flex:1 1 0;gap:28px;min-width:0;display:flex}@media (width<=860px){.project-grid{grid-template-columns:minmax(0,1fr);display:grid}.project-col{display:contents}}.services-grid{align-items:start;gap:24px}.service-card{text-align:center;border-radius:50% 50% 22px 22px/150px 150px 22px 22px;align-items:center;padding:58px 26px 24px}.service-icon,.tool-group-icon,.contact-icon{border-radius:999px 999px 10px 10px}.service-icon{width:52px;height:60px}.tool-group-icon{border-radius:999px 999px 7px 7px;width:32px;height:36px}.service-works{justify-content:center}.service-card .service-tech{width:100%}.toolbox-title{justify-content:center;align-items:center;gap:9px;display:flex}.toolbox-title:before{content:"";background:var(--clay);width:14px;height:12px;-webkit-mask:var(--tri) center / contain no-repeat;-webkit-mask:var(--tri) center / contain no-repeat;mask:var(--tri) center / contain no-repeat}.contact-card{isolation:isolate;text-align:left;justify-items:start;padding:52px clamp(28px,6vw,72px);position:relative;overflow:hidden}.contact-copy{justify-items:start;gap:18px;max-width:560px;display:grid}.contact-mark{z-index:-1;pointer-events:none;width:min(46%,440px);height:auto;position:absolute;bottom:-14%;right:clamp(-40px,2vw,40px)}.contact-mark .mark-arch{fill:#efe3cf}.contact-mark .mark-tri{fill:var(--clay)}@media (width<=860px){.service-card{border-radius:50% 50% 22px 22px/110px 110px 22px 22px}.service-card:nth-child(2){margin-top:0}.section-head{justify-items:start}.contact-card{padding-bottom:150px}.contact-mark{width:78%;bottom:-22%;right:-12%}}.service-card .service-tech{background:var(--accent);color:#fff;letter-spacing:.01em;border-top:none;border-radius:0 0 22px 22px;align-self:stretch;width:auto;margin:auto -26px -24px;padding:14px 20px 15px;font-size:.84rem;font-weight:700}.service-card{isolation:isolate;position:relative}.service-card:before,.service-card:after{content:"";z-index:-1;aspect-ratio:388.94/271.06;pointer-events:none;width:84%;position:absolute;top:16px;left:50%;transform:translate(-50%)}.service-card:before{-webkit-mask:var(--arch) center / contain no-repeat;-webkit-mask:var(--arch) center / contain no-repeat;mask:var(--arch) center / contain no-repeat;background:#dc775d0e}.service-card:after{background:#dc775d1c;-webkit-mask:url(/office/brand/triangle-full.svg) 50%/contain no-repeat;mask:url(/office/brand/triangle-full.svg) 50%/contain no-repeat}.site-footer{border-top:1px solid var(--line);color:var(--muted);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px 32px;padding:30px 0 44px;font-size:.85rem;display:grid}.footer-brand img{width:auto;height:30px;display:block}.footer-text{gap:4px;display:grid}.footer-text p{margin:0;line-height:1.6}.footer-copy{color:var(--text);font-weight:600}.footer-note{font-size:.78rem}.footer-nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px 18px;display:flex}.footer-nav a{color:var(--muted);align-items:center;gap:7px;text-decoration:none;display:inline-flex}.footer-nav a:hover,.footer-nav a:focus-visible{color:var(--accent)}.footer-top:before{content:"";background:var(--clay);width:10px;height:9px;-webkit-mask:var(--tri) center / contain no-repeat;-webkit-mask:var(--tri) center / contain no-repeat;mask:var(--tri) center / contain no-repeat}@media (width<=860px){.site-footer{grid-template-columns:1fr;justify-items:start;padding-bottom:36px}.footer-nav{justify-content:flex-start}}.services-grid{container-type:inline-size}.service-card{--w:calc((100cqw - 48px) / 3);border-radius:50% 50% 22px 22px / calc(var(--w) * .462) calc(var(--w) * .462) 22px 22px;overflow:hidden}.service-card:before,.service-card:after{top:calc(var(--w) * -.1091);left:calc(var(--w) * -.2939);width:calc(var(--w) * 1.5548);transform:none}@media (width<=860px){.service-card{--w:100cqw;border-radius:50% 50% 22px 22px / calc(var(--w) * .462) calc(var(--w) * .462) 22px 22px}}:root{--band-sand:#f1e4d2;--band-dark:#252528;--bump-h:108px;--bump-w:calc(var(--bump-h) * 12.593)}.services-section{padding-top:calc(var(--bump-h) + 56px);margin-top:24px}.services-section:after,.dark-zone:before{content:"";z-index:-2;width:100vw;-webkit-mask:url(/office/brand/bump.svg) center top / var(--bump-w) var(--bump-h) no-repeat, linear-gradient(#000, #000) left calc(var(--bump-h) - 1px) / 100% 100% no-repeat;-webkit-mask:url(/office/brand/bump.svg) center top / var(--bump-w) var(--bump-h) no-repeat, linear-gradient(#000, #000) left calc(var(--bump-h) - 1px) / 100% 100% no-repeat;mask:url(/office/brand/bump.svg) center top / var(--bump-w) var(--bump-h) no-repeat, linear-gradient(#000, #000) left calc(var(--bump-h) - 1px) / 100% 100% no-repeat;pointer-events:none;margin-left:-50vw;position:absolute;top:0;bottom:0;left:50%}.services-section:after{bottom:calc(var(--bump-h) * -1);background:var(--band-sand)}.services-section{padding-bottom:96px}.dark-zone{isolation:isolate;position:relative}.dark-zone:before{background:var(--band-dark)}.dark-zone .contact-section{padding-top:calc(var(--bump-h) + 56px)}.dark-zone .contact-card{background:#303034;border-color:#4b4039}.dark-zone .contact-section h2{color:#f6efe4}.dark-zone .contact-section h2 em{--hl:#5a3a36}.dark-zone .contact-icon{color:var(--clay);background:#3c3c41}.dark-zone .contact-mark .mark-arch{fill:#38383c}.dark-zone .contact-mail{color:#2c2622;background:#f6efe4}.dark-zone .contact-mail:hover,.dark-zone .contact-mail:focus-visible{background:var(--clay);color:#fff}.dark-zone .site-footer{color:#bfb2a3;border-top-color:#4b4039}.dark-zone .footer-copy{color:#f6efe4}.dark-zone .footer-nav a{color:#bfb2a3}.dark-zone .footer-nav a:hover,.dark-zone .footer-nav a:focus-visible{color:var(--clay)}.dark-zone .footer-brand img{filter:brightness(0)invert()}@media (width<=860px){:root{--bump-h:54px}}.dark-mark{z-index:1;top:calc(var(--bump-h) * .2);width:calc(var(--bump-h) * 1.05);pointer-events:none;height:auto;position:absolute;left:50%;transform:translate(-50%)}.dark-mark .mark-arch{fill:#f6efe4}.dark-mark .mark-tri{fill:var(--clay)}.dark-zone .contact-card{text-align:center;background:0 0;border:none;justify-items:center;padding:8px 0 0;overflow:visible}.dark-zone .contact-copy{justify-items:center;max-width:640px}.dark-zone .contact-section h2{font-size:clamp(2rem,3.6vw,3rem);line-height:1.3}.dark-zone .contact-copy{gap:26px}.services-section{--line:#e4d5be;--accent-soft:#f2e2cf}.service-works button,.tool-group li{background:#f7ecdd}.service-card:before{background:#aa784613}.service-card:after{background:#b65a421a}.service-works button:hover,.service-works button:focus-visible{background:var(--accent-soft)}.services-grid{align-items:stretch}.service-card:nth-child(2){margin-top:0}.service-card{padding-bottom:30px}.service-card p{text-wrap:balance}.service-card:before,.service-card:after{-webkit-mask-image:var(--arch), linear-gradient(to bottom, #000 0, #000 38%, transparent 68%);-webkit-mask-image:var(--arch), linear-gradient(to bottom, #000 0, #000 38%, transparent 68%);mask-image:var(--arch), linear-gradient(to bottom, #000 0, #000 38%, transparent 68%);-webkit-mask-composite:source-in;-webkit-mask-position:50%,50%;mask-position:50%,50%;-webkit-mask-size:contain,100% 100%;mask-size:contain,100% 100%;-webkit-mask-repeat:no-repeat,no-repeat;mask-repeat:no-repeat,no-repeat;-webkit-mask-composite:source-in;mask-composite:intersect}.service-card:after{-webkit-mask-image:url(/office/brand/triangle-full.svg),linear-gradient(#000 0 38%,#0000 68%);mask-image:url(/office/brand/triangle-full.svg),linear-gradient(#000 0 38%,#0000 68%)}.service-card h3,.tool-group-title{border-bottom:1px solid var(--line);padding-bottom:12px}.toolbox-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.toolbox-note{color:var(--muted);text-align:center;margin:-10px 0 4px;font-size:.85rem}.chat{text-align:left;gap:10px;width:min(420px,100%);display:grid}.chat-row{align-items:flex-end;gap:10px;display:flex}.chat-row.me{position:relative}.chat-avatar{object-fit:cover;background:#f1e4d2;border-radius:50%;flex:none;width:30px;height:30px}.chat-bubble{color:#f6efe4;background:#4a3f38;border-radius:18px 18px 18px 6px;margin:0;padding:10px 16px;font-size:.95rem;line-height:1.5}.chat-reply{color:#2c2622;background:#f6efe4;border-radius:18px 18px 6px}.chat-row.me{flex-direction:row-reverse}.chat-typing{opacity:0;background:#f6efe4;border-radius:18px 18px 6px;gap:5px;padding:14px 16px;display:inline-flex;position:absolute;bottom:0;right:40px}.chat-typing i{background:#8a7d70;border-radius:50%;width:6px;height:6px}@media (prefers-reduced-motion:no-preference){.chat .them{animation:9s ease-in-out infinite chat-them}.chat-reply,.chat-row.me .chat-avatar{animation:9s ease-in-out infinite chat-reply}.chat-typing{animation:9s ease-in-out infinite chat-typing}.chat-typing i{animation:.9s ease-in-out infinite chat-dot}.chat-typing i:nth-child(2){animation-delay:.15s}.chat-typing i:nth-child(3){animation-delay:.3s}}@keyframes chat-them{0%,3%{opacity:0;transform:translateY(8px)}8%,90%{opacity:1;transform:translateY(0)}96%,to{opacity:0;transform:translateY(0)}}@keyframes chat-typing{0%,22%{opacity:0}26%,40%{opacity:1}44%,to{opacity:0}}@keyframes chat-reply{0%,42%{opacity:0;transform:translateY(8px)}48%,90%{opacity:1;transform:translateY(0)}96%,to{opacity:0;transform:translateY(0)}}@keyframes chat-dot{0%,60%,to{opacity:.5;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.services-section:after{-webkit-mask:none;mask:none}.services-section{padding-top:96px}.board-section:before{content:none}.work-short{-webkit-line-clamp:3;text-wrap:balance;-webkit-box-orient:vertical;font-size:.9rem;line-height:1.6;display:-webkit-box;overflow:hidden}.work-card .work-thumb-play{aspect-ratio:1;color:#fff;opacity:0;pointer-events:none;background:#2c2622c7;border-radius:50%;place-items:center;width:clamp(48px,16%,72px);height:auto;padding-left:0;transition:opacity .2s,transform .2s;display:grid;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)scale(.85);box-shadow:0 6px 18px #0000004d}.work-card .work-thumb-play svg{width:46%;margin-left:6%}.work-card:hover .work-thumb-play,.work-card:focus-within .work-thumb-play{opacity:1;transform:translate(-50%,-50%)scale(1)}@media (hover:none){.work-card .work-thumb-play{opacity:1;width:34px;inset:auto 10px 10px auto;transform:none}}.dark-zone .contact-card{text-align:left;justify-items:stretch}.dark-zone .contact-copy{grid-template-columns:minmax(0,1fr) minmax(0,420px);place-items:center start;gap:24px clamp(32px,6vw,88px);max-width:1000px;margin-inline:auto;display:grid}.dark-zone .contact-copy h2{max-width:none}.contact-right{justify-items:start;gap:22px;width:100%;display:grid}.dark-zone .contact-section{padding-bottom:80px}@media (width<=860px){.dark-zone .contact-card{text-align:center}.dark-zone .contact-copy{grid-template-columns:1fr;justify-items:center}.contact-right{justify-items:center}}.work-title,.work-dialog-info h3{justify-content:center;align-items:center;gap:10px;display:flex}.work-dialog-info h3{justify-content:flex-start}.work-app-icon{border-radius:22.5%;flex:none;box-shadow:0 0 0 1px #2c26221a}.board-section{padding-top:72px;padding-bottom:80px}.board-section:after{content:"";z-index:-2;background:var(--band-dark);width:100vw;margin-left:-50vw;position:absolute;top:0;bottom:-24px;left:50%}.board-section .section-head h2{color:#f6efe4}.board-section .section-label{color:var(--clay)}.board-section h2 em{--hl:#5a3a36}.works-tabs{border-bottom-color:#f6efe429}.works-tabs a{color:#f6efe49e}.works-tabs a:hover,.works-tabs a.is-active{color:#f6efe4}.board-section:after{background-color:var(--band-dark);background-image:url(/office/brand/wall-arch.svg),radial-gradient(closest-side,#ffffff12,#fff0);background-position:90% 100%,84% 100%;background-repeat:no-repeat;background-size:min(60vw,640px),1100px 1100px;background-attachment:fixed,fixed}@media (width<=860px),(prefers-reduced-motion:reduce){.board-section:after{background-position:125% 100%,100% 90%;background-size:90vw,700px 700px;background-attachment:scroll}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.work-thumb img{animation:linear both thumb-drift;animation-timeline:--work-card;animation-range:cover;scale:1.1}.work-card{view-timeline:--work-card block;animation:linear both card-rise;animation-timeline:--work-card;animation-range:entry entry 55%}.project-grid>:nth-child(2n){--rise:96px}@keyframes thumb-drift{0%{translate:0 -4.5%}to{translate:0 4.5%}}@keyframes card-rise{0%{translate:0 var(--rise,56px);opacity:.2}to{opacity:1;translate:0}}}}.work-qr{text-align:left;flex-direction:column;justify-self:stretch;align-items:flex-start;gap:8px;padding:6px 22px 0;display:flex}.work-qr img{border:1px solid var(--line);background:#fff;border-radius:12px;flex:none;padding:6px}.section-head,.works-head{text-align:center;justify-items:center;gap:12px}.head-mark{width:76px;height:auto;margin-bottom:2px}.head-mark .mark-arch{fill:#2c2622}.head-mark .mark-tri{fill:var(--accent)}.board-section .head-mark .mark-arch{fill:#f6efe4}.board-section .head-mark .mark-tri{fill:var(--clay)}.section-label{justify-content:center;align-items:center;gap:16px;display:flex}.section-label:before,.section-label:after{content:"";opacity:.55;background:currentColor;width:48px;height:1px;-webkit-mask:none;mask:none}.section-head h2 em{background:0 0;margin:0;padding:0}.section-head h2:after{content:"";background:var(--accent);border-radius:3px;width:64px;height:6px;margin:16px auto 0;display:block}.board-section .section-head h2:after{background:var(--clay)}.works-tabs{background:#f6efe40d;border:1px solid #f6efe42e;border-radius:999px;justify-content:center;gap:4px;width:fit-content;max-width:100%;margin:8px auto 40px;padding:5px}.works-tabs a{border-radius:999px;padding:9px 24px;font-size:1rem;transition:background .2s,color .2s}.works-tabs a:hover:not(.is-active){color:#f6efe4}.works-tabs a.is-active{color:#2c2622;background:#f6efe4}.works-tabs a.is-active:after{content:none}.works-tabs a{text-decoration:none;display:inline-block}.works-group{scroll-margin-top:90px}.works-group+.works-group{margin-top:88px}.works-group-title{color:#f6efe4;border-bottom:1px solid #f6efe429;flex-wrap:wrap;align-items:baseline;gap:6px 16px;margin-bottom:24px;padding-bottom:14px;font-size:1.5rem;font-weight:800;display:flex}.works-group-title small{color:#f6efe499;font-size:.95rem;font-weight:500}.contact-left{justify-items:start;gap:28px;display:grid}@media (width<=860px){.contact-left{justify-items:center}}.service-hero{border:1px solid var(--line);background:var(--surface);border-radius:30px;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:40px;margin-bottom:28px;padding:44px 48px;display:grid;box-shadow:0 18px 44px #5a3c1e1a}.service-hero-badge{background:var(--accent);color:#fff;letter-spacing:.06em;border-radius:999px;padding:5px 14px;font-size:.85rem;font-weight:800;display:inline-block}.service-hero h3{margin:14px 0 10px;font-size:clamp(1.7rem,3vw,2.4rem);font-weight:800;line-height:1.2}.service-hero p{color:var(--muted);margin:0;font-size:1.05rem}.service-steps{counter-reset:step;flex-wrap:wrap;gap:8px;margin:24px 0 0;padding:0;list-style:none;display:flex}.service-steps li{color:var(--text);counter-increment:step;background:#f7ecdd;border-radius:999px;align-items:center;gap:8px;padding:7px 14px 7px 8px;font-size:.92rem;font-weight:650;display:inline-flex}.service-steps li:before{content:counter(step);background:var(--accent);color:#fff;border-radius:50%;place-items:center;width:22px;height:22px;font-size:.78rem;font-weight:800;display:grid}.service-hero-shots{height:300px;position:relative}.service-shot{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:16px;width:62%;padding:0;transition:transform .25s,box-shadow .25s;position:absolute;overflow:hidden;box-shadow:0 14px 34px #3c230a33}.service-shot img{aspect-ratio:16/10;object-fit:cover;width:100%;display:block}.service-shot span{color:#fff;background:#2c2622d1;border-radius:999px;padding:3px 11px;font-size:.8rem;font-weight:700;position:absolute;bottom:10px;left:10px}.service-shot:first-child{z-index:1;top:96px;left:0}.service-shot:nth-child(2){z-index:2;top:48px;left:19%}.service-shot:nth-child(3){z-index:3;top:0;left:38%}.service-shot:hover,.service-shot:focus-visible{z-index:4;transform:translateY(-8px);box-shadow:0 20px 40px #3c230a47}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{--w:calc((100cqw - 24px) / 2)}@media (width<=860px){.service-hero{grid-template-columns:1fr;gap:28px;padding:32px 24px}.service-hero-shots{height:230px}.service-shot{width:66%}.service-shot:first-child{top:70px}.service-shot:nth-child(2){top:35px;left:17%}.service-shot:nth-child(3){left:34%}.service-card{--w:100cqw}}@media (width<=640px){.services-grid{grid-template-columns:1fr}}.works-tabs.is-faded{opacity:0;pointer-events:none}.works-tabs{transition:opacity .2s}.works-dock-wrap{z-index:60;opacity:0;pointer-events:none;width:max-content;max-width:calc(100vw - 24px);transition:transform .6s cubic-bezier(.34,1.56,.64,1),opacity .25s;position:fixed;top:11px;left:50%;transform:translate(-50%,56px)scale(1.18)}.works-dock-wrap.is-docked{opacity:1;pointer-events:auto;transform:translate(-50%)scale(.86)}.works-dock-wrap .works-tabs{background:#252528f7;flex-wrap:nowrap;margin:0;box-shadow:0 8px 22px #00000059,0 0 0 1px #f6efe438}@media (prefers-reduced-motion:reduce){.works-dock-wrap{transition:opacity .2s;transform:translate(-50%)scale(.86)}}.nb{display:inline-block}.contact-sub{color:#f6efe4b8;letter-spacing:.04em;margin-top:12px;font-size:.45em;font-weight:500;display:block}.services-two{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;gap:56px;margin-top:8px;display:grid}.svc-item{border-bottom:1px solid #cdb79a;grid-template-columns:40px minmax(0,1fr);gap:22px;margin-bottom:30px;padding-bottom:30px;display:grid}.svc-item:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.svc-icon-frame{width:40px;color:var(--accent);place-items:start center;padding-top:4px;display:grid}.svc-icon-frame .icon{stroke-width:1.5px;width:36px;height:36px}.svc-body h3{align-items:baseline;gap:12px;font-size:clamp(1.4rem,2.4vw,1.9rem);line-height:1.25;display:flex}.svc-body h3 i{color:var(--accent);letter-spacing:.1em;font-size:.9rem;font-style:normal;font-weight:800}.svc-body p{color:var(--muted);margin:8px 0 0;font-size:1.02rem}.svc-works{flex-wrap:wrap;gap:8px;margin:14px 0 0;padding:0;list-style:none;display:flex}.svc-works button{color:var(--text);font:inherit;cursor:pointer;background:0 0;border:1.5px solid #cdb79a;border-radius:999px;padding:4px 14px;font-size:.9rem;font-weight:650;transition:background .2s,border-color .2s}.svc-works button:hover,.svc-works button:focus-visible{border-color:var(--accent);background:#fffbf4}.side-tools{background:var(--band-dark);color:#f6efe4;border-radius:26px;padding:30px 30px 34px;position:sticky;top:110px}.side-tools h3{font-size:1.35rem}.side-note{color:#f6efe499;margin:6px 0 4px;font-size:.88rem}.side-group-title{color:var(--clay);letter-spacing:.14em;margin:18px 0 10px;font-size:.8rem;font-weight:800}.side-group ul{flex-wrap:wrap;gap:10px 16px;margin:0;padding:0;list-style:none;display:flex}.side-group li{align-items:center;gap:7px;font-size:.95rem;font-weight:650;display:inline-flex}@media (width<=860px){.services-two{grid-template-columns:1fr;gap:40px}.side-tools{position:static}.svc-item{grid-template-columns:32px minmax(0,1fr);gap:14px}.svc-icon-frame{width:32px}.svc-icon-frame .icon{width:30px;height:30px}}.svc-body h3,.svc-body p{text-wrap:balance}.svc-body h3{font-size:clamp(1.3rem,2vw,1.6rem)}@media (width<=860px){.services-two{align-items:start}}.side-tools{position:relative}.side-tools:before{content:"";background:var(--band-dark);border-radius:5px;width:22px;height:22px;position:absolute;top:50px;left:-10px;transform:rotate(45deg)}@media (width<=860px){.side-tools:before{top:-10px;left:44px}}.work-info-plain,.work-info-plain .work-info{display:contents}.work-info{justify-items:center;gap:10px;display:grid}.work-info-row{grid-template-columns:auto minmax(0,1fr);justify-self:stretch;align-items:start;gap:16px;padding:0 18px;display:grid}@media (width<=520px){.work-info-row{grid-template-columns:1fr}.work-info-row .work-qr{order:2;justify-self:start}}.services-two{align-items:start}@media (width<=860px){.side-tools:before{top:-10px}}.side-tools{border-top-left-radius:6px;top:auto}.side-tools:before{top:20px}@media (width<=860px){.side-tools{border-top-left-radius:26px}.side-tools:before{top:-10px}}.dark-mark{top:calc(var(--bump-h) * .1);width:calc(var(--bump-h) * 1.03);height:auto}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.section-head{animation:linear both focus-pass;animation-timeline:view();animation-range:cover}@keyframes focus-pass{0%{filter:blur(12px);opacity:0;scale:.92}32%{filter:blur();opacity:1;scale:1}72%{filter:blur();opacity:1;scale:1}to{filter:blur(8px);opacity:.25;scale:1.04}}.svc-item,.side-tools{animation:linear both card-rise;animation-timeline:view();animation-range:entry entry 60%}@keyframes card-rise{0%{translate:0 var(--rise,56px);opacity:.15;filter:blur(6px);scale:.95}to{opacity:1;filter:none;translate:0;scale:1}}}}@media (prefers-reduced-motion:no-preference){.rv-ready .rv{opacity:0;filter:blur(4px);transition:opacity 1.1s cubic-bezier(.22, .61, .36, 1) var(--rv-delay,0s), translate 1.1s cubic-bezier(.22, .61, .36, 1) var(--rv-delay,0s), filter 1.1s cubic-bezier(.22, .61, .36, 1) var(--rv-delay,0s);translate:0 10px}.rv-ready .rv.rv-in{opacity:1;filter:blur();translate:0}}.site-header nav a{transition:color .2s;position:relative}.site-header nav a:after{content:"";background:var(--accent);transform-origin:0;border-radius:2px;height:2px;transition:transform .32s cubic-bezier(.22,.61,.36,1);position:absolute;bottom:6px;left:12px;right:12px;transform:scaleX(0)}.site-header nav a:hover,.site-header nav a:focus-visible{color:var(--text);background:0 0}.site-header nav a:hover:after,.site-header nav a:focus-visible:after{transform:scaleX(1)}@media (width<=640px){.site-header nav a:after{left:6px;right:6px}}.work-info-row{align-items:center}.work-info-row .work-qr{align-self:center;padding:0}.work-card-open:has(.work-info-row){grid-template-rows:auto 1fr}.work-info-row{place-self:center;gap:22px;padding:0 20px 6px}.work-info-row .work-info{text-align:left;justify-items:start}.work-info-row .work-short,.work-info-row .work-title{padding:0}.work-info-row{grid-template-columns:minmax(0,1fr) minmax(0,300px) minmax(0,1fr);justify-self:stretch;gap:14px;padding:0 14px 6px}.work-info-row .work-qr{grid-column:1;justify-self:end}.work-info-row .work-info{text-align:center;grid-column:2;justify-items:center}@media (width<=520px){.work-info-row{grid-template-columns:1fr}.work-info-row .work-qr,.work-info-row .work-info{grid-column:1;justify-self:center}}.site-header nav a{transition:color .25s,translate .25s cubic-bezier(.22,.61,.36,1)}.site-header nav a:after{transform-origin:100%;transition:transform .34s cubic-bezier(.22,.61,.36,1),height .15s}.site-header nav a:hover,.site-header nav a:focus-visible,.site-header nav a.is-current{color:var(--text)}.site-header nav a:hover,.site-header nav a:focus-visible{translate:0 -1px}.site-header nav a:hover:after,.site-header nav a:focus-visible:after,.site-header nav a.is-current:after{transform-origin:0;transform:scaleX(1)}.site-header nav a:active{translate:0}.site-header nav a:active:after{height:3px}@media (hover:none){.site-header nav a:hover{translate:0}}.fab{z-index:55;opacity:0;pointer-events:none;justify-items:end;gap:12px;transition:opacity .3s,translate .35s cubic-bezier(.34,1.4,.64,1);display:grid;position:fixed;bottom:24px;right:24px;translate:0 16px}.fab.is-show{opacity:1;pointer-events:auto;translate:0}.fab-main,.fab-btn{background:var(--band-dark);color:#f6efe4;cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid;box-shadow:0 10px 26px #1e140a52}.fab-main{width:58px;height:58px;transition:background .25s,transform .25s cubic-bezier(.34,1.56,.64,1)}.fab-main .icon{stroke-width:1.7px;width:26px;height:26px}.fab-main:hover,.fab-main:focus-visible{background:var(--accent);transform:scale(1.06)}.fab.is-open .fab-main{background:var(--accent)}.fab-menu{justify-items:end;gap:12px;display:grid}.fab-item{color:inherit;font:inherit;cursor:pointer;opacity:0;pointer-events:none;background:0 0;border:0;align-items:center;gap:12px;padding:0;text-decoration:none;transition:opacity .2s,translate .3s cubic-bezier(.34,1.4,.64,1),scale .3s cubic-bezier(.34,1.4,.64,1);display:flex;translate:0 14px;scale:.9}.fab.is-open .fab-item{opacity:1;pointer-events:auto;translate:0;scale:1}.fab.is-open .fab-item:nth-child(2){transition-delay:40ms}.fab-btn{width:46px;height:46px;transition:background .2s}.fab-btn .icon{stroke-width:1.7px;width:22px;height:22px}.fab-label{color:var(--text);white-space:nowrap;background:#fffbf4;border-radius:999px;padding:6px 14px;font-size:.92rem;font-weight:700;box-shadow:0 6px 18px #1e140a38}.fab-item:hover .fab-btn,.fab-item:focus-visible .fab-btn{background:var(--accent)}@media (width<=640px){.fab{bottom:16px;right:16px}}@media (prefers-reduced-motion:reduce){.fab,.fab-item,.fab-main{transition:opacity .15s}}.site-header nav a{isolation:isolate}.site-header nav a:after{z-index:-1;background:#efbdac;border-radius:999px;height:.55em;transition:transform .4s cubic-bezier(.22,.61,.36,1);bottom:7px;left:8px;right:8px}.site-header nav a:active:after{height:.55em;transform:scaleX(1)scaleY(1.15)}@media (width<=640px){.site-header nav a:after{left:4px;right:4px}}.fab-main{background:var(--accent);box-shadow:0 0 0 3px #f6efe4,0 10px 26px #1e140a66}.fab-main:hover,.fab-main:focus-visible,.fab.is-open .fab-main{background:var(--text)}.fab-btn{color:var(--text);background:#fffbf4;box-shadow:0 0 0 2px #2c26221f,0 8px 22px #1e140a59}.fab-item:hover .fab-btn,.fab-item:focus-visible .fab-btn{background:var(--accent);color:#fff}.fab-main,.fab-btn{color:var(--text);background:#fffbf4;border:1px solid #2c262229;box-shadow:0 10px 26px #1e140a57}.fab-main:hover,.fab-main:focus-visible,.fab.is-open .fab-main,.fab-item:hover .fab-btn,.fab-item:focus-visible .fab-btn{color:var(--accent);background:#fffbf4}.fab-main:hover,.fab-main:focus-visible{transform:scale(1.06)}@media (width<=640px){.site-header-bar{position:sticky;top:0}.site-header{justify-content:space-between;align-items:center;gap:8px;min-height:52px;padding:0;display:flex}.brand img{height:26px}.site-header nav{gap:0;width:auto;display:flex}.site-header nav a{white-space:nowrap;min-height:0;padding:6px 7px;font-size:.8rem}.site-header nav a:after{left:4px;right:4px}.works-dock-wrap{max-width:calc(100vw - 24px);top:60px;left:50%;right:auto;transform:translate(-50%,-10px)scale(1.04)}.works-dock-wrap.is-docked{transform:translate(-50%)scale(1)}.works-dock-wrap .works-tabs{gap:2px;padding:4px}.works-dock-wrap .works-tabs a{white-space:nowrap;padding:7px 14px;font-size:.86rem}.works-group{scroll-margin-top:116px}#services,#contact{scroll-margin-top:64px}.fab{right:14px;bottom:calc(14px + env(safe-area-inset-bottom,0px))}}@media (width<=860px){@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.project-grid .work-card{animation-name:work-fade}@keyframes work-fade{0%{opacity:.15;filter:blur(6px)}to{opacity:1;filter:none}}}}}.office-hero{--oh-clay:#dc775d;--oh-clay-deep:#b65a42;--oh-ink:#2c2622;--oh-hand:"LXGW WenKai TC", "Kaiti TC", "PingFang TC", serif;border-bottom:1px solid var(--line);background:url(/office/floor-tile.png) 0 0/560px;grid-template-columns:1fr;gap:28px;padding:36px max(16px,50% - 590px) 40px;display:grid;position:relative}.oh-intro{z-index:2;position:relative}.oh-copy{background:#fffbf4f0;border-radius:20px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 40px;padding:24px 32px;display:grid;box-shadow:0 12px 26px #462d0f33}.oh-copy-overlay.room{padding-left:calc(32px + var(--room,10cqw))}.oh-copy-overlay{z-index:30;top:calc(var(--trim,0) / 16 * -1cqw);transition:padding-left .9s,top .9s;position:absolute;left:0;right:0}.oh-copy-overlay.drop{animation:1.5s both oh-card-drop}@keyframes oh-card-drop{0%{animation-timing-function:cubic-bezier(.5,0,.9,.6);transform:translateY(0)}38%{transform:translateY(var(--drop));animation-timing-function:cubic-bezier(.1,.5,.4,1)}55%{transform:translateY(calc(var(--drop) - 2.3cqw));animation-timing-function:cubic-bezier(.5,0,.9,.6)}70%{transform:translateY(var(--drop));animation-timing-function:cubic-bezier(.1,.5,.4,1)}81%{transform:translateY(calc(var(--drop) - .9cqw));animation-timing-function:cubic-bezier(.5,0,.9,.6)}91%{transform:translateY(var(--drop));animation-timing-function:cubic-bezier(.1,.5,.4,1)}96%{transform:translateY(calc(var(--drop) - .3cqw));animation-timing-function:ease-in}to{transform:translateY(var(--drop))}}@media (width>=861px){.oh-intro{display:none}}.oh-stage{grid-template-columns:1fr;gap:20px;display:grid;position:relative}.oh-copy h1,.oh-lead{grid-column:1}.oh-actions{grid-area:1/2/span 2}.oh-copy h1{max-width:none;font-size:clamp(1.7rem,2.6vw,2.3rem);font-weight:760;line-height:1.3}.oh-pre{color:#4a3d30;letter-spacing:.02em;margin-bottom:6px;font-size:1.05rem;font-weight:700;line-height:1.5;display:block}.oh-copy h1 em{--hl:#efbdac;--hl-h:.36em;background:radial-gradient(circle closest-side, var(--hl) 98%, transparent 100%) left bottom .1em / var(--hl-h) var(--hl-h) no-repeat, radial-gradient(circle closest-side, var(--hl) 98%, transparent 100%) right bottom .1em / var(--hl-h) var(--hl-h) no-repeat, linear-gradient(var(--hl), var(--hl)) center bottom .1em / calc(100% - var(--hl-h)) var(--hl-h) no-repeat;-webkit-box-decoration-break:clone;box-decoration-break:clone;margin:0 -.1em;padding:0 .1em;font-style:normal}.oh-lead{color:#4a3d30;max-width:42em;font-size:.98rem;line-height:1.6}.oh-steps{grid-area:2/1;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.oh-steps li{letter-spacing:.04em;color:#9a8a76;background:#fffbf4f0;border:2px solid #0000;border-radius:20px;justify-content:center;align-items:center;gap:10px;padding:16px 12px;font-size:1.05rem;font-weight:700;transition:all .35s;display:flex;box-shadow:0 8px 18px #462d0f24}.oh-steps li b{color:#6b5a44;background:#e3d2b6;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-size:.8rem;display:inline-grid}.oh-steps li{position:relative}.oh-steps li.live{cursor:default}.oh-steps li.live:focus-visible{outline:3px solid var(--oh-clay);outline-offset:2px}.oh-tip{z-index:20;width:max-content;max-width:min(300px,70vw);color:var(--oh-ink);letter-spacing:0;text-align:left;pointer-events:none;background:#fffbf4;border-radius:14px;padding:10px 14px;font-size:.92rem;font-weight:500;line-height:1.45;animation:.18s ease-out oh-tip-in;position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%);box-shadow:0 10px 22px #462d0f40}.oh-tip:after{content:"";background:#fffbf4;width:12px;height:12px;margin-top:-6px;position:absolute;top:100%;left:50%;transform:translate(-50%)rotate(45deg)}.oh-steps li.first .oh-tip{left:0;transform:none}.oh-steps li.first .oh-tip:after{left:40px}.oh-steps li.last .oh-tip{left:auto;right:0;transform:none}.oh-steps li.last .oh-tip:after{left:auto;right:40px;transform:rotate(45deg)}@keyframes oh-tip-in{0%{opacity:0;margin-bottom:-6px}to{opacity:1;margin-bottom:0}}.oh-st.nudge{animation:.5s ease-out oh-nudge}@keyframes oh-nudge{0%,to{translate:0}40%{translate:0 -2.4cqw}}.oh-steps li.on{border-color:var(--oh-clay);color:var(--oh-ink);transform:translateY(-3px);box-shadow:0 12px 24px #462d0f38}.oh-steps li.on b{background:var(--oh-clay-deep);color:#fff}.oh-steps li.done b{background:var(--oh-ink);color:#f6efe4}.oh-actions{flex-wrap:wrap;gap:10px;margin-top:6px;display:flex}@property --fade{syntax:"<percentage>";inherits:false;initial-value:0%}.oh-map{width:100%;height:0;padding-bottom:calc((530 + var(--oyn,0) - var(--trim,0)) / 1600 * 100%);grid-area:1/1;transition:padding-bottom .9s;position:relative;container-type:inline-size}.oh-view{inset:0;top:calc(var(--trim,0) / 16 * -1cqw);-webkit-mask-image:linear-gradient(to right, transparent, #000 var(--fade), #000 calc(100% - var(--fade)), transparent);-webkit-mask-image:linear-gradient(to right, transparent, #000 var(--fade), #000 calc(100% - var(--fade)), transparent);mask-image:linear-gradient(to right, transparent, #000 var(--fade), #000 calc(100% - var(--fade)), transparent);transition:--fade .9s,top .9s;position:absolute;overflow:hidden}.oh-map.zoomed .oh-view{--fade:5%}.oh-cam{top:calc(var(--oyn,0) / 16 * 1cqw);transform-origin:0 0;height:33.125cqw;transition:transform 1s cubic-bezier(.45,0,.25,1);position:absolute;left:0;right:0}.oh-cam>*,.oh-dock>*,.oh-dock,.oh-st>*{position:absolute}.oh-dock{top:calc(var(--oyn,0) / 16 * 1cqw);pointer-events:none;height:33.125cqw;left:0;right:0}.oh-st{pointer-events:none;transition:transform 1.5s cubic-bezier(.45,0,.25,1);inset:0}.oh-p img,.oh-person img{width:100%;height:auto;display:block}.oh-p{opacity:0;transform:translate(var(--fx,0), var(--fy,-28%)) scale(var(--fs,1.25)) rotate(var(--fr,0deg));transition:transform .75s cubic-bezier(.3,1.5,.5,1),opacity .35s ease-out;transition-delay:var(--d,0s)}.on .oh-p{opacity:1;transform:none}.oh-desk{z-index:2;--fy:-60%;--fs:1.4;--fr:-4deg}.oh-item{z-index:3}.oh-shadow{z-index:0;opacity:0;background:radial-gradient(closest-side,#5a321447,#0000);border-radius:50%;transition:opacity .5s .55s}.on .oh-shadow{opacity:1}.oh-person{z-index:4;opacity:0;filter:drop-shadow(0 .8cqw .7cqw #5a321438);transition:transform .9s cubic-bezier(.25,1.2,.4,1),opacity .4s ease-out,left 2.2s cubic-bezier(.45,0,.25,1),top 2.2s cubic-bezier(.45,0,.25,1)}.oh-person.L{transform:translate(-24cqw)}.oh-person.R{transform:translate(24cqw)}.sat .oh-person{opacity:1;transform:none}.oh-ov{z-index:5;aspect-ratio:540/360;pointer-events:none;transition:left 2.2s cubic-bezier(.45,0,.25,1),top 2.2s cubic-bezier(.45,0,.25,1)}.oh-ov i{opacity:0;background-size:100% 100%;position:absolute;inset:0}.typing .oh-ov i.b{animation:.8s step-end infinite oh-kb;animation-delay:var(--d,0s)}.typing .oh-ov i.c{animation:.8s step-end infinite oh-kc;animation-delay:var(--d,0s)}@keyframes oh-kb{0%{opacity:1}25%{opacity:0}to{opacity:0}}@keyframes oh-kc{0%{opacity:0}50%{opacity:1}75%{opacity:0}to{opacity:0}}.cheer .oh-person{animation:.5s ease-in-out 9 oh-cheer;animation-delay:calc(var(--cd,0s) + var(--r,0s))}.cheer .oh-person.R{--r:.12s}.oh-st:nth-child(2){--cd:80ms}.oh-st:nth-child(3){--cd:.16s}.oh-st:nth-child(4){--cd:40ms}.oh-st:nth-child(5){--cd:.12s}@keyframes oh-cheer{0%,to{translate:0}50%{translate:0 -2.4cqw}}.oh-final{padding:.5em .9em;font-size:max(1.15cqw,11px)}.oh-bubble{z-index:9;border:max(.15em, 1.5px) solid var(--oh-ink);opacity:0;--bx:-50%;--tail:50%;transform:translate(var(--bx), -100%) scale(.6);transform-origin:var(--tail) 100%;white-space:nowrap;background:#fffbf4;border-radius:.9em;padding:.5em .8em;font-size:max(.85cqw,8px);font-weight:700;line-height:1;transition:opacity .25s,transform .3s cubic-bezier(.3,1.6,.5,1)}.oh-bubble:after{content:"";left:var(--tail);border:solid var(--oh-ink);background:#fffbf4;border-width:0 max(.15em,1.5px) max(.15em,1.5px) 0;width:.7em;height:.7em;position:absolute;bottom:-.45em;transform:translate(-50%)rotate(45deg)}.oh-bubble.show{opacity:1;transform:translate(var(--bx), -100%) scale(1)}.oh-walker{z-index:6;aspect-ratio:64/96;filter:drop-shadow(0 .8cqw .6cqw #5a321440);background:url(/office/walk-ivy.png) 0 0/300% 600% no-repeat;width:5.45%;top:46%;left:-4%;transform:translate(-50%,-92%)}.oh-walker.behind{z-index:1}.oh-walker.hop{animation:.5s ease-in-out 9 oh-hop}@keyframes oh-hop{0%,to{transform:translate(-50%,-92%)}50%{transform:translate(-50%,calc(-92% - 3cqw))}}@media (width<=860px){.office-hero{gap:20px;padding-top:24px}.oh-copy{grid-template-columns:1fr;padding:18px 20px}.oh-actions{grid-area:auto/1}.oh-steps li{text-align:center;flex-direction:column;gap:4px;padding:8px 4px;font-size:.78rem}.oh-lead{max-width:none}}@media (prefers-reduced-motion:reduce){.oh-st.nudge,.oh-tip,.oh-cam,.oh-map,.oh-p,.oh-person,.oh-bubble,.oh-ov{transition:none}.oh-ov i,.oh-st.nudge,.oh-tip{animation:none}.oh-copy-overlay.drop{transform:translateY(var(--drop));animation:none}}.oh-stage{transition:opacity .7s}.oh-stage.fading{opacity:0}.oh-ui{top:calc((var(--oyn,0) - var(--trim,0)) / 16 * 1cqw);z-index:40;pointer-events:none;height:33.125cqw;transition:top .9s;position:absolute;left:0;right:0}.oh-ui>*{position:absolute}.oh-replay{z-index:9;border:max(.15em, 1.5px) solid var(--oh-ink);color:var(--oh-ink);font:inherit;text-align:center;white-space:nowrap;cursor:pointer;pointer-events:auto;transform-origin:50% 100%;background:#fffbf4;border-radius:.9em;padding:.5em .9em;font-size:max(1.05cqw,11px);font-weight:700;line-height:1.3;animation:.35s cubic-bezier(.3,1.6,.5,1) both oh-replay-in,2.4s ease-in-out 1.2s infinite oh-replay-nudge;position:absolute;transform:translate(-50%,-100%)}.oh-replay:before{content:"";width:7cqw;height:9cqw;position:absolute;top:100%;left:50%;transform:translate(-50%)}.oh-replay:after{content:"";border:solid var(--oh-ink);background:#fffbf4;border-width:0 max(.15em,1.5px) max(.15em,1.5px) 0;width:.7em;height:.7em;position:absolute;bottom:-.45em;left:50%;transform:translate(-50%)rotate(45deg)}.oh-replay:hover,.oh-replay:focus-visible{background:#fff0dc}.oh-replay:focus-visible{outline:3px solid var(--oh-ink);outline-offset:3px}@keyframes oh-replay-in{0%{opacity:0;transform:translate(-50%,-100%)scale(.6)}to{opacity:1;transform:translate(-50%,-100%)scale(1)}}@keyframes oh-replay-nudge{0%,to{transform:translate(-50%,-100%)scale(1)}50%{transform:translate(-50%,-100%)scale(1.06)}}@media (prefers-reduced-motion:reduce){.oh-replay{animation:none}}.oh-steps{--dot-y:19px;gap:0;position:relative}.oh-steps:before{content:"";top:var(--dot-y);background:#2c262247;border-radius:2px;height:3px;position:absolute;left:10%;right:10%;translate:0 -50%}.oh-steps li{box-shadow:none;color:#2c26229e;letter-spacing:.06em;text-align:center;background:0 0;border:0;border-radius:0;padding:46px 6px 0;font-size:1.08rem;font-weight:800;display:block;transform:none}.oh-steps li b{top:var(--dot-y);z-index:1;background:#f6efe4;border:3px solid #2c262280;border-radius:50%;width:24px;height:24px;font-size:0;transition:width .35s,height .35s,background .35s,border-color .35s,box-shadow .35s;display:block;position:absolute;left:50%;translate:-50% -50%}.oh-steps li.done:not(:last-child):before{content:"";top:var(--dot-y);background:var(--oh-ink);border-radius:2px;width:100%;height:3px;position:absolute;left:50%;translate:0 -50%}.oh-steps li.done{color:var(--oh-ink)}.oh-steps li.done b{border-color:var(--oh-ink);background:var(--oh-ink)}.oh-steps li.on{color:var(--oh-ink);box-shadow:none;border-color:#0000;transform:none}.oh-steps li.on b{background:var(--oh-clay-deep);width:34px;height:34px;box-shadow:0 0 0 3px var(--oh-clay-deep), 0 6px 14px #462d0f4d;border-color:#f6efe4}.oh-title{border-radius:999px;padding:2px 14px;transition:background .35s,color .35s;display:inline-block}.oh-steps li.on .oh-title{background:var(--oh-clay-deep);color:#fff}@media (width<=760px){.oh-steps li{letter-spacing:.02em;padding:46px 2px 0;font-size:.78rem}.oh-title{padding:2px 6px}}@media (width<=860px){.oh-stage{z-index:50;position:relative}.oh-map{--up:56px}.oh-view{top:calc(var(--up) * -1)}.oh-cam,.oh-dock{top:calc(var(--oyn,0) / 16 * 1cqw + var(--up))}.oh-walker{transform-origin:0 0;transition:scale .6s}.oh-map:not(.zoomed) .oh-walker{scale:1.7}.oh-walker.hop{animation-name:oh-hop-phone}@keyframes oh-hop-phone{0%,to{transform:translate(-50%,-92%)}50%{transform:translate(-50%,calc(-92% - 1.8cqw))}}}
