:root{--bg:#fbf6ec;--ink:#3a2412;--muted:#6b5744;--brand:#b4530f;--gold:#e0a21f;--card:#fff;--line:#eadcc3}
*{box-sizing:border-box;margin:0}
body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--ink);line-height:1.6}
.wrap{max-width:960px;margin:0 auto;padding:0 20px}
header{background:#fff;border-bottom:3px solid var(--gold)}
.top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:12px;padding-bottom:8px}
.top img{height:60px;width:auto;display:block}
.top a.tel{color:var(--brand);font-weight:700;text-decoration:none;white-space:nowrap}
nav{display:flex;gap:4px;overflow-x:auto;padding-bottom:8px}
nav a{color:var(--ink);text-decoration:none;padding:8px 14px;border-radius:999px;font-weight:600;font-size:.95rem;white-space:nowrap}
nav a:hover{background:#f6e9cc}
nav a.on{background:var(--brand);color:#fff}
.hero{padding:48px 0 28px;text-align:center}
.hero h1,.page-title{font-size:clamp(1.7rem,5vw,2.5rem);line-height:1.2;color:var(--brand)}
.hero p{margin:16px auto 0;max-width:640px;color:var(--muted);font-size:1.1rem}
.page-title{padding:36px 0 8px}
.btn{display:inline-block;margin-top:24px;background:var(--brand);color:#fff;text-decoration:none;padding:12px 26px;border-radius:999px;font-weight:700}
section{padding:28px 0}
h2{font-size:1.4rem;color:var(--brand);margin-bottom:14px;border-left:5px solid var(--gold);padding-left:12px}
p+p{margin-top:12px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px}
.card.pr{padding:0;overflow:hidden}
.card.pr img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block}
.card.pr .in{padding:16px 20px}
.card h3{font-size:1.05rem;margin-bottom:6px}
.card p,.card a{color:var(--muted);font-size:.98rem}
.card a{text-decoration:none;display:block}
.card a:hover{color:var(--brand)}
.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin:20px 0 8px}
.gallery img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:12px;border:1px solid var(--line);background:#f3e7cf;display:block}
footer{margin-top:32px;background:#3a2412;color:#e9d9bd;padding:28px 0;font-size:.92rem;text-align:center}
footer strong{color:#fff}
footer a{color:#e9d9bd}
