*{box-sizing:border-box;margin:0;padding:0}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#111;line-height:1.6}
:root{--accent:#c8a24a}.wrap{max-width:1150px;margin:auto;padding:0 22px}a{color:inherit;text-decoration:none}
.nav{position:sticky;top:0;background:#000;color:#fff;z-index:9;border-bottom:1px solid #222}.nav-in{display:flex;align-items:center;justify-content:space-between;height:68px}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:.5px}.brand img{height:46px}nav{display:flex;gap:22px;align-items:center}nav a{font-size:.95rem;opacity:.9}
.btn{display:inline-block;background:var(--accent);color:#000;font-weight:700;padding:14px 26px;border-radius:4px;border:2px solid var(--accent);cursor:pointer;font-size:1rem}.btn.sm{padding:8px 16px}.btn.ghost{background:none;color:#fff;border-color:#fff}
.hero{background:linear-gradient(135deg,#000 60%,#1b1b1b);color:#fff;padding:90px 0}.hero-in{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:center}
h1{font-size:clamp(2.2rem,5vw,3.8rem);line-height:1.1;margin:10px 0 18px}.accent{color:var(--accent)}.lead{font-size:1.15rem;opacity:.85;max-width:560px}.cta{display:flex;gap:14px;margin-top:28px;flex-wrap:wrap}.hero-logo{width:100%;max-width:380px;justify-self:center}
.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:.8rem;color:var(--accent);font-weight:700}h2{font-size:2.1rem;margin:6px 0 30px}
.sec{padding:80px 0}.dark{background:#000;color:#fff}.alt{background:#f3f3f3}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}.grid4 h3{color:var(--accent);margin-bottom:6px}
.card{border:1px solid #ddd;border-top:4px solid #000;padding:26px;background:#fff}.card h3{margin-bottom:8px}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.ph{aspect-ratio:4/3;border:2px dashed #999;background:#eee;display:flex;align-items:center;justify-content:center;text-align:center;color:#666;font-weight:600;padding:10px}
.tag{display:inline-block;background:#fff4d6;color:#7a5a00;border:1px dashed var(--accent);font-size:.8rem;font-weight:700;padding:3px 8px;margin:6px 0}
.review p{margin-bottom:8px}.who{font-weight:600;color:#555}
.area{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:center}.map{aspect-ratio:1;background:#000;color:#fff;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);display:flex;align-items:center;justify-content:center;text-align:center;font-weight:800;font-size:1.3rem;border:0}
.contact{display:grid;grid-template-columns:1fr 1.2fr;gap:40px}.contact p{margin-bottom:10px}form{display:grid;gap:12px}input,select,textarea{padding:13px;border:1px solid #444;background:#111;color:#fff;border-radius:4px;font:inherit}.small{font-size:.8rem;opacity:.6}
footer{background:#000;color:#aaa;padding:30px 0;text-align:center;border-top:1px solid #222}footer img{height:60px;margin-bottom:8px}
@media(max-width:860px){nav a:not(.btn){display:none}.brand span{display:none}.hero-in,.area,.contact{grid-template-columns:1fr}.hero-logo{max-width:220px;order:-1}.grid3,.grid4,.gallery{grid-template-columns:1fr 1fr}.hero{padding:50px 0}}
@media(max-width:520px){.grid3,.grid4,.gallery{grid-template-columns:1fr}.sec{padding:55px 0}.map{max-width:260px;margin:auto}}

.services{grid-template-columns:repeat(4,1fr)}@media(max-width:1100px){.services{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.services{grid-template-columns:1fr}}

/* ---- polish v2 ---- */
body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#1a1a1a;-webkit-font-smoothing:antialiased}
h1,h2,.brand span{font-family:Oswald,Inter,sans-serif;letter-spacing:.5px;text-transform:uppercase}
h1{font-weight:700;font-size:clamp(2.4rem,5.5vw,4.4rem)}h2{font-weight:600;font-size:clamp(1.8rem,3.4vw,2.6rem)}
h2::after{content:"";display:block;width:56px;height:3px;background:var(--accent);margin-top:14px}
.nav{background:rgba(0,0,0,.92);backdrop-filter:blur(8px)}nav{gap:26px}nav a:not(.btn){position:relative}nav a:not(.btn):hover{color:var(--accent)}
.btn{border-radius:6px;transition:transform .2s,box-shadow .2s,background .2s;box-shadow:0 6px 18px rgba(200,162,74,.25)}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(200,162,74,.4)}.btn.ghost{box-shadow:none}.btn.ghost:hover{background:#fff;color:#000}
.btn.call{background:none;color:var(--accent);box-shadow:none}.btn.call:hover{background:var(--accent);color:#000}
.hero{position:relative;padding:150px 0 130px;background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.65) 50%,rgba(0,0,0,.3) 100%),url(images/project-2.jpg) center 40%/cover no-repeat;border-bottom:4px solid var(--accent)}
.hero-in{grid-template-columns:1fr}.hero-in>div{max-width:640px}.lead{opacity:.92}
.card{border:1px solid #e6e6e6;border-top:4px solid var(--accent);border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,.04);transition:transform .25s,box-shadow .25s}
.card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(0,0,0,.1)}.review:hover{transform:none}
.grid4>div{padding:22px;border-left:3px solid var(--accent);background:#0d0d0d;border-radius:6px}
.gal-cap{margin:-14px 0 24px;color:#555;font-weight:500}
.gallery{grid-template-columns:repeat(3,1fr);gap:14px}
.tile{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:8px;position:relative;box-shadow:0 4px 14px rgba(0,0,0,.08)}
.tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.tile::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 60%,rgba(0,0,0,.35));opacity:0;transition:opacity .3s}
.tile:hover img{transform:scale(1.06)}.tile:hover::after{opacity:1}
.lb{position:fixed;inset:0;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center;z-index:50;cursor:zoom-out;padding:20px}.lb.on{display:flex}
.lb img{max-width:100%;max-height:90vh;border-radius:6px}.lb-x{position:absolute;top:14px;right:24px;color:#fff;font-size:2.4rem}
.map{background:linear-gradient(135deg,#111,#000);color:var(--accent);font-family:Oswald,sans-serif;text-transform:uppercase}
input,select,textarea{border-radius:6px}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);border-color:transparent}
.contact a{color:var(--accent)}
@media(max-width:860px){.hero{padding:90px 0 80px;background:linear-gradient(rgba(0,0,0,.6),rgba(0,0,0,.85)),url(images/project-2.jpg) center/cover}.gallery{grid-template-columns:1fr 1fr}.btn.call{padding:8px 10px;font-size:.85rem}}
@media(max-width:520px){.gallery{grid-template-columns:1fr 1fr;gap:8px}.nav .btn.sm:not(.call){display:none}.cta .btn{width:100%;text-align:center}}

/* Project videos */
.videos{display:flex;flex-wrap:wrap;justify-content:center;gap:28px;margin-top:28px}
.vid{margin:0;width:100%;max-width:720px}
.vid.portrait{max-width:340px}
.vid video{display:block;width:100%;height:auto;border-radius:14px;background:#000;box-shadow:0 18px 40px rgba(0,0,0,.28);border:1px solid rgba(201,162,39,.35)}
.vid.portrait video{max-height:80vh;object-fit:contain}
.vid figcaption{margin-top:10px;text-align:center;font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:.9rem;color:inherit;opacity:.8}
.fb-link{display:inline-flex;align-items:center;gap:8px;color:var(--accent,#c8a24a);font-weight:600;text-decoration:none}.fb-link:hover{color:#fff}footer .fb-link{margin-top:8px}
