:root{--ink:#1d1d1f;--muted:#77777d;--line:#e5e5e7;--bg:#f5f5f7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;color:var(--ink);background:#fff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;color:inherit}a,button{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid #597cba;outline-offset:5px}img{display:block;width:100%;object-fit:cover}header{height:88px;max-width:1440px;padding:0 6%;margin:auto;display:flex;justify-content:space-between;align-items:center}header .brand{width:174px}header img{height:64px;object-fit:contain}header nav{display:flex;gap:34px;align-items:center;font-size:13px}.nav-contact{margin-left:18px}#menu,#mobile-menu,.bottom-nav{display:none}.skip{position:absolute;top:-80px;left:20px;background:#fff;padding:12px;z-index:10}.skip:focus{top:0}.hero,.section{max-width:1440px;margin:auto;padding-left:6%;padding-right:6%}.hero{padding-top:70px}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--muted);margin:0 0 24px}h1{font-size:clamp(48px,6.1vw,88px);line-height:1.12;letter-spacing:-3px;margin:0;font-weight:600}h2{font-size:clamp(32px,3.5vw,48px);font-weight:550;line-height:1.25;letter-spacing:-1.5px;margin:0}h3{font-size:21px;font-weight:550;margin:0}p{line-height:1.85}.intro{display:flex;justify-content:space-between;align-items:center;margin:27px 0 35px;font-size:14px}.intro p{color:var(--muted);margin:0}.intro a{font-size:13px}.intro span{margin-left:14px}.hero-image{position:relative;display:block;overflow:hidden;border-radius:4px}.hero-image img{height:580px;object-position:center}.image-label{position:absolute;bottom:26px;left:30px;color:white;font-size:12px;letter-spacing:1px;text-shadow:0 1px 5px #000;background:#0005;padding:8px 14px;border-radius:30px}.service-line{display:flex;gap:50px;justify-content:center;padding:34px 0;font-size:14px;border-bottom:1px solid var(--line)}.service-line i{font-style:normal;color:#c2c2c5}.section{padding-top:110px;padding-bottom:35px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:44px;gap:20px}.section-heading>p{color:var(--muted);font-size:14px;margin:0}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.project-image{position:relative;overflow:hidden;border-radius:3px}.project-image img{aspect-ratio:1.37;transition:transform .6s}.project:hover img{transform:scale(1.025)}.project-image span{position:absolute;bottom:20px;right:20px;background:#ffffffed;padding:10px 16px;border-radius:24px;font-size:11px}.project-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:23px 0}.project-meta h3{font-size:18px}.project-meta>span{font-size:11px;color:var(--muted)}.note{font-size:11px;color:var(--muted);margin-top:14px}.services{padding-bottom:60px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.service-grid article{border-top:1px solid var(--line);padding-top:22px}.number{font-size:12px;color:var(--muted);display:block;margin-bottom:40px}.service-grid h3{margin-bottom:12px}.service-grid p{font-size:14px;color:var(--muted);max-width:310px}.process{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;margin-top:42px;padding:28px 0;font-size:13px}.process b{font-weight:400;color:#aaa}.about{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;padding-bottom:110px}.about-image img{aspect-ratio:1/1.05;border-radius:3px}.about .eyebrow{margin-bottom:25px}.body-copy{font-size:14px;color:var(--muted);margin-top:25px}.text-link{display:inline-block;margin-top:22px;font-size:13px}.contact{background:var(--bg);max-width:none;padding-top:80px;padding-bottom:80px;display:flex;justify-content:space-between;align-items:center;padding-left:max(6%,calc((100vw - 1268px)/2));padding-right:max(6%,calc((100vw - 1268px)/2))}.contact h2{font-size:52px}.contact p{font-size:14px;color:var(--muted)}.primary{display:flex;justify-content:space-between;align-items:center;background:var(--ink);color:white;border:0;border-radius:5px;padding:18px 24px;min-width:300px;font-size:14px;margin-top:25px}.contact-hint{font-size:11px!important;margin-top:12px!important}.contact-qr{width:176px;text-align:center}.contact-qr img{padding:8px;background:white;border-radius:6px}.contact-qr span{display:block;font-size:11px;color:var(--muted);margin-top:16px}footer{max-width:1440px;margin:auto;padding:50px 6% 35px}.footer-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:28px}.footer-top img{width:160px;height:58px;object-fit:contain}.footer-top span{font-size:12px;color:var(--muted)}.footer-bottom{border-top:1px solid var(--line);padding-top:24px;display:flex;gap:24px;align-items:center;color:var(--muted);font-size:10px}.footer-bottom button{margin-left:auto;border:0;background:none;padding:0;font-size:11px;color:var(--muted)}dialog{border:0;border-radius:16px;padding:42px;text-align:center;max-width:460px;width:calc(100% - 32px);box-shadow:0 20px 90px #0003}dialog::backdrop{background:#0006;backdrop-filter:blur(5px)}dialog h2{font-size:25px;letter-spacing:-.5px}dialog p{font-size:13px;color:var(--muted)}.close{position:absolute;right:15px;top:10px;background:none;border:0;font-size:28px;color:#777}.dialog-qr{width:205px;margin:25px auto}.download{display:block;border:1px solid var(--line);border-radius:5px;padding:13px;margin-top:20px;font-size:13px}dialog .primary{min-width:0;width:100%;justify-content:center}
@media(max-width:760px){html{scroll-padding-top:76px}header{height:76px;padding:0 6%}header .brand{width:142px}header nav{display:none}#menu{display:flex;gap:10px;align-items:center;border:0;background:none;font-size:11px;padding:12px 0}#menu span{font-size:17px}#mobile-menu:not([hidden]){display:flex;position:absolute;z-index:5;top:76px;left:0;right:0;background:white;box-shadow:0 12px 20px #0001;padding:16px 6% 26px;flex-direction:column;gap:25px;font-size:15px}.hero{padding-top:35px}.eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:20px}h1{font-size:46px;letter-spacing:-2px;line-height:1.16}.intro{margin:20px 0 26px;font-size:12px}.intro a{font-size:10px}.intro span{margin-left:4px}.hero-image img{height:330px;object-position:50% 50%}.image-label{font-size:9px;bottom:15px;left:15px;padding:6px 10px}.service-line{gap:0;justify-content:space-between;font-size:11px;padding:25px 8px}.section{padding-top:65px;padding-bottom:10px}.section-heading{display:block;margin-bottom:28px}h2{font-size:32px;letter-spacing:-1px}.section-heading>p{font-size:12px;margin-top:16px}.project-grid{gap:24px;grid-template-columns:1fr}.project-image img{aspect-ratio:1.4}.project-meta{padding:17px 0 4px}.project-meta h3{font-size:17px}.project-meta>span{font-size:10px}.project-image span{font-size:10px;bottom:14px;right:14px;padding:8px 12px}.note{font-size:9px;margin-top:25px}.service-grid{gap:20px;grid-template-columns:1fr}.service-grid article{display:grid;grid-template-columns:35px 1fr;gap:0 12px;padding-top:20px}.number{grid-row:1/3;margin:5px 0 0;font-size:11px}.service-grid h3{font-size:19px}.service-grid p{max-width:none;font-size:12px;margin:0 0 10px}.process{font-size:10px;gap:4px;padding:22px 0;margin-top:24px}.about{grid-template-columns:1fr;gap:30px;padding-bottom:65px}.about-image img{aspect-ratio:1.25}.body-copy{font-size:13px;margin-top:18px}.contact{padding-top:50px;padding-bottom:45px;display:block}.contact h2{font-size:38px}.contact p{font-size:12px}.primary{width:100%;min-width:0;margin-top:25px}.contact-qr{display:none}.contact-hint{text-align:center;font-size:10px!important}.footer-top{display:block}.footer-top img{width:140px;margin-bottom:12px}.footer-top span{font-size:10px}.footer-bottom{flex-wrap:wrap;gap:14px;font-size:9px;line-height:1.5}.footer-bottom button{margin-left:0;font-size:10px}footer{padding-bottom:95px}.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:4;justify-content:space-around;padding:17px 10px calc(17px + env(safe-area-inset-bottom));background:#ffffffed;backdrop-filter:blur(15px);border-top:1px solid var(--line);font-size:11px}.bottom-nav a{padding:4px 15px}dialog{padding:36px 24px}dialog h2{font-size:23px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media(max-width:360px){h1{font-size:40px}.intro{display:block}.intro a{display:inline-block;margin-top:10px}.project-meta{display:block}.project-meta>span{display:block;margin-top:7px}}
@media(max-width:760px){h1{font-size:clamp(27px,8.6vw,36px);letter-spacing:-1.4px;line-height:1.22}}
