*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
body{background:#FAFAF8;color:#1A1A1A;font-family:'Inter',sans-serif;overflow-x:hidden}
.header{padding:20px 24px}.logo{font-family:'Source Serif 4',serif;font-size:1.2rem;font-weight:700;color:#1A1A1A}.a{color:#C45B3E}
.hero{min-height:80vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:60px 24px}
.title{font-family:'Source Serif 4',serif;font-size:clamp(3rem,8vw,6rem);font-weight:700;line-height:1.05;color:#1A1A1A}
.sub{font-size:clamp(.9rem,1.3vw,1.05rem);color:#6B6B6B;max-width:480px;line-height:1.7;margin-top:20px}
.grid{max-width:900px;margin:0 auto;padding:60px 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.card{background:#F0F0EE;border:1px solid #D4D4D0;border-radius:4px;padding:32px;transition:border-color .3s,transform .3s}
.card:hover{border-color:#C45B3E;transform:translateY(-4px)}
.tag{font-family:'IBM Plex Mono',monospace;font-size:.6rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#C45B3E;display:block;margin-bottom:8px}
.card h2{font-family:'Source Serif 4',serif;font-size:1.2rem;font-weight:700;margin-bottom:10px;color:#1A1A1A}
.card p{font-size:.88rem;line-height:1.7;color:#6B6B6B}
.c1{border-top:3px solid #C45B3E}.c2{border-top:3px solid #2A7B6F}.c3{border-top:3px solid #D4A03E}
.footer{text-align:center;padding:40px 24px;border-top:1px solid #D4D4D0}
.footer p{font-size:.75rem;color:#6B6B6B;opacity:.3}
