:root {
    --header-bkg:#fff; --header-borda:#eee; --header-menu:#a66f55;
    --fundo:#fff; --fundo-secundario:#f7f1ed; --fundo-card:#f7f1ed; --fundo-claro:#f5eee9;
    --texto:#333; --texto-secundario:#786b65; --texto-suave:#8b7870; --texto-escuro:#604336; --texto-faq:#756b66;
    --destaque:#a66f55; --destaque-texto:#fff;
    --botao-fundo:#a66f55; --botao-texto:#fff; --botao-escuro-fundo:#523e35; --botao-escuro-hover:#6b5145; --botao-escuro-texto:#fff;
    --borda:#eee;
    --faixa-fundo:#a66f55; --faixa-texto:#fff;
    --cta-fundo:#a66f55; --cta-texto:#fff;
    --footer-bkg:#523e35; --footer-texto:#cbbcb5;
    --painel-escuro:#694d41; --painel-escuro-texto:#fff; --painel-texto-fraco:#eaded8;
    interpolate-size:allow-keywords;
}
*               { margin:0; padding:0; box-sizing:border-box; }
html            { scroll-behavior:smooth; }
body            { font-family:Arial,Helvetica,sans-serif; color:var(--texto); background:var(--fundo); }
a               { text-decoration:none; }
.content        { width:100%; max-width:1400px; margin:0 auto; padding:0 20px; }
header          { position:sticky; top:40px; z-index:1000; background:var(--header-bkg); border-bottom:1px solid var(--header-borda); }
header .content { width:100%; max-width:1400px; margin:0 auto; padding:0 20px; height:78px; display:flex; justify-content:space-between; align-items:center; }
.logo           { font-size:25px; font-weight:800; color:var(--header-menu); }
nav             { display:flex; gap:24px; align-items:center; }
nav a           { color:var(--header-menu); font-size:13px; }
.btn            { display:inline-block; padding:14px 22px; border-radius:7px; background:var(--botao-fundo); color:var(--botao-texto); font-weight:bold; }
.hero           { background:var(--fundo-secundario); }
.hero .content  { padding:55px 0; display:grid; grid-template-columns:1.05fr .95fr; gap:45px; align-items:center; }
.hero h1        { font-size:55px; line-height:1.06; color:var(--texto-escuro); }
.hero p         { margin:20px 0 27px; max-width:550px; color:var(--texto-secundario); line-height:1.7; }
.hero-img       { height:490px; }
.hero-img img   { width:100%; height:100%; object-fit:cover; border-radius:18px; }
section         { padding:85px 0; scroll-margin-top:118px; }
.titulo         { max-width:720px; margin:0 auto 45px; text-align:center; }
.titulo span    { color:var(--destaque); font-size:11px; font-weight:bold; text-transform:uppercase; }
.titulo h2      { margin:10px 0; font-size:39px; }
.titulo-local   { text-align:left; margin:0; }
.categorias     { display:grid; grid-template-columns:repeat(4,1fr); gap:15px; }
.categoria      { min-height:190px; padding:25px; display:flex; flex-direction:column; justify-content:flex-end; border-radius:15px; background:var(--fundo-claro); }
.categoria h3   { margin-bottom:6px; color:var(--texto-escuro); }
.categoria span { font-size:12px; color:var(--texto-secundario); }
.destaques      { background:var(--fundo-secundario); }
.grid-destaques { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.destaque       { min-height:330px; padding:35px; border-radius:18px; display:flex; flex-direction:column; justify-content:flex-end; color:#fff; background-size:cover; background-position:center; }
.destaque h3    { font-size:28px; }
.destaque p     { margin:7px 0 18px; max-width:450px; color:#eee; }
.agenda .content { display:grid; grid-template-columns:.8fr 1.2fr; gap:70px; align-items:center; }
.agenda h2      { font-size:40px; }
.agenda p       { margin:15px 0; color:var(--texto-secundario); line-height:1.7; }
.agenda-passos  { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.agenda-passos div{ padding:20px; border-radius:12px; background:var(--fundo-claro); }
.agenda-passos strong { display:block; color:var(--destaque); margin-bottom:5px; }
.avaliacoes     { background:var(--painel-escuro); color:var(--painel-escuro-texto); }
.avaliacoes .titulo h2 { color:var(--painel-escuro-texto); }
.grid-avaliacoes{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.avaliacao      { padding:28px; border-radius:14px; background:#7a5a4d; }
.avaliacao p    { line-height:1.7; color:var(--painel-texto-fraco); margin-bottom:15px; }
.local .content { display:grid; grid-template-columns:1fr 1fr; gap:50px; }
.local-card     { padding:35px; background:var(--fundo-card); border-radius:16px; }
.local-card h3  { margin-bottom:15px; }
.local-card p   { margin-bottom:8px; color:var(--texto-secundario); }
.cta            { margin:0 7% 65px; padding:55px; text-align:center; border-radius:20px; background:var(--cta-fundo); color:var(--cta-texto); }
.cta p          { margin:10px 0 25px; color:var(--cta-texto); }
.cta .btn       { background:var(--cta-texto); color:var(--cta-fundo); }
footer          { padding:40px; text-align:center; background:var(--footer-bkg); color:var(--footer-texto); font-size:12px; }
@media(max-width:900px) { nav { display:none; } .hero .content,.agenda .content,.local .content { grid-template-columns:1fr; } .categorias { grid-template-columns:1fr 1fr; } .grid-destaques { grid-template-columns:1fr; } }
@media(max-width:550px) { .hero h1 { font-size:37px; } .categorias,.agenda-passos,.grid-avaliacoes { grid-template-columns:1fr; } }

.header-drop          { position:relative; flex-shrink:0; }
.header-drop-btn      { width:42px; height:42px; display:grid; place-items:center; border:0; border-radius:50%; color:var(--header-menu); background:transparent; font-size:19px; cursor:pointer; transition:.25s; }
.header-drop-btn:hover { filter:brightness(1.35); }
.header-drop-menu     { background:var(--header-bkg); position:absolute; top:50px; right:0; z-index:50; width:150px; padding:7px; display:none; box-shadow:0 12px 30px rgba(0,0,0,.35); }
.header-drop-menu.aberto { display:block; }
.header-drop-item     { width:100%; padding:10px 12px; display:block; border:0; color:var(--header-menu); background:transparent; text-align:left; cursor:pointer; }
.header-seta         { border-left:6px solid var(--header-menu); display:inline-block; width:0; height:0; margin-right:9px; vertical-align:middle; border-top:4px solid transparent; border-bottom:4px solid transparent; opacity:0; transition:.15s; }
.header-drop-item:hover .header-seta,
.header-drop-item.atual .header-seta { opacity:1; }