*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;color:#2c2c2c;background:#fafaf8;line-height:1.7;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:"Noto Serif SC",Georgia,serif;font-weight:600;line-height:1.3;color:#1a1a1a}a{text-decoration:none;color:inherit}img{max-width:100%}.container{max-width:1200px;margin:0 auto;padding:0 24px}.navbar{position:fixed;top:0;left:0;right:0;z-index:100;background:#fafaf8eb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(0,0,0,.06)}.nav-inner{max-width:1200px;margin:0 auto;padding:0 24px;height:68px;display:flex;align-items:center;justify-content:space-between}.logo{font-family:"Noto Serif SC",serif;font-size:1.35rem;font-weight:700;color:#1a1a1a;letter-spacing:.05em}.nav-links{display:flex;gap:32px}.nav-links a{font-size:.9rem;font-weight:500;color:#555;transition:color .25s;letter-spacing:.04em}.nav-links a:hover{color:#8b6f4e}.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2c2c2c,#1a1a1a,#2c2c2c);overflow:hidden}.hero-overlay{position:absolute;inset:0;background:radial-gradient(ellipse at 20% 50%,rgba(139,111,78,.15) 0%,transparent 60%),radial-gradient(ellipse at 80% 50%,rgba(200,180,160,.08) 0%,transparent 50%);pointer-events:none}.hero-content{position:relative;z-index:1;text-align:center;max-width:720px;padding:0 24px}.hero-eyebrow{font-size:.85rem;font-weight:500;letter-spacing:.3em;color:#c4a882;text-transform:uppercase;margin-bottom:20px}.hero-content h1{font-size:clamp(2.8rem,6vw,4.5rem);color:#fff;letter-spacing:.08em;margin-bottom:16px}.hero-sub{font-size:1.15rem;color:#d4c8b8;font-weight:300;letter-spacing:.15em;margin-bottom:24px}.hero-desc{font-size:1rem;color:#a09888;max-width:540px;margin:0 auto 40px;line-height:1.8}.btn-primary{display:inline-block;padding:14px 40px;background:#8b6f4e;color:#fff;font-size:.95rem;font-weight:500;letter-spacing:.06em;border:none;border-radius:4px;cursor:pointer;transition:background .3s,transform .2s}.btn-primary:hover{background:#7a5f40;transform:translateY(-1px)}.section{padding:100px 0}.section-alt{background:#f3f1ed}.section-header{text-align:center;margin-bottom:64px}.section-tag{display:inline-block;font-size:.8rem;font-weight:500;letter-spacing:.25em;color:#8b6f4e;text-transform:uppercase;margin-bottom:12px}.section-header h2{font-size:clamp(1.8rem,3.5vw,2.6rem);color:#1a1a1a}.about-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:32px}.about-card{background:#fff;padding:40px 28px;border-radius:8px;text-align:center;transition:transform .3s,box-shadow .3s;box-shadow:0 2px 12px #0000000a}.about-card:hover{transform:translateY(-4px);box-shadow:0 8px 28px #00000014}.about-icon{font-size:2.4rem;margin-bottom:16px}.about-card h3{font-size:1.15rem;margin-bottom:12px;color:#1a1a1a}.about-card p{font-size:.92rem;color:#666;line-height:1.7}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}.service-card{background:#fff;padding:36px 28px;border-radius:8px;border-left:3px solid #8b6f4e;transition:transform .3s,box-shadow .3s;box-shadow:0 2px 12px #0000000a}.service-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #00000014}.service-num{font-family:"Noto Serif SC",serif;font-size:1.8rem;font-weight:700;color:#8b6f4e;margin-bottom:12px;opacity:.6}.service-card h3{font-size:1.1rem;margin-bottom:10px}.service-card p{font-size:.9rem;color:#666;line-height:1.7}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:28px}.portfolio-card{background:#fff;border-radius:8px;overflow:hidden;transition:transform .3s,box-shadow .3s;box-shadow:0 2px 12px #0000000a}.portfolio-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #0000001a}.portfolio-img-placeholder{height:220px;background:linear-gradient(135deg,#e8e0d6,#d4c8b8);display:flex;align-items:center;justify-content:center;font-family:"Noto Serif SC",serif;font-size:1rem;color:#8b6f4e;letter-spacing:.1em}.portfolio-info{padding:24px}.portfolio-info h3{font-size:1.1rem;margin-bottom:6px}.portfolio-meta{display:inline-block;font-size:.82rem;color:#8b6f4e;font-weight:500;margin-bottom:10px}.portfolio-info p{font-size:.9rem;color:#666;line-height:1.7}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}.contact-info{display:flex;flex-direction:column;gap:28px}.contact-label{display:block;font-size:.8rem;font-weight:600;letter-spacing:.12em;color:#8b6f4e;text-transform:uppercase;margin-bottom:6px}.contact-item p{font-size:1rem;color:#444}.contact-form{display:flex;flex-direction:column;gap:16px}.contact-form input,.contact-form textarea{width:100%;padding:14px 16px;border:1px solid #ddd;border-radius:4px;font-family:Inter,sans-serif;font-size:.95rem;color:#333;background:#fff;transition:border-color .25s}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:#8b6f4e}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#aaa}.btn-submit{width:100%;padding:16px;font-size:1rem}.form-success{background:#fff;padding:48px 32px;border-radius:8px;text-align:center;box-shadow:0 2px 12px #0000000a}.success-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:#8b6f4e;color:#fff;font-size:1.5rem;margin-bottom:16px}.form-success h3{font-size:1.3rem;margin-bottom:8px}.form-success p{color:#666}.footer{background:#1a1a1a;color:#999;padding:48px 0 32px}.footer-inner{display:flex;flex-direction:column;align-items:center;gap:24px;text-align:center}.footer-brand h3{font-size:1.3rem;color:#e8e0d6;margin-bottom:4px}.footer-brand p{font-size:.85rem;color:#777}.footer-links{display:flex;gap:28px;flex-wrap:wrap;justify-content:center}.footer-links a{font-size:.88rem;color:#888;transition:color .25s}.footer-links a:hover{color:#c4a882}.footer-copy{font-size:.8rem;color:#666;margin-top:8px}@media(max-width:768px){.nav-links{gap:20px}.hero-content h1{font-size:2.4rem}.section{padding:64px 0}.contact-grid{grid-template-columns:1fr;gap:32px}.portfolio-grid{grid-template-columns:1fr}.about-grid{grid-template-columns:1fr 1fr}}@media(max-width:480px){.nav-links{gap:14px}.nav-links a{font-size:.82rem}.about-grid,.services-grid{grid-template-columns:1fr}}
