:root{--bg:#0b0b0c;--fg:#f6f6f6;--muted:#bdbdbf;--gold:#d4af37;--card:#121214;--alt:#0f0f11;--btn:#1e1e21}
*{box-sizing:border-box}html,body{margin:0;padding:0}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--fg);background:var(--bg);line-height:1.55}
h1,h2,h3{font-family:'Playfair Display',Georgia,serif;margin:0 0 .6rem}
a{color:var(--fg);text-decoration:none}.lead{color:#e9e9eb}
.btn{display:inline-block;padding:.8rem 1.1rem;border-radius:999px;background:var(--btn);border:1px solid #2a2a2e}
.btn-primary{background:linear-gradient(135deg,var(--gold),#f2d98d);color:#111;font-weight:600}
.btn-outline{background:transparent;border:1px solid var(--gold);color:var(--gold)}
.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:.8rem 1rem;border-bottom:1px solid #1a1a1d;background:rgba(11,11,12,.85);backdrop-filter:blur(6px)}
.logo{display:flex;gap:.6rem;align-items:center;font-weight:600}.logo img{width:36px;height:36px;object-fit:contain}
.site-nav{display:flex;gap:1rem;align-items:center}.menu-toggle{display:none;background:none;border:1px solid #2a2a2e;border-radius:8px;color:var(--fg);padding:.4rem .6rem}
.section{padding:3rem 1.2rem;max-width:1200px;margin:0 auto}.section-alt{background:var(--alt)}.intro{text-align:center}
.hero-logo{margin:0 auto 1rem;display:block;width:180px;height:auto}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin-top:1rem}
.gallery img{width:100%;height:260px;object-fit:cover;border-radius:10px;border:1px solid #1a1a1d}
.contact .grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1rem}
label{display:flex;flex-direction:column;gap:.4rem;font-size:.95rem}
input,textarea{background:#0e0e10;border:1px solid #1f1f23;border-radius:10px;color:var(--fg);padding:.75rem .9rem;outline:none}
input:focus,textarea:focus{border-color:var(--gold)}label.full{grid-column:1/-1}
.site-footer{padding:2rem 1rem;border-top:1px solid #1a1a1d;text-align:center;color:var(--muted)}
@media (max-width:900px){.gallery{grid-template-columns:1fr 1fr}}
@media (max-width:680px){.site-nav{display:none;position:absolute;right:1rem;top:58px;flex-direction:column;background:#0e0e10;border:1px solid #1a1a1d;border-radius:10px;padding:.6rem}.menu-toggle{display:block}.contact .grid{grid-template-columns:1fr}}