/* ====== RESET & TOKENS ====== */
*{box-sizing:border-box;margin:0;padding:0}
:root{
  --brand:#d8734b;
  --brand-dark:#b75b36;
  --ink:#111;
  --muted:#666;
  --beige:#ece4dd;       /* fundo da secção de destaques */
  --card:#ffffff;
  --shadow:0 10px 24px rgba(0,0,0,.12);
  --radius:16px;
}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:#111;background:#fff;line-height:1.55}
a{text-decoration:none;color:inherit}

/* ====== CONTAINERS ====== */
.container{width:min(1200px,92%);margin-inline:auto}

/* ====== NAVBAR ====== */
.navbar{
  position:fixed; inset:0 0 auto 0; z-index:50;
  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;color:#000}
.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)}

/* ====== HERO ====== */
.hero{
  height:92vh; display:grid; place-items:center; text-align:center; position:relative;
  background:url("imagem1.png") center/cover no-repeat;
  margin-top:64px; /* compensar navbar fixa */
}
.hero-overlay{position:absolute;inset:0;background:rgba(0,0,0,.45)}
.hero-content{position:relative;color:#fff;max-width:900px;padding:0 18px}
.hero h1{font-family:"Playfair Display",serif;font-size:64px;line-height:1.1;margin-bottom:18px}
.hero p{font-size:18px;opacity:.95;margin-bottom:28px}
.hero-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.btn-primary{background:var(--brand);color:#fff}
.btn-primary:hover{background:var(--brand-dark)}
.btn-light{background:#fff;color:#333}
.btn-light:hover{background:#f2f2f2}

/* ====== FEATURED ====== */
.featured{background:var(--beige);padding:70px 0}
.featured-head{ text-align:center; margin-bottom:30px }
.featured-head h2{
  font-family:"Playfair Display",serif; font-size:48px; color:#1a1a1a; margin-bottom:10px;
}
.featured-head p{color:#7a6f67}

.cards{
  display:grid; grid-template-columns:repeat(3,1fr); gap:28px;
  margin-top:30px;
}
.card{
  background:var(--card); border-radius:var(--radius); box-shadow:var(--shadow);
  overflow:hidden; padding:0; border:1px solid rgba(0,0,0,.06);
}
.card img{width:100%; height:520px; object-fit:cover; display:block}

.cta-center{display:flex;justify-content:center;margin-top:32px}
.cta-center .btn{padding:13px 22px}

/* ====== QUOTE ====== */
.quote-block{background:#fff;padding:70px 0}
.quote-block .container{display:grid;place-items:center;text-align:center}
blockquote{
  font-family:"Playfair Display",serif; font-style:italic; font-size:30px;
  color:#222; max-width:900px; margin-bottom:12px;
}
.quote-accent{
  width:64px; height:4px; background:var(--brand); border-radius:999px; display:inline-block; margin:10px 0 16px;
}
.quote-sub{color:#6d6d6d}

/* ====== FOOTER ====== */
.site-footer{background:#181818;color:#eaeaea;margin-top:30px}
.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
}
.social:hover{
    background:#b75b36;
    transition: all 0.3s ease;
    transform: scale(1.1);
}
.social svg{
    place-items:center;
    width:30px;
    height:30px;
}


.footer-bottom{border-top:1px solid #2a2a2a}
.footer-bottom .container{padding:14px 0}
.footer-bottom p{color:#bdbdbd;font-size:14px;text-align:center}

/* ====== RESPONSIVE ====== */
@media (max-width: 1024px){
  .cards{grid-template-columns:repeat(2,1fr)}
  .card img{height:440px}
  .hero h1{font-size:52px}
}
@media (max-width: 720px){
  .menu{display:none}
  .cards{grid-template-columns:1fr}
  .card img{height:420px}
  .hero{height:85vh}
  .hero h1{font-size:40px}
}