/* ===== Manual Imersão LawLeaders — tokens iguais aos do site/setup ===== */
:root{
  /* paleta escura (padrão da marca) */
  --ground:#060814;
  --surface:#0e1226;
  --elevated:#131836;
  --line:rgba(233,195,107,.16);
  --line-soft:rgba(230,232,239,.10);
  --gold:#e9c36b;
  --gold-soft:#f3d98c;
  --gold-deep:#b5893a;
  --gold-ink:#241a05;
  --cream:#f5e8c7;
  --text:#e6e8ef;
  --muted:#a5a9be;
  --ok:#7fd1a8;

  /* superfícies compostas */
  --topbar-bg:linear-gradient(90deg,#0e1226,#1a2148 45%,#0e1226);
  --nav-bg:rgba(6,8,20,.92);
  --nav-line:rgba(233,195,107,.10);
  --card-bg:linear-gradient(160deg,rgba(19,24,54,.9),rgba(14,18,38,.9));
  --card-bg-hover:linear-gradient(160deg,rgba(27,35,80,.95),rgba(14,18,38,.95));
  --panel-gold-bg:linear-gradient(160deg,rgba(233,195,107,.10),rgba(14,18,38,.9));
  --ghost-bg:rgba(233,195,107,.07);
  --ghost-bg-hover:rgba(233,195,107,.15);
  --shadow:none;

  --display:'Sora',system-ui,sans-serif;
  --body:'Manrope',system-ui,sans-serif;
  --maxw:1040px;
  --radius:16px;
}

/* ===== paleta clara ===== */
:root[data-theme="light"]{
  --ground:#faf8f3;
  --surface:#ffffff;
  --elevated:#f3f0e8;
  --line:rgba(138,101,32,.24);
  --line-soft:rgba(23,26,44,.10);
  --gold:#8a6520;
  --gold-soft:#6f4f16;
  --gold-deep:#b5893a;
  --gold-ink:#fff8e6;
  --cream:#5a4413;
  --text:#171a2c;
  --muted:#5c6178;
  --ok:#1f7a52;

  --topbar-bg:linear-gradient(90deg,#f2ece0,#eadfc4 45%,#f2ece0);
  --nav-bg:rgba(250,248,243,.92);
  --nav-line:rgba(138,101,32,.16);
  --card-bg:linear-gradient(160deg,#ffffff,#faf7f0);
  --card-bg-hover:linear-gradient(160deg,#fffdf7,#f6f1e4);
  --panel-gold-bg:linear-gradient(160deg,rgba(233,195,107,.30),#fffdf6);
  --ghost-bg:rgba(138,101,32,.06);
  --ghost-bg-hover:rgba(138,101,32,.13);
  --shadow:0 1px 2px rgba(23,26,44,.05), 0 10px 28px rgba(23,26,44,.07);
}

*{box-sizing:border-box}
body{margin:0;background:var(--ground);color:var(--text);font-family:var(--body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;transition:background .2s ease,color .2s ease}
img{max-width:100%;display:block}
a{color:var(--gold)}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 20px}
h1,h2,h3{font-family:var(--display);line-height:1.12;letter-spacing:-.02em;margin:0}

/* topo */
.topbar{background:var(--topbar-bg);border-bottom:1px solid var(--line);padding:9px 20px;text-align:center;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.navbar{position:sticky;top:0;z-index:30;background:var(--nav-bg);backdrop-filter:blur(12px);border-bottom:1px solid var(--nav-line)}
.navbar-in{max-width:var(--maxw);margin:0 auto;padding:10px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.navbar img{height:38px;width:auto}
.navlinks{display:flex;align-items:center;gap:20px;font-size:13px;font-weight:600}
.navlinks a{color:var(--muted);text-decoration:none}
.navlinks a:hover,.navlinks a[aria-current="page"]{color:var(--gold)}

/* no tema claro o topo continua escuro: o logo é claro/dourado e precisa desse fundo */
:root[data-theme="light"] .topbar,
:root[data-theme="light"] .navbar{
  --text:#e6e8ef;
  --muted:#c9cddd;
  --gold:#e9c36b;
  --line:rgba(233,195,107,.22);
  --ghost-bg:rgba(233,195,107,.10);
  --ghost-bg-hover:rgba(233,195,107,.20);
  color:var(--text);
}
:root[data-theme="light"] .topbar{background:linear-gradient(90deg,#0e1226,#1a2148 45%,#0e1226);color:var(--gold);border-bottom-color:rgba(233,195,107,.16)}
:root[data-theme="light"] .navbar{background:rgba(10,13,30,.94);border-bottom-color:rgba(233,195,107,.22)}

/* botão de tema */
.theme-toggle{width:34px;height:34px;flex:0 0 34px;border-radius:50%;border:1px solid var(--line);background:var(--ghost-bg);color:var(--gold);font-size:15px;line-height:1;cursor:pointer;display:inline-grid;place-items:center;transition:background .18s ease,border-color .18s ease}
.theme-toggle:hover{background:var(--ghost-bg-hover);border-color:var(--gold)}
.theme-toggle:focus-visible{outline:2px solid var(--gold);outline-offset:2px}

/* hero — permanece escuro nos dois temas (as artes de fundo são escuras) */
.hero{
  --text:#e6e8ef;--muted:#a5a9be;--gold:#e9c36b;--gold-soft:#f3d98c;
  position:relative;overflow:hidden;color:var(--text);
  border-bottom:1px solid rgba(233,195,107,.16);background:#060814;padding:64px 0 56px;
}
.hero-bg{position:absolute;inset:0;background:var(--img) center/cover no-repeat;opacity:.55}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,8,20,.45) 0%,rgba(6,8,20,.86) 70%,#060814 100%)}
.hero-in{position:relative;max-width:var(--maxw);margin:0 auto;padding:0 20px}
.eyebrow{font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:14px}
.hero h1{font-weight:800;font-size:clamp(30px,5.2vw,48px);text-wrap:balance;margin-bottom:16px}
.hero h1 em{font-style:normal;color:var(--gold)}
.hero p{color:var(--muted);max-width:560px;font-size:17px;margin:0}
.hero-logo{width:190px;max-width:52vw;margin-bottom:26px}

/* ===== menu principal (botoes grandes) ===== */
.menu{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.menu-item{
  display:flex;align-items:center;gap:20px;text-decoration:none;color:inherit;
  background:var(--card-bg);border:1px solid var(--line);border-radius:var(--radius);
  padding:30px 28px;box-shadow:var(--shadow);
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}
.menu-item:hover{transform:translateY(-3px);border-color:var(--gold);background:var(--card-bg-hover)}
.menu-item .n{
  flex:none;width:52px;height:52px;border-radius:14px;
  display:grid;place-items:center;
  font-family:var(--display);font-weight:800;font-size:21px;
  color:var(--gold);background:var(--ghost-bg);border:1px solid var(--line);
  font-variant-numeric:tabular-nums;
}
.menu-item .txt{flex:1;min-width:0}
.menu-item h3{font-size:clamp(19px,2.2vw,24px);font-weight:800;line-height:1.2}
.menu-item .meta{display:block;font-family:var(--display);font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-top:8px}
.menu-item .arrow{flex:none;font-size:26px;color:var(--gold);line-height:1;transition:transform .18s ease}
.menu-item:hover .arrow{transform:translateX(4px)}
@media (max-width:820px){
  .menu{grid-template-columns:1fr}
  .menu-item{padding:24px 22px;gap:16px}
  .menu-item .n{width:44px;height:44px;font-size:18px;border-radius:12px}
}

/* seções */
section{padding:52px 0}
section + section{border-top:1px solid var(--line-soft)}
.sec-head{margin-bottom:26px}
.sec-head h2{font-size:clamp(22px,3.4vw,30px);margin-bottom:8px}
.sec-head p{color:var(--muted);margin:0}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}
.panel + .panel{margin-top:16px}
.panel.gold{background:var(--panel-gold-bg);border-color:var(--gold)}
.panel h3{font-size:18px;margin-bottom:10px}
.panel p{margin:0 0 10px;color:var(--muted)}
.panel p:last-child{margin-bottom:0}
.panel strong{color:var(--text)}

/* listas */
.list{list-style:none;margin:0;padding:0}
.list li{padding:14px 0;border-bottom:1px solid var(--line-soft);display:flex;gap:14px;align-items:flex-start}
.list li:last-child{border-bottom:0;padding-bottom:0}
.list .k{color:var(--gold);font-weight:700;font-family:var(--display);font-size:13px;letter-spacing:.06em;text-transform:uppercase;min-width:86px;padding-top:2px}
.list .v{flex:1}
.list .v small{display:block;color:var(--muted);font-size:13.5px}

/* botões */
.btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--display);font-weight:700;font-size:14px;padding:11px 20px;border-radius:999px;text-decoration:none;border:1px solid transparent;transition:filter .15s ease,background .15s ease}
.btn.primary{background:var(--gold);color:var(--gold-ink)}
.btn.primary:hover{background:var(--gold-soft)}
.btn.ghost{border-color:var(--line);color:var(--gold);background:var(--ghost-bg)}
.btn.ghost:hover{background:var(--ghost-bg-hover)}

/* restaurantes */
.rests{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}
.rest{background:var(--surface);border:1px solid var(--line-soft);border-radius:12px;padding:18px;box-shadow:var(--shadow)}
.rest h4{font-family:var(--display);font-size:16px;margin:0 0 8px}
.rest .price{color:var(--gold);font-weight:700;font-size:15px}
.rest .dist{color:var(--muted);font-size:13px;margin-top:4px}

/* rodapé */
footer{border-top:1px solid var(--line);padding:34px 0 46px;color:var(--muted);font-size:13.5px;text-align:center}
footer a{font-weight:600}

@media (max-width:640px){
  .navlinks{gap:14px;font-size:12px}
  .list li{flex-direction:column;gap:4px}
  .list .k{min-width:0}
}
