:root{
  --bg:#0B0B0C;--card:#131316;--text:#EDEDED;--muted:#A8A8AD;
  --accent:#FF7A00;--border:rgba(255,255,255,.10)
}

*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);line-height:1.6}

/* wrappers */
.wrap{max-width:1200px;margin:auto;padding:0 24px}
.section{padding:64px 0}
.section-head{margin:0 0 32px}
.section-head h2{font-size:clamp(28px,4vw,44px);font-weight:800;margin:0 0 8px}
.muted{color:var(--muted)}
.center{text-align:center}

/* header */
.header{position:sticky;top:0;z-index:1000;background:rgba(11,11,12,.78);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}
.header .wrap{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--text)}
.brand-sub{font-size:13px;letter-spacing:.5px;color:var(--muted);font-weight:600}
.nav{display:flex;align-items:center;gap:16px}
.nav-links{list-style:none;display:flex;gap:24px;margin:0;padding:0}
.nav a{color:var(--text);text-decoration:none}
.nav a:hover{color:var(--accent)}
.menu-btn{display:none;border:0;background:0;color:var(--text);font-size:24px}

/* buttons */
.btn{display:inline-block;border-radius:12px;padding:12px 20px;font-weight:700;text-decoration:none;transition:.2s}
.btn-primary{background:var(--accent);color:#fff}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 24px rgba(255,122,0,.35)}
.btn-ghost{border:1px solid var(--border);color:var(--text);background:transparent}
.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}
.btn-dark{background:#111;color:#fff;border:1px solid #111}

/* hero */
.hero{position:relative;min-height:88vh;display:grid;place-items:center;overflow:hidden}
.hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.6),rgba(0,0,0,.6) 40%,rgba(0,0,0,.75));z-index:-1}
.hero-inner{text-align:center}
.hero h1{font-size:clamp(32px,5.5vw,64px);line-height:1.1;margin:0 0 12px;font-weight:800}
.accent{color:var(--accent)}
.lead{font-size:clamp(18px,2.2vw,22px);color:var(--muted);max-width:720px;margin:0 auto 24px}
.cta-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

/* cards & grids */
.grid{display:grid;gap:24px}
.highlights{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.services{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:24px}
.card h3{margin:0 0 8px}
.eyebrow{font-size:11px;letter-spacing:.5px;text-transform:uppercase;color:var(--accent);font-weight:700}
.list{margin:12px 0 20px;padding-left:18px}
.list li{margin:6px 0;color:var(--muted)}

/* pricing tiles */
.pricing{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.tile{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:24px;text-align:center}
.tile-accent{background:var(--accent);border-color:var(--accent);color:#fff}
.tile-accent .btn-dark{background:#fff;color:var(--accent);border:0}

/* reviews */
.reviews{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:32px;text-align:center}

/* faqs */
.faqs{max-width:800px;margin:auto}
details{background:var(--card);border:1px solid var(--border);border-radius:12px;margin:12px 0;overflow:hidden}
summary{cursor:pointer;padding:16px 20px;font-weight:700;outline:none}
details[open]{border-color:var(--accent)}
details > div{padding:0 20px 16px;color:var(--muted)}

/* contact */
.contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;text-align:center}
.contact h3{margin:.5rem 0}
.contact a{color:var(--accent);text-decoration:none}
.contact a:hover{text-decoration:underline}

/* footer */
.footer{border-top:1px solid var(--border);padding:24px 0;text-align:center;color:var(--muted)}

/* mobile nav */
.mobile-drawer{display:none;position:fixed;top:64px;left:0;right:0;background:rgba(19,19,22,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);padding:16px 24px;z-index:999}
.mobile-drawer ul{list-style:none;margin:0 0 12px;padding:0}
.mobile-drawer li{border-bottom:1px solid var(--border)}
.mobile-drawer a{display:block;color:var(--text);text-decoration:none;padding:12px 0}
.mobile-drawer a:hover{color:var(--accent)}

/* responsive */
@media (max-width:1023px){
  .nav-links{display:none}
  .menu-btn{display:inline-block}
  .section{padding:56px 0}
  .wrap{padding:0 16px}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
  html{scroll-behavior:auto}
}

.reviews-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.review-card{background:#111;border:1px solid #2a2a2a;border-radius:12px;padding:16px}
.review-head{display:flex;align-items:center;gap:12px;margin-bottom:8px}
.avatar{width:36px;height:36px;border-radius:50%;object-fit:cover}
.g-badge{margin-left:auto;background:#fff;color:#4285F4;width:22px;height:22px;
  display:inline-flex;align-items:center;justify-content:center;border-radius:50%;
  font-weight:700;font-size:12px}
.stars{color:#f5c542;margin:4px 0}
.muted{opacity:.7;font-size:.9rem}
/* ==== REVIEWS (ajustes de layout) ==== */
.reviews-grid{                       /* o wrapper que contém os cards */
  display:grid;
  gap:16px;
  grid-template-columns:repeat(auto-fit, minmax(280px,1fr));
  padding-inline:16px;               /* dá respiro nas laterais no mobile */
}
@media (min-width:768px){
  .reviews-grid{ padding-inline:0; } /* em telas maiores, usa o padding do container pai */
}

.review-card{
  box-sizing:border-box;             /* evita “comer” borda quando tem padding */
  background:#0f0f0f;
  border:1px solid #2a2a2a;
  border-radius:16px;
  padding:18px;
}

/* topo do card: avatar, nome, selo G */
.review-head{
  display:grid;
  grid-template-columns:40px 1fr auto;
  column-gap:12px;
  align-items:center;
  margin-bottom:8px;
}
.review-head .avatar{
  width:40px;height:40px;border-radius:50%;
  object-fit:cover;background:#222;
}
.review-name{font-weight:700}
.review-meta{font-size:.85rem;opacity:.7;margin-top:2px}
.g-badge{
  margin-left:12px;background:#fff;color:#4285F4;
  width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;
  border-radius:50%;font-weight:700;font-size:12px
}
.stars{color:#f5c542;margin:4px 0}

.container { max-width: 1200px; margin: 0 auto; padding: 0 16px; }
#reviews { padding: 72px 0; }
#reviews h2 { margin: 0 0 24px; }

