:root{--bg:#111014;--card:#1b1a20;--accent:#c9a15a;--text:#f2efe9;--muted:#a9a5a0}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Segoe UI',system-ui,sans-serif;background:var(--bg);color:var(--text);line-height:1.6}
.container{max-width:1100px;margin:0 auto;padding:0 20px}
a{color:inherit;text-decoration:none}
h1,h2,h3{font-weight:700;letter-spacing:.3px}
h2{font-size:2rem;margin-bottom:.4em;text-align:center}
.sub{text-align:center;color:var(--muted);margin-bottom:1.5em}
.section{padding:70px 0}
.section.alt{background:#161519}
.btn{display:inline-block;background:var(--accent);color:#1a1712;padding:14px 28px;border-radius:40px;font-weight:600;border:none;cursor:pointer;transition:.2s;font-size:1rem}
.btn:hover{opacity:.88;transform:translateY(-2px)}
.btn.ghost{background:transparent;border:1px solid var(--accent);color:var(--accent)}
.btn.small{padding:9px 20px;font-size:.9rem}
.nav{position:sticky;top:0;background:rgba(17,16,20,.92);backdrop-filter:blur(8px);z-index:20;border-bottom:1px solid #262530}
.navflex{display:flex;align-items:center;justify-content:space-between;padding:14px 20px}
.logo{font-size:1.25rem;font-weight:700}
.logo span{display:block;font-size:.65rem;color:var(--accent);letter-spacing:3px;text-transform:uppercase}
.nav nav{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.nav nav a{color:var(--muted);font-size:.95rem}
.nav nav a:hover{color:var(--text)}
.hero{min-height:82vh;display:flex;align-items:center;background:linear-gradient(rgba(10,9,12,.65),rgba(10,9,12,.85)),url('gallery/banner-hero.jpg') center/cover;text-align:center}
.hero-in{width:100%}
.eyebrow{color:var(--accent);letter-spacing:4px;text-transform:uppercase;font-size:.8rem;margin-bottom:12px}
.hero h1{font-size:4rem;margin-bottom:14px}
.lead{color:#ddd;font-size:1.2rem;margin-bottom:28px}
.hero-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.about{display:grid;grid-template-columns:1fr 1.4fr;gap:40px;align-items:center}
.about h2{text-align:left}
.about p{color:var(--muted);margin-bottom:14px}
.about-img{width:100%;border-radius:12px}
.facts{list-style:none;display:flex;gap:30px;margin-top:20px}
.facts b{display:block;font-size:1.8rem;color:var(--accent)}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.card{background:var(--card);padding:26px;border-radius:12px;border:1px solid #262530}
.card h3{color:var(--accent);margin-bottom:8px}
.card p{color:var(--muted)}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.gallery img{width:100%;height:100%;object-fit:cover;border-radius:10px;aspect-ratio:1;transition:.3s}
.gallery img:hover{transform:scale(1.03)}
.price{background:var(--card);padding:30px;border-radius:14px;border:1px solid #262530;text-align:center;position:relative}
.price.featured{border-color:var(--accent);transform:scale(1.03)}
.badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--accent);color:#1a1712;font-size:.75rem;padding:4px 14px;border-radius:20px;font-weight:600}
.amount{font-size:2rem;color:var(--accent);margin:10px 0 18px}
.price ul{list-style:none;margin-bottom:20px}
.price li{padding:7px 0;border-bottom:1px solid #262530;color:var(--muted)}
.review{background:var(--card);padding:24px;border-radius:12px;border:1px solid #262530}
.review p{margin-bottom:12px;font-style:italic}
.review b{color:var(--accent)}
.faq details{background:var(--card);border:1px solid #262530;border-radius:10px;padding:16px 20px;margin-bottom:12px}
.faq summary{cursor:pointer;font-weight:600}
.faq p{color:var(--muted);margin-top:10px}
.contacts{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.contacts h2{text-align:left}
.contact-list{list-style:none;margin:18px 0}
.contact-list li{padding:6px 0}
.contact-list a{color:var(--accent)}
.form{display:flex;flex-direction:column;gap:12px;margin-top:16px}
.form input,.form textarea{background:#0e0d11;border:1px solid #333;border-radius:8px;padding:13px;color:var(--text);font-size:1rem}
.form input:focus,.form textarea:focus{outline:none;border-color:var(--accent)}
.ok{background:#1e3a24;color:#a8e6b0;padding:16px;border-radius:10px;margin-top:16px}
.errmsg{background:#3a1e1e;color:#e6a8a8;padding:12px;border-radius:8px;margin-bottom:12px}
.map iframe{border-radius:12px;border:1px solid #262530}
.footer{padding:30px 0;text-align:center;color:var(--muted);border-top:1px solid #262530;font-size:.9rem}
@media(max-width:820px){.grid3,.grid2,.about,.contacts{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,1fr)}.hero h1{font-size:2.6rem}.nav nav{gap:12px}.facts{gap:18px}}