:root{
  --bg:#faf7f2;--ink:#1e1b18;--muted:#6b645c;--gold:#b08d57;--dark:#1a1714;--card:#ffffff;--line:#e6dfd3;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Georgia,'Times New Roman',serif;background:var(--bg);color:var(--ink);line-height:1.6}
h1,h2,h3{font-weight:normal;line-height:1.2;margin:0 0 .6em}
a{color:inherit}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
header{position:sticky;top:0;z-index:10;background:rgba(26,23,20,.96);color:#fff}
header .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px;flex-wrap:wrap}
.logo{font-size:1.15rem;letter-spacing:.06em;text-decoration:none}
nav{display:flex;gap:18px;flex-wrap:wrap;font-family:system-ui,sans-serif;font-size:.9rem}
nav a{text-decoration:none;opacity:.85}
nav a:hover{opacity:1;color:var(--gold)}
.tel{font-family:system-ui,sans-serif;font-size:.9rem;text-decoration:none;color:var(--gold)}
.hero{background:linear-gradient(rgba(20,17,14,.62),rgba(20,17,14,.72)),url('https://onecdn.io/media/51fc5914-0af5-4728-abe2-4743944e856d/lg') center/cover;color:#fff;text-align:center;padding:110px 20px}
.hero h1{font-size:clamp(2rem,5vw,3.2rem)}
.hero p{max-width:640px;margin:0 auto 1.6em;opacity:.92}
.btn{display:inline-block;background:var(--gold);color:#fff;padding:14px 30px;text-decoration:none;font-family:system-ui,sans-serif;letter-spacing:.04em;border-radius:2px}
.btn:hover{background:#96763f}
section{padding:70px 0}
section h2{font-size:clamp(1.6rem,3.5vw,2.2rem);text-align:center}
section.alt{background:#fff}
.lead{max-width:720px;margin:0 auto;text-align:center;color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-top:36px}
.card{background:var(--card);border:1px solid var(--line);padding:22px;text-align:center}
.card .price{color:var(--gold);font-family:system-ui,sans-serif;margin-top:6px}
.reviews{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:36px}
.review{background:var(--card);border:1px solid var(--line);padding:22px}
.review small{display:block;margin-top:10px;color:var(--muted);font-family:system-ui,sans-serif}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin-top:36px}
.gallery img{width:100%;aspect-ratio:1;object-fit:cover;display:block}
.pricelist{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;margin-top:36px}
.pricelist h3{color:var(--gold);letter-spacing:.08em;text-transform:uppercase;font-size:1rem;border-bottom:1px solid var(--line);padding-bottom:6px}
.pricelist ul{list-style:none;margin:0 0 24px;padding:0}
.pricelist li{display:flex;justify-content:space-between;gap:12px;padding:5px 0;font-size:.97rem}
.pricelist li span:last-child{white-space:nowrap;font-family:system-ui,sans-serif;font-size:.92rem}
.center{text-align:center;margin-top:30px}
.contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:30px;margin-top:30px;text-align:center}
footer{background:var(--dark);color:#cfc8bd;padding:30px 0;text-align:center;font-family:system-ui,sans-serif;font-size:.88rem}
footer a{margin:0 10px}
.legal{max-width:760px;margin:0 auto;padding:60px 20px}
.legal h1{font-size:2rem}
.note{background:#fff6e0;border:1px solid #e6cf94;padding:14px 18px;font-family:system-ui,sans-serif;font-size:.9rem}
@media(max-width:640px){
  header .wrap{padding:8px 16px}
  nav{order:3;width:100%;overflow-x:auto;flex-wrap:nowrap;white-space:nowrap;gap:16px;padding-bottom:6px}
  .hero{padding:80px 20px}
  .callbar{display:block}
  body{padding-bottom:56px}
}
.callbar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:20;background:var(--gold);color:#fff;text-align:center;padding:14px;font-family:system-ui,sans-serif;text-decoration:none;letter-spacing:.03em}
.legal h2{font-size:1.2rem;margin-top:1.8em}
.legal p,.legal li{color:#3a352f}

.subhead{text-align:center;margin:44px 0 0;color:var(--gold);letter-spacing:.06em;text-transform:uppercase;font-size:1rem}
.subhead + .lead{margin-top:14px}
.gallery.row{grid-template-columns:repeat(4,1fr);max-width:900px;margin-left:auto;margin-right:auto}
@media(max-width:640px){.gallery.row{grid-template-columns:repeat(2,1fr)}}
