*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:#fff;color:#1d1c19;font-family:Arial,"PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid #1d1c19;outline-offset:5px}button{border:0;background:none}button:disabled{opacity:.4}img{max-width:100%}.skip{position:fixed;top:-60px;left:20px;z-index:99;background:white;padding:10px}.skip:focus{top:10px}.site-header{height:85px;position:absolute;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 48px;z-index:4}.brand{display:inline-flex;width:100px}.brand img{display:block;width:100%}.contact-link{padding:12px 20px;background:#1d1c19;color:#fff;border-radius:30px;font-size:12px}.menu-trigger{position:absolute;left:50%;transform:translateX(-50%);width:44px;height:44px;display:flex;flex-direction:column;justify-content:center;gap:5px;align-items:center}.menu-trigger span{width:20px;height:1px;background:currentColor}.hero{padding-top:105px;overflow:hidden}.hero-intro{text-align:center;margin-bottom:24px}.hero h1{font-size:clamp(58px,5.5vw,76px);font-weight:800;letter-spacing:-.07em;line-height:1.03;margin:0}.hero-intro>p{font-size:14px;margin:18px 0 0;letter-spacing:-.02em}.case-stage{--slide:320px;--gap:14px;width:100%;height:450px;position:relative;overflow:hidden;touch-action:pan-y;cursor:grab;contain:layout paint}.case-stage.dragging{cursor:grabbing}.case-track{height:100%;display:flex;gap:var(--gap);width:max-content;will-change:transform}.case-slide{width:var(--slide);height:100%;flex:0 0 var(--slide);position:relative;padding:0;user-select:none;overflow:hidden}.case-slide img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;pointer-events:none}.case-slide:after{content:"查看案例";position:absolute;left:18px;bottom:95px;border-radius:25px;padding:10px 16px;background:#fff;color:#1d1c19;font-size:12px;opacity:0;transition:opacity .2s}.case-slide:hover:after,.case-slide:focus-visible:after{opacity:1}.curve{position:absolute;width:100%;height:100px;left:0;fill:#fff;pointer-events:none;z-index:1}.curve-top{top:-1px}.curve-bottom{bottom:-1px}.hero-bottom{max-width:720px;margin:18px auto 0;padding:0 24px;text-align:center}.case-info{display:flex;align-items:center;justify-content:center;gap:32px}.case-caption{text-align:left}.case-caption h2{margin:0;font-size:17px;letter-spacing:-.03em}.case-caption p{margin:5px 0 0;font-size:12px;color:#666}.text-link{font-size:12px;text-decoration:underline;text-underline-offset:4px}.text-link span{margin-left:12px}.switcher{display:flex;gap:16px;align-items:center;justify-content:center;margin-top:18px}.round{border:1px solid #d8d5d0;width:38px;height:38px;border-radius:50%;font-size:18px}.case-count{font-size:10px;font-variant-numeric:tabular-nums;letter-spacing:.1em}.case-dots{display:flex;gap:1px;margin-left:8px}.case-dot{width:24px;height:32px;position:relative}.case-dot:before{content:"";position:absolute;width:4px;height:4px;border-radius:50%;background:#d1cdc7;left:10px;top:14px}.case-dot[aria-pressed=true]:before{background:#1d1c19}.work-index,.services,.process,.inquiry{margin:120px 6vw 0;border-top:1px solid #ddd8d2;padding-top:28px;display:grid;grid-template-columns:1fr 1.4fr;gap:60px}.section-number{font-size:10px;letter-spacing:.08em}.section-heading h2,.inquiry h2,.process h2{font-size:44px;letter-spacing:-.06em;line-height:1.18;margin:26px 0 0;font-weight:700}.index-row{width:100%;padding:20px 0;border-bottom:1px solid #e8e4df;display:flex;text-align:left;align-items:center;gap:24px}.number{font-size:10px;color:#777}.index-row strong{font-size:22px;display:block;letter-spacing:-.03em}.index-row small{display:block;font-size:11px;color:#777;margin-top:6px}.row-arrow{margin-left:auto;font-size:20px}.service-list p{font-size:22px;letter-spacing:-.02em;border-bottom:1px solid #e8e4df;margin:0;padding:22px 0}.process h2{margin:0}.process ol{list-style:none;margin:32px 0 0;padding:0}.process li{padding:14px 0;border-bottom:1px solid #e8e4df;font-size:15px}.process li span{font-size:10px;margin-right:28px;color:#777}form{display:grid;gap:22px}label{font-size:12px;display:grid;gap:10px}input,select,textarea{width:100%;border:0;border-bottom:1px solid #bbb4ab;background:none;border-radius:0;padding:10px 0;outline-offset:5px;color:inherit;font-size:15px}textarea{resize:vertical}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}.solid{background:#1d1c19;color:white;border-radius:30px;padding:15px 24px;width:max-content;font-size:12px;display:flex;gap:35px}.form-note{font-size:11px;color:#777;margin:0}output{font-size:13px;line-height:1.8;white-space:pre-wrap;background:#f7f4ee;padding:20px}footer{border-top:1px solid #ddd8d2;display:flex;justify-content:space-between;align-items:center;margin:110px 6vw 0;padding:30px 0;font-size:10px}footer .brand{width:85px}dialog::backdrop{background:#0004}dialog{color:#1d1c19}.menu-dialog{position:fixed;inset:0 0 0 auto;margin:0;height:100dvh;max-height:none;width:min(440px,100%);max-width:none;border:0;padding:30px;background:#f7f4ee}.menu-dialog[open]{animation:drawer .45s cubic-bezier(.16,1,.3,1)}.menu-header{display:flex;align-items:center;justify-content:space-between}.menu-header img{width:90px}.menu-dialog nav{margin-top:80px}.menu-dialog nav a{display:flex;justify-content:space-between;border-bottom:1px solid #ddd8d2;padding:24px 0;font-size:38px;letter-spacing:-.05em}.menu-dialog nav span{font-size:11px;letter-spacing:0}#case-viewer{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#fff;overflow:hidden}#case-viewer[open]{display:flex;flex-direction:column;animation:viewer-in .25s ease}.viewer-bar{height:60px;flex:0 0 60px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;border-bottom:1px solid #ddd8d2;background:#fff;z-index:5}.viewer-bar>div{display:flex;align-items:center;gap:18px}#viewer-name{font-size:14px;font-weight:700}#viewer-position{font-size:10px;color:#777}.viewer-actions button{min-width:42px;min-height:44px;font-size:16px}#viewer-close{font-size:12px;margin-left:8px;padding:0 12px;border:1px solid #ddd8d2;border-radius:25px}#viewer-content{position:relative;flex:1;min-height:0}#viewer-content iframe{width:100%;height:100%;border:0;display:block;background:#fff}#viewer-loading,#viewer-error{position:absolute;inset:0;background:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:14px;font-size:13px;z-index:1}#viewer-loading[hidden],#viewer-error[hidden]{display:none}#viewer-error button,#viewer-error a{text-decoration:underline;text-underline-offset:4px;padding:8px}.loader{width:22px;height:22px;border:1px solid #ddd;border-top-color:#1d1c19;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes drawer{from{transform:translateX(100%)}}@keyframes viewer-in{from{opacity:0;transform:translateY(15px)}}@media(max-width:600px){.site-header{height:78px;padding:0 20px}.brand{width:79px}.contact-link{font-size:10px;padding:10px 13px}.hero{padding-top:110px}.hero h1{font-size:52px;letter-spacing:-.065em}.hero-intro{margin-bottom:27px}.hero-intro>p{font-size:11px;margin-top:21px}.case-stage{--slide:240px;--gap:10px;height:355px}.curve{height:62px}.case-slide:after{bottom:65px}.hero-bottom{margin-top:15px;padding:0 15px}.case-info{gap:25px}.case-caption h2{font-size:15px}.case-caption p{font-size:10px}.text-link{font-size:11px}.switcher{gap:11px;margin-top:15px}.case-dots{margin-left:0}.case-dot{width:21px}.case-dot:before{left:9px}.work-index,.services,.process,.inquiry{margin:75px 24px 0;padding-top:20px;grid-template-columns:1fr;gap:30px}.section-heading h2,.inquiry h2,.process h2{font-size:34px;margin-top:20px}.process h2{margin-top:0}.index-row{padding:17px 0}.index-row strong{font-size:20px}.service-list p{font-size:19px;padding:18px 0}.form-pair{grid-template-columns:1fr;gap:22px}footer{margin:80px 24px 0;flex-wrap:wrap;gap:25px}footer>span:nth-child(2){display:none}.menu-dialog{padding:24px}.menu-dialog[open]{animation:mobile-drawer .4s cubic-bezier(.16,1,.3,1)}.viewer-bar{height:56px;flex-basis:56px;padding:0 12px}.viewer-bar>div{gap:8px}#viewer-name{font-size:11px}#viewer-position{display:none}.viewer-actions button{min-width:34px}#viewer-close{padding:0 12px;margin-left:0}.process li{font-size:14px}}@keyframes mobile-drawer{from{transform:translateY(100%)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}.reduce-motion{scroll-behavior:auto}.reduce-motion *{animation:none!important;transition:none!important}

/* Monochrome vector arrows; transparent hit areas retain the original visual scale. */
.ui-arrow{display:block;flex:none;width:16px;height:16px;fill:none;stroke:currentColor}
.contact-link,#case-open,#viewer-external{display:inline-flex;align-items:center;gap:10px}
.contact-link{gap:7px}.contact-link .ui-arrow{width:12px;height:12px}#case-open .ui-arrow{width:14px;height:14px}
.contact-save{gap:12px}
.switcher .round{position:relative;display:grid;place-items:center;padding:0}
.switcher .round::before{content:"";position:absolute;left:50%;top:50%;width:44px;height:44px;transform:translate(-50%,-50%)}
#viewer-prev,#viewer-next{display:grid;place-items:center;min-width:44px;min-height:44px;padding:0}
#desktop-tools button#pan-left,#desktop-tools button#pan-right{position:relative;width:44px;min-width:44px;justify-content:center;align-items:center;padding:5px 8px}
#desktop-tools.actual button#pan-left,#desktop-tools.actual button#pan-right{display:flex}
#desktop-tools button#pan-left::before,#desktop-tools button#pan-right::before{content:"";position:absolute;left:0;top:50%;width:100%;height:44px;transform:translateY(-50%)}
