:root{--blue:#253d89;--ink:#192338;--line:#dce2ed}*{box-sizing:border-box}body{margin:0;background:#f5f7fa;color:var(--ink);font:16px/1.8 "Microsoft JhengHei",sans-serif}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid #7393ea;outline-offset:5px}.skip{position:absolute;top:-80px}.skip:focus{top:0;z-index:10;background:white;padding:12px}header{display:flex;justify-content:space-between;align-items:center;padding:24px 5%;background:white;border-bottom:1px solid var(--line)}.brand{font-size:38px;font-weight:800;line-height:1}.brand span{display:block;font-size:12px;font-weight:400;letter-spacing:2px;margin-top:10px}nav{display:flex;gap:26px;font-size:14px}nav a:hover{text-decoration:underline}.hero{height:650px;position:relative;overflow:hidden;color:white;background:#192338}.hero>img{width:100%;height:100%;object-fit:cover}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#091328cc,#09132811)}.hero-copy{position:absolute;z-index:1;top:20%;left:7%}.hero h1{font-size:clamp(34px,4vw,62px);line-height:1.45;letter-spacing:2px}.eyebrow{font-size:13px;letter-spacing:2px;margin:0 0 20px}.button{display:inline-block;padding:12px 28px;background:var(--blue);color:white;margin-top:20px}.hero .button{background:white;color:var(--ink)}.credit{position:absolute;z-index:1;bottom:24px;right:5%;font-size:13px}.section{max-width:1440px;margin:auto;padding:80px 6%;min-height:300px}h1{font-size:clamp(36px,5vw,60px);font-weight:500;line-height:1.4;margin:24px 0}h2{font-size:30px;font-weight:500;line-height:1.5}h3{font-size:20px;font-weight:500;line-height:1.6}.rooms{display:grid;grid-template-columns:1.3fr 1fr;gap:18px;padding:18px;background:var(--line);margin-top:36px}.room{min-height:230px;padding:32px 38px;background:white;border-left:4px solid var(--blue)}.room:nth-child(2),.room:nth-child(3){background:#eaf0fa}.room:hover{background:#dce6fa}.room h2{margin:10px 0}.room p{font-size:15px;margin:0}.enter{display:block;margin-top:24px;font-size:14px;text-decoration:underline;text-underline-offset:6px}.projects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px}.project{background:white}.project img{width:100%;height:270px;object-fit:cover;display:block}.project>div{padding:24px}.project .eyebrow{color:var(--blue)}.project div>span:last-child{font-size:14px;text-decoration:underline}.lead{max-width:800px;font-size:20px;margin-bottom:40px}.filters{display:flex;flex-wrap:wrap;gap:12px;margin:40px 0 20px}.filters button{font:inherit;font-size:15px;padding:9px 20px;background:white;border:1px solid var(--line);cursor:pointer}.filters button[aria-pressed=true]{background:var(--blue);color:white}.project[hidden],#empty[hidden]{display:none}.case-text{max-width:800px;margin:40px 0 60px}.gallery{display:grid;gap:24px}.gallery figure{margin:0}.gallery img{max-width:100%;max-height:1100px;display:block;margin:auto;object-fit:contain}.case-end{border-top:1px solid var(--line);margin-top:60px;padding-top:30px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin:60px 0}.services article{border-top:2px solid var(--blue);padding-top:20px}.services h2,.people h2{font-size:24px}.people{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin:70px 0}.initial{background:var(--blue);color:white;width:180px;height:200px;display:grid;place-items:center;font-size:100px;margin-bottom:30px}footer{padding:30px 5%;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:13px;color:#526077}@media(max-width:900px){nav{gap:14px;flex-wrap:wrap;justify-content:flex-end}.projects{grid-template-columns:repeat(2,minmax(0,1fr))}.services{grid-template-columns:1fr}.people{gap:40px}}@media(max-width:600px){header{flex-direction:column;align-items:flex-start;gap:24px;padding:20px 6%}nav{justify-content:flex-start;gap:16px}.hero{height:530px}.hero-copy{left:6%;right:6%;top:15%}.hero h1{font-size:34px}.section{padding:55px 6%}.rooms,.projects,.people{grid-template-columns:1fr}.room{padding:26px}.project img{height:280px}.lead{font-size:18px}footer{flex-direction:column}h1{font-size:38px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
