/* ===== RESET + TOKENS ===== */
*{box-sizing:border-box;margin:0;padding:0}
:root{
  --brand:#d8734b;
  --brand-dark:#b75b36;
  --ink:#141414;
  --muted:#6b6b6b;
  --chip:#eee3d9;
  --card:#fff;
  --shadow:0 12px 26px rgba(0,0,0,.12);
  --radius:16px;
}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.6}
a{text-decoration:none;color:inherit}
.container{width:min(1200px,92%);margin-inline:auto}

/* ===== NAVBAR ===== */
.navbar{position:fixed;inset:0 0 auto 0;z-index:40;background:#fff;border-bottom:1px solid #eee}
.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:16px 0}
.logo{font-family:"Playfair Display",serif;font-weight:700;font-size:24px}
.menu{display:flex;gap:28px}
.menu a{color:#333;font-weight:500;position:relative}
.menu a.active{color:var(--brand)}
.menu a.active::after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:2px;background:var(--brand)}
.btn{display:inline-block;padding:11px 16px;border-radius:8px;font-weight:700}
.btn-agendar{background:var(--brand);color:#fff}
.btn-agendar:hover{background:var(--brand-dark)}

/* ===== PAGE TITLE ===== */
.page-title{padding-top:110px;text-align:center}
.page-title h1{font-family:"Playfair Display",serif;font-size:64px;font-weight:700}
.title-accent{display:block;width:76px;height:4px;background:var(--brand);border-radius:999px;margin:14px auto 0}
.subtitle{color:#6e6e6e;margin-top:12px}

/* ===== FILTER CHIPS ===== */
.filters{margin-top:22px}
.chips{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.chip{
  border:0; background:#efefef; color:#3a3a3a; font-weight:600;
  padding:10px 16px; border-radius:999px; box-shadow:0 4px 12px rgba(0,0,0,.06);
  cursor:pointer; transition:.2s;
}
.chip:hover{transform:translateY(-1px)}
.chip.active{background:var(--brand);color:#fff}

/* ===== GALLERY GRID ===== */
.gallery{padding:30px 0 24px}
.cards{
  display:grid; grid-template-columns:repeat(3,1fr); gap:26px;
  margin-top:4px;
}
.card{
  background:var(--card); border-radius:var(--radius); box-shadow:var(--shadow);
  overflow:hidden; border:1px solid rgba(0,0,0,.06);
}
.card img{display:block;width:100%;height:520px;object-fit:cover}

/* ===== FOOTER ===== */
.site-footer{background:#181818;color:#eaeaea;margin-top:40px}
.footer-grid{
  display:grid;grid-template-columns:2fr 2fr 1fr;gap:28px;
  padding:46px 0;
}
.foot-logo{font-family:"Playfair Display",serif;font-weight:700;font-size:26px;margin-bottom:8px}
.muted{color:#bdbdbd}
.foot-col h4{margin-bottom:10px}
.contact-list{list-style:none;display:grid;gap:10px;margin-top:6px}
.contact-list li{display:flex;align-items:center;gap:10px;color:#d7d7d7}
.contact-list a{color:#d7d7d7}
.social{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:999px;background:#2a2a2a}

.footer-bottom{border-top:1px solid #2a2a2a}
.footer-bottom .container{padding:14px 0}
.footer-bottom p{color:#bdbdbd;font-size:14px;text-align:center}

/* ===== RESPONSIVO ===== */
@media (max-width: 1100px){
  .cards{grid-template-columns:repeat(2,1fr)}
  .card img{height:460px}
  .page-title h1{font-size:52px}
}
@media (max-width: 720px){
  .menu{display:none}
  .cards{grid-template-columns:1fr}
  .card img{height:420px}
  .page-title h1{font-size:40px}
}

.chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 24px;
}

.chip {
  background: #222;
  color: #fff;
  border: none;
  border-radius: 20px;
  padding: 8px 14px;
  cursor: pointer;
  transition: 0.2s;
}

.chip:hover { background: #444; }
.chip.active { background: #fff; color: #000; font-weight: 600; }