:root{--earth-bg:#f5f0ea;--earth-card:#fdfbf7;--earth-border:#e8dfd4;--earth-dark:#4a3728;--earth-muted:#7d6b5a;--earth-accent:#a67c52}*,:after,:before{box-sizing:border-box}body{margin:0;background:var(--earth-bg);font-family:Noto Sans TC,PingFang TC,-apple-system,BlinkMacSystemFont,sans-serif;min-height:100vh;color:var(--earth-dark);-webkit-font-smoothing:antialiased}a{font-weight:500}.landing{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:clamp(2rem,5vw,4rem) clamp(1.5rem,4vw,3rem);gap:clamp(3rem,8vw,6rem)}.hero{text-align:center;padding:clamp(2rem,6vw,4rem) 0}.brand{font-family:"Noto Serif TC",Songti TC,Georgia,serif;font-weight:600;font-size:clamp(2.25rem,6vw,3.5rem);letter-spacing:.08em;color:var(--earth-dark);margin:0 0 .5rem}.tagline{font-size:clamp(.95rem,2.5vw,1.1rem);letter-spacing:.2em;color:var(--earth-muted);margin:0;font-weight:400}.services{width:100%;max-width:960px}.section-title{font-family:"Noto Serif TC",Songti TC,Georgia,serif;font-size:clamp(1.25rem,3vw,1.5rem);font-weight:500;letter-spacing:.15em;color:var(--earth-dark);margin:0 0 2rem;text-align:center}.services-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:1.5rem;gap:1.5rem}.service-card{background:var(--earth-card);border:1px solid var(--earth-border);padding:1.75rem 1.5rem;text-align:center;transition:border-color .25s ease,box-shadow .25s ease}.service-card:hover{border-color:var(--earth-accent);box-shadow:0 4px 20px rgba(139,90,60,.08)}.service-card h3{font-family:"Noto Serif TC",Songti TC,Georgia,serif;font-size:1.15rem;font-weight:600;color:var(--earth-dark);margin:0 0 .5rem;letter-spacing:.05em}.service-card p{font-size:.9rem;color:var(--earth-muted);margin:0;line-height:1.5}.contact{width:100%;max-width:480px;text-align:center;padding:2rem 0;border-top:1px solid var(--earth-border)}.contact-link,.social-link{display:inline-flex;align-items:center;justify-content:center;color:var(--earth-muted);text-decoration:none;transition:color .2s ease,transform .2s ease}.contact-link:hover,.social-link:hover{color:var(--earth-accent)}.contact-link:focus-visible,.social-link:focus-visible{outline:2px solid var(--earth-accent);outline-offset:4px}.contact-email{margin-bottom:1.25rem}.social{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap}.copyright{margin:2rem 0 0;font-size:.8rem;letter-spacing:.05em;color:var(--earth-muted)}